We’ve built our keyboard from scratch, now it’s time to put a brain into it.
A keyboard functionality may seem trivial but the firmware job is all but simple. Dealing with the USB HID interface is tedious, that’s why it’s good to start with a controller that has integrated keyboard/mouse/keypads support like the Teensy and some ready to use libraries.
There are various firmware we can choose from but for the sake of this tutorial I’m going to use QMK. It was born as a fork of Hasu’s TMK and developed into its own thing. Unfortunately at the time of this writing TMK doesn’t compile properly with Chibios (aka modern controllers like the Teensy 3.x) so we are going to work with its equally capable cousin.
Continue reading…