AI that engineers a circuit, not AI that draws one.
Ask a language model for a schematic and you get a drawing that looks right. Typmax inverts the loop: the model is the planner, deterministic code is the engineer, and the datasheet is the authority.
The verifier is the product. The model is a commodity front-end.
In the arXiv preprints: on HWE-Bench (arXiv:2603.18102) the best model tested gets 8.15% of schematics fully correct. NetlistBench watches multi-turn SPICE-netlist editing collapse from 80% at three dependent edits to 26% at fifteen. And PCBSchemaGen, holding the model fixed and adding a verifier, moves the same backbone from 41.9% to 81.3%. The third number decided the architecture.
So the model never touches KiCad files, never holds design state, and never recalls an engineering rule from memory. It proposes small, typed changes to a structured design document. Everything that decides whether the board works is code, data and arithmetic — and every one of them arrives with its source.
Nine principles we don't trade away.
No bare numbers
Every physical value carries min/typ/max, units and test conditions. Arithmetic goes through a unit engine. A bare float in a record is a bug.
Rules are data
Formulas and constants live in interface definitions with their authority cited. A protocol constant is never hardcoded — MCP73831 programs at 1000 V / RPROG, TP4056 at 1100–1200.
Provenance is mechanical trust
Fields are tagged datasheet / vendor_db / llm_extracted / inferred / human. Report trust degrades automatically. An llm_extracted record is never presented as verified.
Capability ≠ binding
The catalog says what a pin can do; the design says what it is doing. The engine checks that join on every validation — including ESP32-style mux matrices.
Typed mutations are the only write path
30 typed ops with optimistic concurrency. Whole-design regeneration by a model is impossible by construction. Every batch is followed by full re-validation.
Nets are derived, never authored
Pin-level nets come from buses, connections and rails at compile time. Net-identity drift is structurally impossible.
Findings show their work
Computed intermediates, assumptions cited, unverified inputs listed, source authority named, plus a machine-actionable fix hint.
KiCad compatibility is load-bearing
Pin types are KiCad's twelve-value enum verbatim. Export is always ungated: you own your files, in your tool, from day one.
Risk domains force human review
LiPo charging, mains, motor drive. Deterministic checks are necessary, not sufficient, there. This never gets softened.
A KiCad project, compiled — not drawn.
The compiler emits record-true symbols, label connectivity and a block hierarchy into one KiCad project, with path-derived UUIDs and an independent S-expression cross-check. KiCad's own ERC runs on it in CI.
Being honest: making that schematic pleasant to read at a glance is what we are building now. Generated symbols and motif-assigned designators still look like what they are.
Want the version of this with the numbers in it?
Join the waitlist and we'll send the technical write-up as it's published, plus the weekly changelog.