A firmware Sketch for the Keyboardio Model 01.  Based on algerno's:

Build firmware

On Debian systems, the following packages are required:

    - avr-libc
    - avrdude
    - binutils-avr
    - gcc-avr
    - arduino-mk

Running `apt install arduino-mk` should pull in all required
dependencies.  Moreover Arduino 1.6.7 or newer is required.
Unfortunately, as of 2019-06-25 the version found in Debian sid is too
old (cf. #780706, #925578, #927329), so for now we add ArduinoCore-avr
as a submodule.

Initialize (or update) submodules:

    ~$ git submodule update --init \
            lib/hardware/arduino/avr \

    ~$ git -C lib/hardware/keyboardio submodule update --init --recursive \
            "avr/bootloaders/*" \
            "avr/libraries/Kaleidoscope" \

    ~$ make

To enable communicating with the host via a simple Serial protocol, use

    ~$ ENABLE_SERIAL=yes make

Flash firmware

    ~$ make upload

Press down the 'prog' key while the board is rebooting.  You can release
it once it glows red.

Apply color map

    ~$ make apply-colormap

This requires a firmware supporting the Serial protocol.  (Add
ENABLE_SERIAL=yes to the build environment.)