Skip to content

Instantly share code, notes, and snippets.

@jhorology
Last active February 5, 2024 00:23
Show Gist options
  • Star 5 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save jhorology/ab8b50e667d60a67342e9800313009f1 to your computer and use it in GitHub Desktop.
Save jhorology/ab8b50e667d60a67342e9800313009f1 to your computer and use it in GitHub Desktop.
Unofficial custom keycode list for IKKI 68 Iceland

This is an experience-based list of custom functions that are currently work in progress.

CLI flash command

Long press [Reset] key to enter DFU mode.

# list DFU devices
% dfu-util -l
Found DFU: [2e3c:df11] ver=0200, devnum=13, cfg=1, intf=0, path="20-3", alt=1, name="@Option Byte   /0x1FFFF800/02*016 e", serial="AT32"
Found DFU: [2e3c:df11] ver=0200, devnum=13, cfg=1, intf=0, path="20-3", alt=0, name="@Internal Flash  /0x08000000/ 128*2Kg", serial="AT32"

# backup firmware
% dfu-util -a 0 -d 2e3c:df11 -s 0x8000000 -U backup.bin

# convert .hex to .bin
% arm-none-eabi-objcopy -I ihex WQ201A1UBT2_V10_3721_KB68_RGB_VIA_V1.0.5_20220428.hex -O binary WQ201A1UBT2_V10_3721_KB68_RGB_VIA_V1.0.5_20220428.bin

# flash firmware
% dfu-util -a 0 -d 2e3c:df11 -s 0x8000000:leave -D WQ201A1UBT2_V10_3721_KB68_RGB_VIA_V1.0.5_20220428.bin

WQ201A1UBT2_V10_3721_KB68_RGB_VIA_V1.0.5_20220428

code VIA label function note
0x5c00 Reset Restart, long press for entering DFU mode. dfu-util -l
0x5c02~ - QMK magic keycodes VIAL can treat these codes as labeled button.
??? - Restore factory settings Once I dit, but forgot code
- F14 ??? WTF! we lost F14-F24 keys, there is no sense of tech.
- F15 Check which connection is selected.
Long press for reset LED settings.
None-Light=Wired, Green=BT1, Blue=BT2
- F16 Long press for power-off when USB is not connected. How to power-on again?
- F17 ???
- F18 ???
- F19 ???
- F20 Connection - Select wired device
- F21 Connection - Select BT device 1, long press for pairing
- F22 Connection - Select BT device 2, long press for pairing
- F23 ??? maybe same as F21
- F24 ???
0x5d0c - Layers - Latch layer 0 Volatile
It seems JS_BUTTON0..31 range is used for custom functions.
0x5d0d - Layers - Latch layer 0 as default startup layer Non-volatile
0x5d0e - Layers - Latch layer 1 Volatile
0x5d0f - Layers - Latch layer 1 as default startup layer Non-volatile
0x5d10 - Layers - Latch layer 2 Volatile
0x5d11 - Utilities - Toggle locking both WIN key Non-volatile
0x5d19 - Utilities - Lock left WIN key Non-volatile
0x5d1a - Utilities - Unlock left WIN key Non-volatile
0x5d1b - Utilities - Toggle locking left WIN key Volatile
0x5d1c - Utilities - Lock right WIN key Non-volatile
0x5d1d - Utilities - Unlock right WIN key Non-volatile
0x5d1e - Utilities - Toggle locking right WIN key Volatile
- RGB
Toggle
LED - Toggle on/off In layer 2, it's for underglow LED. In the other layer, logo LED.
- RGB
Mode+
LED - Cycle through modes Ditto
- Hue+ LED - Color HUE+ Ditto
- Hue- LED - Color HUE- Ditto
- Sat+ LED - Color SAT+ Ditto
- Sat- LED - Color SAT- Ditto
- Bright+ LED - Brightness+ Ditto
- Bright- LED - Brightness- Ditto
- Effect
speed+
LED - Effect speed+ Ditto
- Effect
speed-
LED - Effect speed- Ditto
0x9001 - ??? mapping "/" in default layer 2

pre-installed firmware

code VIA label function note
0x5c00 Reset Restart, long press for power off maybe power on, I don't use LiPo battery.
??? - Restore factory settings Once I dit, but forgot code
0x5cd8 RS) Underglow LED - on/off
0x5cd9 Sfent Underglow LED - Cycle through modes
0x5cdb - Underglow LED - Color HUE+
0x5cdc - Underglow LED - Color HUE-
0x5cdd - Underglow LED - Color SAT+
0x5cde - Underglow LED - Color SAT-
0x5cef - Underglow LED - Brightness+
0x5ce0 - Underglow LED - Brightness-
0x5ce1 - Underglow LED - Effect speed+
0x5ce2 - Underglow LED - Effect speed-
0x5cf3 LC( Connection - Select wired device
0x5d22 - Connection - Select BT device 1, long press for pairing
0x5d23 - Connection - Select BT device 2, long press for pairing
0x5d28 - Layers - Latch layer 0 ??? mapping "1" in default layer 1
0x5d29 - Layers - Latch layer 0 ??? mapping "2" in default layer 1
0x5d2a - Layers - Latch layer 0 ???
0x5d2b - Layers - Latch layer 1 Non-volatile
0x5d2c - Layers - Latch layer 2 Non-volatile
0x5d2d - Logo LED - Select mode ???
0x5d2e - Logo LED - Select mode ???
0x5d2f - Logo LED - Select Mode ???
0x5d30 - Logo LED - Select Mode ???
0x5d31 - Logo LED - Select Mode ???
0x5d32 - Logo LED - Select Mode ???
0x5d33 - Logo LED - Select Mode ???
0x5d34 - Logo LED - ???
0x5d35 - Logo LED - Cycle through modes
0x5d36 - Logo LED - ???
0x5d37 - Logo LED - Color HUE+
0x5d38 - Logo LED - Color HUE-
0x5d39 - Logo LED - Color SAT+
0x5d3a - Logo LED - Color SAT-
0x5d3b - Logo LED - Brightness+
0x5d3c - Logo LED - Brightness-
0x5d3d - Logo LED - Effect speed+
0x5d3e - Logo LED - Effect speed-
0x5d3f - Logo LED - Toggle dimming
0x5d40 - Logo LED - on/off
0x5d4a - Utilities - ??? mapping CapsLock in default layer 1
0x5d4e - Utilities - Toggle locking WIN key Non-volatile
0x9001 - ??? mapping "/" in default layer 1
0x9002 - ??? mapping "/" in default layer 2
@mikeyoon
Copy link

mikeyoon commented Jul 29, 2022

Looks like there are changes in the newest firmware WQ201A1UBT2_V10_3721_KB68_RGB_VIA_V1.0.5_20220716. I've found only this so far:

User 6 - Reset LED
User 8 - Connection - Wired
User 9 - Connection - BT 1
User 10 - Connection - BT 2
User 11 - ?? Causes caps lock LED to blink white, maybe connection status or BT 3
User 13 - ?? Causes caps lock LED to blink green

@leoomi
Copy link

leoomi commented Jul 29, 2022

Looks like there are changes in the newest firmware WQ201A1UBT2_V10_3721_KB68_RGB_VIA_V1.0.5_20220716. I've found only this so far:

User 6 - Reset LED User 8 - Connection - Wired User 9 - Connection - BT 1 User 10 - Connection - BT 2 User 11 - ?? Causes caps lock LED to blink white, maybe connection status or BT 3 User 13 - ?? Causes caps lock LED to blink green

@mikeyoon The JSON was updated with custom keycodes with proper descriptions. They added a few random functions and a third BT connection. Go to the iceland PCB guide and get the JSON.
I believe the essential keycodes are set up correctly, but there are some others that might be some hex code. Hopefully, those haven't changed, but I haven't checked yet.

@mikeyoon
Copy link

@leoomi
Copy link

leoomi commented Jul 29, 2022

@leoomi Can you send me a link to that JSON file. The link at https://docs.wuquestudio.com/en/ikki68-aurora/iceland-pcb-guide goes to https://drive.google.com/file/d/18QkEKQxkPE3-5Q6mSeXw3MM417-qH7U0/view?usp=sharing, which seems dead.

The entire folder is accessible through the firmware link as well. But here it's the direct link: https://drive.google.com/file/d/1xNpOee3aV9VJLiDVtNCFLCKZa2gxK1o0/view?usp=sharing

@mikeyoon
Copy link

Thanks, that's super helpful.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment