Time: A few years ago.
Place: My lab.
I'm sitting at my workbench.
Resistors, pots, jumper wires and other components are scattered. My back is in pain, reminding me it's been a long day. I've been focusing on my work so intensely that I forgot to take a single break.
But I like what I have accomplished.
In front of me is the 5th prototype of my latest electronic creation. Maybe this one is the last prototype. It consists of several discrete components, a couple of integrated circuits, switches, a few connectors, and a battery pack with a lead. These components are held together on a prototyping breadboard. They are electrically connected using numerous jumper wires, in a variety of lengths and colors.
I have tested the circuit, and it works.
Occasionally, as I test it, tweak it and move it around on my workbench, the jumper wire connections become loose or even disconnected. My well-tested circuit no longer works. I try to find the problem. This is always a tedious and time-consuming task.
It adds to my back pain.
It is also frustrating.
I'd rather be doing something else, making a new gadget, helping a student, or training my kids how to fly a drone.
It sounds familiar, right?
There are a couple of good ways for solving similar problems. I'm not talking about back pain...
I often use perforated or prototyping boards on which I can permanently fix the components, and interconnect them using solder bridges or jumper wires. I use this method for small circuits.
Prototyping boards become very messy as the complexity of the board increases. The result is also much larger than necessary. The jumper wires and solder bridges need a lot of space, and small mistakes in soldering and positioning of the component can be very tedious to fix.
A better way to finish an electronics project is to transition it from a breadboard prototype to the next level: design a custom printed circuit board.
Going through the design process guides me to think about what I am doing in a way that breadboarding and prototyping boards do not. The process makes me think clearly about the circuit I am about to implement, and the board layout so that the end result is a working, reliable, and beautiful board.
What shape should it be? How should I design its user interface (buttons, pots, displays, etc.)? How should I provide power? What kind of enclosure should I use? Should I opt for surface mounted or through-hole components? Should I design the board for manufacturing using a pick and place machine or low volume hand-soldering?
These are questions that I don't have to consider when I work with a breadboard, but I must do so when I design a PCB.
But, here is the catch: while anyone can do a prototype on a breadboard without any special skill (just plug in the components and connect them with the jumper wires), creating a printed circuit board has a steep learning curve.
This is something that troubled me considerably during my early years as an electronics hobbyist.
Even as an engineering student, I found it particularly challenging to choose one of many different PCB design software packages. Their guides and documentation seemed to be written for people who were already experts in PCB design. The most polished PCB design software was relatively expensive, especially for the requirements of a hobbyist or newbie in PCB design.
Blogs, Youtube videos, and how-to articles only offered a patchwork of sources that I still had to make sense of and figure out how to apply to my own work.
Does this sound familiar?
I wanted to be able to create reliable and beautiful PCBs for my best projects quickly, using high-quality and mature software that would help me to stay on task. I wanted to learn whatever software I chose quickly so that I can get on with my learning and teaching.
I also made a short list of a few "nice to have" selection criteria. While these criteria were not deal breakers, I would be very happy to find a PCB design software that also ticked those boxes.
My nice to have selection criteria where:
- Open source,
- Cross-platform compatible,
- Ability to export layout file in a file format that is acceptable by online PCB manufacturers,
- An active and thriving community.
Not much to ask, right?
Kicad was the answer.
With Kicad, I had a PCB design software that addressed all of my requirements.
Kicad is open-source software, cross-platform compatible, works with all online PCB manufacturers I have tested, has features that are normally found inexpensive alternatives, and has an awesome community of developers and users.
The only problem?
The missing "manual".
I could not find a textbook, an online course, or a project book that I could use to learn Kicad quickly. Instead, I had to endlessly browse through blog post after blog post. While the Kicad documentation is excellent, it doesn't have the features that I look for in an educational resource.
Like many other people, I learn best through projects.
So, I set out to create the course and the book I wish I could learn from.
I created my first Kicad Like a Pro video course back in 2015.
People responded well to it:
"Yes, it is extremely helpful and all the minute to minute concepts and tricks to solve is delivered in a fantastic way by end, of course, I will be able to create own PCBs required for my knowledge n projects" -- Abhinav S.
"The course was very good and provided an excellent starting point with Ki Cad when I am ready to sit down and make full use of it. Dr. Dalmaris has added a nice tool to my electric kit. Thank you." -- Kevin H M.
"This is the third course I'm taking with Peter, If you want to design your own PCB, and fix errors, then you are in the right place, I'm just enjoying the course. Thanks" -- Ahmed H.
"The examples progressed in difficulty in a linear way unlike some courses where it's easy to follow and then suddenly there is an order of magnitude increase in difficulty. Each project increased in difficulty while simultaneously re-enforcing key steps in realizing an overall project. This repetition coupled with the step wise increase in difficulty aided in the mastery of PCB design using KiCAD but also kept the course interesting from start to finish. My confidence in using KiCAD by the end of the course is as the title suggests... I feel now that I can "KiCAD like a pro"! Thanks Peter!" -- Dave F.
A few weeks ago, I completed work in my latest book, Kicad Like a Pro, second edition.
I started working with Kicad when it hit version 3, and since then I have created dozens of PCBs for my courses and private projects. Despite the challenges that are common in open source software projects, I have seen Kicad improving with every nightly release.
When version 5 was released by the Kicad developer team in August 2018, I was ecstatic. I had already started working on my new Kicad Like a Pro book, using beta versions of 5.
Version 5 is the real deal.
It is the version at which I can confidently say that Kicad has reached a level of maturity normally seen in proprietary engineering software.
For people already familiar with previous versions of Kicad, the transition is seamless, and the changes make its usage easier than before. Features and workflows that used to be broken or problematic, now work (I am looking at you, Library Manager!).
For people new to Kicad, the news is even better.
Kicad's menus and workflows are better organized, making learning much easier. There are fewer "gotchas" and confusing user interface choices. And the Linux, Windows and MacOS versions are almost identical so that those of us that work with all three can feel at home.
The 2nd edition of Kicad Like a Pro is now available as an ebook bundle. This ebook contains everything I know about Kicad and the process of designing and manufacturing printed circuit boards.
It is an excellent resource for anyone interested in making their own PCBs.
If you have never designed a PCB before, use this book to learn the fundamental concepts of PCB design, the terminology, the Kicad workflow.
And, with the help of the four projects, learn by doing.
If you already have PCB design skills and experience, use this book to deepen your knowledge of Kicad and understand some of its more advanced features and techniques, like autorouting and versioning.
As a reader of this ebook, you will receive a bundle that contains three versions:
- A printable PDF file (a total of 459 pages).
- An EPUB file that is compatible with popular ebook readers like iBooks.
- A MOBI file that works with Amazon Kindle ebook readers.
You will also have access to:
- A discussion forum where you can interact with the author and other readers.
- A repository with all book project files.
- An errata form, where you can let the author know about any problems with the book.
- A repository of full-resolution images from the book.
- Updates of the ebook as I make corrections and add new content.
Get your copy of this ebook right now and have your first PCB designed and ordered by the end of the next weekend.
PS1. If you have signed up to my email list and have received this post as an email, look out for the next few emails; they will contain a discount code for the ebook.
PS2. If you came to this page from one of my social media posts (i.e. Facebook, LinkedIn, Twitter), remember that I will be making a few more posts about this topic in the next few days. One of them will contain a discount code for the ebook.