Project Custom Library in KiCad

A custom library is helpful for organizing your project files.  In this case where I want to share my design with my readers, the new/unique parts and footprints will be created in a new library called Programmer.

I created a new project called “Programmer” and saved it in a new folder called Uprogrammer in my home directory. I ran the eeschema from the KiCad dashboard.  I then ran the library editor, selected a library. Then I created and exported a component and saved it to programmer.lib in the project directory.

I added this library to the KiCad library list, and then opened it to edit. I added the pins and made it look the way I want it in the schematic.

Library edit

In looking for the pinout, I found out that there is a newer model of the ESP-12.  It is the ESP12E  It has 6 more pins that may be beneficial to the project. Click below to get this version of the library. I do expect this library to change as the project progresses.

Download zipped library file with ESP-12E.

KiCad EDA tools

I have never used the KiCad toolset.   The schematic capture tool I am familiar with is an older version of OrCad.  The industry tools have changed a lot, I expect a steep learning curve.

KiCad is open source, and free to use.  I will be posting my schematics, layout files, and new part libraries. This allows you to edit and suggest changes/ideas along the design path.

KiCad is available on Windows, Mac, and Linux machines.

KiCad is in the Ubuntu Software Center.  This makes installing as easy as searching for “KiCad” selecting the install package, and click on install.  The software center prompts me to authenticate and I proceed with the install.  I also selected the English help file to download with the install. The version I installed is 2013-jul-07 Stable.

Ubuntu Studio places the KiCad Launcher in the Development menu folder. I ran it and got a dashboard for all the tools that come along with KiCad. This dashboard also helps manage projects.

Kicad Dashboard

There are tutorials linked to from the KiCad Website that I will be checking out this week.

Radio Choice

I have decided on the radio I will use.  I plan on using the ESP8266 ESP12 WiFi module.  In the last few months, the maker community has made a lot of progress with these modules.  These modules have castellated solder pins which are relatively easy to hand solder.

The lack of documentation is a bit worrysome.  I don’t know if I will need another processor or not.  So I will get one of these in and start tinkering with it. It looks like the research here is going to require physical testing and experimenting.

I have found it available at Alibaba, Adafruit, and Amazon.

TAPR Open Hardware License (OHL)

The TAPR Open Hardware License (OHL) is the only license I am considering that is written specifically for hardware and patent law.  It requires that any derivative works be licensed the same.  It requires distribution of all modified works to include the originals unmodified.


This license restricts what a developer can do with the design.  I am hoping that this product has enough value to developers that they would contribute to the design.  With that premise, I would not like other developers to be limited significantly on how they can use the intellectual property.

I am going to use the MIT license for both hardware and software.  I don’t need patent/copyright protection on this product.  Liability protection is a good thing, I intend this product to be “hackable”. Anything submitted to this blog for product design will be considered under the MIT license unless noted otherwise.

Creative Commons

There are several flavors of the Creative Commons license.  I am going to look at the attribution and attribution share alike licenses.

Both licenses are very similar to the modified BSD license and are more explicit about what rights are conveyed by the license. Both require attribution to the author without endorsement from the author.

The share alike requires any derivative works be licensed with the same license or a compatible one.

For this project, I don’t see any advantage this gives me for the final product.  I hope to build and sell these programmers, but if someone else does for a decent price, I would still benefit.

I have to pick a license or make it public domain or someone else could license or patent it in a way that would restrict me or anybody else from building and selling it.

I am applying common design principals in this project. I do not believe there will be anything unique enough to patent.