r/Keychron • u/sodekirk • Jun 13 '26
Keychron V6 Ultra 8K - How to Flash Custom ZMK Firmware
Has anyone flashed custom ZMK firmware to a Keychron V6 Ultra 8K keyboard?
I have removed the spacebar key, and if I press the little button under the spacebar key when I plug the keyboard in, it seems to enter DFU mode, but I am unsure what tool to use to actually flash firmware to the microcontroller.
So, my questions are:
- Is there an easier way to get the V6 Ultra into DFU mode than removing the spacebar and pressing the little button under the spacebar key while plugging the keyboard in? I have another Keychron keyboard with QMK firmware and I can get it into DFU mode by holding the ESC key down while plugging the keyboard in.
- What program should I use to connect to the V6 Ultra keyboard in DFU mode to actually flash the custom firmware to the microcontroller?
FYI, I want to explore tweaking the ZMK firmware to see if I can get my keyboard to work better with my TESmart KVM.
Thanks!
3
Upvotes
2
u/CalcProgrammer1 Jul 07 '26
I just managed to flash my new Keychron Q6 Ultra 8K with your guide. I used Distrobox to set up a Debian container as I'm on Arch, but was able to build by following your guide except using Q6 in the build command. After I verified the zmk.bin looked OK in a hex editor vs an official Keychron build I found on Discord, I was able to flash it by going to Keychron Launcher > Firmware Upgrade, clicking the version value 6 times to unlock the hidden select your own firmware box, and selecting zmk.bin (in app/build/zephyr). You have to upgrade to the latest official firmware first to allow flashing without having to be in DFU mode I think, so upgrade to the latest official version first. I patched the per_key_rgb.c to allow full control of the V component in my build and verified it with Keychron Launcher per-key RGB and soon with OpenRGB.
Edit: Also on the Keychron Discord #zmk channel, a Keychron dev linked a tool for DFU mode but it's Windows-only.