KiCad - the KiCad Bridge
Public Made by Adomby adom
Drive your own KiCad from an AI, in the background: open every editor, read the whole board as data (the EDA Bridge Standard board model), stack-up, part heights, netlists, place, route, pour, DRC and exports.
Report missing or unverified 3D component models with automatic diagnostics and AI hints
KiCad 10.0.5; KiCad Bridge running 0.9.348 at initial observation, cache automatically advanced to 0.9.349 during the read-only recheck (state replies label 0.9.349); embedded pcbnew plugin 0.9.2; Adom Bridge 2.1.82; Hydrogen 1.0.297; Windows desktop, Linux CLI caller. No runtime was manually upgraded for this report.
The TMF8829-1A footprint's 3D viewer renders a board, exposed pads and silkscreen, but no sensor body. The user independently noticed the same failure. Please add automatic model diagnostics and actionable AI hints to the relevant show/state/export replies, rather than leaving this important distinction entirely to screenshot interpretation.
Reproduction observed on the live Adom:TMF8829-1A Footprint Editor:
- The saved footprint has
(model "TMF8829-1A.manufacturer.step"), offset [-0.000081, 1.391917, 0.1827] mm, rotation [0,0,-90], scale [1,1,1]. The original manufacturer STEP was copied beside that footprint. This does not establish that KiCad resolves a bare relative filename there. - Open/refresh its native 3D viewer. The attached background capture shows bare pads and no package body. SMD Models and Virtual Models appear enabled in the appearance panel. Exact cause is still under investigation; we are NOT asserting that a missing file is proven.
kicad_state {"includeImages":false}returnssuccess:true,running:true, a 3D Viewer window and no modal dialogs.kicad_errors {}returnssuccess:true,count:0,dialogs:[]. Neither provides model coverage/load/visibility status or a missing-body warning. State success legitimately describes a successful read; it must not imply model validation.- The current
kicad_describeshow_3d_chip/show_3d_board/state contracts provide window/render timing hints, but no model health contract. Screenshot review currently catches the failure.
Requested contract (field names illustrative):
- Associate each viewer with its exact document revision and qualified library:footprint identity, including unsaved editor state. Avoid accepting another library's same basename.
- Report expected physical models per footprint/component, reference count, original paths, paths resolved using the actual KiCad project/environment/alias context, existence/readability, and enabled/hidden/DNP/model-class state.
- Separate file resolution, parse/load result, nonempty geometry, and actual viewer visibility. A present model clause or existing STEP file is insufficient. Where render/load introspection is unavailable, return
renderVerified:false/unknownand the next background capture/check action, rather than success-by-assumption. - Include structured warnings and concise AI hints for zero model references, unresolved path/environment variable, unreadable or corrupt STEP, disabled model class, empty geometry, implausible scale/placement or stale viewer. Distinguish an intentional no-model footprint with an explicit exemption/reason; do not warn on ordinary test pads as if every footprint requires a chip.
- Attach relevant diagnostics automatically to show_3d_chip, show_3d_board, state and model export/install responses, or include a concrete follow-up diagnostic verb. Keep this read-only/background: never foreground the user's window or alter their visibility preferences to diagnose it.
- Cover fixtures for no reference, unresolved relative path, valid file, corrupt file, disabled class, intentional no-model, and model-present-but-render-unverified. Verify the exact requested identity and avoid treating board substrate/pads/silk as the component model.
Acceptance: on this bare-pad TMF8829 scene, an AI receives a clear warning or explicit unverified model state plus the next check without needing the human to spot it; after repair, file/model/render checks report separately with evidence. Model placement/orientation still requires independent parity review.
Duplicate check: existing #25/#26 cover opening the 3D surface/fallback; #42 covers wrong-part success. No existing model-coverage diagnostic issue was found. This is a requested diagnostic feature, not a claim that the bridge caused the unresolved model attachment.

