Error with LEDControl on Arduino for Kaleidoscope when loading Model100 board

I get the following error in Arduino when I try to load the Model100 board version 1.99.7:

Invalid library found in C:\Users\JC\AppData\Local\Arduino15\packages\keyboardio\hardware\gd32\1.99.7\libraries\Kaleidoscope-LEDControl: no headers files (.h) found in C:\Users\JC\AppData\Local\Arduino15\packages\keyboardio\hardware\gd32\1.99.7\libraries\Kaleidoscope-LEDControl

I’m using a slightly older Arduino (1.8.13) if that matters.

I’m also getting an error for MacrosOnTheFly.h

Model100-Firmware-Jeremy:35:10: fatal error: Kaleidoscope-MacrosOnTheFly.h: No such file or directory
35 | #include “Kaleidoscope-MacrosOnTheFly.h”
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
compilation terminated.
Using library Kaleidoscope at version 1.99.7 in folder: C:\Users\JC\AppData\Local\Arduino15\packages\keyboardio\hardware\gd32\1.99.7\libraries\Kaleidoscope
Using library Kaleidoscope-Hardware-Keyboardio-Model100 at version 1.99.7 in folder: C:\Users\JC\AppData\Local\Arduino15\packages\keyboardio\hardware\gd32\1.99.7\libraries\Kaleidoscope-Hardware-Keyboardio-Model100
Using library KeyboardioHID at version 0.0.1 in folder: C:\Users\JC\AppData\Local\Arduino15\packages\keyboardio\hardware\gd32\1.99.7\libraries\KeyboardioHID
Using library FlashStorage at version 0.1.0 in folder: C:\Users\JC\AppData\Local\Arduino15\packages\keyboardio\hardware\gd32\1.99.7\libraries\FlashStorage
Using library Kaleidoscope-MouseKeys at version 1.99.7 in folder: C:\Users\JC\AppData\Local\Arduino15\packages\keyboardio\hardware\gd32\1.99.7\libraries\Kaleidoscope-MouseKeys
Using library Kaleidoscope-Macros at version 1.99.7 in folder: C:\Users\JC\AppData\Local\Arduino15\packages\keyboardio\hardware\gd32\1.99.7\libraries\Kaleidoscope-Macros
Using library Kaleidoscope-MacroSupport at version 1.99.7 in folder: C:\Users\JC\AppData\Local\Arduino15\packages\keyboardio\hardware\gd32\1.99.7\libraries\Kaleidoscope-MacroSupport
Using library Kaleidoscope-Ranges at version 1.99.7 in folder: C:\Users\JC\AppData\Local\Arduino15\packages\keyboardio\hardware\gd32\1.99.7\libraries\Kaleidoscope-Ranges
exit status 1
Kaleidoscope-MacrosOnTheFly.h: No such file or directory

MacrosOnTheFly is a third party plugin, you’ll have to pull it in separately (and possibly update it to work with recent Kaleidoscope).

The LEDControl warning is just a warning, and can be safely ignored.

ok, thanks!

I’m also running into an error with DualUse:

exit status 1
Kaleidoscope-DualUse.h: No such file or directory

Do you know where that went?

Edit : found it here

I’m also getting this error:

exit status 1
LED-Off.h: No such file or directory

for the line

#include "LED-Off.h"

That’s not a 3rd party plugin, right? Why can’t it find that?

Edit: never mind, I’m just going to start from the example at File → Examples → Examples for Keyboardio Model 100 → Kaleidoscope → devices → Keyboardio → Model 100.

DualUse is implemented by Qukeys nowadays, and the compat header went away a while ago. Including Kaleidoscope-Qukeys.h instead of the DualUse header should do the trick.

LED-Off.h is also obsolete, the plugin is provided by LEDControl itself.

1 Like

Thank you so much!

I’m running into this error when compiling MacrosOnTheFly:

C:\Users\JC\Documents\Arduino\libraries\Kaleidoscope-MacrosOnTheFly-master\src\Kaleidoscope\MacrosOnTheFly.cpp:21:10: fatal error: kaleidoscope/hid.h: No such file or directory
   21 | #include <kaleidoscope/hid.h>  // wasModifierKeyActive()
      |          ^~~~~~~~~~~~~~~~~~~~
compilation terminated.

Do you know what happened to kaleidoscope/hid.h ?

I’m having another “hid” issue:

For the line in my macro handler

        if (kaleidoscope::hid::wasModifierKeyActive(Key_LeftShift) || kaleidoscope::hid::wasModifierKeyActive(Key_RightShift))

I’m getting the error

kaleidoscope::hid has not been declared

And also for the lines

kaleidoscope::hid::pressMouseButtons(KEY_MOUSE_BTN_L);
kaleidoscope::hid::pressMouseButtons(KEY_MOUSE_BTN_M);
kaleidoscope::hid::pressMouseButtons(KEY_MOUSE_BTN_R);
kaleidoscope::hid::releaseMouseButtons(KEY_MOUSE_BTN_L);
kaleidoscope::hid::releaseMouseButtons(KEY_MOUSE_BTN_M);
kaleidoscope::hid::releaseMouseButtons(KEY_MOUSE_BTN_R);

Same error.

https://kaleidoscope.readthedocs.io/en/latest/UPGRADING.html

That will list most things that were changed, removed, and so on.

For the hid stuff, Kaleidoscope.hid().keyboard() and Kaleidoscope.hid().mouse() are the replacements. You can look at the available functions for these in driver/hid/base/Keyboard.h and driver/hid/base/Mouse.h, respectively.

1 Like

Oh wow! That is enormously helpful, thank you so much!

I see layer.isOn has become layer.isActive.

And I’m also getting bugs for LEDControl.refreshAt(x,y) - has that now been replaced by LEDControl.enable(x,y) ? Or is that now linear as well?

Hi, so I am having the same problem (Mac), and have no clue on how to solve it. This is the error I get when trying compiling the Model 100 file (from the examples):

Sketch uses 159216 bytes (15%) of program storage space. Maximum is 1048576 bytes.
Global variables use 21068 bytes (21%) of dynamic memory, leaving 77236 bytes for local variables. Maximum is 98304 bytes.
dfu-util 0.11

Copyright 2005-2009 Weston Schmidt, Harald Welte and OpenMoko Inc.
Copyright 2010-2021 Tormod Volden and Stefan Schmidt
This program is Free Software and has ABSOLUTELY NO WARRANTY
Please report bugs to dfu-util / Tickets

Opening DFU capable USB device…
Device ID 3496:0005
Device DFU version 0110
Claiming USB DFU Interface…
Setting Alternate Interface #0
Determining device status…
DFU state(2) = dfuIDLE, status(0) = No error condition is present
DFU mode device DFU version 0110
Device returned transfer size 1024
Copying data from PC to DFU device
Download [=========================] 100% 159632 bytes
Download done.
DFU state(7) = dfuMANIFEST, status(0) = No error condition is present
DFU state(2) = dfuIDLE, status(0) = No error condition is present
Done!
Resetting USB to switch back to Run-Time mode
Invalid library found in /Users/bohr/Library/Arduino15/packages/keyboardio/hardware/gd32/1.99.7/libraries/Kaleidoscope-LEDControl: no headers files (.h) found in /Users/bohr/Library/Arduino15/packages/keyboardio/hardware/gd32/1.99.7/libraries/Kaleidoscope-LEDControl

Any ideas on how to solve it?

Thanks!