In this tutorial, you will build a breadboard keyboard with 4 keys. The keyboad will be used in tutorials 2 through 7.
When you finish this tutorial you will have a working keyboard and understand how a key matrix works.
Breadboard keyboards have row-column matrices and diodes just like the big keyboards.
A breadboard is the easiest way to learn keyboard electronics. A novice won’t get everything right the first time. Learning is fun when mistakes are easily corrected. Compared to PCBs, breadboard keyboards make learning faster because:
Breadboard keyboards are useful for:
Arduino simulation software might be another way; I haven’t tried that.
The parts needed to build the tutorial Breadboard Keyboards are listed in breadboard_keyboard_supplies.ods.
The tutorials use a Teensy LC controller, but any Arduino-compatible controller should work.
You will need two tools:
Wire striper and lead forming tool are optional.
To understand the breadboard keyboard you will need to know the internal parts of a breadboard:
These are explained in How to Use a Breadboard
This excellent article explains how the microcontroller, matrix, switches and diodes work together: How a Key Matrix Work
The basic breadboard keyboard has 4 switches.
A Teensy LC microcontroller in on the left. A key matrix with 4 switches is to the right.
The key matrix has two two columns. Short wires connect terminal strips into matrix columns. Jumper wires connect the columns to the microcontroller.
The key matrix has two two rows. Breadboard bus strips are matrix rows. A jumper connects the top row to the microcontroller. A short wire connects the bottom row to the microcontroller.
Switch-diode pairs, in series, connect rows to columns.
Tutorials 2 and 3 use the basic breadboard keyboard pictured above. Tutorials 4, 5, and 6 will add more components to the basic breadboard keyboard. Positioning components as shown on the picture will provide space for those components.
![pic of shift registers, LEDs, active high on one bb]
Breadboard keyboard assembly instructions:
Pin number | connected to |
---|---|
0 | row_0 |
1 | row_1 |
14 | col_0 |
15 | col_1 |
Follow the keybrd Library User’s Guide to set up the Arduino environment.
Compile and load the keybrd_2_single-layer.ino sketch into the keyboard’s controller.
keybrd tutorial by Wolfram Volpi is licensed under a Creative Commons Attribution 4.0 International License.
Permissions beyond the scope of this license may be available at https://github.com/wolfv6/keybrd/issues/new.