Feature Request Type
Description
Could you publish the firmware source for the JamesDonkey J1 (WB32F3G71, wireless, 75% low profile)? I see similar requests have been honoured for other models (#507, #474, #484, #383), so I hope this one is reasonable too.
Why I'm asking
The J1 predates the Keychron acquisition, so the only source I could find is the old JamesDonkey fork of QMK. I built it and flashed it, and it works — except for one thing I didn't expect: Keychron Launcher can no longer configure the keyboard through the 2.4GHz receiver. Over the USB cable it is fine.
The reason turned out to be that the JamesDonkey tree has no raw HID path over the wireless link at all. Reached through the receiver, the host sees the receiver's own USB descriptor and has to ask the keyboard for its identity, and nothing in that firmware answers. Launcher reports productInfoErr(k) / "keyboard firmware does not support wireless connection".
I worked around it by porting the channel out of this repository's 2025q3 branch — LKBT51_CMD_RAW_HID_INIT/RX/TX (0x91/0x92/0x93), the send_raw_hid transport entry and the EVT_RAW_HID event — and Launcher now works over the receiver again. So the shipped J1 firmware clearly contains Keychron changes that the public JamesDonkey tree does not, which is exactly why having the real source would help.
What would be useful
Just the board directory (config, info.json, LED map, keymaps) on whichever branch is appropriate — the common wireless code is already public here. I'm not asking for anything module-related or otherwise confidential.
Happy to test anything on real hardware if that helps.
Feature Request Type
Description
Could you publish the firmware source for the JamesDonkey J1 (WB32F3G71, wireless, 75% low profile)? I see similar requests have been honoured for other models (#507, #474, #484, #383), so I hope this one is reasonable too.
Why I'm asking
The J1 predates the Keychron acquisition, so the only source I could find is the old JamesDonkey fork of QMK. I built it and flashed it, and it works — except for one thing I didn't expect: Keychron Launcher can no longer configure the keyboard through the 2.4GHz receiver. Over the USB cable it is fine.
The reason turned out to be that the JamesDonkey tree has no raw HID path over the wireless link at all. Reached through the receiver, the host sees the receiver's own USB descriptor and has to ask the keyboard for its identity, and nothing in that firmware answers. Launcher reports
productInfoErr(k)/ "keyboard firmware does not support wireless connection".I worked around it by porting the channel out of this repository's
2025q3branch —LKBT51_CMD_RAW_HID_INIT/RX/TX(0x91/0x92/0x93), thesend_raw_hidtransport entry and theEVT_RAW_HIDevent — and Launcher now works over the receiver again. So the shipped J1 firmware clearly contains Keychron changes that the public JamesDonkey tree does not, which is exactly why having the real source would help.What would be useful
Just the board directory (config,
info.json, LED map, keymaps) on whichever branch is appropriate — the common wireless code is already public here. I'm not asking for anything module-related or otherwise confidential.Happy to test anything on real hardware if that helps.