This page tells you about software for designing printed circuit boards (PCBs). In some cases, the software can also produce the files for machine production, or you can use my guide to making PCBs by hand.
To use the software, you usually do a schematic first, then proceed to a PCB design, with the two kept in step as the work proceeds. You really do need a package which allows you to add components to the libraries of schematic symbols and pcb artwork footprints associated with the package. (Not a trivial exercise, even in a good package, but one you'll need before you get very far.) Even if you never design a PCB, some packages will be worth your trouble, if only for the schematic drafting tools they will give you.
What's the "right" software for a hobbyist or school to use for designing printed circuit boards?
I don't have the answer... but this page, and the pages it leads to, will give you some unbiased information, anyway.
There are many options...
Do you ever get tired of the uniformity that exists in many product lines? It seems that the free market, as much as I believe in it, is not very good for innovation. What sells is something that is just like everything else. How different is one mid-priced car from another, for instance?
Happily, the world of PCB CAD software is not "mature". You will find significant differences between the way different packages work. These will be frustrating at times! But try to master the system employed by a particular package before you presume to say it is "no good". I have to confess that there was a time when I preferred to use DOS commands rather that "that wretched new fangled Windows thing."
One of the most fundamental questions that a PCB CAD program creator must decide is how symbols and footprints will be mapped to one another. And the answers in the packages discussed here are very different. The differences take some getting used to.
Take, for instance, a little chip with 4 two input AND gates in it. That will probably be a 14 pin chip, physically much like many other 14 pin chips. Should the design package use one generic "14 pin chip" footprint definition for multiple devices? That would save a lot of duplication. And how are the 4 gates (and the Vcc and Gnd) connections to be shown in the schematic? And linked to the footprint?
These are the sorts of questions that have different answers in the different packages. And, as I said: I think you have to work with a package for a while, master doing things "its way", before you decide that "its way" is poor.
Allied to all of the above: How good are the package's tools for creating schematic symbols and pcb artwork footprints for components not already present in the supplied libraries? How elegant are the library management systems? Can you keep everything a project needs (and not a lot else) with the project? (I have, before now, messed up earlier work when I tweaked a footprint for a more recent project, and then found that the tweak propagated back to the earlier project, where it wasn't appropriate. Sigh.)
And, obviously, just as there are different approached to schematic symbols and footprints, the "simple" matter of how you create and edit the drawings is handled differently in the different packages. The degree of difference between them, while intellectually taxing, was refreshing!
Turning to individual cases....
Just to mention a "Rolls Royce" option.. and to give you some good news:
The good news is that in the summer of 2010, a free (but not open source) package based on Easy PC became available: DesignSpark... discussed further down this page.
I've used Easy PC from Number One Systems through a long series of development. It is expensive ($975, last time I looked), but it does do a beautiful job. I believe it is only available for Windows.
This has turned out to be "The One" for me. It has so much to recommend it...
You will have to work hard to master any PCB CAD package. Wouldn't be nice if the work you put in will repay you for years to come?
Is KiCad able to deliver? I think so, after many hours and not a few projects. It must, however, be said, that I am very experienced in PCB design. (Having said that, I'm not a complete newbie, either!)
I first heard about KiCad (from http://www.gipsa-lab.inpg.fr/realise_au_lis/kicad/index.html) a long time before August 2011. In August 11, someone commended KiCad to me again, and I did some investigating... and was sucked into two days on the computer! Here are things I liked about it immediately...
There's a good Getting Started with KiCad tutorial at...http://teholabs.com/knowledge/kicad.html
There's another good tutorial, a more extensive one, at http://store.curiousinventor.com/guides/kicad/
In addition to my main guide to KiCad, I've written a "guide to the Teho KiCad guide", with further notes.
The following is a quote from the Teho Labs guide:
"While Eagle is certainly the most popular with people starting out we don't think it is the best choice. Why you shouldn't use Eagle? Eagle is fine for what it does. CADSoft is nice to give away a free version for hobby use, but their license is non-commercial. What that means is you aren't supposed to make things you are going to sell with it. That might sound fine if you are just starting out with PCBs, you might only want them for your own projects, but one day you might have a bright idea that you do want to sell something you made and then you are trapped. You won't want to learn a new package and you won't want to remake all your custom parts, so you will pay perhaps even $750 to get what you need, it isn't a good deal. What is more Eagle isn't even a great CAD tool, the free version is restricted in many ways, as is the cheap light version."
That logic makes good sense to me. KiCad is open source (GPL) with source and binaries for Windows and Linux... and pre-compiled "install" packages for most of us mere mortals.
KiCad has schematic drawing, netlist generation, and PCB layout all integrated.
Back in August 2011, I saw Mac users complaining that they don't like the Mac KiCad. I don't use Mac, so would welcome current thoughts from Mac users.
One other comment someone made, before we move on...
"One thing I like is that you can mix and match components with custom footprints on a per-project base."
Another serious contender, and one I would happily turn to if KiCad eventually disappoints me...https://www.rs-online.com/designspark/pcb-software. I have already downloaded and tried it, just to be on the safe side! Who knows how long it will be available? The only "problem" is that it is not open source. It is free. And, for all my enthusiasm for KiCad, on ideological grounds, I have to admit that DesignSpark just felt so good. Quality. Or maybe it was just delightful because the interface was familiar, from my years with Easy PC?
A review in EETimes, which seems to be a "real", "grownup's", commercial trade publication, said (in July 2010) some very interesting things...
According to the review, DesignSpark is being made available by RS Components, a longstanding premier supplier in the UK. The benefit for RS (I always like someone motivated) is that DesignSpark has been configured to create bills of materials in a format which integrates well with the process you can use to order the parts from RS. Fair enough! (And you don't have to order from them.)
The review also states that the "only limitation is that you have to join the company's DesignSpark community to unlock the full functionality."
The review reveals that DesignSpark was developed in partnership with Number One Systems, which really caught my eye: They are the source of the big commercial package which I have, and would always be happy to use, if money were no object. I've been using Number One's Easy-PC for many, many years: Bought it when it was new, and inexpensive, and have benefited over the years of generous upgrade terms for loyal customers. Nice to have a company loyal to customers, for a change. They all want loyalty from customers... but how many reciprocate?
The review tells us that...
And free! Wow! Hurrah! But closed source, proprietary. Well if I'd built something a huge as Easy-PC, I wouldn't be giving it away, either!
There's an interesting article at http://elektorembedded.blogspot.com/2011/01/test-driving-designspark-pcb.html discussing DesignSpark from the point of view of an Eagle user.
For the next few paragraphs, I will give you a brief "getting started" tutorial.
16 August 11, 09:25: I entered the http://www.designspark.com/ and registered. Simple enough, but they do what your real name. They let you set up a user name, and don't ask for a lot more. and you are at a site which has a major, reputable, company behind it. (RS Components, in the UK).
9:30: Started download. Somewhat unhelpfully (and arrogantly... if it isn't just thoughtlessness), they send you a file called "Setup". What if everyone did that? I renamed it "DesignSparkSetup" as soon as the download finished. 72mb, version 2. No OS choice offered; I've seen nothing about a Linux version... but maybe they auto detected my Windows environment. (I'm nothing if not charitable!)
I noticed text similar to the following on their site, while waiting for my download... (I've edited this slightly)...
"DesignSpark PCB will import Eagle design files and libraries. See the Eagle import tutorial for further information.
"A standard parts library is supplied. This can be amended, copied, added to etc as required. New Part Creation Wizards allow you to design new parts from scratch or by using standard symbols and footprints. Please share your designs, libraries and tips."
(Snipped and edited quote ends here.)
Running the setup file produced only one surprise... a pleasant one... the package installs the program in a sub folder of your ProgramFiles directory (no surprise), but sets up a separate folder, in your MyDocs, for data. That was a surprise, and welcome. I wish more companies installed their products like this. (PS: Hmmm: Put in the "MyComputer/Shared Docs" folder... which I never use. Sigh. I imagine I can move it.
9:50 Installation... and typing the above, and making a fresh cup of tea... completed... But! Wretched thing wants me to restart my computer. My desk is covered with things I don't want to close, and I always wonder what things are being done to my system when a restart is needed by an install. Oh well... it is free... At least my lovely Textpad.com editor lets me save its workspace....
9:55: I've got it up and running. It says I need to Activate it to enable Save. Fair enough. So I am clicking "Yes, Activate now." Of course, this leaves me nervous: Suppose I start using DesignSpark as my everyday PCB CAD... and 5 years from now have a bunch of stuff done that way. And my computer dies. (Would it do that?) And I go to install DesignSpark on a new computer. And RS are no longer offering the product??... As much as I hate what open source software is doing to proprietary products, and as much as I puzzle over whether open source can continue to thrive, while it lasts, it attracts me!
Anyway... The page from which I downloaded the product has an "Activate" button. Clicking that brings up a request for my serial number, which is showing in the dialog which the program threw up. Typed it in, and moments later was told that an email with my activation code has been sent. Restarted my email client (see above!), and sure enough, my code was there, with a note saying "Please keep, in case you need to re-install". Perhaps that is the answer to the question I raised above! (^_^)
Copy/ paste, and "Your product is now activated." 10:05... and remember that I am writing this as well, which is probably where 2/3rds of the time has gone.
Pretty project on screen, but instead of playing with that...
Boom! Done! By 10:30, my first board was designed, and OH, feel the quality!
Now... it must be said that my familiarity with Easy-PC, the parent of DesignSketch helped... but also, much of the time taken, again, was in writing these notes.
Some notes on designing a schematic: Use "4001" to find a diode, "R 0.25" to find a resistor, "LED" to find an LED.
You need to go into "Settings | Design technology", create a net class (go to the tab, use add). Create a net... THEN you can add connections between your components.
The sophisticated rubber banding, dragging and dropping, etc, etc, make this a very attractive product. Play with it sometime, just to learn what is possible. Get your local school to install it... it is free, after all!... so the kids can see some real CAD software.
I found that I'd put a resistor "on the page" during my schematic design, but not connected it to anything. No problem. Clicked on the tab to bring the schematic back to the fore, connected the resistor into the circuit, clicked tab to go back to PCB. "Tools | Forward Design Changes", clicked on the rat's nest lines, dragged resistor and tracks about a bit, and I was done.
Amazing, wonderful package.
This is the "grand-daddy" of PCB CAD for hobbyists. Widely used. Good forums available. CAD fab labs know and love(?) it. But.... are the young guns perhaps overtaking it?
I'm sorry to suggest looking at alternatives because I admire and respect CADSoft for their long time generosity, and support of hobbyist electronics engineers. CADSoft allows you to make SERIOUS use of their product, forever, for free. Here are some details of the "limitations" imposed, as they stood at January 2011. They are of course, subject to change.. go to the site for up to date, accurate information. But... my take...
Those limitations define the "Lite" version, which you can purchase for $49, or use for free, if you aren't making money from your project work, and if don't want advanced technical support.. but you can still send emails, or participate in their forums. Generous, don't you think?
Looking ahead to Fritzing for a moment... I looked at it again with the criticisms from the more experienced user, and these were my thoughts....
I went back, and looked at Fritzing again in light of your comments. Of course, the Fritzing you are thinking of may have been an earlier incarnation. And whether it will "stand up" to "real" work, I don't know.... But as for "proper" schematics? The components of my trial design were all nicely labeled, e.g. "R1" for the first resistor. No... on the schematic, I can't see what value it is... but I can print out a bill of materials (BOM) (list of parts), and the resistor value is given there. The picture of the breadboard changes when I change the value of the resistor... the color bands are "right". not "generic". How cool is that? (If slightly over the top!?) Also, rather endearingly, the Bill Of Materials calls for a "Generic bajillion- hole breadboard" :-)
Going back to my big PCB CAD program... and most of this probably applies to Fritzing and Eagle, too... except the observations on the price!
You start with a schematic, created as if using a very superior 'Paintbrush'. You then click on a button and it converts the schematic to a preliminary automatically routed PCB design. You then refine the design by dragging the components around the screen and re-routing the tracks, all using rubber-banding (quite fun!) until you've got a layout you like. You can add components to the library. You can manage your parts lists and stock inventories as well. (They also have software to simulate your circuits from the design files.)
As I say, EasyPC is a beautiful product, but perhaps beyond the budget of my typical reader. I was lucky to buy my first copy when the company was starting, and they have been very fair about upgrade prices. I didn't need to upgrade, but the prices they've charged encouraged me.
If you go to BatchPCB.com/, the service I've mentioned elsewhere for having PCBs made from your designs, there is a section in their "BatchPCB FAQs" answers about the various PCB CAD packages currently available, some of them free.
In January 2011, I became aware of a fun free tool for Windows/ Linux/ Mac. It does much of what I (just a hobbyist) need from my very expensive electronics CAD application. (It really isn't a substitute for a "proper" package, if you are serious about schematic drawing and PCB design.) It comes from Fritzing.org... Thank you University of Applied Sciences Potsdam! If you publish anything drawn by Fritzing, please add "Drawn by the free Fritzing.org", to spread the news?
You can "assemble" wires and components on a virtual breadboard. Then you switch to the "schematic" tab, and you will see all your components and their connections. Probably a bit jumbled, but you just drag them around, rotate them, etc, until it looks nice. If you add a component, yes, it will be added to the breadboard view, too!!! And then you go to the PCB tab to arrange the components on a PCB.
Even if you don't "need" it, if you have any idea of electronics, go "play" with it. Among its many virtues: You don't "install" it... it doesn't mess with your registry, file associations, etc... you just unzip a folder to where ever you want it on your disk, and then invoke the .exe. That isn't some wretched installer that "does things". It is the basic Fritzing program!
Someone with more experience than me said (Jan 2011)....
I agree that Fritzing is a useful tool for some things. However it also appears to be a crutch for people who want to avoid using proper documentation techniques such as traditional circuit schematic diagrams. Fritzing makes a nice pretty picture, but by definition it cannot include many critical details. For example an image of a TO92 or a TO220 case tells you nothing about WHAT the device is or even whether the pinout is correct. It also seems to lack critical features such as showing the proper image and value of resistors. And it has been criticized for being difficult to add components to the library. I have used it on rare occasions for documenting very simple concepts. But it rapidly breaks down for anything of even moderate complexity. At least that has been my experience. Most certainly it is very admirable that the creators took the time to make a tool which makes such beautiful pictures. I only wish the technical accuracy could equal the visual attractiveness. I believe with continued development, Fritzing can become a useful tool at all levels.
Another, possible alternative: EZ-Route, a much less expensive program from http://www.ezroute2000.com/. I haven't used it myself, but it is said to work well and be user friendly.
I had an email saying that at 7/10, "Ezroute2000, runs in Win95 - Vista. The demo will allow you to do all work except save the schematic and PCB layout files. You can print schematics and PCB layouts, generate Gerber photoplots and Excellon drill files."
While not being able to save even small schematic and PCB files with the demo would be a deal breaker for me, you do have to remember the supplier's interests... if you want good commercial software to survive. You can plot to many different printers/ plotters. The earliest versions of the program go back to the DOS era; it has been continually extended and refined since beginning in 1987.
Another possibility... I had a very courteous email from a person associated with an ambitious venture: An online schematic drawing package, called DrawSCH... you click on the button under the graphic on the page that link will call up. The claim that you can use to for free does seem to be genuine.
Any PCB CAD program, if it is of any use at all, takes a little getting to grips with. I haven't explored DrawSch "properly", but was impressed by the "playing" that I did. That said, I just can't bring myself to believe that a task of this magnitude is well suited to an online answer, but I admire the team behind DrawSCH for what they've done so far, and wish them well... hence this brief promo for them!
(I don't know a lot about this one.) http://www.mentala.com/price_list.htm ...SuperPCB Printed Circuit Board Software. Seemed worth considering if you are looking for a commercial (i.e. expensive... more than $100) answer. (This was used by Jim Jennings, of 1-Wire fame.)
A while back, in a newsgroup, someone mentioned WinDraft/WinBoard from IVEX. It seems it was expensive, and at August 11 seemed to be dead and gone.
Page tested for compliance with INDUSTRY (not MS-only) standards, using the free, publicly accessible validator at validator.w3.org