Text to PCB: How a Prompt Actually Becomes a Manufacturable Board
DEV Community

Text to PCB: How a Prompt Actually Becomes a Manufacturable Board

The Two Halves of PCB Design

"Describe a circuit board and get a finished PCB" is the kind of claim that makes engineers close the tab. And they are right to be suspicious - most of the time, "AI designs your PCB" means a language model produced a plausible-looking picture that no fab would accept.

So let me skip the pitch and explain how a prompt can actually become a manufacturable board, and where the line is between the part that works and the part that does not.

The one insight: designing a board is two different jobs. A PCB design has a judgement half and a measurement half, and they need completely different tools.

The judgement half is choosing parts and deciding how they connect. What regulator suits this input range and load? Which microcontroller? Does this sensor talk I2C or SPI? This is language-shaped reasoning over a huge body of prior art - exactly what large language models are good at.

The measurement half is everything physical. Where does each component sit on a board with real dimensions? Does this trace clear that pad by 0.15 mm? Can these nets be routed across four layers without crossing? None of that is a matter of opinion. It is geometry and hard constraints, and it has an objectively correct answer that you can check with a ruler.

The mistake almost every "AI PCB" demo makes is asking one tool - the language model - to do both halves. It cannot do the second one. It has no way to measure whether a trace meets clearance, so it estimates, and an estimate is not a board.

What the Pipeline Actually Looks Like

Split the two halves and the flow becomes honest:

  • You describe the board. Plain English: "an ESP32 sensor board with USB-C power, a LiPo charger, and two Qwiic connectors."
  • The LLM drafts intent. It selects parts and proposes a netlist - the judgement half, where it is strong.
  • A deterministic engine builds the board. It places the components and routes the copper. This is a classic geometric search against hard constraints - the same category of software as a traditional autorouter and design-rule checker, not a text generator.
  • It checks and exports. A design-rule check runs, unrouted nets are reported by name, and the result exports to Gerber, drill, pick-and-place, and BOM.

The AI decides; the engine proves. That division is the whole reason the output is buildable rather than merely convincing.

Why the Routing Has to Be Deterministic

There is a second, subtler reason to keep routing out of the model's hands: reproducibility.

If a language model "routes" your board, the result changes with temperature, with phrasing, and with every model update. Run it twice and you get two boards. That is disqualifying for hardware, where you need the same input to produce the same output every time.

A deterministic router does not have that problem. Same design in, same board out - and it does not drift when the model behind the judgement half is swapped or upgraded.

The reproducibility is not a nice-to-have; it is what makes the tool trustworthy.

The Honest Failure Mode

No router completes every board, and any tool that claims otherwise is lying to you. The useful question is what happens when it cannot finish.

The wrong answer is a completion percentage - "94% routed!" - that hides which nets failed. The right answer is to name the exact nets it could not route, because that tells you what to fix.

And most of the time the fix is not a smarter router; it is placement. Two connectors at opposite corners with a dense IC between them cannot be recovered by any routing algorithm. Naming the stuck nets points you straight at the components to move.

Where This Leaves "Text to PCB"

It is real, but it is not magic, and the honest version is more useful than the magic version:

  • The LLM turns your description into parts and a netlist - a strong first draft you review.
  • A deterministic engine does the placement, routing, and rule-checking - the part with a correct answer.
  • You get fabrication files a fab will actually accept, or a precise list of what could not be finished.

If you want to watch a prompt become a placed, routed, checked board, PCBEditor does exactly this in the browser - describe a board, and it drafts, places, routes, checks, and exports.

Read on DEV Community ↗ ← Back to News

Comments

No comments yet. Start the discussion.