Guide
How to make a PCB schematic with AI
A step-by-step walkthrough: describe a circuit in plain English, have an AI agent place the parts and wire the nets, check the result, assign footprints and push it through to a board.
Last updated
This guide goes from an empty sheet to a checked schematic with footprints assigned, ready to become a board. It uses Schema, where the AI agent works by issuing the editor's own commands — so every step below is something you can watch happen, and something you could have typed yourself.
The important idea: you are not asking a model to draw you a picture of a circuit. You are asking an agent to operate a schematic editor, and then checking its work the same way you would check a colleague's.
Before you start
Install Schema and make sure it can see some symbol libraries. If you have KiCad installed, its libraries are usually found automatically; if not, add them yourself.
- Schema is a desktop application — macOS on Apple Silicon, or Windows or Linux on x86-64 or arm64.
- Symbol libraries are .kicad_sym files; footprint libraries are .pretty directories.
- Open Manage Libraries to add either. Directories are loaded in the order shown, so a directory higher in the list wins a name clash.
No libraries, no schematic
Step 1 — Describe the circuit
Describe what you want in ordinary language. Be specific about the parts you care about and let the agent choose the rest — it is much better at "a 3.3V regulator with input and output caps" than at guessing which of four voltage rails you meant.
> an STM32G031 on 3V3 with decoupling caps, an 8MHz crystal
with load caps, a SWD header and a 5V-to-3V3 regulatorA description that names the rails, the interfaces and anything with a specific value will get you much closer on the first pass than one that says "a microcontroller board".
Step 2 — Watch it place and wire
The agent works through the same commands the editor exposes to you. A typical sequence looks like this:
place_symbol MCU_ST_STM32G0:STM32G031F8Px U1 auto 100 80
place_symbol Device:C C1 auto 120 90
connect C1 1 3V3
connect C1 2 GND
place_power 3V3 100 60
place_power GND 100 110
validate
→ 0 errors, 0 warnings- place_symbol puts a part on the sheet. Passing auto as the reference designator asks for the next free one, so the agent does not have to track numbering.
- connect puts a pin on a net, landing at the nearest point of that net — often a short stub rather than a wire across the whole sheet.
- place_power drops a power or ground symbol. Every power symbol driving the same net name is one net design-wide, with no wire between them.
- validate checks the document invariants and reports what no longer holds.
Why connect rather than draw_wire
Step 3 — Check the work
This is the step people skip, and it is the one that matters. An AI-generated schematic is a strong draft, not a result.
- 1Run validate to catch document problems such as stale junction dots left behind by edits.
- 2Run nets to list every net, its members, and whether its name is unique. Two different nets can legitimately share a name, and this is how you find out that has happened.
- 3Read the net list against your intent — this is the part only you can do. Check that every power pin is on the rail you meant, and that nothing has merged into a net it should not be on.
- 4Use why_connected when something is on a net you did not expect and you want to know which wire caused it.
The check that catches the expensive mistake
Step 4 — Assign footprints
A schematic cannot become a board until every part has a footprint. Footprints are set as a field on the symbol:
set_property U1 Footprint Package_QFP:TQFP-32_7x7mm_P0.8mmIf you do not know the footprint name, search for it by description rather than trying to remember the exact string. The search is semantic, so package synonyms work in both directions — "8 pin small outline" finds SOIC-8, and "0805" finds R_0805_2012Metric.
search_footprints 8 pin small outlineThis is the gate
Step 5 — Push it to a board
With footprints assigned, create the PCB from the schematic. The netlist comes across as a ratsnest — the set of connections that exist electrically but have no copper yet.
list_unroutedFrom here the board work begins: place the footprints, route the copper, pour the ground plane and run a design rules check. The agent can do those steps too, through the PCB editor's own commands.
Frequently asked questions
Can AI design a whole PCB schematic on its own?
It can produce a complete, checkable first draft of a conventional circuit — a microcontroller with decoupling, a regulator, a common sensor bus — and it can run the electrical rules check itself. It cannot replace review. The workflow that works is agent drafts, engineer reviews, agent revises.
How long does it take?
The placing and wiring of a conventional design takes a couple of minutes. The reviewing takes as long as reviewing always takes, and that is the part worth spending time on.
What if the agent picks the wrong part?
Change it the way you would change anything else — delete_symbol and place_symbol, or set_property to change a field. There is no separate "AI mode" to leave; the result is an ordinary schematic.
Do I need KiCad installed?
No, but if you have it, Schema will generally find its symbol and footprint libraries automatically, which saves setting them up. Otherwise point Schema at whatever libraries you already use.
More guides
Try it on your own board
Free to start on macOS, Windows and Linux. Reads your existing KiCad and Altium libraries.
