Table of Contents
You maybe know the situation. You want to quickly test something with a custom controller on the bread board but end up spending most of the time searching for a
reset button, a
flash button, the cables and a resistor to go with everything. Then quickly look up again how to attach a button to your controller (by searching for
arduino button and check wether to do a pull up or a pull down approach… here).
And after half an hour to an hour later you end up with something looking like this:
And as you sneak in your maker time after work, your precious time for that day is almost already over…
…. and your breadboard is more than full with just a few buttons.
Time for yet another breakout board.
I create my PCBs with KiCad. It’s open source and you can get it from their website: https://kicad-pcb.org.
If you need an intro to KiCad see my previous post: /post/2018/12/25/howto-kicad.html.
The above is already the basic idea. From now on I will call the pins
This way I can avoid using
VCC and can decide later if the pin attached to the button is pulled low, or high.
Connect your controller’s GPIO to the
Pin pin. You get two (sensible) configurations:
Now, as we will need more buttons, let’s clone this setup and paste it to get four buttons.
Now, maybe you dont need exactly four buttons in your project, or not all of them are pulled high or low. In this case just break the PCB into single buttons and use those.
Otherwise you can save cables by using the shared
S pins :).
To give you an idea of this things size, take a look at the renderings below:
I will update this post as soon as I have the PCBs.
Ordering the PCBs
If you want to change the PCB check the section below for the sources. You can upload the
.kicad_pcb file directly to aisler.net to se how it would turn out.
If you want to modify the sources head to my GitHub repository: