I was only just now able to build the stock firmware.
Notes of what I tried. What eventually worked (nicely formatted at the above link ):
Setup prerequisites
- Add udev rules for the Model100 per https://community.keyboard.io/t/model-100-firmware-update-to-fix-corruption-issues/5553/9 .
-
chown root:root
the new rules file or it won’t be used (ask me how I know! )
- Install the latest
dfu-util
from source
- Clone per instructions at https://dfu-util.sourceforge.net/
./autogen.sh && ./configure && make -j
- Confirm that the keyboard is accessible:
- Hold
prog
while plugging in the keyboard - Run
./src/dfu-util -lv
and make sureModel 100 (bootloader)
appears - Install the latest firmware using Chrysalis per Model 100 firmware update to fix corruption issues
Setup Chrysalis-Firmware-Bundle
- Clone GitHub - keyboardio/Chrysalis-Firmware-Bundle: Firmware sketches for boards supported by Chrysalis and cd into the clone dir.
- Run
./tools/bootstrap
. This will create.arduino/
and.kaleidoscope/
and download lots of files into them. export KALEIDOSCOPE_DIR="$(realpath .kaleidoscope/)"
export ARDUINO_DIRECTORIES_USER="$(realpath .kaleidoscope/.arduino/user)"
make -C .kaleidoscope setup
Build the firmware
-
make Keyboardio/Model100 VERBOSE=1
. This should leave output inoutput/Keyboardio/Model100/default.bin
. - Unplug the Model100, hold Prog, and plug the Model100 back in. The prog key should light steady red.
- Run
dfu-util -d 3496:0005 -D ./output/Keyboardio/Model100/default.bin -R
— use your locally-built dfu-util. You should see something like the below “Sample dfu-util output”. The first column of keys will cycle green while this is happening. - When the programming is done, the keyboard should reset. If it doesn’t, unplug and replug it.