Created
March 17, 2025 06:50
-
-
Save lifthrasiir/c79c90ecf697b1e6dc73e83f32984499 to your computer and use it in GitHub Desktop.
Archon M1 PRO MAX WebHID command listing (preliminary)
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
?? = not yet known, set to zero?; nnnn = u16be; nnnn^ = u16le; ... | |
XXXX (uppercased) = output locations, otherwise input locations or literal bytes | |
cmd# buffer configuration function signature | |
0x01 ?? VVVV getProtocolVersion() -> v | |
0x02 tt aa... VV... getKeyboardValue(t, a, n) -> v... | |
0x03 tt aa... setKeyboardValue(t, a...) | |
0x04 tt aa nn KKKK getKey(t, a, n) -> k | |
0x05 tt aa nn ssss/KKKK setKey(t, a, n, s) -> k | |
0x07 tt... setCustomMenuValue(t...) | |
00 01 nn 01 xx yy setPerKeyRGBMatrix(t, x, y) | |
0A tt setRGBMode(t) | |
0C ?? hh ss setColor(1, h, s) | |
0D ?? hh ss setColor(!=1, h, s) | |
17 tt hh ss setCustomColor(t, h, s) | |
0x08 tt aa nn ?? DD getRapidData(t, a, n) -> d | |
tt DD... getCustomMenuValue(t) -> d... | |
00 01 nn 01 ?? XX YY getPerKeyRGBMatrix(n) -> (x, y) | |
0C ?? HH SS getColor(1) -> {hue: h, sat: s} | |
0D ?? HH SS getColor(!=1) -> {hue: h, sat: s} | |
17 tt HH SS getCustomColor(t) -> {hue: h, sat: s} | |
0x09 tt commitCustomMenu(t) | |
- saveLighting() | |
0x0A - resetEEPROM() | |
0x0B - jumpToBootloader() | |
0x0C ?? NN getMacroCount() -> n | |
0x0D ?? SSSS getMacroBufferSize() -> s | |
0x0E rrrr 1C ?? BB*32 getMacroBytes(r) -> b... | |
0x0F rrrr nn bb... setMacroBytes(r, n, b...) | |
0x10 - resetMacros() | |
0x11 ?? CC getLayerCount() -> c // v8+; defaults to 4 before | |
0x12 aaaa nn ?? DD... getKeymapBuffer(a, n) -> d... // v8+; bulk version of getKey | |
0x13 rrrr nn cc... writeRawMatrix(r, n, c...) | |
0x14 tt aa nn ?? VVVV getEncoderValue(t, a, n) -> v | |
0x15 tt aa nn VVVV setEncoderValue(t, a, n, v) | |
0x20 - reloadRTDKS() | |
0x21 ?? TT getMode() -> t | |
0x22 00 ?? HH SS BB getProColor() -> {hue: h, sat: s, brightness: b} | |
01 tt hh ss bb setProColor(t, h, s, b) | |
0x23 ?? TT getCalibrationStatus() -> t | |
0x24 tt setKeyCalibration(t) | |
0x25 - resetDevice() | |
0x26 ?? TT getQueryCalibratonValid() -> t | |
0x27 00 ?? AA getSwitchType() -> a | |
tt aa setSwitchType(t, a) | |
0x28 00 ?? AA getGamepadControl() -> a | |
tt aa setGamepadControl(t, a) | |
0x29 00 ?? AA getProfile() -> a | |
tt aa setProfile(t, a) | |
0x2A tt/DD... getProfileAddress() -> d... | |
0x2B tt setViaWriteIndex(t) | |
0x2C - resetKeymatrix() | |
0x2D - resetMacro() | |
0x2E 00 ?? AA getPolling() -> a | |
tt aa setPolling(t, a) | |
0x2F 00 ?? AA getMacroStopMode() -> a | |
tt aa setMacroStopMode(t, a) | |
0x30 00 ?? AA getMDSAllPressDirectSend() -> a | |
tt aa setMDSAllPressDirectSend(t, a) | |
0x31 00 ?? AA getXboxCompatible() -> a | |
tt aa setXboxCompatible(t, a) | |
0x32 00 ?? AA getLEDOnOff() -> a | |
tt aa setLEDOnOff(t, a) | |
0xF0 ?? VVVVVV getFWVersion() -> v | |
0xF1 tt (00 00 aaaaaaaa^ nnnnnnnn^)/VV | |
eraseRomBuffer(t, a, n) -> v | |
0xF2 nn tt 00 aaaaaaaa^ dd... writeRomBuffer(t, a, n, d...) | |
0xF3 tttt nn/DD... readRomBuffer(t, n) -> d... | |
tttt (00 nnnnnnnn^)/DD... readDataBuffer(t, n) -> d... | |
0xF4 tt resetWithBootHold(t) | |
0xF5 00 (00 00 aaaaaaaa^ tttttttt^)/DDDDDDDD | |
readCrcDataBuffer(t, a) -> d | |
0xF6 nn tt 00 aaaaaaaa^ dd... decodewriteRom(t, a, n, d...) |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment