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:rootthe new rules file or it won’t be used (ask me how I know!
)
- Install the latest
dfu-utilfrom source
- Clone per instructions at https://dfu-util.sourceforge.net/
./autogen.sh && ./configure && make -j
- Confirm that the keyboard is accessible:
- Hold
progwhile plugging in the keyboard - Run
./src/dfu-util -lvand 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.