Some key codes don't work
tjhorner opened this issue · comments
Tested it, and it seems like these keys aren't valid on the US layout:
f11
minus
numpad0
numpadplus
numpadenter
numpaddecimal
arrowright
forwardslash
lsquare
brightness
hash
apostrophe
g17
g18
I tried looping from 0x00
to 0xFF
and every key lighted up except for the ones above. Really weird.
Are you using the latest firmware? I created this before they released true colour support, so perhaps the underlying protocol got tweaked?
I'm away from home at the moment so don't have my keyboard to test with but will check this out later to see how well it works on mine since the firmware upgrade.
Maybe cross reference against the official Linux/mac driver which I assume has the US layout here: https://github.com/ccMSC/ckb/blob/master/src/ckb-daemon/keymap.c
I was on FW 1.10 (pre-16.8m color), CUE just updated it to 1.30, no luck. I'll see if ckb
works on Linux with those keys.
Nevermind, it was the way I was handling lcrgb_set_key_code
in the ffi
node module. Arg 0 was char
instead of int
, which worked better in ffi
because of JavaScript's restrictions. Compiled the example file and it worked perfectly. Sorry for the inconvenience!
Ah, glad to hear it got resolved:)
I didn't realise you were making this into a node module, let me know how that goes as it would probably be more fun to code with than as a C++ lib as it stands currently (C++ isn't my favourite language...)
Haha yeah I'm not too fluent in C++ either... I actually have an older version of the node module published at npm: https://npmjs.org/package/corsair-rgb
It doesn't work with x64 arch out-of-the-box as the dll included is 32-bit. I'm also updating it today to clean the directory structure and such. (and it will work with 64-bit systems)
Alright, updated the module to 0.0.9
. Junk files removed, 32-bit and 64-bit systems supported 👍