Error when trying to compile the default firmware


(Erik Jernsand) #1
C:\Users\colon\AppData\Local\Temp\arduino_modified_sketch_933048\Model01-Firmware.ino:60:46: fatal error: Kaleidoscope-HostPowerManagement.h: No such file or directory

 #include "Kaleidoscope-HostPowerManagement.h"

                                              ^

compilation terminated.

Multiple libraries were found for "HID.h"
 Used: C:\Users\colon\AppData\Local\Arduino15\packages\keyboardio\hardware\avr\1.22.0\libraries\HID
 Not used: C:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\HID
exit status 1
Error compiling for board Keyboardio Model 01.

When I comment out the inclusion of the header file I instead get another error.

Arduino: 1.8.5 (Windows 10), Board: “Keyboardio Model 01”

Model01-Firmware:131: error: expected constructor, destructor, or type conversion before ‘(’ token

KEYMAPS(

    ^

Multiple libraries were found for “HID.h”
Used: C:\Users\colon\AppData\Local\Arduino15\packages\keyboardio\hardware\avr\1.22.0\libraries\HID
Not used: C:\Program Files (x86)\Arduino\hardware\arduino\avr\libraries\HID
exit status 1
expected constructor, destructor, or type conversion before ‘(’ token

This report would have more information with
“Show verbose output during compilation”
option enabled in File -> Preferences.


(Chet Sandberg) #2

I have this exact problem and have gotten zero help.


(Gergely Nagy) #3

I think the problem both of you are experiencing stems from installing Arduino-Boards via the IDE, but using the factory firmware from a git checkout.

Does this describe the situation? If so, that’s reasonably easy to fix.


(Jesse) #4

Hi folks,

@Chet_Sandberg - I’m so sorry. The Host Power Management error @snowleap mentioned didn’t show up in the error message you mailed us. If it had, I would have been able to pinpoint the problem much more quickly.

@algernon is correct - this appears to have been caused by using a version of the Model01-Firmware.ino sketch file from a fresh git checkout, but libraries from Arduino. In general, this should work or, if not, should fail with an intelligible error message. The fact that it did not is my fault.

You’d mentioned that this was caused by following the instructions at https://github.com/keyboardio/Kaleidoscope/wiki/edit-a-keymap, but I’m not seeing a place in there where we point you to the GitHub version of Model01-Firmware. If you happen to remember where we told you to do that, could you point me at it so I can go correct things?

Regardless, I’ve just updated the Arduino version of Kaleidoscope to something somewhat newer, with support for the sketch you were working with. This should help improve things, though we’re approaching another transition that may cause a breaking change, though this time we’re putting a bunch of effort into steering you in the right direction if things go wrong.


#5

@jesse

Hi, I am having this exact problem. However I don’t see a solution, only that you’re saying you’re to blame. How do I upload my keymap if it won’t compile?


(Jesse) #6

@functionalLlama,

Can you tell me what version of the Arduino IDE you’re using and what version of Kaleidoscope is installed in the Arduino Boards Manager? If you installed Arduino through the Windows store, can you try a direct install? The store version is weirdly broken :confused:


#7

Yep, that was the issue. I did a reinstall of my arduino IDE and tried flashing again, but ran into some process running bugs. A little searching revealed that I had to unplug the keyboard, and then plug it in while holding the prog key, reselect it from the COM port menu and then flash. Everything is working now! Thanks for the support, Jesse.