[Bug] Q10 Pro and K11 Pro Bluetooth not working with NKRO - Via keymap
Opened this issue · 6 comments
Describe the Bug
On my Q10 Pro, Bluetooth doesn't work when built from the wireless_playground
branch. It connects fine, but keys give unexpected (and wrong) actions - like it's misinterpreting matrix scans.
Keyboard Used
Keychron Q10 Pro
Link to product page (if applicable)
No response
Operating System
macOS
qmk doctor Output
No response
Is AutoHotKey / Karabiner installed
- AutoHotKey (Windows)
- Karabiner (macOS)
Other keyboard-related software installed
No response
Additional Context
Works fine in USB, Karabiner isn't modifying events from this keyboard
Can you elabrate more and upload the compilred .bin file?
Hi @lokher - sorry for the delayed reply, I wasn't home, as I travel a lot I actually just bought a K11 Pro and have the same issue. What I mean is that when paired by Bluetooth (both to my MacBook Air and to my Pixel 7) most keys do nothing and those that do, don't do the right thing. For example Q
sends M
and W
sends A
on the K11 Pro.
I've tried a factory reset with no luck, and I've compiled from the head of the current branch to rule out any of the config options I've set. I can install the firmware from your website and it works fine. Unfortunately, there are some config options Via can't set I need (the whole reason I bought your keyboards - QMK support).
I've attached a K11 Pro firmware I compiled from the HEAD of wireless_playground
earlier today, which exhibits this issue. The start of the file name is the commit hash I compiled from.
e5e57f406e4281f3a9e61afdb6c3e7d323c0cf7b_keychron_k11_pro_ansi_encoder_rgb_via.zip
This may be caused by the keyboard being in (full) NKRO mode (not the default; the default is 6NKRO).
Recover by Fn + N (if using the default key mapping). If the firmware has been changed to use "#define FORCE_NKRO" then it must be done at every power up.
Though a factory reset should also do it, unless "#define FORCE_NKRO" is active/set.
I get the exact same behaviour with a K10 Pro in (full) NKRO mode, wireless mode, and branch 'wireless_playground' (it works perfectly fine in wired mode). The 2024-04-12 fix (E5E57) didn't seem to make a difference, but I will do more checking, incl. comparing with the 'bluetooth_playground' branch.
Thanks @PeterMortensen I'm using #FORCE_NKRO
, yes - now not when I'm on a freshly compiled version but NKRO would have remained and I didn't even think about it.
Hi, I can confirm that this is the issue and disabling NKRO allows Bluetooth to work correctly - obviously not ideal so I'll leave this open and update the issue title
The 2024-04-12 fix (E5E57) didn't seem to make a difference
Perhaps it is hidden behind a feature flag, WIRELESS_NKRO_ENABLE
, and must be explicitly enabled?