-
Notifications
You must be signed in to change notification settings - Fork 259
Recovering from a bad firmware upload
There are many types of malfunctioning firmware that can be flashed on a Model01, but don't worry; you almost certainly can't brick the keyboard by doing so. There is a fairly simple procedure that you can follow to upload a good version of the firmware even if your keyboard is non-functional.
There are a few different types of bad firmware that can be uploaded.
- The
prog
key sends input that disrupts the flashing process - The keyboard continuously sends input even without pressing any keys
- The keyboard is non-functional, and can't send any input
- The keyboard's serial port becomes non-functional
In some cases, it's possible to run make flash
and successfully upload a good firmware if you get lucky with the timing, but in other cases, it can be impossible with the bad firmware running. Especially in the last case, where the serial interface becomes disabled, the keyboard will be unreachable once it has finished booting.
In order to use this procedure, you'll need an additional (working) keyboard.
-
Unplug the Model01.
-
From your other keyboard, run
make flash
, and wait for thePress ENTER when ready...
prompt. -
Hold down the
prog
key on the Model01 while plugging it in. Do not release theprog
key. -
Press
enter
on the other keyboard (Still holding theprog
key).
The Model01 will stay in bootloader mode for five seconds while the prog
key is held, so you've got about that much time to press enter
on the other keyboard. This is usually not difficult, but if you wait too long, the bad firmware on the Model01 will start, and the good firmware upload will probably fail. If that happens, just try again. It doesn't matter what kind of bad firmware has been flashed to the Model01, because if you use this procedure, that firmware will never start running.
The only way to brick a Model01 is by flashing a bad bootloader, which can't be done without using an external programmer and opening the case, so don't worry about doing that accidentally.
Troubleshooting
Advanced Topics
Development and customization
Keyboardio Model 01 docs
- Keyboardio Model 01 Introduction
- Flashing a new bootloader
- Default Model 01 QWERTY Layout
- Common Alternate Layouts
- Hardware Test Mode
Community