Give KiCAD A Try. Here’s How

Up to this point we’ve used Eagle CAD as our exclusive PCB design and schematic layout tool. But [Brian] has inspired us to try something different thanks to his KiCAD tutorial.

KiCAD is an open source printed circuit board design tool. Since we like to rock the Linux here at Hackaday getting our hands on this was as easy as:

 sudo apt-get install kicad

The version in the Ubuntu 10.04 repositories is a bit older but seemed to work just fine. [Brian] jumps right in with one of our most dreaded tasks on Eagle, designing your own parts. He knows of a nice online tool for automatic KiCAD part generation and walks through the process of building a voltage regulator and importing it for use in your own personal library From there it’s off to layout a power supply schematic for a breadboard PSU. The lesson continues with board layer, as well as the process used for exporting data for PCB fab house. We think this tutorial works well if you’re already familiar with PCB layout using a different software package but it moves a bit fast if this is your first time.

KiCAD seems like a nice tool and we’ve heard from many advocates in the comments over the years. Look for our next PCB design to be on KiCAD as we just need to use it for a while before passing judgement.

45 thoughts on “Give KiCAD A Try. Here’s How

  1. I use KiCAD because I make bigger boards than the free Eagle allows. But I’m uneasy about the library of parts. I don’t grok its organization (maybe there isn’t any organization, since parts are contributed by many different people) and moving a library from one PC to another is an error-prone pain.

    I wish they’d have a larger, standard library that is installed by default with KiCAD.

  2. Heh, it’s a nice tool indeed, but you’ll need a day or two to sort out all the libs you’ll need, link them to corresponding 3d models, etc. They really need to set up a central repo integrated into kicad for that stuff.

    Btw, I use ps2eps and LaTeX to produce several boards/layers on one sheet of transparent film for photoresist method. Plotting to ps is really useful.

  3. First i want to remind that there is also the Windows version that work just fine like the Linux version.

    It’s about 2 years that we use kicad eavily and we don’t miss the other CAD at all, we had experience with Protel and Cadstar.

    Kicad is very simple but powerful, it can be used also for complex circuits with many layers, its quality level reach many commercial products for production.


  4. HAD crew, you mentioned that it’s very difficult to create parts in EAGLE. Have you tried the make-symbol-device-package-bsdl.ulp included with EAGLE?

    I think it will simplify your lives a little.

    Best Regards,
    Jorge Garcia

  5. @Jac

    Several people have told me about DesignSpark also I haven’t tried it yet though. Def worth a look.

    Dave at the EEVblog has the right idea: try them all.

    The down side to Eagle really is that it is limited and not totally free. DesignSpark is closed source but not crippled. KiCAD and gEDA are the open source PCB tools that really exist right now.

    KiCAD def has some downsides which are being discussed at dangerous prototypes:

    But it still is worth giving it a go. I do admit as Mike points out that I go fast. I do I hope cover all the essentials though. Hopefully without too many typos.

  6. After trying all the “affordable” eCAD applications out there, KiCAD is the winner in my mind. It was easier to transition to KiCAD having used the “pro” stuff at work. I’m using KiCAD in windows with the only issue being some weird rendering bugs.

    You couldn’t pay me to use Eagle. I find it counter intuitive.

  7. I’m actually faster manually routing with kicad thanks to the keyboard shortcuts.

    The main confusion I first had (coming from eagle) was that there aren’t devices, just separate symbols and layouts, and you have to link those together in a separate step before going from the schematic to the layout.

    My favorite kicad tips:

    -You can’t pan with the middle mouse, but try shift-scrolling and ctrl-scrolling.
    -When first placing components in the layout, hit ‘t’ to search-for-and-move a component without having to pan/zoom to find it.
    -Whether a keyboard press does anything depends on what mode you’re in! You have to be in trace drawing mode for the backspace key to delete a trace. Press ‘v’ to switch layers.

    Here’s my tutorial which focuses on the library confusion:

  8. I’ve used Eagle, KiCad, gEDA’s suite, and Fritzing.

    Fritzing is awesome for documenting and experimentation (and punting to Inkscape and other more appropriate tools for part design was a very smart move), but it still has a lot of growing up to do (and I don’t think they’ve really pitching themselves as a serious replacement for more established tools yet anyway).

    gEDA is…industrial; it wasn’t a pleasant experience at all, and not one I’m likely to repeat.

    Eagle has a massive library of parts that becomes very easy to start relying on. It’s a productivity win that’s subtle, but important. But I’ve never felt very comfortable with the UI, even though their parts designer is quite good once you get used to it.

    KiCad, on the other hand, is by far the best of the bunch in terms of being something I genuinely enjoy working with. It’s lacking in one area for me: libraries, both in terms of availability and ease-of-use. That’s something that will come with time, and hopefully with some directed help on the part of the project leadership.

    As an FYI for Fedora users, try:

    sudo yum groupinstall ‘Electronics Lab’

    They do a pretty good job of keeping up-to-date with most of the common tools electronics geeks are interested in.

  9. Creating parts is REALLY simple in DesignSpark… It is also not crippled and has a software house behind it so it seems to be very well maintained and they are adding new features to it. Anyone played with the new 3D viewer yet? It is pretty impressive for any package, let alone a freebie :)

  10. +1 for DesignSpark PCB, though I do like Eagle too.
    DesignSpark is free, has no limits on board size, and best of all you can import existing Eagle schematics, PCBs and component libraries.
    It’s not quite as stable as Eagle in my experience and has its own share of user interface quirks, but the forum seems quite active and DesignSpark staff respond quickly to questions.
    For the trolls, it is Windows only and it is not open source, so get stuck in guys!
    FreePCB is a usable PCB design tool, but the lack of schematic capture ruled it out for me.

  11. There are scripts that will let you convert your Eagle libs to Kicad. The conversions aren’t 100% perfect but they give you a head start when switching over to Kicad from eagle. Also the Kicad version in the ubuntu repo is pretty darn old. Building Kicad is really simple and their autobuild scripts are pretty well maintained.

  12. Does it print right on windows? I once tried another program then eagle, and the printed board size was off by 2%, making the largest components fail to fit. Made me really mad.

  13. Without trying to compare it to any other software KiCad really lacks proper work flow (IMHO of course).

    some pojnts
    – “move object” ?!??! why would anyone design that option to work like that (what one wants is “drag object”
    – middle button ?! you pan with mid button in every other app – it has a point to it – it is intuitive
    – “use a separate program for what all other systems do on a single click” (sch->pcb)
    – “you can’t push changes from pcb->sch” ?
    – “search for part” – this is *the* worst system for part “selection” I ever seen, even old dos apps worked better

    and many many many more similar “fixable” issues that are there just because someone decided they like to have different work flow then everyone else..

    As for the designsparkpcb it works on Linux (f14 64bit) with wine – just don’t try to use 3d view.

  14. I worked with Eagle which works very solid and the Cadsoft guys doing a nice job of giving a free version for hobbist for ages already. Honestly, I really get pissed whenever there is a discussion about eagle, someone has to mention… “yeah but it is crippeld and limited”. Hey this guys make a living from it and still giving it for free to you and provide a Linux version, just respect this (the real big player even do not think about <5.000$ licences and linux? what is linux). Thats for eagle…

    I tried KiCad but found it rather rough on many edges…

    I use now gEDA and as much as people rant about gEDA as soon as you understood the (honestly, a bit difficulte) production chain it becomes very powerful and usable… a bit what is LaTeX for Word processing. Everything are pure text files. Creating or modifying a component can be done on your smartphone in a creepy text editor if there is nothing else around… Devs of gEDA working hard to getting the learing curve down… thus, even if you disagree now… keep gEDA in mind and check it from time to time

  15. Bookmarking.
    I’ve been using TinaTI for a long while just because it was easy for me to learn (if there’s one thing they got right, it’s the interface), but it’s the usual shareware junk. They don’t allow you to import other parts (non-TI components? gasp!) and you must include at least one TI IC in every schematic (preferably one with all pins tied to ground, hidden off in a corner somewhere). Also, it bugs out in Wine.

    If I could replace this with gEDA or KiCad, I would be much happier. It’s just been a big pain in the ass to learn (and some of their UI choices are pretty backwards).

  16. I have tried Eagle, gEDA and KiCad. The learning curve in gEDA is almost like a vertical line. It’s hard to learn how to master this tool.

    User interface for schematic drawing is good for me, somehow similar to the Capture (OrCAD) one. But the UI in PCB is horrible and takes a lot of time to get used to it. Also there are some things that most PCB CAD tools do automatically and you must manually do in PCB (like for example thermal reliefs for SMD pads). But once you get used to it, it’s a good suite, and I prefer it rather than KiCad and Eagle.

  17. @torwag: “this guys make a living from it and still giving it for free” – Oh really? Answer this quick question then: are they doing it out of the goodness of their heart, as a pure desire to help the community…? Oh wait, if that were so, it wouldn’t be limited down right to the bleeding edge of uselessness. They give it away like that because literally no-one would bother using it if it weren’t free, and they know that full well. There’s a word for that, and it’s “marketing”, not “altruism”.

    Use whatever you think fits you for all I care, but you might as well get off the “moral high ground” – I’m not buying any of it.

  18. Having used eagle for the last few years I figured I would try Kicad, initially I didn’t like it because of differences. However I tried again more recently with a more open minded approach, as a result I have now moved over all my libraries (using a simple script) and now all new designs are done in Kicad. I really love that the files for libraries and projects are text based and editable, this can be really handy especially for libraries. The main reason for the switch was to be able to support version control with the text files as Eagle binaries don’t work well for this. I also like the fact that I don’t have to pay a large premium for some fairly simple features like I did on Eagle. I can also modularise parts of the design much more easily in Kicad which was impossible with Eagle.

    Over all the switch was tricky at first but well worth it IMHO.

  19. “provide a ‘Linux’ version, just respect this (the real big player even do not think about <5.000$ licences and linux? 'what is linux)' "
    Man… wake up… gone are those days. No serious tool these days comes without Linux version. In VLSI industry we'd choke to death if today Linux becomes unavailable. Most of the tools are there for Linux & and some are exclusively for Linux

  20. I’ve used KiCad, under both Windows and Linux, to produce two dozen or so different PCB’s. It’s quirky in spots, but I find it very powerful, and it was easy to learn.

    As for libraries, creating your own components and footprints is easy enough that there’s really no problem. If a part doesn’t exist in the stock libraries, I create one from scratch, or modify an existing one and save it under a different name. I often have several different symbols for the same component, because modifying schematic symbols is easy, and tailoring the pin locations to the specific schematic makes it neater and easier to read.

    I’ve used P-CAD and PadsPCB, and I’ve played with OrCAD and Protel. I had a brief look at Eagle once, long ago, but it just made me shudder. In comparison to all of the above, I find KiCad easier to use and more intuitive. It’s far from perfect, but it’s pretty damned good.

  21. I’ve used Kicad for a number of personal and work projects. Overall, it is the best low cost(< $1000) pcb design software I've found.

    For me, it has one key feature that no other low-cost package offers. Online design rule checking while routing. It graphically shows you what the trace clearance is, and prevents you from running a trace over another copper feature on the same layer. This is a feature often available only on professional systems.

    There are some things that make using Kicad very tedious for production work. They really need to improve the copy and paste and add an array copy. When copying or moving a block, it doesn't show you the actual items you selected, just a rectangle. It's hard to figure out what you selected, and where you're going to actually place it. You can't CTRL-click to select multiple items either.

    Other operations require WAY too many mouse clicks. Let's say you want to name 8 nets. You have to click on each net, select edit text, click in the text box, type in the text, and click ok. This is fine for hobbyist work, but when you're working on a large board with many nets, this starts to get old VERY fast. At least have a keyboard shortcut or some other method of quick repeated data entry. Same problem in the symbol and footprint creators.

    For reference, I've also evaluated Eagle, Diptrace, and gEDA. I use Mentor Graphics at work.

  22. I really would like to use Kicad,
    but panning with CTRL or Shift and middle mouse wheel drives me insane, I just can’t get used it.
    middle click open a zoom field????

    I mean Kicad is really good and I my C knowledge is ways out to change the mouse behaviour.

    1. Just for reference, panning with the middle mouse button has been possible for some time now (in both eeschema and pcbnew). Just enable it in the preferences. I’m using the Adam Wolf Ubuntu PPA for kicad.

  23. No need to have panning pain, at least in Windows. Imagine the following applies to others…

    Use mouse wheel to zoom in or out. Whenever you do, the page re-centers on where the mouse pointer is at the time.

    I am now frustrated by the LACK of such a sweet mechanism in other programs I use!

    You can even use it while, for instance, in the midst of laying down a track. Brilliant.

    Wiki full of tutorial material at…

    Please spread the word of KiCad, and tutorials?

  24. Nevertheless, most of these reviews appeared biased for me, which led me
    to conduct my very own Phen375 overview. Phen375, as complete,
    is also FDA permitted, so you can be assured that theres no-aspect
    effects associated with it. This is important query that you will want to answer,as many weight management capsules are designed to suppress your appetite.

  25. More technological programs, however, are calculated with various businesses during mind.

    For the two drug the entire detection stretches and deleted off phases depend on the the the natural wolrd and emploi of you see, the drug.

    Poor program output, a choppy idle, and misfires can nevertheless be a outcome of doing this condition.

Leave a Reply

Please be kind and respectful to help make the comments section excellent. (Comment Policy)

This site uses Akismet to reduce spam. Learn how your comment data is processed.