adom-project-manager
Public Made by Adomby adom
Adom Project Manager — browse your wiki boards/projects (Personal / Organization / Public), view symbol + footprint + 3D and the per-EDA footprint layer stackup, explore the board and schematic in INT
Board render (--render-board) only fetches .kicad_pcb/.kicad_sch — components with non-stock 3D models (vendor / project-local ${KIPRJMOD}/3d/) render blank
Symptom
In the board 3D render (service-kicad → render/board.glb), a component whose footprint 3D model is NOT part of service-kicad`s built-in stock KiCad library renders as a flat footprint (no body). Stock parts render fine (LQFP, 0402 caps, 0603 inductor, etc. all show bodies); a vendor QFN did not.
Root cause (traced end to end)
adom-project-manager --render-board <slug> fetches ONLY the board/schematic sources into its work dir and leaves the model resolution to service-kicad`s own KiCad stock 3D libraries:
/tmp/adom-lbr-apply/glb-<slug>/
board.kicad_pcb <- the only file fetched
3d/ <- EMPTY
So:
${KICAD*_3DMODEL_DIR}/...refs resolve ONLY if that exact model ships in service-kicads image. A stock QFN-64 (Package_DFN_QFN.3dshapes/QFN-64-1EP_8x8mm_P0.4mm_EP6.5x6.5mm.step) did NOT resolve even though the equivalent LQFP/Capacitor/Inductor/Resistor models did — service-kicads stock set appears incomplete (or the image is stripped).${KIPRJMOD}/3d/<model>.steprefs NEVER resolve, because the render work dir does not fetch the page repos3d/folder (or any referenced model files) at all. I shipped the STEP in the repo at3d/LAN9370-I_KCX.stepand referenced it as${KIPRJMOD}/3d/LAN9370-I_KCX.step; the render work dirs3d/stayed empty and the body still didn`t render.
Proof its not the board: three different model refs for the same footprint (absolute path, ${KICAD10_3DMODEL_DIR}stock QFN,${KIPRJMOD}/3d/` project-local) all produced a BYTE-IDENTICAL board.glb (4030476 bytes) with no body for that ref. The footprint is a normal SMD part (not DNP/hidden). service-kicad was healthy the whole time (KiCad 10.0.2).
Request
For --render-board, fetch and stage the model files the board references so service-kicad can resolve them — specifically:
- Pull the page repo
s${KIPRJMOD}/3d/(and any other referenced project-local model paths) into the render work dir alongsideboard.kicad_pcb`, and - Optionally ship a complete stock 3D-model set in the service-kicad image (so
${KICAD*_3DMODEL_DIR}refs for any standard package resolve).
Without this, every board with a vendor part (SamacSys/Ultra Librarian/manufacturer STEP) shows that part blank in the PM 3D view — the common case for real designs.
Environment
- adom-project-manager 0.3.3, service-kicad 0.0.1 (KiCad 10.0.2)
- private org board, hierarchical schematic, 33-part PCB; the affected part is a Microchip LAN9370 in a QFN-64
- Reproduced + traced 2026-07-10