Ask MAKE: Software for designing circuits

Ask MAKE is a weekly column where we answer reader questions, like yours. Write them in to mattm@makezine.comor drop us a line on Twitter. We can’t wait to tackle your conundrums!


Bjorn writes in:

I’m doing my 2nd Arduino project (and 2nd electronics project ever) and am trying to design some of the circuit stuff on computer instead of just wiring it up or scribbling some stuff on paper. I’m trying out Fritzing and am wondering if you have any other suggestions for software that can be used for breadboard, schematic and/or PCB design. I would like to maybe figure out/learn/teach myself enough about electronics to be able to design my own PCBs, so it’d be nice if I could do all the types of designing in one program. I downloaded Eagle but haven’t really tried that out yet and am not entirely sure what that’s used for, but I think it relates to PCBs.

You sound like you are off to a good start. The kind of programs you are looking for are referred to as Electronic Design Automation (EDA) tools, and traditionally allow you to draw out a symbolic representation of a circuit using a schematic capture interface, (sometimes) simulate it with a circuit simulator, and then finally lay out the circuit on a printed circuit board (PCB). In the commercial world, many companies use tools designed by Synopsys, Cadence or Mentor graphics, but these are prohibitively expensive and overly complex for most hobbyist use. You are on the right track with Fritzing and Eagle. They are both good choices for documenting your circuits and designing PCBs, although they have been designed for somewhat different purposes.


For people who don’t already have a strong background in electronics, Fritzing is a great place to start. Instead of forcing you to understand the circuit schematics for each piece, you can use it’s pictorial ‘breadboard’ mode to connect drawings that look like the actual pieces that you would place on your breadboard. It sounds kind of cutesy, but it is pretty powerful because it also generates a schematic view of your circuit. This way, you can learn what the symbols for all of your parts look like by just connecting them up and flipping between the two views. You can either leave it at that to document a project that you made on a breadboard, or try out the PCB mode to design a simple 1-layer board that you can then etch yourself. To get started, check out their tutorials.


While Fritzing is a great way to get started with electronics, if you start to do more complex things, you will eventually need to turn to a more powerful tool. The second program that you mentioned, Eagle (Easily Applicable Graphical Layout Editor), is a good choice for this. It isn’t open source software, however they offer a freeware version that is powerful enough to build many useful circuits. It doesn’t have a breadboard mode, so you have to start by making your circuit as a schematic. Once you have a schematic drawn up and have checked to make sure everything is connected properly, you create a new PCB and lay the components out. To get started, check out this tutorial by the folks at Sparkfun.

There are a multitude of other free PCB design programs out there. For instance, ExpressPCB is a proprietary schematic capture/PCB layout program that is closely integrated with the companies PCB fabrication service. gEDA aims to be a comprehensive open source circuit simulation/design environment, but appears to be quite complex. FreePCB looks good for designing PCBs, however it doesn’t appear to include a schematic capture program.

My advice would be to stick with Fritzing and Eagle for a while, use them to design and build a few PCBs, and if you aren’t satisfied with them, try out one of the other tools to see if it works better for you. Good luck!

[photo by Flickr user Zach Hoeken]