Help getting Model01-Firmware to compile (flashed non-working firmware to board)


I am an idiot.

I just received an ESP8266 board in the mail. I opened up the Arduino IDE, set my board, picked the available serial port, and uploaded blink.ino

And then my keyboard stopped working.


So I am now trying to follow the instructions at the Keyboardio Model01 Firmware github. I have created a hardware/keyboardio/avr directory containing the submodules for the keyboardio arduino core.

I have cloned the Model01-Firmware repository into the Arduino sketch folder.

This appears not to be the correct place for it. Or, rather, something is not in the right place. I’m not sure what.

When I attempt to build the firmware, I get the error:

Arduino: 1.8.4 (Mac OS X), Board: "Arduino/Genuino Uno"

/Users/josh/Dropbox (Personal)/Projects/code/Arduino/hardware/keyboardio/avr/libraries/Model01-Firmware/Model01-Firmware.ino:17:26: fatal error: Kaleidoscope.h: No such file or directory
 #include "Kaleidoscope.h"
compilation terminated.
exit status 1
Error compiling for board Arduino/Genuino Uno.

Well, obviously Kaleidoscope.h is nowhere near this sketch.

Perhaps the libraries in the avr folder need to go into the Arduino/libraries folder?

No. When I do that, I get:

In file included from /Users/josh/Dropbox (Personal)/Projects/code/Arduino/hardware/keyboardio/avr/libraries/Model01-Firmware/Model01-Firmware.ino:17:0:
/Users/josh/Dropbox/Projects/code/Arduino/libraries/Kaleidoscope/src/Kaleidoscope.h:23:10: error: #include expects "FILENAME" or <FILENAME>

I get that a couple of times, and then also:

 #error HID Project can only be used with an USB MCU.

I am clearly doing this completely wrong. I have missed something simple and made this all too complicated. But I do not know what.

Meanwhile, my keyboard is a beautiful brick.

Please help me get it running again?

This is likely the source of your troubles. You’ll need to set the board to Keyboardio (or Keyboardio Model 01, or something along those lines).

Can you try doing that, and see if it helps?

1 Like

Thank you!

I knew it was something very simple that I was missing. I feel like a complete n00b.

Thanks again, my keyboard is working again and now I can play with the firmware!


I’m so glad it was something easy.

Also, just as a note, our bootloader has a failsafe mode. If you hold down ‘Prog’ as you plug your keyboard in, it will never try to run the user program, instead hanging out in the bootloader for a little while, so you can recover over USB.


Is this explained somewhere? I’d like to make sure it gets documented. :slight_smile:

1 Like

As it happens, I didn’t need the failsafe, but am very happy to know it’s there.

Email, tweets or forum posts somewhere :frowning:

. I did just open a ticket on the bootloader repo as a placeholder to remind myself to write it down.

1 Like

Is it this? The process seems clearly documented, but not why one would do it, or what problems it would correct.

It’s not. It is the more intense procedure that this new failsafe help people avoid

1 Like