Niels Horn's Blog
Random thoughts, tips & tricks about Slackware-Linux, Lego and Star WarsEDA software for Slackware - Fritzing and KiCad
September 26th, 2010 by Niels Horn in EDA, Fritzing, KiCad
Recently I regained some interest in electronics. I used to play around a lot with breadboards and all kinds of experiments before I started to get into the whole computer business. But when I moved from one country to another, I had to leave most of my stuff behind because of space restrictions. But a few weeks ago I learned about Arduino and some enthusiasts here in Rio.
So I started looking for some EDA (Electronic Design Automation) software and started to write SlackBuilds for them.
I chose two packages: Fritzing and KiCad - the first because it had some standard Arduino parts, the second because I took a look at it some months ago when reviewing for CAD programs.
Fritzing
Fritzing is being developed at the University of Applied Sciences in Potsdam, Germany. It is very easy to use and comes with a few examples using the Arduino boards. It also has a large collection of common parts, like leds, transistors, capacitors, etc.
You start by putting the components on a breadboard, just like you would do in reality. This is the included example of a traffic light, including a push-button for pedestrians:
From here, you can draw the schematics and design your PCB:
The program is a pleasure to work with and very user-friendly. I got "the hang of it" in just a couple of hours, without reading all the included documentation.
Building Fritzing
Building it on Slackware was very straightforward. It does not have a real "install" function, so I had to simply write a few lines in the script to copy the files to the right locations.
The SlackBuild script was submitted and is now in the "pending" queue.
KiCad
KiCad is a very complete program, including a schematic editor, PCB editor and a Gerber viewer. I might be the most complete Open-Source EDA program available, good enough for professional designs. It comes with several examples that are interesting to study.
It also has very extensive documentation available as an additional (but I'd say essential) package.
As the first example, here is a schematics drawing and two screenshots from the PCB editor and the 3D-viewer:
Here are two more screenshots from the included "video" example, which is a bit more complicated:
KiCad can work with multiple layers and is capable of creating professional quality PCB designs.
Building KiCad
Building KiCad was a bit more of a challenge. To start with, there are no source tarballs available - you have to get snapshots from the bazaar repository (but don't panic yet… read more in the last section of this post). And then there are three different "branches" you will need:
- The main program
- The library with components
- The additional documentation and help-files
This resulted in three different SlackBuilds and three different packages. The main program without the library is very limited. The additional documentation is very useful for people without too much experience (like me ). So in the end I needed all three. The main program also needs wxGTK to build, but that's a package I maintain myself, so no problem here.
There was also some research needed before I got everything to work together and having the main program open the correct PDF manual (in the end I needed to write a small patch). This is because Slackware uses /usr/doc/kicad-<version>
for the documentation, and KiCad looks for it in three different places, but *not* in the directory you specify during compilation But the finished product works fine and I'm now experimenting with it.
Where to get it all
All SlackBuilds have been submitted to SlackBuilds.org and are in the "pending" queue now.
Pre-built packages are available from my site.
For KiCad, you can get the sources with the bazaar program (SlackBuild available), but remember that getting the "branches" means downloading *lots* of data, as you will get all revisions. If you prefer to save some time and bandwidth, you can find tarballs for the three KiCad packages here (main program, 17MB), here (library, 21MB) and here (additional documentation, 50MB).