component
USB4105-GF-A USB-C receptacle
Public Made by Adomby adom
Sixteen signal contacts plus shell; no USB Power Delivery controller implied.
← Commit history
Add exact USB-C library, contact mapping and board geometry comparison
11 files changed
+162−29
page.json+3−28@@ -1,6 +1,6 @@ { "slug": "usb4105-gf-a",- "type": "component",+ "type": "hardware", "kind": "component", "version": "0.1.0", "title": "USB4105-GF-A USB-C receptacle",@@ -134,30 +134,5 @@ "assembly": "Native footprint comparison and physical qualification pending" } },- "because": "Exact header selected for electronic-load fan or sensor harness; catalog assets were missing.",- "name": "@adom/usb4105-gf-a",- "files": [- "README.md",- "LICENSE",- "LICENSE-KICAD.md",- "THIRD_PARTY.md",- "page.json",- "package.json",- "provenance.json",- "usb4105-gf-a*",- "symbol.html",- "footprint.html",- "hero.png",- "skills/**",- "usb4105-gf-a-hero.glb",- "usb4105-gf-a-hero.overlay.json",- "usb4105-gf-a.glb"- ],- "dependencies": {},- "visibility": "public",- "org": "adom",- "author": {- "name": "John Lauer",- "email": "[email protected]"- }-}+ "because": "Exact header selected for electronic-load fan or sensor harness; catalog assets were missing."+}
provenance.json+1−1@@ -17,7 +17,7 @@ }, "qualification": "provisional", "visualReview": {- "local": "Actual STEP front and rear isometric renders inspected; shell, tongue, contacts and stakes visible. Bbox 8.94 x7.78 x4.26 includes leads; Z -0.95 to3.31.",+ "local": "Actual STEP front orthographic and two rear isometric renders inspected; shell, tongue, contacts and stakes visible. Bbox 8.94 x7.78 x4.26 includes leads; Z -0.95 to3.31.", "wiki": "pending; browser closed" }, "assetSha256": {
review/board24-pad-comparison.jsonadded+7@@ -0,0 +1,7 @@+{+ "samePadGeometry": true,+ "boardRotationNormalizedDegrees": 90.0,+ "boardOnly": [],+ "catalogOnly": [],+ "scope": "Pad name/type/location/orientation/size/drill only; excludes paste/mask/process/physical qualification"+}
review/face.pngadded⋯ 1 unchanged line ⋯
review/front.pngadded⋯ 1 unchanged line ⋯
review/hero-reference.pngadded⋯ 1 unchanged line ⋯
review/lbr-lint.txtadded+6@@ -0,0 +1,6 @@+OK: Lint passed with 0 error(s), 0 warning(s)+{+ "passed": true,+ "errors": [],+ "warnings": []+}
review/lbr-validate.txtadded+1@@ -0,0 +1 @@+OK: usb4105-gf-a.lbr is a valid EAGLE .lbr with complete deviceset
review/package-lint.jsonadded+35@@ -0,0 +1,35 @@+{+ "status": "ok",+ "data": {+ "errors": [],+ "warnings": [+ "component has no board/layout (.kicad_pcb or .brd): nobody can reproduce or re-fab the design from this page.",+ "component has no schematic (.kicad_sch or .sch): the design can't be reviewed or reused, only the symbol/footprint can.",+ "component has no footprint/symbol metadata (<name>_footprint.json / <name>_symbol.json): per-pad wire-attach data rides this, so importers can't place it programmatically.",+ "component is missing distributor number(s): mouser, lcsc (component.distributor_links). Sourcing tools (BOM panels, kicad-library-manager, parts search) key on these; add each real distributor part number, or set a distributor to false ONLY when the part is genuinely not carried there (e.g. \"mouser\": false)"+ ],+ "fixed": []+ },+ "hints": [+ {+ "level": "warn",+ "code": "LINT",+ "message": "component has no board/layout (.kicad_pcb or .brd): nobody can reproduce or re-fab the design from this page."+ },+ {+ "level": "warn",+ "code": "LINT",+ "message": "component has no schematic (.kicad_sch or .sch): the design can't be reviewed or reused, only the symbol/footprint can."+ },+ {+ "level": "warn",+ "code": "LINT",+ "message": "component has no footprint/symbol metadata (<name>_footprint.json / <name>_symbol.json): per-pad wire-attach data rides this, so importers can't place it programmatically."+ },+ {+ "level": "warn",+ "code": "LINT",+ "message": "component is missing distributor number(s): mouser, lcsc (component.distributor_links). Sourcing tools (BOM panels, kicad-library-manager, parts search) key on these; add each real distributor part number, or set a distributor to false ONLY when the part is genuinely not carried there (e.g. \"mouser\": false)"+ }+ ]+}
review/publish.jsonadded+108@@ -0,0 +1,108 @@+{+ "status": "ok",+ "data": {+ "published": "adom/usb4105-gf-a",+ "version": "0.1.0",+ "sha256": "sha256-de875df65118a6b4e2b61f26700bd7196b9466f2a63a80ee4e97f6c561520889",+ "visibility": "public",+ "url": "/adom/usb4105-gf-a",+ "install": "adom-wiki pkg install adom/usb4105-gf-a"+ },+ "hints": [+ {+ "level": "warn",+ "code": "PAGE_JSON_IGNORED",+ "message": "The tarball ships page.json carrying hero, but pkg publish does not read page.json: those fields did nothing here. Only the package.json manifest counts.",+ "action": "Move the fields into package.json (page.json is only read on page-repo pushes).",+ "data": {+ "path": "page.json",+ "tarball_version": "0.1.0",+ "publish_version": "0.1.0",+ "fields": [+ "hero"+ ]+ }+ },+ {+ "level": "warn",+ "code": "MEDIA_IN_TARBALL",+ "message": "hero.png (74 KB): page asset(s), not install payload -- 14% of this tarball is media every installer downloads on every update. Heroes and screenshots are served from the page repo (page.json), not the install tarball.",+ "action": "Remove them from the packed file set and republish. They stay on the page: the page repo keeps its existing copy when a new tarball stops shipping it. Only a brand-new page's FIRST publish needs the hero in the tarball (it materializes into the page repo once).",+ "data": {+ "files": [+ {+ "path": "hero.png",+ "bytes": 75525+ }+ ],+ "media_bytes": 75525,+ "tarball_bytes": 542521+ }+ },+ {+ "level": "info",+ "code": "NO_DISCOVERY_TRIGGERS",+ "message": "No discovery triggers are set, so AI agents are less likely to surface this component.",+ "action": "Add 'discovery_triggers' (phrases that should surface this package) to the manifest."+ },+ {+ "level": "info",+ "code": "WORKSPACE_FEATURE",+ "message": "This page can ship its author's Hydrogen bench: commit hydrogen/workspace.json (the pane layout with apps referenced by wiki page) and readers of a clone or fork open the same layout, apps installed and serving, with one command. Hydrogen Cloud lists it under Project workspaces with an Apply button.",+ "action": "From the container where the bench is open: adom-cli hydrogen workspace export --out hydrogen/workspace.json, then adom-wiki repo push adom/usb4105-gf-a -m \"bench\" --files hydrogen/workspace.json. Readers: adom-cli hydrogen workspace apply adom/usb4105-gf-a. Details: the wiki-workspaces skill.",+ "data": {+ "path": "hydrogen/workspace.json",+ "apply": "adom-cli hydrogen workspace apply adom/usb4105-gf-a"+ }+ },+ {+ "level": "warn",+ "code": "DISTRIBUTOR_NUMBERS",+ "message": "No mouser, lcsc part numbers on this component. Buyers and the parts widgets read component.distributor_links; a part with no numbers cannot be ordered from the page.",+ "action": "Add to package.json: \"component\": { \"distributor_links\": { \"mouser\": \"<Mouser part #>\", \"digikey\": \"<DigiKey part #>\", \"lcsc\": \"<LCSC C-number>\" } }. Use false for a distributor that genuinely does not carry the part (e.g. \"lcsc\": false) so the warning stops.",+ "data": {+ "missing": [+ "mouser",+ "lcsc"+ ]+ }+ },+ {+ "level": "warn",+ "code": "LINT",+ "message": "component has no board/layout (.kicad_pcb or .brd): nobody can reproduce or re-fab the design from this page."+ },+ {+ "level": "warn",+ "code": "LINT",+ "message": "component has no schematic (.kicad_sch or .sch): the design can't be reviewed or reused, only the symbol/footprint can."+ },+ {+ "level": "warn",+ "code": "LINT",+ "message": "component has no footprint/symbol metadata (<name>_footprint.json / <name>_symbol.json): per-pad wire-attach data rides this, so importers can't place it programmatically."+ },+ {+ "level": "warn",+ "code": "LINT",+ "message": "component is missing distributor number(s): mouser, lcsc (component.distributor_links). Sourcing tools (BOM panels, kicad-library-manager, parts search) key on these; add each real distributor part number, or set a distributor to false ONLY when the part is genuinely not carried there (e.g. \"mouser\": false)"+ },+ {+ "level": "info",+ "code": "PUBLISH_LAYERS",+ "message": "published the package layer (the install payload: manifest + scripts + bundled skills). The page git repo (Files tab) is a SEPARATE layer and is not synced by publish.",+ "action": "host source by pushing files into the page repo (never a source tarball); ship downloadable per-platform binaries with `adom-wiki release upload <ref> <ver> <file> --platform <os>`"+ },+ {+ "level": "info",+ "code": "SKILL_LAYOUT",+ "message": "shipped 1 user skill(s) in the install tarball",+ "action": "build/debug/test skills go in dev-skills/, app->wiki publish skills in publish-skills/ -- both are auto-excluded from the tarball and belong in the source repo (repo push), so you don't ship them to every install",+ "data": {+ "user": 1,+ "dev": 0,+ "publish": 0+ }+ }+ ]+}
review/symbol-native-check.txtadded+1@@ -0,0 +1 @@+OK: usb4105-gf-a.kicad_sym validated — 17 pins, 0 unique pin names