Ask Me Anything with Kirsch Mackey (AI and PCB design)

Post your questions about AI and PCB design and Kirsch Mackey will answer on April 3rd!

Hi kirsch. Have you seen design tools that really improve the layout with AI? It seems like every software company has released a bunch of AI options but are they really working?

Have you tried deepPCB? It supposedly helps with routing and can handle cmplex boards. I wonder if it’s worth it.

You know what would be great - something to help with component selection and sourcing. :slight_smile: Especially in terms of availability and cost. Seen anything like this?

I’ve heard some people mentioned they use Flux Copilot (or Flux AI, not sure about the name) but haven’t tried it myself.

I tried the copilot months ago and my conclusion is that their AI can summarize a datasheet. That’s pretty much it. This is my opinion but at the time they couldn’t generate an actual functional board. At least not without the help of a designer. Maybe that changed since then.

1 Like

I’d like to ask Kirsch if he has used/seen any AI that can predict potential manufacturing defects or yield issues?

1 Like

Can I ask a question, too? How do AI-driven design assistants help PCB designers explore design alternatives and optimize design parameters?

Hello Kirsch. Do you know if AI can be used to analyze and optimize thermal management and prevent overheating?

Hi Throme. AI can definitely be used for that. It depends on the application I’d say. For example, my background started in control of power switching converters. The controller typically takes the state-space representation/model of the system to gauge certain control weights it needs to stabilize the system. In addition, you can have the controller account for disturbances in the system around said circuit. One of those disturbances can be change in temperature outside a desired range. A simple example is throttling of CPUs in computers. However, that’s an opportunity for AI to change the controller’s behavior (or be included in, or somehow adjust) the weights within the controller algorithm to adjust the switching of the converter dynamically. Ideally with more intelligence. AI takes then, the standard classical and modern control methods to another level.

Another example is how graphical processiing units that are running heavy AI models and operations (pretty great at heating up those PCBs!). Engineers choose certain models to run on certain hardware that they know won’t run as hot. This is good, but there are opportunities to have a monitoring AI (or self-monitoring one) take ambient and surface temperatures into account using sensor input to then speed up, slow down, shut off or activate an X number of ‘threads’ in the GPUs to manage that behavior. This is opposed to a hard limit. In fact it’s not much different from a human upgrading the cooling, then overclocking a CPU because said human knows what the chip can and should handle. Except now this change is condensed to real-time and the human has been replaced with the monitoring AI.

A third example is cooling in laptops (like the one I’m using now). Dynamic cooling to control fan speeds during increased use…while our computers do this real-time with CPU and GPU data transfer changes, AI can be used in the system to predict the likelihood that the user will follow his/her routine. For example, I like to do some gaming in street fighter 6 on certain nights on my machine. while i’m not sure how helpful it will be, since i’m not a thermal expert, I think pre-cooling the chip before it knows I’ll get on the machine, or when the OS sees me open a specific set of apps that i normally use before starting the game, can send instructions to cool my machine before i start SF6. this is one very specific example, but this principle can be applied to anything where the user has a pattern of behavior.

even in simulation, like Fusion 360’s thermal simulator, I’m not sure this exists yet, but AI should be able to take in certain environmental conditions for what the device/PCB should be placed in. Then recommend components, stackups, materials, and cooling methods (heat sinks, etc.) based on past information from thermal conditions in previous projects with a similar chip.

2 Likes

Great question here. AI-driven design assistants help PCB designers explore design alternatives by:

  1. creative exploration by consideration of factors that might be outside the scope of the engineer’s expertise (like UX restricted design for EEs). For example, a lot of my senior design students back in my GTA days hadn’t considered user experience (UX) in their PCB projects.

They were fixated on an LED strip but the battery and circuitry they needed was far too large to be wearable for the user. They then changed their project to a lighting show. Had they an AI that would limit their component selection and power supply demands to light and small enough batteries, chips, etc., then they could design within limits.

An example of this kind of AI assistant design is found in CircuitMind to an extent (one still has to put in the electrical limits). You input your electrical requirements (like needing to operate between 3V to 12V) in normal design.

However, AI can and should be used to allow inputting user requirements that can translate to electrical operation/requirements. Something similar would be CELUS (relies on AI and design reuse blocks for designs that are tagged with similar descriptions).

  1. AI that has awareness of component placement and decision-making from component datasheets can help the designer catch problems before they happen. In fact, an excellent example is the AI copilot in Flux.ai. It does an excellent job at suggesting circuit implementation based on a single question within the user interface. This pre-decision making is useful.

Another example is post-schematic review by AI. The AI would look at the circuit (the netlist would be easier to process), then give feedback on what to change and update based on a database of component parameters and behavior. Even something as sophisticated as graphs inside the datasheet for the part, a neural network to help with image recognition can help the AI infer a good or poor decision made in the schematic.).

An example is CADY Solutions’ AI tool that reads in netlists, has a database of datasheets for components, then highlights the pitfalls made in the design. This is most critical for hardware design, because the perfect pcb layout can never fix a wrong electronic design.

  1. Component placement. An absolute pain to deal with because of all the considerations to ease routing: thermal considerations, data transfers, signal integrity, EMC, analog vs digital, crosstalk considerations (i.e. whether a bus that will be routed will have enough space to avoid crosstalk among certain critical traces, etc.). If component placement can be optimized for routing beforehand, that cuts routing time by insane amounts.

This is what Cadence’s Allegro X AI system does. However, engineers may not like or prefer the placement done by the AI. This means that using AI tools to monitor other AIs with respect to different domains might be the better approach. Cross-domain communication and comprehension per AI. I call this AI Cognition Overlap.

AI can help with PCB stack-up recommendations to improve EMC (I use GPTs sometimes for this, to get me started).

Form factor is another consideration based on application and need that has to be met by one’s product or design.

It can also help by analyzing IPC standards or best practices to just give reminders and recommendations on what decisions to make and not to make.

There are more possibilities, but it would be wise for me to issue an NDA before sharing lol.

1 Like

Hello Nixx,

I have not yet used an AI that can predict these things. However, I’ve used 3 software that can without the use of AI.

  1. The OrCAD DFM Wizard (it takes existing data from manufacturers or from the designer), then spits out DRC errors where those rules are violated. If adhered to strictly, then that results in a high first-time pass rate for a PCB design. I demonstrate this in the second project of my Apple Hardware Engineer course. The user submits the design and the manufacturing error rate is 0 for a first-pass design.

  2. PollEx PCB DFM. Same as OrCAD DFM Wizard, but has far more checks, considerations, etc.

  3. Altium DFM Rules. Same concept as above. However, certain rules don’t exist as they do in PollEx PCB DFM tool.

It would be nice to use an AI that has such capabilities.

As a note, however, while AI can greatly improve this experience, the manufacturing of PCBs to me seems nearly 100% set in stone, and therefore rule-based. Kind of like implementing a formula. If the AI doesn’t get sufficient data from said manufacturer, then it won’t recommend the right things. So a rule-based approach is more appropriate - like the above examples.

However, I think I see where you’re coming from with this question, because what if we could tell an AI to use the rules from a manufacturer and ask it to make recommendations or real-time suggestions during PCB layout so that we don’t have to set the rules in the first place? That would be a nice bit of a game-changer. Such tools might exist, but if so, I have not used them. If they don’t exist and someone spawns said idea after reading this, please provide credit :smiley:

1 Like

You know so much you should write an article on AI for PCB design for our blog! :smile:

That’s my understanding as well. My more recent viewings of their co-pilot is that it’s much more intelligent now. Check this out:


Case in point it can take a general request (intro project for pcb design) and spit out specific chips, components and values. So it looks like they’ve overhauled copilot.

In addition you have these options available for questions:


So it also looks like they’ve made co-pilot EE specific in it knowledge and expertise. It’s worth taking a look at. I think I’ll make a tutorial series on this tool, as it looks promising.

As for generating a functional board on its own, it doesn’t seem capable of that yet, like you stated. However, this is a good start (I could also not be using that feature if it’s available. So far it doesn’t seem to do that on its own).

1 Like

Lol Yes I’d love to.

1 Like

Hi Ravi, yes I’ve used it a bit as well and it’s quite promising. I would personally prefer different shortcut keys than the default, but it does look promising. I’d be wary of using existing designs fully, but also definitely make use of them for ideas and as a launchpad for my own designs.

To the point on yield. Not yet for yield issues. I think there’s a tool by Siemens (which was made by Mentor before Siemens bought them) that was being tested in the cloud, that could speak to yield possibly, but not really.

Ah, Silicon Expert’s software tool uses AI that knows and predicts supply chain related issues. That is one of the factors that could help to predict yield. I imagine that if one were to have their tools combine the supply chain databases and the design for manufacturing APIs/rules, such a tool can be made.

Otherwise, it sounds like spreadsheets and good ole’ engineering grit and estimations. Also include budgets and speak to manufacturers on what they can produce as well. I imagine manufacturers would be closest to making such AI tools regarding yield.

But no I haven’t seen any yet.

Hello Ravi. Yes.

For component selection I’ve used and am aware of these:
CELUS (they’re launching soon. They’ve been in closed beta).
CircuitMind (very good at this, given only requirements at the function block level and outputting something directly. Not just offering text suggestions, along with supporting components)
Flux.ai (offers suggestions that turn out to be a decent starting point, including supporting components)
ChaptGPT/Gemini/Claude3, etc.

For sourcing we have:
CircuitMind (only sources from available components if that option is selected. Also includes other parameters like compliance, etc.)
Silicon Expert’s tools (have very in-depth robust sourcing checks, like RoHS compliance and many more on par with or better than CircuitMind’s)
Altium Designer’s Live BOM tool (not as advanced. just pulls from Octopart data, but provides all information needed to make most decisions. This is essentially parametric search but in your own software environment. I’ve been told that some of the data is incorrect, but I haven’t found that to be true when it comes to supply chain availability).

Cost and availability:
All the above.
Silicon Expert’s extension for OrCAD takes this further and reports on your existing design based on the available data from the Silicon Expert database. Very useful.

JITX - This not one to select components, but it does provide BOMs and component selections that are triply sourced and available by default. certain parameters can be changed as needed, but it’s rather impressive. It can also select components based only on requirements however those need to be programmed in by the user if such a function was not already created. For example, the user can manually code the resistor calculation necessary for the feedback path for a buck converter. they can code it in such a way as to have JITX automatically pull the nearest available selectable component to the ideal value, and ensure that it’s available. While this takes more upfront work, it only needs to be done once.

So far I haven’t seen the previous tools do this or allow the option to do this, except CircuitMind. But in the case of CircuitMind, the component selection is all done for you and for digital circuits only (right now). Analog circuitry is in the works at some point on their roadmap however.

Hello BerndKruger,

I signed up for an account a while ago, but didn’t take full advantage of it. For simpler boards, yes, it gets the job done.

However, I haven’t tried a complex PCB on it yet. Maybe I will this month. April might just be the month of AI. Right now on my current plan, it can handle a 4-layer PCB with 300 components.

I wonder if it limits the number of pins on a component. Hmm…

1 Like

Hello Lieniner,

I’ve only heard of Cadence’s Allegro X AI platform drastically improving component placement and there’s another tool, whose name escapes me at this time, that uses AI to autoroute.

Since component placement significantly impacts routing time and efficiency, Allegro X AI sounds like it’s taking the right approach. I’m not sure if it does routing yet. It might or it might not.

The other company whose name escapes me, got flamed on Twitter for autorouting a PCB but getting basic things wrong, like narrow trace widths for carrying larger amounts of current. While I support AI, companies need to take a more robust solution to what is a very left-and-right brained approach to PCB layout. AI is more helpful in my opinion with creative tasks, while programming and code are helpful (and superior) in logical implementation and tasks. Marrying these two properly together is the only solution I see for AI. And using the correct method (programming or AI) for the right task will greatly reduce issues. Stepping off my soap box for a minute, I’ll say that so far, the closest to helping with real layout (i.e. routing) is JITX’s autorouter. However, it has some ways to go. But it does seem closest right now. Every other tool I’ve seen either doesn’t have it or what they’re outputting is not sufficient.

At least for routing anyway. For component placement, Allegro X AI is the leader of the pack.