Circuit-Synth: Professional Circuit Design - Python + KiCad + AI

Hey KiCad community.

I wanted to let everyone know about a project I’ve been working on called Circuit-Synth, which enhances traditional KiCad workflows with Python-based circuit design and optional AI assistance.

Similar to Skidl (Huge shout out to @devbisme for the inspiration!), Atopile, or TScircuit, but designed specifically for professional EE workflows and a few differentiating features:

Traditional EE Focus

  • Seamless KiCad integration - Works with your existing projects and workflows
  • Professional schematic generation - Clean, readable schematics that look hand-drawn
  • No lock-in - Full bidirectional KiCad ↔ Python updates. Use it where helpful, ignore it where not
  • Transparent workflow - Fits into existing design processes without disruption
  • Manufacturing ready - JLCPCB integration for component availability and assembly optimization

Modern AI Enhancement (Optional)

For teams wanting to accelerate their workflow, Circuit-Synth includes extensive Claude Code integration:

  • Intelligent component search - “Find me an STM32 with 3 SPIs and USB”
  • Design review and optimization - AI-powered circuit analysis and suggestions
  • Automated documentation - Test plans, DFM review, FMEA generation
  • Design history tracking - Never again wonder “Why did we pick that component?”
  • KiCad plugin integration - Direct AI assistance from within KiCad (thanks @BlackCoffee for this creative approach!)

Core Philosophy

Start simple, scale as needed. Use Circuit-Synth for specific pain points (initial circuit design and component placement, design review, netlist verification, hierarchical design) or go full-automation with AI agents. Your choice, your pace.

Whether you’re looking to reduce tedious manual work in traditional workflows or explore cutting-edge AI-enhanced design, Circuit-Synth adapts to your needs.

Thanks for taking a look! Would love to hear your thoughts and suggestions!

https://github.com/circuit-synth/circuit-synth

4 Likes

Just to note:

  • Version Control Friendly: Git-trackable Python files vs binary KiCad files

KiCad files are not binary, they are ASCII-based as well.

Your post and the readme read as if they are written by AI. Maybe you want to write it yourself, because this style of writing might make it sound like AI-slop instead of a neat tool

4 Likes

Also I don’t believe half your features will work worth a damn given the current state of AI.

Why don’t you provide an actual demonstration in your README rather than an AI-generated list of basic commands.

3 Likes

There are far more claims about things your tool can do than examples showing what the tool does. I would suggest adding more examples.

The example in the readme seems to show starting a new project from scratch. You might want to show how it works with existing projects and workflows.

This is a big claim since I haven’t seen a tool do this yet. But I couldn’t (quickly) find an example showing off this capability?

Not that this is a bad feature, but I find it amusing that you are mentioning “professional” use in several places but your manufacturing integration is with perhaps the least professional PCB vendor out there :slight_smile:

1 Like

image

Thanks for the warning!

Please note: the previous comment is meant to be sarcastic.

On a more serious note, it would be better to have a small amount of useful documentation rather than pages of high entropy AI generated documentation.

1 Like

Thank you for the feedback! Totally agree on all the points. There’s a lot of features I’m still working on and a fair amount of AI slop to clean up.

But the core logic works well enough to test so I wanted to share and get feedback. I will make more demo videos and update documentation.

@halachal I was surprised how well Sonnet 4 is able to piece together decent circuits with minimal context. It’s not replacing any EE’s yet but outputting a viable board with stm32 + sensor + proper usb circuit is a decent start.

@craftyjon don’t hate on JLCpcb!! :laughing: I’ve made 100+ designs with them professionally from 4 to 10 layers and not had issues. But I agree something like Digikey api integration would be more “professional”.

I agree it’s a promising start, but claiming to offer things like this

  • Design review and optimization - AI-powered circuit analysis and suggestions
  • Automated documentation - Test plans, DFM review, FMEA generation

is IMO deceptive and will just lead people to write off the potential of AI, given the quality of the output today.

1 Like

JLCPCB is unicorn in making low volume pcbs. They panel different projects together to make sampling PCB incredibly inexpensive.

1 Like

It is not really about “issues”, it’s about what professionals need. JLC has certain requirements that basically no other fab does, in order to offer super low prices (which is very attractive to hobbyists). But once you get into the professional world, those requirements become a real pain point compared to basically any other vendor.

This is an important point. The documentation has so much AI slop in it that it really reduces the confidence in the project. I would clean it up before putting it out, or at least call it a wish list instead of a feature list or documentation.

John

This is something I have been looking forward to for a while now. I have been imagining how AI might integrate into the KiCAD workflow, because I have personally seen how quickly the quality of AI outputs from coding assistants have gotten in just the past few months alone. From what I’ve seen on the KiCAD forum, there is a very anti-AI sentiment among the community. I think some of that sentiment is well-deserved, but we should be cautious that we don’t get to the point where the mantra is “AI will never work for this application…etc. etc.”

It’s only a matter of time until a model is trained on enough circuit design and PCB layout patterns to contribute meaningfully to the EE design process. I remember talking to a senior software engineer a year or two ago claiming that AI will never be able to code and now look at where we are. I use AI to rapidly bring up prototype software way faster than I could otherwise.

I say all this to be an encouragement. There are many poor implementations of AI, plenty of AI slop (as others here have noted), and a lot of negative perception, but keep up the effort. Even a 5-10% efficiency gain in my EE design workflow would be incredible.

1 Like

That’s all true, but it requires honest evalution and presentation of the AI capabilities.

Rather than jumping all-in and trying to make AI perform the role of a design engineer (which it currently can only provide a facade of), first implement those small quality of life aids which it is already suited for.

2 Likes

AI cannot code . . . sorry, let me correct myself, “AI” cannot code. AI in this respect is LLM so it effectively just giving you someone else’s code that it’s algorithm suggests might do the task you are asking for.

I think Schematic design and PCB layout are different to writing code . . .

Very happy to be proven or shown to be wrong in due course.

Nah. Are you a software engineer?

LLMs absolutely can code, and what’s more they are better at it than the majority of junior applicants I’ve interviewed.

“Schematic design” is a very broad term so at its widest it’s far beyond the current state of AI, but narrowly focused tasks like “connect this MCU to this LCD” or “design a buck converter for 24v to 5V” are within reach of a specialized LLM.

Similarly, the vast majority of layout is following pretty basic rules and could be cracked by someone willing to devote enough resources to training.

3 Likes

So the LLM creates original code, in a new novel way ? is that what you are saying ?

1 Like

It’s certainly more original than that argument in 2025.

4 Likes

So copying someones design then. Likely to be using application notes, but we also see these LLMs trying hard to access proprietary files on peoples PCs.
I often use application note circuits as a starting point, but you need to understand the circuit to spot the typos and drawing errors, which are common.

A good example of the “Power of AI”, would be a plugin that allows you to co-operatively route a given single ratsnest via some proposed options that “look good” to the AI:

Maybe with some options that adjust nearby tracks.

Choosing a good route is a classic “AI” problem in the original sense of A* algorithms and so on. Literally many early AI papers are on exactly the problem of PCB autorouters. Layout is rather “vibes based” in that a experienced layout engineer just kind of knows where to go and nearby things have a kind of fuzzy almost-statistical effect on things.

Choosing suitable parts, also a good ultra-high-dimensional optimisation problem, but most LLMs struggle heavily at this because part numbers are statistically similar, but have massive effects, and what a specific number means is often not clearly specified. Even if you do have a datasheet-understanding model, and a good, accurate datasheet. Plus a huge number of application constraints, from LCSC or your CM’s stock to trading off known verified designs you’ve used against cheaper prices or lifetimes.

Both these problems are examples of things that are theoretically ripe for AI integration and promise substantial, perhaps even revolutionary, efficiencies to jobbing design engineers, but also don’t lend themselves very well to a simple ChatGPT wrapper as they aren’t really language. They probably (and I could be wrong, the Bitter Lesson of AI and all) require actual AI research of their own to solve rather than piggybacking on a stock language model. Not only that, they’re very tricky UIs to get right, or they just get in the way (just like AI code helpers often do, IMO). They’re also things people have been trying to solve for decades and they certainly haven’t stopped trying yet. On the other hand, KiCad provides a really good platform for many great tools opportunities, especially right now, on the PCB side due to the API.

As for “circuit as code”, basically no-one except software engineers to whom everything is a coding nail and project managers who understand that hardware exists in the desert of the real but really wish it didn’t, is asking for end-to-end vibe-drawn linear power supplies or an ESP32 plus a button specified in some custom Python/JSON syntax. It’s just not a problem the actual designers really have. Getting a verified design that you know works for your application? Yes, you’ll get your hand bitten off. Getting a design that statistically sounds like it should work on paper? Not so much, that’s actually of negative value.

Remember that hardware has at least a week cycle time, more like a month, and it costs real money. You can vibe code all day long and have unit tests and compilers and CI to promise you it’s all working every step of the way. It might even actually do what you want. But in hardware, if that diff pair doesn’t work when the board is on your desk, that PCB is scrap.

My advice is first find out what problems your hypothetical users have. And who those users are. And then blow their socks off with something that saves then tons of time today.

If your customer is someone who wants to replace their expensive design engineers (or, these days, design contractors) with a 100 dollar-per-month subscription and a single entry-level prompt jockey, you may well be able to sell them a bridge, but you probably won’t find them here.

7 Likes

Yes, they can code but they do it pretty poorly. They will be a great boon to experienced programmers, who will get plenty of work fixing the bugs and security holes, once people start paying attention.

That’s a low bar. Auto code generators back in the 80s were better than today’s entry level coders.

Genuinely curious, which AI coding assistants have you used, and how did you come to this conclusion? I ask because I’ve leveraged multiple of the top “AI” (or rather, LLM, I agree with you there) to create many tools for my own workflows and prototype software for testing initial builds of my hardware. The value-add is undeniable.

If LLMs are just “giving you someone else’s code”, then 80% of what we are doing is the same thing…Very few of us living in this generation have added anything fundamentally novel to the field of EE. We are all standing on the shoulders of those who came before us, learning from their discoveries. LLM can be no different, provided proper ethical, moral, and IP protections are in place. Let’s be careful in the way that we point the finger at LLM and say “AI just copies other people’s work!” when human coders and engineers have been “copying” the best methods from their mentors for years. This is just the nature of progress as information disseminates out to the masses…(in before someone says I am anti copy-right and IP protection cause I know it’s coming…)

I understand your point. However, how many unique circuits are any of us developing after standing on the shoulders of the giants who came before us? You say “copying” to imply plagiarism and to bring to mind theft. I am against plagiarism and theft. Is it plagiarism and theft to design a BJT amplifier that has been well documented in text books and open source material for decades? What difference does it make if I use reference material to design a circuit versus an LLM? The difference is time. The LLM can help accelerate schematic and PCB layout for well-known, understood, and generally accepted “standard” circuits so that we, the EE designers, can focus on more of the fun stuff.

My intent is not to criticize you personally, but your comment is exactly the kind of comment I was referencing in many of these forum posts within this community. The use of LLMs as a tool is nuanced. Is your work only valid and valuable when you create something completely novel? How do you justify the years of EE design effort that you put forward knowing that you have been pulling knowledge from what others taught you in school, what you’ve read in books, white papers, data sheets, application notes, and mentors? You add value by being able to bring all of this information to bear upon a new problem or new application. You are effectively an LLM with a soul.

2 Likes