I've been getting back into analog electronics design, and related to that I've decided to try to use
libre EDA tools as much as possible--an effort I've opted to call frEDA, for
free Electronic Design Automation. The interpretation of
libre in this context is, "as libre as possible for getting the necessary work done."
When it comes to circuit simulation, SPICE is really the only protocol that will work for my needs. So any solution I contemplate must be if not itself a SPICE implementation then at least fully SPICE compatible. And if there's anything like a classic
libre toolset for this, it might be gschem from the
gEDA project and the
ngspice SPICE engine. (Lots of people seem to like
gnucap as well, but it's not SPICE-compatible.)
gschem is capable of some really nice things, but I've decided instead to see how well a
KiCad and ngspice pairing works. This is for two reasons:
- gschem isn't officially supported on Windows--and while I use Linux as my main OS, I know plenty of people who (need to) use Windows.
- Inasmuch as I have begun using KiCad for PCB layout, it would be nice to avoid having to learn and maintain a new schematic capture tool just for SPICE.
So, the current (pun!) workflow looks something like:
- Pick a SPICE engine, probably ngspice.
- Do some experiments to see if there are any nasty gotchas using it with KiCad-generated netlists.
- Make a library of basic SPICE components for KiCad.
- Frosting: Investigate tools for drawing SPICE generated output.
I will post updates as anything interesting develops.