In Praise of Kicad

September 8, 2016

Schematics and PCB design In the Dawn Of Time

Original from https://static.rapidonline.com/catalogueimages/Module/M061299P01WL.jpg

My first commercial PCB designs in the 80s were physically laid out on acetate using a lightbox, letraset and various thicknesses of red sticky tapes, at 2:1 physical size. They were then photographed, reducing them to the correct size and the negative used to create the boards via UV photoresist. This was the normal way of designing PCBs at the time. Any problems with consistency of your drawing or flaked-off letraset chunks (easily created by flexing the substrate) directly traslated to open tracks in the finished product. Doing it at a larger size and reducing it was aimed at reducing most breaks in the tracking areas to below what the photolithography could resolve.

This was obviously quite challenging... it did have a kind of arty, crossword-puzzle aspect to it where you would sit crouched over the lightbox for hours like a rat solving a maze, but overall it was just miserable labour requiring a lot of obsessive planning, care and luck. The substrates were typically an unwieldy A3 size since you worked at 2:1 or even 4:1, so you would jump in your car and take it personally to the company that optically processed it before passing it to the PCB house.

Naturally then with the rise of reliable, inexpensive PCs there was a huge market desperate to come out of the caves and use Ctrl-Z and gerber on their nightmares.

These packages were not priced reasonably though, the first one I bought was Orcad

Original from http://relaysbc.sourceforge.net/laptop.jpg

which at that time was a headless DOS app that drew directly into 16-colour CGA. Still, it was miraculous coming from manual drawing, it could take your logical schematic and maintain an unbroken relationship from that to the gerbers. After that came Cadstar, also at that time a DOS app as I recall, which was even more expensive and not that good, then the first commercial shove router whose name I forget (but not its price, it was GBP11000), and finally Protel, which I stuck with for a decade.

The shove router was interesting, many PCB designers even now retain the ethos of the "one-shot" layout from the acetate and scalpel days. However using the shove router was so fast, you could treat it like a "compiler" in contrast to hand routing being "writing in assembly". It was possible to try several layout variations quickly and accept that some of the routing was sub-optimal, trading it off against the ability to find routable radical placement solutions that nobody would otherwise try.

Market in Amber

The market for these expensive vertical CAD suites has barely changed since I first started throwing money at it with Orcad. There are high end ones like Cadence that are too expensive for normal mortals, midrange ones like Protel which operate using a vampire marketing strategy, you buy the software but you only get a year of updates, after that you must pay again some considerable fraction of the original cost per year to get updates.

If all you do is make PCBs, this can be sensible, but if you make a few PCBs a year, this is a really big burden. And paying that money feels like an extortion. All of these "affordable" platforms require windows, which is another form of extortion... in my life otherwise windows has been gone for 15 years.

In other markets that used to be like this, FOSS has wiped out the practices and companies with other business models like Google have turning the "precious" into a freebie to bring people into their system. (Eagle CAD had this kind of strategy, basically free CAD software tied to a PCB fabrication house, but it did not make a big dent in it).

Kicad

The first time I looked at FOSS schematics + PCB software a few years ago gEDA was the thing http://wiki.geda-project.org/geda:screenshots

But at that time it wasn't very usable, and I turned back to Protel, running in vmware (a third form of extortion requiring constant 'subscription' / repurchasing to keep it working on Linux; and now it meets a huge problem with Fedora stock kernels not accepting modules that are not signed with a key created when the kernel was built).

However this time, I looked at Kicad. Basically this has crossed the threshold into a CAD system usable in the real world. It has one big problem currently on my Fedora system, the autorouter doesn't work at all. But to balance that it has manual shove routing which is very good.

Kicad rough edges

Kicad brilliance

What we learned this time