Skip to content

Instantly share code, notes, and snippets.

@david-bakin
Created June 12, 2025 16:07
Show Gist options
  • Save david-bakin/a4d20e3608cba9a0bf9734f9d4b04513 to your computer and use it in GitHub Desktop.
Save david-bakin/a4d20e3608cba9a0bf9734f9d4b04513 to your computer and use it in GitHub Desktop.
UHK Agent log after upgrading to UHK80 - possibly showing issue related to flashing LHS keyboard half
[2025-06-11 08:43:53.136] [info] [Electron Main] command line arguments {}
[2025-06-11 08:43:53.143] [info] [Electron Main] init services.
[2025-06-11 08:43:53.143] [info] [Electron Main] packagesDir: C:\Users\david\AppData\Local\Programs\uhk-agent\resources
[2025-06-11 08:43:53.213] [info] [Electron Main] Create new window.
[2025-06-11 08:43:53.214] [info] [WindowState] load settings
[2025-06-11 08:43:53.220] [info] [WindowState] loaded settings {
x: 112,
y: 1064,
width: 1488,
height: 1256,
isMaximized: false,
isFullScreen: false
}
[2025-06-11 08:43:53.221] [info] [WindowState] loaded settings is visible true
[2025-06-11 08:43:53.222] [info] [WindowState] return with loaded settings
[2025-06-11 08:43:53.222] [info] [SmartMacroService] starting...
[2025-06-11 08:43:53.222] [info] [SmartMacroCopy] start
[2025-06-11 08:43:53.246] [info] [SmartMacroCopy] copy {
destination: 'C:\\Users\\david\\AppData\\Roaming\\uhk-agent\\smart-macro-docs\\UltimateHackingKeyboard\\firmware\\v14.0.1',
smartMacroDocFirmwarePath: 'C:\\Users\\david\\AppData\\Local\\Programs\\uhk-agent\\resources\\packages\\firmware\\doc'
}
[2025-06-11 08:43:53.270] [info] [SmartMacroCopy] done
[2025-06-11 08:43:53.270] [info] [SmartMacroCopy] start copy loading.html
[2025-06-11 08:43:53.272] [info] [SmartMacroCopy] end copy loading.html
[2025-06-11 08:43:53.273] [info] [SmartMacroService] get free TCP port
[2025-06-11 08:43:53.278] [info] [SmartMacroService] acquired TCP port: 58006
[2025-06-11 08:43:53.291] [info] [SmartMacroService] started on 58006.
[2025-06-11 08:43:53.343] [info] [ZephyrLogService | UHK Dongle] Inited
[2025-06-11 08:43:53.344] [info] [ZephyrLogService | UHK 80 left] Inited
[2025-06-11 08:43:53.344] [info] [DeviceService] init success
[2025-06-11 08:43:53.345] [info] [AppUpdateService] init success
[2025-06-11 08:43:53.345] [info] [AppService] init success
[2025-06-11 08:43:53.345] [info] [SudoService] App root dir: C:\Users\david\AppData\Local\Programs\uhk-agent\resources
[2025-06-11 08:43:53.354] [info] [DeviceService] Udev info: Ok
[2025-06-11 08:43:53.433] [info] [AppService] get-config: application-settings
[2025-06-11 08:43:53.435] [info] [AppService] get-config of "application-settings": {"errorPanelHeight":10,"checkForUpdateOnStartUp":true,"everAttemptedSavingToKeyboard":true,"animationEnabled":true,"appTheme":"system","backlightingColorPalette":[{"r":255,"g":0,"b":0},{"r":0,"g":255,"b":0},{"r":0,"g":0,"b":255}],"keyboardHalvesAlwaysJoined":false,"smartMacroPanelWidth":41}
[2025-06-11 08:43:53.819] [info] [DeviceRendererService] init success
[2025-06-11 08:43:53.820] [info] [AppRendererService] init success
[2025-06-11 08:43:53.823] [info] [MonacoEditorCompletionItemProvider] initialized.
[2025-06-11 08:43:53.824] [info] [SmartMacroDocRendererService] init success
[2025-06-11 08:43:53.825] [info] Renderer appStart effect start
[2025-06-11 08:43:53.825] [info] [AppRendererService] getAppStartInfo
[2025-06-11 08:43:53.825] [info] [SmartMacroService] getAppStartInfo
[2025-06-11 08:43:53.826] [info] [AppService] getAppStartInfo
[2025-06-11 08:43:53.826] [info] [AppService] getAppStartInfo response: {
commandLineArgs: { 'disable-agent-update-protection': false },
platform: 'win32',
osVersion: '10.0.26100',
udevFileContent: ''
}
[2025-06-11 08:43:53.825] [info] Renderer appStart effect end
[2025-06-11 08:43:53.827] [info] [AppService] get-config: application-settings
[2025-06-11 08:43:53.827] [info] [AppUpdateService] check for update at startup: { checkForUpdateOnStartUp: true }
[2025-06-11 08:43:53.828] [info] [AppUpdateService] app started. Automatically check for update.
[2025-06-11 08:43:53.828] [info] Checking for update
[2025-06-11 08:43:53.828] [info] [AppUpdateService] checking for update
[2025-06-11 08:43:53.828] [info] sendIpcToWindow: checking-for-update undefined
[2025-06-11 08:43:53.829] [info] [AppService] get-config of "application-settings": {"errorPanelHeight":10,"checkForUpdateOnStartUp":true,"everAttemptedSavingToKeyboard":true,"animationEnabled":true,"appTheme":"system","backlightingColorPalette":[{"r":255,"g":0,"b":0},{"r":0,"g":255,"b":0},{"r":0,"g":0,"b":255}],"keyboardHalvesAlwaysJoined":false,"smartMacroPanelWidth":41}
[2025-06-11 08:43:53.900] [info] [SmartMacroDocRendererService] dispatch action: [smart-macro-doc] service listening
[2025-06-11 08:43:53.901] [info] [AppRendererService] dispatch action: [app] process start info
[2025-06-11 08:43:53.901] [info] [AppEffect][processStartInfo] payload: {
commandLineArgs: { 'disable-agent-update-protection': false },
platform: 'win32',
osVersion: '10.0.26100',
udevFileContent: ''
}
[2025-06-11 08:43:53.950] [info] [DeviceService] start poll UHK Device
[2025-06-11 08:43:54.246] [info] [UhkHidDevice] Devices before checking permission:
[2025-06-11 08:43:54.274] [info] [UhkHidDevice] Available devices changed.
[2025-06-11 08:43:54.275] [info] [UhkHidDevice] Added: {"vendorId":"0x37A8","productId":"0x9","path":"\\\\?\\HID#VID_37A8&PID_0009&MI_00#8&1b67c4f0&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}\\KBD","serialNumber":"1886017019","manufacturer":"Ultimate Gadget Laboratories","product":"UHK 80 Right USB","release":1,"interface":0,"usagePage":1,"usage":6}
[2025-06-11 08:43:54.275] [info] [UhkHidDevice] Added: {"vendorId":"0x37A8","productId":"0x9","path":"\\\\?\\HID#VID_37A8&PID_0009&MI_01#8&837a8b2&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}","serialNumber":"1886017019","manufacturer":"Ultimate Gadget Laboratories","product":"UHK 80 Right USB","release":1,"interface":1,"usagePage":1,"usage":2}
[2025-06-11 08:43:54.275] [info] [UhkHidDevice] Added: {"vendorId":"0x37A8","productId":"0x9","path":"\\\\?\\HID#VID_37A8&PID_0009&MI_02#8&30a2567b&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}","serialNumber":"1886017019","manufacturer":"Ultimate Gadget Laboratories","product":"UHK 80 Right USB","release":1,"interface":2,"usagePage":65280,"usage":1}
[2025-06-11 08:43:54.275] [info] [UhkHidDevice] Added: {"vendorId":"0x37A8","productId":"0x9","path":"\\\\?\\HID#VID_37A8&PID_0009&MI_03#8&1d723a3d&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}","serialNumber":"1886017019","manufacturer":"Ultimate Gadget Laboratories","product":"UHK 80 Right USB","release":1,"interface":3,"usagePage":12,"usage":1}
[2025-06-11 08:43:54.333] [info] [UhkHidDevice] Available devices unchanged
[2025-06-11 08:43:54.362] [info] [UhkHidDevice] Used device: {"vendorId":"0x37A8","productId":"0x9","path":"\\\\?\\HID#VID_37A8&PID_0009&MI_02#8&30a2567b&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}","serialNumber":"1886017019","manufacturer":"Ultimate Gadget Laboratories","product":"UHK 80 Right USB","release":1,"interface":2,"usagePage":65280,"usage":1}
[2025-06-11 08:43:54.404] [info] [UhkHidDevice] productId: 9 protocol versions: {"firmwareVersion":"13.0.2","deviceProtocolVersion":"4.14.1","moduleProtocolVersion":"4.3.0","userConfigVersion":"9.0.0","hardwareConfigVersion":"1.0.0","smartMacrosVersion":"3.3.0"}
[2025-06-11 08:43:54.464] [info] [DeviceOperation] Read "leftHalf" version information
[2025-06-11 08:43:54.480] [info] [DeviceOperation] Read "leftHalf" repo information
[2025-06-11 08:43:54.511] [info] [DeviceOperation] Read "leftHalf" firmware checksum
[2025-06-11 08:43:54.519] [info] [DeviceOperation] Read "leftModule" version information
[2025-06-11 08:43:54.528] [info] [DeviceOperation] Read "leftModule" repo information
[2025-06-11 08:43:54.558] [info] [DeviceOperation] Read "leftModule" firmware checksum
[2025-06-11 08:43:54.621] [info] [DeviceService] Device connection state changed to: {
"bootloaderActive": false,
"bleDeviceConnected": false,
"communicationInterfaceAvailable": true,
"dongle": {
"bootloaderActive": false,
"multiDevice": false,
"serialNumber": ""
},
"leftHalfBootloaderActive": false,
"hasPermission": true,
"halvesInfo": {
"areHalvesMerged": false,
"isLeftHalfConnected": true,
"leftModuleSlot": 2,
"rightModuleSlot": 0
},
"hardwareModules": {
"moduleInfos": [
{
"module": {
"id": 1,
"name": "Left keyboard half",
"slotId": 1,
"i2cAddress": 16,
"firmwareUpgradeSupported": true
},
"info": {
"moduleProtocolVersion": "4.3.0",
"firmwareVersion": "13.0.2",
"firmwareGitRepo": "UltimateHackingKeyboard/firmware",
"firmwareGitTag": "v13.0.2",
"remoteFirmwareChecksum": "2fbc7807396daa7d8836292923792053"
}
},
{
"module": {
"id": 2,
"name": "Key cluster",
"configPath": "/add-on/key-cluster",
"slotId": 2,
"i2cAddress": 32,
"firmwareUpgradeSupported": true
},
"info": {
"moduleProtocolVersion": "4.3.0",
"firmwareVersion": "13.0.2",
"firmwareGitRepo": "UltimateHackingKeyboard/firmware",
"firmwareGitTag": "v13.0.2",
"remoteFirmwareChecksum": "a0323a7f4ae17b6be9c5d1a0954e49de"
}
}
],
"rightModuleInfo": {
"firmwareVersion": "13.0.2",
"deviceProtocolVersion": "4.14.1",
"moduleProtocolVersion": "4.3.0",
"userConfigVersion": "9.0.0",
"hardwareConfigVersion": "1.0.0",
"smartMacrosVersion": "3.3.0",
"firmwareGitRepo": "UltimateHackingKeyboard/firmware",
"firmwareGitTag": "v13.0.2",
"builtFirmwareChecksum": "7e2cc06b555356f211289c893a4842d7",
"modules": {
"1": {
"builtFirmwareChecksum": "2fbc7807396daa7d8836292923792053"
},
"2": {
"builtFirmwareChecksum": "a0323a7f4ae17b6be9c5d1a0954e49de"
}
}
}
},
"isMacroStatusDirty": false,
"isZephyrLogAvailable": false,
"leftHalfDetected": false,
"multiDevice": false,
"newPairedDevices": [],
"udevRulesInfo": "Ok",
"connectedDevice": {
"id": 4,
"asCliArg": "uhk80-right",
"firmwareUpgradeMethod": "mcuboot",
"logName": "UHK 80 right",
"name": "UHK 80",
"keyboard": [
{
"vid": 14248,
"pid": 9
}
],
"bootloader": [
{
"vid": 14248,
"pid": 8
}
],
"buspal": [],
"reportId": 4
},
"bleAddress": "e6:99:d8:42:06:ed"
}
[2025-06-11 08:43:54.622] [info] [DeviceRendererService] dispatch action [device] connection state changed
[2025-06-11 08:43:54.630] [info] [SmartMacroDocRendererService] downloadDocumentation
[2025-06-11 08:43:54.631] [info] [SmartMacroService] start downloading firmware documentation {
firmwareGitRepo: 'UltimateHackingKeyboard/firmware',
firmwareGitTag: 'v13.0.2'
}
[2025-06-11 08:43:54.631] [info] [DeviceService] stop poll UHK Device
[2025-06-11 08:43:54.632] [info] [SmartMacroService] firmware documentation downloading
[2025-06-11 08:43:54.647] [info] [DeviceOperation] status buffer segment:
[2025-06-11 08:43:54.648] [info] [DeviceRendererService] dispatch action [device] Status buffer changed
[2025-06-11 08:43:54.746] [info] [DeviceService] stopped poll UHK Device
[2025-06-11 08:43:54.751] [info] [UhkHidDevice] Device communication closing.
[2025-06-11 08:43:54.752] [info] [UhkHidDevice] Device communication closed.
[2025-06-11 08:43:54.752] [info] [DeviceService] start poll UHK Device
[2025-06-11 08:43:54.752] [info] [DeviceService] load user configuration
[2025-06-11 08:43:54.752] [info] [DeviceService] stop poll UHK Device
[2025-06-11 08:43:54.752] [info] [DeviceService] stopped poll UHK Device
[2025-06-11 08:43:54.753] [info] [DeviceRendererService] dispatch action [device] Read config sizes reply
[2025-06-11 08:43:54.779] [info] [UhkHidDevice] Available devices unchanged
[2025-06-11 08:43:54.810] [info] [UhkHidDevice] Used device: {"vendorId":"0x37A8","productId":"0x9","path":"\\\\?\\HID#VID_37A8&PID_0009&MI_02#8&30a2567b&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}","serialNumber":"1886017019","manufacturer":"Ultimate Gadget Laboratories","product":"UHK 80 Right USB","release":1,"interface":2,"usagePage":65280,"usage":1}
[2025-06-11 08:43:54.847] [info] [UhkHidDevice] Device communication closing.
[2025-06-11 08:43:54.848] [info] [UhkHidDevice] Device communication closed.
[2025-06-11 08:43:54.849] [info] [DeviceOperation] User config size: 32768
[2025-06-11 08:43:54.878] [info] [UhkHidDevice] Available devices unchanged
[2025-06-11 08:43:54.909] [info] [UhkHidDevice] Used device: {"vendorId":"0x37A8","productId":"0x9","path":"\\\\?\\HID#VID_37A8&PID_0009&MI_02#8&30a2567b&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}","serialNumber":"1886017019","manufacturer":"Ultimate Gadget Laboratories","product":"UHK 80 Right USB","release":1,"interface":2,"usagePage":65280,"usage":1}
[2025-06-11 08:43:54.919] [info] [DeviceOperation] userConfigSize: 5952
[2025-06-11 08:43:56.055] [info] [UhkHidDevice] Device communication closing.
[2025-06-11 08:43:56.057] [info] [UhkHidDevice] Device communication closed.
[2025-06-11 08:43:56.057] [info] [DeviceOperation] Hardware config size: 64
[2025-06-11 08:43:56.089] [info] [UhkHidDevice] Available devices unchanged
[2025-06-11 08:43:56.119] [info] [UhkHidDevice] Used device: {"vendorId":"0x37A8","productId":"0x9","path":"\\\\?\\HID#VID_37A8&PID_0009&MI_02#8&30a2567b&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}","serialNumber":"1886017019","manufacturer":"Ultimate Gadget Laboratories","product":"UHK 80 Right USB","release":1,"interface":2,"usagePage":65280,"usage":1}
[2025-06-11 08:43:56.135] [info] [UhkHidDevice] Device communication closing.
[2025-06-11 08:43:56.135] [info] [UhkHidDevice] Device communication closed.
[2025-06-11 08:43:56.164] [info] [UhkHidDevice] Available devices unchanged
[2025-06-11 08:43:56.195] [info] [UhkHidDevice] Used device: {"vendorId":"0x37A8","productId":"0x9","path":"\\\\?\\HID#VID_37A8&PID_0009&MI_02#8&30a2567b&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}","serialNumber":"1886017019","manufacturer":"Ultimate Gadget Laboratories","product":"UHK 80 Right USB","release":1,"interface":2,"usagePage":65280,"usage":1}
[2025-06-11 08:43:56.216] [info] [UhkHidDevice] productId: 9 protocol versions: {"firmwareVersion":"13.0.2","deviceProtocolVersion":"4.14.1","moduleProtocolVersion":"4.3.0","userConfigVersion":"9.0.0","hardwareConfigVersion":"1.0.0","smartMacrosVersion":"3.3.0"}
[2025-06-11 08:43:56.259] [info] Update for version 7.0.1 is not available (latest version: 7.0.1, downgrade is disallowed).
[2025-06-11 08:43:56.259] [info] [AppUpdateService] checkForUpdate success
[2025-06-11 08:43:56.264] [info] [DeviceOperation] Read "leftHalf" version information
[2025-06-11 08:43:56.275] [info] [DeviceOperation] Read "leftHalf" repo information
[2025-06-11 08:43:56.295] [info] [DeviceOperation] Read "leftHalf" firmware checksum
[2025-06-11 08:43:56.306] [info] [DeviceOperation] Read "leftModule" version information
[2025-06-11 08:43:56.321] [info] [DeviceOperation] Read "leftModule" repo information
[2025-06-11 08:43:56.354] [info] [DeviceOperation] Read "leftModule" firmware checksum
[2025-06-11 08:43:56.390] [info] [UhkHidDevice] Device communication closing.
[2025-06-11 08:43:56.391] [info] [UhkHidDevice] Device communication closed.
[2025-06-11 08:43:56.392] [info] [DeviceService] start poll UHK Device
[2025-06-11 08:43:56.393] [info] [DeviceRendererService] dispatch action [user-config] Load User Config from Device reply
[2025-06-11 08:43:56.404] [info] [DeviceService] Check BLE Addresses are paired
[2025-06-11 08:43:56.405] [info] [DeviceService] stop poll UHK Device
[2025-06-11 08:43:56.405] [info] [DeviceService] stopped poll UHK Device
[2025-06-11 08:43:56.405] [info] [DeviceService] start poll UHK Device
[2025-06-11 08:43:56.405] [info] [SmartMacroDocRendererService] downloadDocumentation
[2025-06-11 08:43:56.414] [info] [DeviceRendererService] dispatch action [device] check are host connections paired reply
[2025-06-11 08:43:56.515] [info] [UhkHidDevice] Available devices unchanged
[2025-06-11 08:43:56.544] [info] [UhkHidDevice] Used device: {"vendorId":"0x37A8","productId":"0x9","path":"\\\\?\\HID#VID_37A8&PID_0009&MI_02#8&30a2567b&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}","serialNumber":"1886017019","manufacturer":"Ultimate Gadget Laboratories","product":"UHK 80 Right USB","release":1,"interface":2,"usagePage":65280,"usage":1}
[2025-06-11 08:43:56.588] [info] [UhkHidDevice] productId: 9 protocol versions: {"firmwareVersion":"13.0.2","deviceProtocolVersion":"4.14.1","moduleProtocolVersion":"4.3.0","userConfigVersion":"9.0.0","hardwareConfigVersion":"1.0.0","smartMacrosVersion":"3.3.0"}
[2025-06-11 08:43:56.635] [info] [DeviceOperation] Read "leftHalf" version information
[2025-06-11 08:43:56.650] [info] [DeviceOperation] Read "leftHalf" repo information
[2025-06-11 08:43:56.671] [info] [DeviceOperation] Read "leftHalf" firmware checksum
[2025-06-11 08:43:56.679] [info] [DeviceOperation] Read "leftModule" version information
[2025-06-11 08:43:56.687] [info] [DeviceOperation] Read "leftModule" repo information
[2025-06-11 08:43:56.703] [info] [DeviceOperation] Read "leftModule" firmware checksum
[2025-06-11 08:43:56.759] [info] [DeviceService] Device connection state changed to: {
"bootloaderActive": false,
"bleDeviceConnected": false,
"communicationInterfaceAvailable": true,
"dongle": {
"bootloaderActive": false,
"multiDevice": false,
"serialNumber": ""
},
"leftHalfBootloaderActive": false,
"hasPermission": true,
"halvesInfo": {
"areHalvesMerged": false,
"isLeftHalfConnected": true,
"leftModuleSlot": 2,
"rightModuleSlot": 0
},
"hardwareModules": {
"moduleInfos": [
{
"module": {
"id": 1,
"name": "Left keyboard half",
"slotId": 1,
"i2cAddress": 16,
"firmwareUpgradeSupported": true
},
"info": {
"moduleProtocolVersion": "4.3.0",
"firmwareVersion": "13.0.2",
"firmwareGitRepo": "UltimateHackingKeyboard/firmware",
"firmwareGitTag": "v13.0.2",
"remoteFirmwareChecksum": "2fbc7807396daa7d8836292923792053"
}
},
{
"module": {
"id": 2,
"name": "Key cluster",
"configPath": "/add-on/key-cluster",
"slotId": 2,
"i2cAddress": 32,
"firmwareUpgradeSupported": true
},
"info": {
"moduleProtocolVersion": "4.3.0",
"firmwareVersion": "13.0.2",
"firmwareGitRepo": "UltimateHackingKeyboard/firmware",
"firmwareGitTag": "v13.0.2",
"remoteFirmwareChecksum": "a0323a7f4ae17b6be9c5d1a0954e49de"
}
}
],
"rightModuleInfo": {
"firmwareVersion": "13.0.2",
"deviceProtocolVersion": "4.14.1",
"moduleProtocolVersion": "4.3.0",
"userConfigVersion": "9.0.0",
"hardwareConfigVersion": "1.0.0",
"smartMacrosVersion": "3.3.0",
"firmwareGitRepo": "UltimateHackingKeyboard/firmware",
"firmwareGitTag": "v13.0.2",
"builtFirmwareChecksum": "7e2cc06b555356f211289c893a4842d7",
"modules": {
"1": {
"builtFirmwareChecksum": "2fbc7807396daa7d8836292923792053"
},
"2": {
"builtFirmwareChecksum": "a0323a7f4ae17b6be9c5d1a0954e49de"
}
}
}
},
"isMacroStatusDirty": false,
"isZephyrLogAvailable": false,
"leftHalfDetected": false,
"multiDevice": false,
"newPairedDevices": [],
"udevRulesInfo": "Ok",
"connectedDevice": {
"id": 4,
"asCliArg": "uhk80-right",
"firmwareUpgradeMethod": "mcuboot",
"logName": "UHK 80 right",
"name": "UHK 80",
"keyboard": [
{
"vid": 14248,
"pid": 9
}
],
"bootloader": [
{
"vid": 14248,
"pid": 8
}
],
"buspal": [],
"reportId": 4
},
"bleAddress": "e6:99:d8:42:06:ed"
}
[2025-06-11 08:43:56.760] [info] [DeviceRendererService] dispatch action [device] connection state changed
[2025-06-11 08:43:56.765] [info] [SmartMacroDocRendererService] downloadDocumentation
[2025-06-11 08:43:56.767] [info] [DeviceOperation] status buffer segment:
[2025-06-11 08:43:56.769] [info] [DeviceRendererService] dispatch action [device] Status buffer changed
[2025-06-11 08:43:58.903] [info] [SmartMacroService] firmware documentation downloaded
[2025-06-11 08:43:58.904] [info] [SmartMacroService] reference manual downloading
[2025-06-11 08:43:58.904] [info] [SmartMacroDocRendererService] dispatch action: [smart-macro-doc] download documentation success
[2025-06-11 08:43:59.170] [info] [SmartMacroService] reference manual downloaded
[2025-06-11 08:43:59.179] [info] [SmartMacroService] start downloading firmware documentation {
firmwareGitRepo: 'UltimateHackingKeyboard/firmware',
firmwareGitTag: 'v13.0.2'
}
[2025-06-11 08:43:59.179] [info] [SmartMacroDocRendererService] dispatch action: [smart-macro-doc] reference manual changed
[2025-06-11 08:43:59.179] [info] [MonacoEditorCompletionItemProvider] reference manual updated.
[2025-06-11 08:43:59.182] [info] [SmartMacroService] firmware documentation downloaded earlier
[2025-06-11 08:43:59.182] [info] [SmartMacroService] reference manual downloaded earlier
[2025-06-11 08:43:59.183] [info] [SmartMacroService] start downloading firmware documentation {
firmwareGitRepo: 'UltimateHackingKeyboard/firmware',
firmwareGitTag: 'v13.0.2'
}
[2025-06-11 08:43:59.184] [info] [SmartMacroService] firmware documentation downloaded earlier
[2025-06-11 08:43:59.184] [info] [SmartMacroService] reference manual downloaded earlier
[2025-06-11 08:43:59.343] [info] [SmartMacroDocRendererService] dispatch action: [smart-macro-doc] download documentation success
[2025-06-11 08:43:59.344] [info] [SmartMacroDocRendererService] dispatch action: [smart-macro-doc] reference manual changed
[2025-06-11 08:43:59.346] [info] [SmartMacroDocRendererService] dispatch action: [smart-macro-doc] download documentation success
[2025-06-11 08:43:59.347] [info] [SmartMacroDocRendererService] dispatch action: [smart-macro-doc] reference manual changed
[2025-06-11 08:43:59.970] [info] [DeviceService] stop poll UHK Device
[2025-06-11 08:44:00.079] [info] [DeviceService] stopped poll UHK Device
[2025-06-11 08:44:00.081] [info] [DeviceService] Operating system: Windows_NT 10.0.26100 x64
[2025-06-11 08:44:00.081] [info] [DeviceService] Agent version: 7.0.1
[2025-06-11 08:44:00.082] [info] [DeviceService] New firmware version: 14.0.1
[2025-06-11 08:44:00.082] [info] [DeviceService] New firmware user config version: 11.0.0
[2025-06-11 08:44:00.084] [info] [DeviceRendererService] dispatch action [device] update firmware JSON
[2025-06-11 08:44:00.235] [info] [DeviceOperation] Read "leftHalf" version information
[2025-06-11 08:44:00.251] [info] [DeviceOperation] Read "leftHalf" repo information
[2025-06-11 08:44:00.283] [info] [DeviceOperation] Read "leftHalf" firmware checksum
[2025-06-11 08:44:00.299] [info] [DeviceOperation] Read "leftModule" version information
[2025-06-11 08:44:00.315] [info] [DeviceOperation] Read "leftModule" repo information
[2025-06-11 08:44:00.346] [info] [DeviceOperation] Read "leftModule" firmware checksum
[2025-06-11 08:44:00.392] [info] [DeviceService] UHK Device firmware upgrade starts: {"id":4,"asCliArg":"uhk80-right","firmwareUpgradeMethod":"mcuboot","logName":"UHK 80 right","name":"UHK 80","keyboard":[{"vid":14248,"pid":9}],"bootloader":[{"vid":14248,"pid":8}],"buspal":[],"reportId":4}
[2025-06-11 08:44:00.392] [info] [DeviceService] Current Device right built firmware checksum: 7e2cc06b555356f211289c893a4842d7
[2025-06-11 08:44:00.392] [info] [DeviceService] New Device right firmware checksum: faa4eeb38630f30b67e521c435e4fef7
[2025-06-11 08:44:00.393] [info] [UhkOperations] Start flashing device firmware with mcuboot
[2025-06-11 08:44:00.395] [info] [DeviceRendererService] dispatch action [device] currently updating module
[2025-06-11 08:44:00.403] [info] [UhkOperations] Start flashing UHK 80 right firmware with mcumgr
[2025-06-11 08:44:00.403] [info] [UhkOperations] Reenumerate bootloader
[2025-06-11 08:44:00.403] [info] [UhkHidDevice] Device communication closing.
[2025-06-11 08:44:00.404] [info] [UhkHidDevice] Device communication closed.
[2025-06-11 08:44:00.404] [info] [UhkHidDevice] Start reenumeration, mode: Bootloader, timeout: 5000ms
[2025-06-11 08:44:00.435] [info] [UhkHidDevice] Available devices unchanged
[2025-06-11 08:44:00.577] [info] [UhkHidDevice] Reenumeration error. We hope it would not break the process Error: Cannot write to hid device
[2025-06-11 08:44:00.578] [info] [UhkHidDevice] closing normal keyboard after reenumeration
[2025-06-11 08:44:00.603] [info] [UhkHidDevice] Available devices changed.
[2025-06-11 08:44:00.604] [info] [UhkHidDevice] Removed: {"vendorId":"0x37A8","productId":"0x9","path":"\\\\?\\HID#VID_37A8&PID_0009&MI_00#8&1b67c4f0&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}\\KBD","serialNumber":"1886017019","manufacturer":"Ultimate Gadget Laboratories","product":"UHK 80 Right USB","release":1,"interface":0,"usagePage":1,"usage":6}
[2025-06-11 08:44:00.604] [info] [UhkHidDevice] Removed: {"vendorId":"0x37A8","productId":"0x9","path":"\\\\?\\HID#VID_37A8&PID_0009&MI_01#8&837a8b2&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}","serialNumber":"1886017019","manufacturer":"Ultimate Gadget Laboratories","product":"UHK 80 Right USB","release":1,"interface":1,"usagePage":1,"usage":2}
[2025-06-11 08:44:00.604] [info] [UhkHidDevice] Removed: {"vendorId":"0x37A8","productId":"0x9","path":"\\\\?\\HID#VID_37A8&PID_0009&MI_02#8&30a2567b&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}","serialNumber":"1886017019","manufacturer":"Ultimate Gadget Laboratories","product":"UHK 80 Right USB","release":1,"interface":2,"usagePage":65280,"usage":1}
[2025-06-11 08:44:00.605] [info] [UhkHidDevice] Removed: {"vendorId":"0x37A8","productId":"0x9","path":"\\\\?\\HID#VID_37A8&PID_0009&MI_03#8&1d723a3d&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}","serialNumber":"1886017019","manufacturer":"Ultimate Gadget Laboratories","product":"UHK 80 Right USB","release":1,"interface":3,"usagePage":12,"usage":1}
[2025-06-11 08:44:00.717] [info] [UhkHidDevice] Could not find reenumerated device: Bootloader. Waiting...
[2025-06-11 08:44:00.736] [info] [UhkHidDevice] Available devices unchanged
[2025-06-11 08:44:00.844] [info] [UhkHidDevice] Could not find reenumerated device: Bootloader. Waiting...
[2025-06-11 08:44:00.859] [info] [UhkHidDevice] Available devices unchanged
[2025-06-11 08:44:00.966] [info] [UhkHidDevice] Could not find reenumerated device: Bootloader. Waiting...
[2025-06-11 08:44:00.984] [info] [UhkHidDevice] Available devices unchanged
[2025-06-11 08:44:01.094] [info] [UhkHidDevice] Could not find reenumerated device: Bootloader. Waiting...
[2025-06-11 08:44:01.119] [info] [UhkHidDevice] Available devices unchanged
[2025-06-11 08:44:01.247] [info] [UhkHidDevice] Could not find reenumerated device: Bootloader. Waiting...
[2025-06-11 08:44:01.265] [info] [UhkHidDevice] Available devices unchanged
[2025-06-11 08:44:01.378] [info] [UhkHidDevice] Could not find reenumerated device: Bootloader. Waiting...
[2025-06-11 08:44:01.379] [info] [UhkHidDevice] Available devices changed.
[2025-06-11 08:44:01.379] [info] [UhkHidDevice] Added: {"path":"COM4","manufacturer":"Microsoft","serialNumber":"7&319236B&0&0000","pnpId":"USB\\VID_37A8&PID_0008&MI_00\\7&319236B&0&0000","locationId":"0000.0014.0000.006.002.000.000.000.000","friendlyName":"USB Serial Device (COM4)","vendorId":"0x37A8","productId":"0x0008"}
[2025-06-11 08:44:01.395] [info] [UhkHidDevice] Available devices unchanged
[2025-06-11 08:44:01.395] [info] [UhkHidDevice] Device communication closing.
[2025-06-11 08:44:02.408] [info] [UhkOperations] Init SerialPeripheral: COM4
[2025-06-11 08:44:02.409] [info] [UhkOperations] Read UHK 80 right firmware from file
[2025-06-11 08:44:02.427] [info] [UhkOperations] Write memory with mcumgr
[2025-06-11 08:44:32.308] [info] [UhkOperations] Reset mcu bootloader
[2025-06-11 08:44:32.312] [info] [UhkOperations] Close mcu communication channels
[2025-06-11 08:44:32.319] [info] [UhkOperations] UHK 80 right firmware successfully flashed
[2025-06-11 08:44:32.319] [info] [DeviceService] Waiting for keyboard
[2025-06-11 08:44:35.004] [info] [UhkHidDevice] Available devices changed.
[2025-06-11 08:44:35.005] [info] [UhkHidDevice] Removed: {"path":"COM4","manufacturer":"Microsoft","serialNumber":"7&319236B&0&0000","pnpId":"USB\\VID_37A8&PID_0008&MI_00\\7&319236B&0&0000","locationId":"0000.0014.0000.006.002.000.000.000.000","friendlyName":"USB Serial Device (COM4)","vendorId":"0x37A8","productId":"0x0008"}
[2025-06-11 08:44:35.005] [info] [UhkHidDevice] Added: {"vendorId":"0x37A8","productId":"0x9","path":"\\\\?\\HID#VID_37A8&PID_0009&MI_00#8&1b67c4f0&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}\\KBD","serialNumber":"1886017019","manufacturer":"Ultimate Gadget Laboratories","product":"UHK 80 Right USB","release":1,"interface":0,"usagePage":1,"usage":6}
[2025-06-11 08:44:35.005] [info] [UhkHidDevice] Added: {"vendorId":"0x37A8","productId":"0x9","path":"\\\\?\\HID#VID_37A8&PID_0009&MI_01#8&837a8b2&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}","serialNumber":"1886017019","manufacturer":"Ultimate Gadget Laboratories","product":"UHK 80 Right USB","release":1,"interface":1,"usagePage":1,"usage":2}
[2025-06-11 08:44:35.005] [info] [UhkHidDevice] Added: {"vendorId":"0x37A8","productId":"0x9","path":"\\\\?\\HID#VID_37A8&PID_0009&MI_02#8&30a2567b&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}","serialNumber":"1886017019","manufacturer":"Ultimate Gadget Laboratories","product":"UHK 80 Right USB","release":1,"interface":2,"usagePage":65280,"usage":1}
[2025-06-11 08:44:35.005] [info] [UhkHidDevice] Added: {"vendorId":"0x37A8","productId":"0x9","path":"\\\\?\\HID#VID_37A8&PID_0009&MI_03#8&1d723a3d&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}","serialNumber":"1886017019","manufacturer":"Ultimate Gadget Laboratories","product":"UHK 80 Right USB","release":1,"interface":3,"usagePage":12,"usage":1}
[2025-06-11 08:44:35.036] [info] [UhkHidDevice] Used device: {"vendorId":"0x37A8","productId":"0x9","path":"\\\\?\\HID#VID_37A8&PID_0009&MI_02#8&30a2567b&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}","serialNumber":"1886017019","manufacturer":"Ultimate Gadget Laboratories","product":"UHK 80 Right USB","release":1,"interface":2,"usagePage":65280,"usage":1}
[2025-06-11 08:44:35.057] [info] [UhkHidDevice] productId: 9 protocol versions: {"firmwareVersion":"14.0.1","deviceProtocolVersion":"4.15.0","moduleProtocolVersion":"4.3.0","userConfigVersion":"11.0.0","hardwareConfigVersion":"1.0.0","smartMacrosVersion":"3.4.1"}
[2025-06-11 08:44:35.135] [info] [DeviceService] User configuration will be saved after right module firmware upgrade
[2025-06-11 08:44:35.135] [info] [DeviceRendererService] dispatch action [device] module info loaded
[2025-06-11 08:44:35.136] [info] [SmartMacroDocRendererService] downloadDocumentation
[2025-06-11 08:44:35.143] [info] [SmartMacroService] start downloading firmware documentation {
firmwareGitRepo: 'UltimateHackingKeyboard/firmware',
firmwareGitTag: 'v14.0.1'
}
[2025-06-11 08:44:35.144] [info] [SmartMacroService] firmware documentation downloaded earlier
[2025-06-11 08:44:35.144] [info] [SmartMacroService] reference manual downloaded earlier
[2025-06-11 08:44:35.146] [info] [SmartMacroDocRendererService] dispatch action: [smart-macro-doc] download documentation success
[2025-06-11 08:44:35.153] [info] [SmartMacroDocRendererService] dispatch action: [smart-macro-doc] reference manual changed
[2025-06-11 08:44:35.153] [info] [MonacoEditorCompletionItemProvider] reference manual updated.
[2025-06-11 08:44:36.794] [info] [UhkHidDevice] Device communication closing.
[2025-06-11 08:44:36.795] [info] [UhkHidDevice] Device communication closed.
[2025-06-11 08:44:36.795] [info] [DeviceService] Left module firmware version: undefined
[2025-06-11 08:44:36.795] [info] [DeviceService] Left module remote firmware checksum: undefined
[2025-06-11 08:44:36.795] [info] [DeviceService] Left module built firmware checksum: 628e2b535f3c722456e2985f6a0157d1
[2025-06-11 08:44:36.798] [info] [DeviceRendererService] dispatch action [device] currently updating module
[2025-06-11 08:44:36.893] [info] [DeviceService] To continue the firmware upgrade, now connect the left half via USB. (You can disconnect the right half or use a second USB cable.)
[2025-06-11 08:49:19.101] [info] [WindowState] save settings: {
x: 172,
y: 1281,
width: 1489,
height: 1257,
isMaximized: false,
isFullScreen: false
}
[2025-06-11 08:49:19.116] [info] [WindowState] save settings success
[2025-06-11 08:49:19.145] [info] [Electron Main] win closed
[2025-06-11 08:49:19.146] [info] [DeviceService] closing.
[2025-06-11 08:49:19.146] [info] [ZephyrLogService | UHK Dongle] Closing
[2025-06-11 08:49:19.146] [info] [ZephyrLogService | UHK Dongle] wait until polling
[2025-06-11 08:49:19.146] [info] [ZephyrLogService | UHK Dongle] stopped
[2025-06-11 08:49:19.146] [info] [ZephyrLogService | UHK Dongle] releaseOperations
[2025-06-11 08:49:19.146] [info] [ZephyrLogService | UHK Dongle] no instances to release
[2025-06-11 08:49:19.147] [info] [ZephyrLogService | UHK Dongle] Closed
[2025-06-11 08:49:19.147] [info] [ZephyrLogService | UHK 80 left] Closing
[2025-06-11 08:49:19.147] [info] [ZephyrLogService | UHK 80 left] wait until polling
[2025-06-11 08:49:19.147] [info] [ZephyrLogService | UHK 80 left] stopped
[2025-06-11 08:49:19.147] [info] [ZephyrLogService | UHK 80 left] releaseOperations
[2025-06-11 08:49:19.147] [info] [ZephyrLogService | UHK 80 left] no instances to release
[2025-06-11 08:49:19.147] [info] [ZephyrLogService | UHK 80 left] Closed
[2025-06-11 08:49:19.147] [info] [DeviceService] stop poll UHK Device
[2025-06-11 08:49:19.147] [info] [DeviceService] stopped poll UHK Device
[2025-06-11 08:49:19.147] [info] [DeviceService] closed.
[2025-06-11 08:49:19.148] [info] [UhkHidDevice] Device communication closing.
[2025-06-11 08:49:19.148] [info] [SmartMacroService] stopping...
[2025-06-11 08:49:19.149] [info] [SmartMacroService] stopped.
[2025-06-11 08:49:21.911] [info] [Electron Main] command line arguments {}
[2025-06-11 08:49:21.915] [info] [Electron Main] init services.
[2025-06-11 08:49:21.916] [info] [Electron Main] packagesDir: C:\Users\david\AppData\Local\Programs\uhk-agent\resources
[2025-06-11 08:49:21.949] [info] [Electron Main] Create new window.
[2025-06-11 08:49:21.949] [info] [WindowState] load settings
[2025-06-11 08:49:21.950] [info] [WindowState] loaded settings {
x: 172,
y: 1281,
width: 1489,
height: 1257,
isMaximized: false,
isFullScreen: false
}
[2025-06-11 08:49:21.951] [info] [WindowState] loaded settings is visible true
[2025-06-11 08:49:21.951] [info] [WindowState] return with loaded settings
[2025-06-11 08:49:21.952] [info] [SmartMacroService] starting...
[2025-06-11 08:49:21.952] [info] [SmartMacroCopy] start
[2025-06-11 08:49:21.971] [info] [SmartMacroCopy] copy {
destination: 'C:\\Users\\david\\AppData\\Roaming\\uhk-agent\\smart-macro-docs\\UltimateHackingKeyboard\\firmware\\v14.0.1',
smartMacroDocFirmwarePath: 'C:\\Users\\david\\AppData\\Local\\Programs\\uhk-agent\\resources\\packages\\firmware\\doc'
}
[2025-06-11 08:49:21.992] [info] [SmartMacroCopy] done
[2025-06-11 08:49:21.992] [info] [SmartMacroCopy] start copy loading.html
[2025-06-11 08:49:21.994] [info] [SmartMacroCopy] end copy loading.html
[2025-06-11 08:49:21.994] [info] [SmartMacroService] get free TCP port
[2025-06-11 08:49:21.999] [info] [SmartMacroService] acquired TCP port: 58023
[2025-06-11 08:49:22.012] [info] [SmartMacroService] started on 58023.
[2025-06-11 08:49:22.061] [info] [ZephyrLogService | UHK Dongle] Inited
[2025-06-11 08:49:22.062] [info] [ZephyrLogService | UHK 80 left] Inited
[2025-06-11 08:49:22.062] [info] [DeviceService] init success
[2025-06-11 08:49:22.062] [info] [AppUpdateService] init success
[2025-06-11 08:49:22.063] [info] [AppService] init success
[2025-06-11 08:49:22.063] [info] [SudoService] App root dir: C:\Users\david\AppData\Local\Programs\uhk-agent\resources
[2025-06-11 08:49:22.068] [info] [DeviceService] Udev info: Ok
[2025-06-11 08:49:22.151] [info] [AppService] get-config: application-settings
[2025-06-11 08:49:22.152] [info] [AppService] get-config of "application-settings": {"errorPanelHeight":10,"checkForUpdateOnStartUp":true,"everAttemptedSavingToKeyboard":true,"animationEnabled":true,"appTheme":"system","backlightingColorPalette":[{"r":255,"g":0,"b":0},{"r":0,"g":255,"b":0},{"r":0,"g":0,"b":255}],"keyboardHalvesAlwaysJoined":false,"smartMacroPanelWidth":41}
[2025-06-11 08:49:22.357] [info] [DeviceRendererService] init success
[2025-06-11 08:49:22.358] [info] [AppRendererService] init success
[2025-06-11 08:49:22.361] [info] [MonacoEditorCompletionItemProvider] initialized.
[2025-06-11 08:49:22.361] [info] [SmartMacroDocRendererService] init success
[2025-06-11 08:49:22.362] [info] Renderer appStart effect start
[2025-06-11 08:49:22.363] [info] [AppRendererService] getAppStartInfo
[2025-06-11 08:49:22.354] [info] [SmartMacroService] getAppStartInfo
[2025-06-11 08:49:22.354] [info] [AppService] getAppStartInfo
[2025-06-11 08:49:22.355] [info] [AppService] getAppStartInfo response: {
commandLineArgs: { 'disable-agent-update-protection': false },
platform: 'win32',
osVersion: '10.0.26100',
udevFileContent: ''
}
[2025-06-11 08:49:22.363] [info] Renderer appStart effect end
[2025-06-11 08:49:22.355] [info] [AppService] get-config: application-settings
[2025-06-11 08:49:22.356] [info] [AppUpdateService] check for update at startup: { checkForUpdateOnStartUp: true }
[2025-06-11 08:49:22.356] [info] [AppUpdateService] app started. Automatically check for update.
[2025-06-11 08:49:22.357] [info] Checking for update
[2025-06-11 08:49:22.357] [info] [AppUpdateService] checking for update
[2025-06-11 08:49:22.357] [info] sendIpcToWindow: checking-for-update undefined
[2025-06-11 08:49:22.358] [info] [AppService] get-config of "application-settings": {"errorPanelHeight":10,"checkForUpdateOnStartUp":true,"everAttemptedSavingToKeyboard":true,"animationEnabled":true,"appTheme":"system","backlightingColorPalette":[{"r":255,"g":0,"b":0},{"r":0,"g":255,"b":0},{"r":0,"g":0,"b":255}],"keyboardHalvesAlwaysJoined":false,"smartMacroPanelWidth":41}
[2025-06-11 08:49:22.426] [info] [SmartMacroDocRendererService] dispatch action: [smart-macro-doc] service listening
[2025-06-11 08:49:22.427] [info] [AppRendererService] dispatch action: [app] process start info
[2025-06-11 08:49:22.427] [info] [AppEffect][processStartInfo] payload: {
commandLineArgs: { 'disable-agent-update-protection': false },
platform: 'win32',
osVersion: '10.0.26100',
udevFileContent: ''
}
[2025-06-11 08:49:22.464] [info] [DeviceService] start poll UHK Device
[2025-06-11 08:49:22.598] [info] [UhkHidDevice] Devices before checking permission:
[2025-06-11 08:49:22.626] [info] [UhkHidDevice] Available devices changed.
[2025-06-11 08:49:22.626] [info] [UhkHidDevice] Added: {"vendorId":"0x37A8","productId":"0x9","path":"\\\\?\\HID#VID_37A8&PID_0009&MI_00#8&1b67c4f0&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}\\KBD","serialNumber":"1886017019","manufacturer":"Ultimate Gadget Laboratories","product":"UHK 80 Right USB","release":1,"interface":0,"usagePage":1,"usage":6}
[2025-06-11 08:49:22.626] [info] [UhkHidDevice] Added: {"vendorId":"0x37A8","productId":"0x9","path":"\\\\?\\HID#VID_37A8&PID_0009&MI_01#8&837a8b2&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}","serialNumber":"1886017019","manufacturer":"Ultimate Gadget Laboratories","product":"UHK 80 Right USB","release":1,"interface":1,"usagePage":1,"usage":2}
[2025-06-11 08:49:22.626] [info] [UhkHidDevice] Added: {"vendorId":"0x37A8","productId":"0x9","path":"\\\\?\\HID#VID_37A8&PID_0009&MI_02#8&30a2567b&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}","serialNumber":"1886017019","manufacturer":"Ultimate Gadget Laboratories","product":"UHK 80 Right USB","release":1,"interface":2,"usagePage":65280,"usage":1}
[2025-06-11 08:49:22.627] [info] [UhkHidDevice] Added: {"vendorId":"0x37A8","productId":"0x9","path":"\\\\?\\HID#VID_37A8&PID_0009&MI_03#8&1d723a3d&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}","serialNumber":"1886017019","manufacturer":"Ultimate Gadget Laboratories","product":"UHK 80 Right USB","release":1,"interface":3,"usagePage":12,"usage":1}
[2025-06-11 08:49:22.682] [info] [UhkHidDevice] Available devices unchanged
[2025-06-11 08:49:22.710] [info] [UhkHidDevice] Used device: {"vendorId":"0x37A8","productId":"0x9","path":"\\\\?\\HID#VID_37A8&PID_0009&MI_02#8&30a2567b&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}","serialNumber":"1886017019","manufacturer":"Ultimate Gadget Laboratories","product":"UHK 80 Right USB","release":1,"interface":2,"usagePage":65280,"usage":1}
[2025-06-11 08:49:22.762] [info] [UhkHidDevice] productId: 9 protocol versions: {"firmwareVersion":"14.0.1","deviceProtocolVersion":"4.15.0","moduleProtocolVersion":"4.3.0","userConfigVersion":"11.0.0","hardwareConfigVersion":"1.0.0","smartMacrosVersion":"3.4.1"}
[2025-06-11 08:49:22.841] [info] [DeviceService] Device connection state changed to: {
"bootloaderActive": false,
"bleDeviceConnected": false,
"communicationInterfaceAvailable": true,
"dongle": {
"bootloaderActive": false,
"multiDevice": false,
"serialNumber": ""
},
"leftHalfBootloaderActive": false,
"hasPermission": true,
"halvesInfo": {
"areHalvesMerged": false,
"isLeftHalfConnected": true,
"leftModuleSlot": 2,
"rightModuleSlot": 0
},
"hardwareModules": {
"moduleInfos": [
{
"module": {
"id": 1,
"name": "Left keyboard half",
"slotId": 1,
"i2cAddress": 16,
"firmwareUpgradeSupported": true
},
"info": {}
}
],
"rightModuleInfo": {
"firmwareVersion": "14.0.1",
"deviceProtocolVersion": "4.15.0",
"moduleProtocolVersion": "4.3.0",
"userConfigVersion": "11.0.0",
"hardwareConfigVersion": "1.0.0",
"smartMacrosVersion": "3.4.1",
"firmwareGitRepo": "UltimateHackingKeyboard/firmware",
"firmwareGitTag": "v14.0.1",
"builtFirmwareChecksum": "faa4eeb38630f30b67e521c435e4fef7",
"modules": {
"1": {
"builtFirmwareChecksum": "628e2b535f3c722456e2985f6a0157d1"
}
}
}
},
"isMacroStatusDirty": true,
"isZephyrLogAvailable": false,
"leftHalfDetected": false,
"multiDevice": false,
"newPairedDevices": [],
"udevRulesInfo": "Ok",
"connectedDevice": {
"id": 4,
"asCliArg": "uhk80-right",
"firmwareUpgradeMethod": "mcuboot",
"logName": "UHK 80 right",
"name": "UHK 80",
"keyboard": [
{
"vid": 14248,
"pid": 9
}
],
"bootloader": [
{
"vid": 14248,
"pid": 8
}
],
"buspal": [],
"reportId": 4
},
"bleAddress": "e6:99:d8:42:06:ed"
}
[2025-06-11 08:49:22.851] [info] [DeviceRendererService] dispatch action [device] connection state changed
[2025-06-11 08:49:22.856] [info] [SmartMacroDocRendererService] downloadDocumentation
[2025-06-11 08:49:22.848] [info] [SmartMacroService] start downloading firmware documentation {
firmwareGitRepo: 'UltimateHackingKeyboard/firmware',
firmwareGitTag: 'v14.0.1'
}
[2025-06-11 08:49:22.849] [info] [DeviceService] stop poll UHK Device
[2025-06-11 08:49:22.849] [info] [SmartMacroService] firmware documentation downloaded earlier
[2025-06-11 08:49:22.850] [info] [SmartMacroService] reference manual downloaded earlier
[2025-06-11 08:49:22.851] [info] [DeviceOperation] status buffer segment: �{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{
[2025-06-11 08:49:22.859] [info] [DeviceOperation] status buffer segment:  5�{ 5�{ 5�{ 5�{ 5�{ 5
[2025-06-11 08:49:22.870] [info] [SmartMacroDocRendererService] dispatch action: [smart-macro-doc] download documentation success
[2025-06-11 08:49:22.872] [info] [SmartMacroDocRendererService] dispatch action: [smart-macro-doc] reference manual changed
[2025-06-11 08:49:22.872] [info] [MonacoEditorCompletionItemProvider] reference manual updated.
[2025-06-11 08:49:22.952] [info] [DeviceService] stopped poll UHK Device
[2025-06-11 08:49:22.968] [info] [UhkHidDevice] Device communication closing.
[2025-06-11 08:49:22.968] [info] [UhkHidDevice] Device communication closed.
[2025-06-11 08:49:22.969] [info] [DeviceService] start poll UHK Device
[2025-06-11 08:49:22.969] [info] [DeviceService] load user configuration
[2025-06-11 08:49:22.969] [info] [DeviceService] stop poll UHK Device
[2025-06-11 08:49:22.970] [info] [DeviceService] stopped poll UHK Device
[2025-06-11 08:49:22.996] [info] [UhkHidDevice] Available devices unchanged
[2025-06-11 08:49:23.017] [info] [DeviceRendererService] dispatch action [device] Status buffer changed
[2025-06-11 08:49:23.021] [info] [DeviceRendererService] dispatch action [device] Read config sizes reply
[2025-06-11 08:49:23.027] [info] [UhkHidDevice] Used device: {"vendorId":"0x37A8","productId":"0x9","path":"\\\\?\\HID#VID_37A8&PID_0009&MI_02#8&30a2567b&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}","serialNumber":"1886017019","manufacturer":"Ultimate Gadget Laboratories","product":"UHK 80 Right USB","release":1,"interface":2,"usagePage":65280,"usage":1}
[2025-06-11 08:49:23.052] [info] [UhkHidDevice] Device communication closing.
[2025-06-11 08:49:23.053] [info] [UhkHidDevice] Device communication closed.
[2025-06-11 08:49:23.053] [info] [DeviceOperation] User config size: 32768
[2025-06-11 08:49:23.078] [info] [UhkHidDevice] Available devices unchanged
[2025-06-11 08:49:23.106] [info] [UhkHidDevice] Used device: {"vendorId":"0x37A8","productId":"0x9","path":"\\\\?\\HID#VID_37A8&PID_0009&MI_02#8&30a2567b&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}","serialNumber":"1886017019","manufacturer":"Ultimate Gadget Laboratories","product":"UHK 80 Right USB","release":1,"interface":2,"usagePage":65280,"usage":1}
[2025-06-11 08:49:23.120] [info] [DeviceOperation] userConfigSize: 6388
[2025-06-11 08:49:24.231] [info] [UhkHidDevice] Device communication closing.
[2025-06-11 08:49:24.242] [info] [UhkHidDevice] Device communication closed.
[2025-06-11 08:49:24.243] [info] [DeviceOperation] Hardware config size: 64
[2025-06-11 08:49:24.270] [info] [UhkHidDevice] Available devices unchanged
[2025-06-11 08:49:24.300] [info] [UhkHidDevice] Used device: {"vendorId":"0x37A8","productId":"0x9","path":"\\\\?\\HID#VID_37A8&PID_0009&MI_02#8&30a2567b&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}","serialNumber":"1886017019","manufacturer":"Ultimate Gadget Laboratories","product":"UHK 80 Right USB","release":1,"interface":2,"usagePage":65280,"usage":1}
[2025-06-11 08:49:24.315] [info] [UhkHidDevice] Device communication closing.
[2025-06-11 08:49:24.316] [info] [UhkHidDevice] Device communication closed.
[2025-06-11 08:49:24.343] [info] [UhkHidDevice] Available devices unchanged
[2025-06-11 08:49:24.371] [info] [UhkHidDevice] Used device: {"vendorId":"0x37A8","productId":"0x9","path":"\\\\?\\HID#VID_37A8&PID_0009&MI_02#8&30a2567b&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}","serialNumber":"1886017019","manufacturer":"Ultimate Gadget Laboratories","product":"UHK 80 Right USB","release":1,"interface":2,"usagePage":65280,"usage":1}
[2025-06-11 08:49:24.397] [info] [UhkHidDevice] productId: 9 protocol versions: {"firmwareVersion":"14.0.1","deviceProtocolVersion":"4.15.0","moduleProtocolVersion":"4.3.0","userConfigVersion":"11.0.0","hardwareConfigVersion":"1.0.0","smartMacrosVersion":"3.4.1"}
[2025-06-11 08:49:24.445] [info] [UhkHidDevice] Device communication closing.
[2025-06-11 08:49:24.445] [info] [UhkHidDevice] Device communication closed.
[2025-06-11 08:49:24.446] [info] [DeviceService] start poll UHK Device
[2025-06-11 08:49:24.455] [info] [DeviceRendererService] dispatch action [user-config] Load User Config from Device reply
[2025-06-11 08:49:24.456] [info] [DeviceService] Check BLE Addresses are paired
[2025-06-11 08:49:24.457] [info] [DeviceService] stop poll UHK Device
[2025-06-11 08:49:24.457] [info] [DeviceService] stopped poll UHK Device
[2025-06-11 08:49:24.457] [info] [DeviceService] start poll UHK Device
[2025-06-11 08:49:24.465] [info] [SmartMacroDocRendererService] downloadDocumentation
[2025-06-11 08:49:24.457] [info] [SmartMacroService] start downloading firmware documentation {
firmwareGitRepo: 'UltimateHackingKeyboard/firmware',
firmwareGitTag: 'v14.0.1'
}
[2025-06-11 08:49:24.458] [info] [SmartMacroService] firmware documentation downloaded earlier
[2025-06-11 08:49:24.458] [info] [SmartMacroService] reference manual downloaded earlier
[2025-06-11 08:49:24.475] [info] [DeviceRendererService] dispatch action [device] check are host connections paired reply
[2025-06-11 08:49:24.476] [info] [SmartMacroDocRendererService] dispatch action: [smart-macro-doc] download documentation success
[2025-06-11 08:49:24.476] [info] [SmartMacroDocRendererService] dispatch action: [smart-macro-doc] reference manual changed
[2025-06-11 08:49:24.477] [info] [AppEffects] navigate to { commands: [ '/' ] }
[2025-06-11 08:49:24.716] [info] [UhkHidDevice] Available devices unchanged
[2025-06-11 08:49:24.744] [info] [UhkHidDevice] Used device: {"vendorId":"0x37A8","productId":"0x9","path":"\\\\?\\HID#VID_37A8&PID_0009&MI_02#8&30a2567b&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}","serialNumber":"1886017019","manufacturer":"Ultimate Gadget Laboratories","product":"UHK 80 Right USB","release":1,"interface":2,"usagePage":65280,"usage":1}
[2025-06-11 08:49:24.779] [info] [UhkHidDevice] productId: 9 protocol versions: {"firmwareVersion":"14.0.1","deviceProtocolVersion":"4.15.0","moduleProtocolVersion":"4.3.0","userConfigVersion":"11.0.0","hardwareConfigVersion":"1.0.0","smartMacrosVersion":"3.4.1"}
[2025-06-11 08:49:24.828] [info] Update for version 7.0.1 is not available (latest version: 7.0.1, downgrade is disallowed).
[2025-06-11 08:49:24.829] [info] [AppUpdateService] checkForUpdate success
[2025-06-11 08:49:24.829] [info] [DeviceOperation] Read "leftHalf" version information
[2025-06-11 08:49:24.842] [info] [DeviceOperation] Read "leftHalf" repo information
[2025-06-11 08:49:24.862] [info] [DeviceOperation] Read "leftHalf" firmware checksum
[2025-06-11 08:49:24.878] [info] [DeviceOperation] Read "leftModule" version information
[2025-06-11 08:49:24.899] [info] [DeviceOperation] Read "leftModule" repo information
[2025-06-11 08:49:24.925] [info] [DeviceOperation] Read "leftModule" firmware checksum
[2025-06-11 08:49:24.964] [info] [DeviceService] Device connection state changed to: {
"bootloaderActive": false,
"bleDeviceConnected": false,
"communicationInterfaceAvailable": true,
"dongle": {
"bootloaderActive": false,
"multiDevice": false,
"serialNumber": ""
},
"leftHalfBootloaderActive": false,
"hasPermission": true,
"halvesInfo": {
"areHalvesMerged": false,
"isLeftHalfConnected": true,
"leftModuleSlot": 2,
"rightModuleSlot": 0
},
"hardwareModules": {
"moduleInfos": [
{
"module": {
"id": 1,
"name": "Left keyboard half",
"slotId": 1,
"i2cAddress": 16,
"firmwareUpgradeSupported": true
},
"info": {
"moduleProtocolVersion": "4.3.0",
"firmwareVersion": "13.0.2",
"firmwareGitRepo": "UltimateHackingKeyboard/firmware",
"firmwareGitTag": "v13.0.2",
"remoteFirmwareChecksum": "2fbc7807396daa7d8836292923792053"
}
},
{
"module": {
"id": 2,
"name": "Key cluster",
"configPath": "/add-on/key-cluster",
"slotId": 2,
"i2cAddress": 32,
"firmwareUpgradeSupported": true
},
"info": {
"moduleProtocolVersion": "4.3.0",
"firmwareVersion": "13.0.2",
"firmwareGitRepo": "UltimateHackingKeyboard/firmware",
"firmwareGitTag": "v13.0.2",
"remoteFirmwareChecksum": "a0323a7f4ae17b6be9c5d1a0954e49de"
}
}
],
"rightModuleInfo": {
"firmwareVersion": "14.0.1",
"deviceProtocolVersion": "4.15.0",
"moduleProtocolVersion": "4.3.0",
"userConfigVersion": "11.0.0",
"hardwareConfigVersion": "1.0.0",
"smartMacrosVersion": "3.4.1",
"firmwareGitRepo": "UltimateHackingKeyboard/firmware",
"firmwareGitTag": "v14.0.1",
"builtFirmwareChecksum": "faa4eeb38630f30b67e521c435e4fef7",
"modules": {
"1": {
"builtFirmwareChecksum": "628e2b535f3c722456e2985f6a0157d1"
},
"2": {
"builtFirmwareChecksum": "a0323a7f4ae17b6be9c5d1a0954e49de"
}
}
}
},
"isMacroStatusDirty": false,
"isZephyrLogAvailable": false,
"leftHalfDetected": false,
"multiDevice": false,
"newPairedDevices": [],
"udevRulesInfo": "Ok",
"connectedDevice": {
"id": 4,
"asCliArg": "uhk80-right",
"firmwareUpgradeMethod": "mcuboot",
"logName": "UHK 80 right",
"name": "UHK 80",
"keyboard": [
{
"vid": 14248,
"pid": 9
}
],
"bootloader": [
{
"vid": 14248,
"pid": 8
}
],
"buspal": [],
"reportId": 4
},
"bleAddress": "e6:99:d8:42:06:ed"
}
[2025-06-11 08:49:24.973] [info] [DeviceRendererService] dispatch action [device] connection state changed
[2025-06-11 08:49:24.978] [info] [SmartMacroDocRendererService] downloadDocumentation
[2025-06-11 08:49:24.969] [info] [SmartMacroService] start downloading firmware documentation {
firmwareGitRepo: 'UltimateHackingKeyboard/firmware',
firmwareGitTag: 'v14.0.1'
}
[2025-06-11 08:49:24.970] [info] [SmartMacroService] firmware documentation downloaded earlier
[2025-06-11 08:49:24.970] [info] [SmartMacroService] reference manual downloaded earlier
[2025-06-11 08:49:24.972] [info] [DeviceOperation] status buffer segment: �{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{
[2025-06-11 08:49:24.987] [info] [SmartMacroDocRendererService] dispatch action: [smart-macro-doc] download documentation success
[2025-06-11 08:49:24.987] [info] [SmartMacroDocRendererService] dispatch action: [smart-macro-doc] reference manual changed
[2025-06-11 08:49:24.979] [info] [DeviceOperation] status buffer segment:  5�{ 5�{ 5�{ 5�{ 5�{ 5
[2025-06-11 08:49:24.989] [info] [DeviceRendererService] dispatch action [device] Status buffer changed
[2025-06-11 08:49:25.381] [info] [DeviceService] Device connection state changed to: {
"bootloaderActive": false,
"bleDeviceConnected": false,
"communicationInterfaceAvailable": true,
"dongle": {
"bootloaderActive": false,
"multiDevice": false,
"serialNumber": ""
},
"leftHalfBootloaderActive": false,
"hasPermission": true,
"halvesInfo": {
"areHalvesMerged": false,
"isLeftHalfConnected": false,
"leftModuleSlot": 0,
"rightModuleSlot": 0
},
"hardwareModules": {
"moduleInfos": [
{
"module": {
"id": 1,
"name": "Left keyboard half",
"slotId": 1,
"i2cAddress": 16,
"firmwareUpgradeSupported": true
},
"info": {}
}
],
"rightModuleInfo": {
"firmwareVersion": "14.0.1",
"deviceProtocolVersion": "4.15.0",
"moduleProtocolVersion": "4.3.0",
"userConfigVersion": "11.0.0",
"hardwareConfigVersion": "1.0.0",
"smartMacrosVersion": "3.4.1",
"firmwareGitRepo": "UltimateHackingKeyboard/firmware",
"firmwareGitTag": "v14.0.1",
"builtFirmwareChecksum": "faa4eeb38630f30b67e521c435e4fef7",
"modules": {
"1": {
"builtFirmwareChecksum": "628e2b535f3c722456e2985f6a0157d1"
}
}
}
},
"isMacroStatusDirty": false,
"isZephyrLogAvailable": false,
"leftHalfDetected": false,
"multiDevice": false,
"newPairedDevices": [],
"udevRulesInfo": "Ok",
"connectedDevice": {
"id": 4,
"asCliArg": "uhk80-right",
"firmwareUpgradeMethod": "mcuboot",
"logName": "UHK 80 right",
"name": "UHK 80",
"keyboard": [
{
"vid": 14248,
"pid": 9
}
],
"bootloader": [
{
"vid": 14248,
"pid": 8
}
],
"buspal": [],
"reportId": 4
},
"bleAddress": "e6:99:d8:42:06:ed"
}
[2025-06-11 08:49:25.391] [info] [DeviceRendererService] dispatch action [device] connection state changed
[2025-06-11 08:49:25.397] [info] [SmartMacroDocRendererService] downloadDocumentation
[2025-06-11 08:49:25.388] [info] [SmartMacroService] start downloading firmware documentation {
firmwareGitRepo: 'UltimateHackingKeyboard/firmware',
firmwareGitTag: 'v14.0.1'
}
[2025-06-11 08:49:25.389] [info] [SmartMacroService] firmware documentation downloaded earlier
[2025-06-11 08:49:25.389] [info] [DeviceOperation] status buffer segment: �{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{
[2025-06-11 08:49:25.389] [info] [SmartMacroService] reference manual downloaded earlier
[2025-06-11 08:49:25.396] [info] [DeviceOperation] status buffer segment:  5�{ 5�{ 5�{ 5�{ 5�{ 5
[2025-06-11 08:49:25.407] [info] [SmartMacroDocRendererService] dispatch action: [smart-macro-doc] download documentation success
[2025-06-11 08:49:25.407] [info] [SmartMacroDocRendererService] dispatch action: [smart-macro-doc] reference manual changed
[2025-06-11 08:49:25.408] [info] [DeviceRendererService] dispatch action [device] Status buffer changed
[2025-06-11 08:49:26.109] [info] [DeviceOperation] Read "leftHalf" version information
[2025-06-11 08:49:26.119] [info] [DeviceOperation] Read "leftHalf" repo information
[2025-06-11 08:49:26.131] [info] [DeviceOperation] Read "leftHalf" firmware checksum
[2025-06-11 08:49:26.139] [info] [DeviceOperation] Read "leftModule" version information
[2025-06-11 08:49:26.150] [info] [DeviceOperation] Read "leftModule" repo information
[2025-06-11 08:49:26.174] [info] [DeviceOperation] Read "leftModule" firmware checksum
[2025-06-11 08:49:26.215] [info] [DeviceService] Device connection state changed to: {
"bootloaderActive": false,
"bleDeviceConnected": false,
"communicationInterfaceAvailable": true,
"dongle": {
"bootloaderActive": false,
"multiDevice": false,
"serialNumber": ""
},
"leftHalfBootloaderActive": false,
"hasPermission": true,
"halvesInfo": {
"areHalvesMerged": false,
"isLeftHalfConnected": true,
"leftModuleSlot": 2,
"rightModuleSlot": 0
},
"hardwareModules": {
"moduleInfos": [
{
"module": {
"id": 1,
"name": "Left keyboard half",
"slotId": 1,
"i2cAddress": 16,
"firmwareUpgradeSupported": true
},
"info": {
"moduleProtocolVersion": "4.3.0",
"firmwareVersion": "13.0.2",
"firmwareGitRepo": "UltimateHackingKeyboard/firmware",
"firmwareGitTag": "v13.0.2",
"remoteFirmwareChecksum": "2fbc7807396daa7d8836292923792053"
}
},
{
"module": {
"id": 2,
"name": "Key cluster",
"configPath": "/add-on/key-cluster",
"slotId": 2,
"i2cAddress": 32,
"firmwareUpgradeSupported": true
},
"info": {
"moduleProtocolVersion": "4.3.0",
"firmwareVersion": "13.0.2",
"firmwareGitRepo": "UltimateHackingKeyboard/firmware",
"firmwareGitTag": "v13.0.2",
"remoteFirmwareChecksum": "a0323a7f4ae17b6be9c5d1a0954e49de"
}
}
],
"rightModuleInfo": {
"firmwareVersion": "14.0.1",
"deviceProtocolVersion": "4.15.0",
"moduleProtocolVersion": "4.3.0",
"userConfigVersion": "11.0.0",
"hardwareConfigVersion": "1.0.0",
"smartMacrosVersion": "3.4.1",
"firmwareGitRepo": "UltimateHackingKeyboard/firmware",
"firmwareGitTag": "v14.0.1",
"builtFirmwareChecksum": "faa4eeb38630f30b67e521c435e4fef7",
"modules": {
"1": {
"builtFirmwareChecksum": "628e2b535f3c722456e2985f6a0157d1"
},
"2": {
"builtFirmwareChecksum": "a0323a7f4ae17b6be9c5d1a0954e49de"
}
}
}
},
"isMacroStatusDirty": false,
"isZephyrLogAvailable": false,
"leftHalfDetected": false,
"multiDevice": false,
"newPairedDevices": [],
"udevRulesInfo": "Ok",
"connectedDevice": {
"id": 4,
"asCliArg": "uhk80-right",
"firmwareUpgradeMethod": "mcuboot",
"logName": "UHK 80 right",
"name": "UHK 80",
"keyboard": [
{
"vid": 14248,
"pid": 9
}
],
"bootloader": [
{
"vid": 14248,
"pid": 8
}
],
"buspal": [],
"reportId": 4
},
"bleAddress": "e6:99:d8:42:06:ed"
}
[2025-06-11 08:49:26.225] [info] [DeviceRendererService] dispatch action [device] connection state changed
[2025-06-11 08:49:26.229] [info] [SmartMacroDocRendererService] downloadDocumentation
[2025-06-11 08:49:26.221] [info] [SmartMacroService] start downloading firmware documentation {
firmwareGitRepo: 'UltimateHackingKeyboard/firmware',
firmwareGitTag: 'v14.0.1'
}
[2025-06-11 08:49:26.221] [info] [SmartMacroService] firmware documentation downloaded earlier
[2025-06-11 08:49:26.222] [info] [DeviceOperation] status buffer segment: �{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{
[2025-06-11 08:49:26.223] [info] [SmartMacroService] reference manual downloaded earlier
[2025-06-11 08:49:26.230] [info] [DeviceOperation] status buffer segment:  5�{ 5�{ 5�{ 5�{ 5�{ 5
[2025-06-11 08:49:26.248] [info] [SmartMacroDocRendererService] dispatch action: [smart-macro-doc] download documentation success
[2025-06-11 08:49:26.249] [info] [SmartMacroDocRendererService] dispatch action: [smart-macro-doc] reference manual changed
[2025-06-11 08:49:26.249] [info] [DeviceRendererService] dispatch action [device] Status buffer changed
[2025-06-11 08:49:26.949] [info] [DeviceService] Device connection state changed to: {
"bootloaderActive": false,
"bleDeviceConnected": false,
"communicationInterfaceAvailable": true,
"dongle": {
"bootloaderActive": false,
"multiDevice": false,
"serialNumber": ""
},
"leftHalfBootloaderActive": false,
"hasPermission": true,
"halvesInfo": {
"areHalvesMerged": false,
"isLeftHalfConnected": false,
"leftModuleSlot": 0,
"rightModuleSlot": 0
},
"hardwareModules": {
"moduleInfos": [
{
"module": {
"id": 1,
"name": "Left keyboard half",
"slotId": 1,
"i2cAddress": 16,
"firmwareUpgradeSupported": true
},
"info": {}
}
],
"rightModuleInfo": {
"firmwareVersion": "14.0.1",
"deviceProtocolVersion": "4.15.0",
"moduleProtocolVersion": "4.3.0",
"userConfigVersion": "11.0.0",
"hardwareConfigVersion": "1.0.0",
"smartMacrosVersion": "3.4.1",
"firmwareGitRepo": "UltimateHackingKeyboard/firmware",
"firmwareGitTag": "v14.0.1",
"builtFirmwareChecksum": "faa4eeb38630f30b67e521c435e4fef7",
"modules": {
"1": {
"builtFirmwareChecksum": "628e2b535f3c722456e2985f6a0157d1"
}
}
}
},
"isMacroStatusDirty": false,
"isZephyrLogAvailable": false,
"leftHalfDetected": false,
"multiDevice": false,
"newPairedDevices": [],
"udevRulesInfo": "Ok",
"connectedDevice": {
"id": 4,
"asCliArg": "uhk80-right",
"firmwareUpgradeMethod": "mcuboot",
"logName": "UHK 80 right",
"name": "UHK 80",
"keyboard": [
{
"vid": 14248,
"pid": 9
}
],
"bootloader": [
{
"vid": 14248,
"pid": 8
}
],
"buspal": [],
"reportId": 4
},
"bleAddress": "e6:99:d8:42:06:ed"
}
[2025-06-11 08:49:26.959] [info] [DeviceRendererService] dispatch action [device] connection state changed
[2025-06-11 08:49:26.964] [info] [SmartMacroDocRendererService] downloadDocumentation
[2025-06-11 08:49:26.965] [info] [SmartMacroService] start downloading firmware documentation {
firmwareGitRepo: 'UltimateHackingKeyboard/firmware',
firmwareGitTag: 'v14.0.1'
}
[2025-06-11 08:49:26.966] [info] [DeviceOperation] status buffer segment: �{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{
[2025-06-11 08:49:26.966] [info] [SmartMacroService] firmware documentation downloaded earlier
[2025-06-11 08:49:26.967] [info] [SmartMacroService] reference manual downloaded earlier
[2025-06-11 08:49:26.976] [info] [SmartMacroDocRendererService] dispatch action: [smart-macro-doc] download documentation success
[2025-06-11 08:49:26.979] [info] [SmartMacroDocRendererService] dispatch action: [smart-macro-doc] reference manual changed
[2025-06-11 08:49:26.971] [info] [DeviceOperation] status buffer segment:  5�{ 5�{ 5�{ 5�{ 5�{ 5
[2025-06-11 08:49:26.981] [info] [DeviceRendererService] dispatch action [device] Status buffer changed
[2025-06-11 08:49:27.363] [info] [DeviceOperation] Read "leftHalf" version information
[2025-06-11 08:49:27.371] [info] [DeviceOperation] Read "leftHalf" repo information
[2025-06-11 08:49:27.405] [info] [DeviceOperation] Read "leftHalf" firmware checksum
[2025-06-11 08:49:27.422] [info] [DeviceOperation] Read "leftModule" version information
[2025-06-11 08:49:27.439] [info] [DeviceOperation] Read "leftModule" repo information
[2025-06-11 08:49:27.471] [info] [DeviceOperation] Read "leftModule" firmware checksum
[2025-06-11 08:49:27.520] [info] [DeviceService] Device connection state changed to: {
"bootloaderActive": false,
"bleDeviceConnected": false,
"communicationInterfaceAvailable": true,
"dongle": {
"bootloaderActive": false,
"multiDevice": false,
"serialNumber": ""
},
"leftHalfBootloaderActive": false,
"hasPermission": true,
"halvesInfo": {
"areHalvesMerged": false,
"isLeftHalfConnected": true,
"leftModuleSlot": 2,
"rightModuleSlot": 0
},
"hardwareModules": {
"moduleInfos": [
{
"module": {
"id": 1,
"name": "Left keyboard half",
"slotId": 1,
"i2cAddress": 16,
"firmwareUpgradeSupported": true
},
"info": {
"moduleProtocolVersion": "4.3.0",
"firmwareVersion": "13.0.2",
"firmwareGitRepo": "UltimateHackingKeyboard/firmware",
"firmwareGitTag": "v13.0.2",
"remoteFirmwareChecksum": "2fbc7807396daa7d8836292923792053"
}
},
{
"module": {
"id": 2,
"name": "Key cluster",
"configPath": "/add-on/key-cluster",
"slotId": 2,
"i2cAddress": 32,
"firmwareUpgradeSupported": true
},
"info": {
"moduleProtocolVersion": "4.3.0",
"firmwareVersion": "13.0.2",
"firmwareGitRepo": "UltimateHackingKeyboard/firmware",
"firmwareGitTag": "v13.0.2",
"remoteFirmwareChecksum": "a0323a7f4ae17b6be9c5d1a0954e49de"
}
}
],
"rightModuleInfo": {
"firmwareVersion": "14.0.1",
"deviceProtocolVersion": "4.15.0",
"moduleProtocolVersion": "4.3.0",
"userConfigVersion": "11.0.0",
"hardwareConfigVersion": "1.0.0",
"smartMacrosVersion": "3.4.1",
"firmwareGitRepo": "UltimateHackingKeyboard/firmware",
"firmwareGitTag": "v14.0.1",
"builtFirmwareChecksum": "faa4eeb38630f30b67e521c435e4fef7",
"modules": {
"1": {
"builtFirmwareChecksum": "628e2b535f3c722456e2985f6a0157d1"
},
"2": {
"builtFirmwareChecksum": "a0323a7f4ae17b6be9c5d1a0954e49de"
}
}
}
},
"isMacroStatusDirty": false,
"isZephyrLogAvailable": false,
"leftHalfDetected": false,
"multiDevice": false,
"newPairedDevices": [],
"udevRulesInfo": "Ok",
"connectedDevice": {
"id": 4,
"asCliArg": "uhk80-right",
"firmwareUpgradeMethod": "mcuboot",
"logName": "UHK 80 right",
"name": "UHK 80",
"keyboard": [
{
"vid": 14248,
"pid": 9
}
],
"bootloader": [
{
"vid": 14248,
"pid": 8
}
],
"buspal": [],
"reportId": 4
},
"bleAddress": "e6:99:d8:42:06:ed"
}
[2025-06-11 08:49:27.530] [info] [DeviceRendererService] dispatch action [device] connection state changed
[2025-06-11 08:49:27.523] [info] [DeviceOperation] status buffer segment: �{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{
[2025-06-11 08:49:27.534] [info] [SmartMacroDocRendererService] downloadDocumentation
[2025-06-11 08:49:27.525] [info] [SmartMacroService] start downloading firmware documentation {
firmwareGitRepo: 'UltimateHackingKeyboard/firmware',
firmwareGitTag: 'v14.0.1'
}
[2025-06-11 08:49:27.525] [info] [SmartMacroService] firmware documentation downloaded earlier
[2025-06-11 08:49:27.526] [info] [SmartMacroService] reference manual downloaded earlier
[2025-06-11 08:49:27.531] [info] [DeviceOperation] status buffer segment:  5�{ 5�{ 5�{ 5�{ 5�{ 5
[2025-06-11 08:49:27.553] [info] [SmartMacroDocRendererService] dispatch action: [smart-macro-doc] download documentation success
[2025-06-11 08:49:27.553] [info] [SmartMacroDocRendererService] dispatch action: [smart-macro-doc] reference manual changed
[2025-06-11 08:49:27.554] [info] [DeviceRendererService] dispatch action [device] Status buffer changed
[2025-06-11 08:49:27.954] [info] [DeviceService] Device connection state changed to: {
"bootloaderActive": false,
"bleDeviceConnected": false,
"communicationInterfaceAvailable": true,
"dongle": {
"bootloaderActive": false,
"multiDevice": false,
"serialNumber": ""
},
"leftHalfBootloaderActive": false,
"hasPermission": true,
"halvesInfo": {
"areHalvesMerged": false,
"isLeftHalfConnected": false,
"leftModuleSlot": 0,
"rightModuleSlot": 0
},
"hardwareModules": {
"moduleInfos": [
{
"module": {
"id": 1,
"name": "Left keyboard half",
"slotId": 1,
"i2cAddress": 16,
"firmwareUpgradeSupported": true
},
"info": {}
}
],
"rightModuleInfo": {
"firmwareVersion": "14.0.1",
"deviceProtocolVersion": "4.15.0",
"moduleProtocolVersion": "4.3.0",
"userConfigVersion": "11.0.0",
"hardwareConfigVersion": "1.0.0",
"smartMacrosVersion": "3.4.1",
"firmwareGitRepo": "UltimateHackingKeyboard/firmware",
"firmwareGitTag": "v14.0.1",
"builtFirmwareChecksum": "faa4eeb38630f30b67e521c435e4fef7",
"modules": {
"1": {
"builtFirmwareChecksum": "628e2b535f3c722456e2985f6a0157d1"
}
}
}
},
"isMacroStatusDirty": false,
"isZephyrLogAvailable": false,
"leftHalfDetected": false,
"multiDevice": false,
"newPairedDevices": [],
"udevRulesInfo": "Ok",
"connectedDevice": {
"id": 4,
"asCliArg": "uhk80-right",
"firmwareUpgradeMethod": "mcuboot",
"logName": "UHK 80 right",
"name": "UHK 80",
"keyboard": [
{
"vid": 14248,
"pid": 9
}
],
"bootloader": [
{
"vid": 14248,
"pid": 8
}
],
"buspal": [],
"reportId": 4
},
"bleAddress": "e6:99:d8:42:06:ed"
}
[2025-06-11 08:49:27.964] [info] [DeviceRendererService] dispatch action [device] connection state changed
[2025-06-11 08:49:27.967] [info] [SmartMacroDocRendererService] downloadDocumentation
[2025-06-11 08:49:27.958] [info] [SmartMacroService] start downloading firmware documentation {
firmwareGitRepo: 'UltimateHackingKeyboard/firmware',
firmwareGitTag: 'v14.0.1'
}
[2025-06-11 08:49:27.959] [info] [SmartMacroService] firmware documentation downloaded earlier
[2025-06-11 08:49:27.960] [info] [SmartMacroService] reference manual downloaded earlier
[2025-06-11 08:49:27.963] [info] [DeviceOperation] status buffer segment: �{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{
[2025-06-11 08:49:27.974] [info] [SmartMacroDocRendererService] dispatch action: [smart-macro-doc] download documentation success
[2025-06-11 08:49:27.975] [info] [SmartMacroDocRendererService] dispatch action: [smart-macro-doc] reference manual changed
[2025-06-11 08:49:27.971] [info] [DeviceOperation] status buffer segment:  5�{ 5�{ 5�{ 5�{ 5�{ 5
[2025-06-11 08:49:27.982] [info] [DeviceRendererService] dispatch action [device] Status buffer changed
[2025-06-11 08:49:28.661] [info] [DeviceOperation] Read "leftHalf" version information
[2025-06-11 08:49:28.670] [info] [DeviceOperation] Read "leftHalf" repo information
[2025-06-11 08:49:28.702] [info] [DeviceOperation] Read "leftHalf" firmware checksum
[2025-06-11 08:49:28.707] [info] [DeviceOperation] Read "leftModule" version information
[2025-06-11 08:49:28.720] [info] [DeviceOperation] Read "leftModule" repo information
[2025-06-11 08:49:28.750] [info] [DeviceOperation] Read "leftModule" firmware checksum
[2025-06-11 08:49:28.803] [info] [DeviceService] Device connection state changed to: {
"bootloaderActive": false,
"bleDeviceConnected": false,
"communicationInterfaceAvailable": true,
"dongle": {
"bootloaderActive": false,
"multiDevice": false,
"serialNumber": ""
},
"leftHalfBootloaderActive": false,
"hasPermission": true,
"halvesInfo": {
"areHalvesMerged": false,
"isLeftHalfConnected": true,
"leftModuleSlot": 2,
"rightModuleSlot": 0
},
"hardwareModules": {
"moduleInfos": [
{
"module": {
"id": 1,
"name": "Left keyboard half",
"slotId": 1,
"i2cAddress": 16,
"firmwareUpgradeSupported": true
},
"info": {
"moduleProtocolVersion": "4.3.0",
"firmwareVersion": "13.0.2",
"firmwareGitRepo": "UltimateHackingKeyboard/firmware",
"firmwareGitTag": "v13.0.2",
"remoteFirmwareChecksum": "2fbc7807396daa7d8836292923792053"
}
},
{
"module": {
"id": 2,
"name": "Key cluster",
"configPath": "/add-on/key-cluster",
"slotId": 2,
"i2cAddress": 32,
"firmwareUpgradeSupported": true
},
"info": {
"moduleProtocolVersion": "4.3.0",
"firmwareVersion": "13.0.2",
"firmwareGitRepo": "UltimateHackingKeyboard/firmware",
"firmwareGitTag": "v13.0.2",
"remoteFirmwareChecksum": "a0323a7f4ae17b6be9c5d1a0954e49de"
}
}
],
"rightModuleInfo": {
"firmwareVersion": "14.0.1",
"deviceProtocolVersion": "4.15.0",
"moduleProtocolVersion": "4.3.0",
"userConfigVersion": "11.0.0",
"hardwareConfigVersion": "1.0.0",
"smartMacrosVersion": "3.4.1",
"firmwareGitRepo": "UltimateHackingKeyboard/firmware",
"firmwareGitTag": "v14.0.1",
"builtFirmwareChecksum": "faa4eeb38630f30b67e521c435e4fef7",
"modules": {
"1": {
"builtFirmwareChecksum": "628e2b535f3c722456e2985f6a0157d1"
},
"2": {
"builtFirmwareChecksum": "a0323a7f4ae17b6be9c5d1a0954e49de"
}
}
}
},
"isMacroStatusDirty": false,
"isZephyrLogAvailable": false,
"leftHalfDetected": false,
"multiDevice": false,
"newPairedDevices": [],
"udevRulesInfo": "Ok",
"connectedDevice": {
"id": 4,
"asCliArg": "uhk80-right",
"firmwareUpgradeMethod": "mcuboot",
"logName": "UHK 80 right",
"name": "UHK 80",
"keyboard": [
{
"vid": 14248,
"pid": 9
}
],
"bootloader": [
{
"vid": 14248,
"pid": 8
}
],
"buspal": [],
"reportId": 4
},
"bleAddress": "e6:99:d8:42:06:ed"
}
[2025-06-11 08:49:28.813] [info] [DeviceRendererService] dispatch action [device] connection state changed
[2025-06-11 08:49:28.816] [info] [SmartMacroDocRendererService] downloadDocumentation
[2025-06-11 08:49:28.808] [info] [SmartMacroService] start downloading firmware documentation {
firmwareGitRepo: 'UltimateHackingKeyboard/firmware',
firmwareGitTag: 'v14.0.1'
}
[2025-06-11 08:49:28.808] [info] [SmartMacroService] firmware documentation downloaded earlier
[2025-06-11 08:49:28.809] [info] [SmartMacroService] reference manual downloaded earlier
[2025-06-11 08:49:28.811] [info] [DeviceOperation] status buffer segment: �{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{
[2025-06-11 08:49:28.821] [info] [DeviceOperation] status buffer segment:  5�{ 5�{ 5�{ 5�{ 5�{ 5
[2025-06-11 08:49:28.834] [info] [SmartMacroDocRendererService] dispatch action: [smart-macro-doc] download documentation success
[2025-06-11 08:49:28.834] [info] [SmartMacroDocRendererService] dispatch action: [smart-macro-doc] reference manual changed
[2025-06-11 08:49:28.836] [info] [DeviceRendererService] dispatch action [device] Status buffer changed
[2025-06-11 08:49:29.243] [info] [DeviceService] Device connection state changed to: {
"bootloaderActive": false,
"bleDeviceConnected": false,
"communicationInterfaceAvailable": true,
"dongle": {
"bootloaderActive": false,
"multiDevice": false,
"serialNumber": ""
},
"leftHalfBootloaderActive": false,
"hasPermission": true,
"halvesInfo": {
"areHalvesMerged": false,
"isLeftHalfConnected": false,
"leftModuleSlot": 0,
"rightModuleSlot": 0
},
"hardwareModules": {
"moduleInfos": [
{
"module": {
"id": 1,
"name": "Left keyboard half",
"slotId": 1,
"i2cAddress": 16,
"firmwareUpgradeSupported": true
},
"info": {}
}
],
"rightModuleInfo": {
"firmwareVersion": "14.0.1",
"deviceProtocolVersion": "4.15.0",
"moduleProtocolVersion": "4.3.0",
"userConfigVersion": "11.0.0",
"hardwareConfigVersion": "1.0.0",
"smartMacrosVersion": "3.4.1",
"firmwareGitRepo": "UltimateHackingKeyboard/firmware",
"firmwareGitTag": "v14.0.1",
"builtFirmwareChecksum": "faa4eeb38630f30b67e521c435e4fef7",
"modules": {
"1": {
"builtFirmwareChecksum": "628e2b535f3c722456e2985f6a0157d1"
}
}
}
},
"isMacroStatusDirty": false,
"isZephyrLogAvailable": false,
"leftHalfDetected": false,
"multiDevice": false,
"newPairedDevices": [],
"udevRulesInfo": "Ok",
"connectedDevice": {
"id": 4,
"asCliArg": "uhk80-right",
"firmwareUpgradeMethod": "mcuboot",
"logName": "UHK 80 right",
"name": "UHK 80",
"keyboard": [
{
"vid": 14248,
"pid": 9
}
],
"bootloader": [
{
"vid": 14248,
"pid": 8
}
],
"buspal": [],
"reportId": 4
},
"bleAddress": "e6:99:d8:42:06:ed"
}
[2025-06-11 08:49:29.253] [info] [DeviceRendererService] dispatch action [device] connection state changed
[2025-06-11 08:49:29.255] [info] [SmartMacroDocRendererService] downloadDocumentation
[2025-06-11 08:49:29.247] [info] [SmartMacroService] start downloading firmware documentation {
firmwareGitRepo: 'UltimateHackingKeyboard/firmware',
firmwareGitTag: 'v14.0.1'
}
[2025-06-11 08:49:29.247] [info] [SmartMacroService] firmware documentation downloaded earlier
[2025-06-11 08:49:29.248] [info] [SmartMacroService] reference manual downloaded earlier
[2025-06-11 08:49:29.251] [info] [DeviceOperation] status buffer segment: �{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{
[2025-06-11 08:49:29.261] [info] [SmartMacroDocRendererService] dispatch action: [smart-macro-doc] download documentation success
[2025-06-11 08:49:29.261] [info] [SmartMacroDocRendererService] dispatch action: [smart-macro-doc] reference manual changed
[2025-06-11 08:49:29.259] [info] [DeviceOperation] status buffer segment:  5�{ 5�{ 5�{ 5�{ 5�{ 5
[2025-06-11 08:49:29.269] [info] [DeviceRendererService] dispatch action [device] Status buffer changed
[2025-06-11 08:49:29.996] [info] [DeviceOperation] Read "leftHalf" version information
[2025-06-11 08:49:30.012] [info] [DeviceOperation] Read "leftHalf" repo information
[2025-06-11 08:49:30.044] [info] [DeviceOperation] Read "leftHalf" firmware checksum
[2025-06-11 08:49:30.060] [info] [DeviceOperation] Read "leftModule" version information
[2025-06-11 08:49:30.076] [info] [DeviceOperation] Read "leftModule" repo information
[2025-06-11 08:49:30.107] [info] [DeviceOperation] Read "leftModule" firmware checksum
[2025-06-11 08:49:30.157] [info] [DeviceService] Device connection state changed to: {
"bootloaderActive": false,
"bleDeviceConnected": false,
"communicationInterfaceAvailable": true,
"dongle": {
"bootloaderActive": false,
"multiDevice": false,
"serialNumber": ""
},
"leftHalfBootloaderActive": false,
"hasPermission": true,
"halvesInfo": {
"areHalvesMerged": false,
"isLeftHalfConnected": true,
"leftModuleSlot": 2,
"rightModuleSlot": 0
},
"hardwareModules": {
"moduleInfos": [
{
"module": {
"id": 1,
"name": "Left keyboard half",
"slotId": 1,
"i2cAddress": 16,
"firmwareUpgradeSupported": true
},
"info": {
"moduleProtocolVersion": "4.3.0",
"firmwareVersion": "13.0.2",
"firmwareGitRepo": "UltimateHackingKeyboard/firmware",
"firmwareGitTag": "v13.0.2",
"remoteFirmwareChecksum": "2fbc7807396daa7d8836292923792053"
}
},
{
"module": {
"id": 2,
"name": "Key cluster",
"configPath": "/add-on/key-cluster",
"slotId": 2,
"i2cAddress": 32,
"firmwareUpgradeSupported": true
},
"info": {
"moduleProtocolVersion": "4.3.0",
"firmwareVersion": "13.0.2",
"firmwareGitRepo": "UltimateHackingKeyboard/firmware",
"firmwareGitTag": "v13.0.2",
"remoteFirmwareChecksum": "a0323a7f4ae17b6be9c5d1a0954e49de"
}
}
],
"rightModuleInfo": {
"firmwareVersion": "14.0.1",
"deviceProtocolVersion": "4.15.0",
"moduleProtocolVersion": "4.3.0",
"userConfigVersion": "11.0.0",
"hardwareConfigVersion": "1.0.0",
"smartMacrosVersion": "3.4.1",
"firmwareGitRepo": "UltimateHackingKeyboard/firmware",
"firmwareGitTag": "v14.0.1",
"builtFirmwareChecksum": "faa4eeb38630f30b67e521c435e4fef7",
"modules": {
"1": {
"builtFirmwareChecksum": "628e2b535f3c722456e2985f6a0157d1"
},
"2": {
"builtFirmwareChecksum": "a0323a7f4ae17b6be9c5d1a0954e49de"
}
}
}
},
"isMacroStatusDirty": false,
"isZephyrLogAvailable": false,
"leftHalfDetected": false,
"multiDevice": false,
"newPairedDevices": [],
"udevRulesInfo": "Ok",
"connectedDevice": {
"id": 4,
"asCliArg": "uhk80-right",
"firmwareUpgradeMethod": "mcuboot",
"logName": "UHK 80 right",
"name": "UHK 80",
"keyboard": [
{
"vid": 14248,
"pid": 9
}
],
"bootloader": [
{
"vid": 14248,
"pid": 8
}
],
"buspal": [],
"reportId": 4
},
"bleAddress": "e6:99:d8:42:06:ed"
}
[2025-06-11 08:49:30.167] [info] [DeviceRendererService] dispatch action [device] connection state changed
[2025-06-11 08:49:30.173] [info] [SmartMacroDocRendererService] downloadDocumentation
[2025-06-11 08:49:30.164] [info] [SmartMacroService] start downloading firmware documentation {
firmwareGitRepo: 'UltimateHackingKeyboard/firmware',
firmwareGitTag: 'v14.0.1'
}
[2025-06-11 08:49:30.165] [info] [DeviceOperation] status buffer segment: �{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{
[2025-06-11 08:49:30.165] [info] [SmartMacroService] firmware documentation downloaded earlier
[2025-06-11 08:49:30.166] [info] [SmartMacroService] reference manual downloaded earlier
[2025-06-11 08:49:30.178] [info] [SmartMacroDocRendererService] dispatch action: [smart-macro-doc] download documentation success
[2025-06-11 08:49:30.179] [info] [SmartMacroDocRendererService] dispatch action: [smart-macro-doc] reference manual changed
[2025-06-11 08:49:30.172] [info] [DeviceOperation] status buffer segment:  5�{ 5�{ 5�{ 5�{ 5�{ 5
[2025-06-11 08:49:30.182] [info] [DeviceRendererService] dispatch action [device] Status buffer changed
[2025-06-11 08:49:30.588] [info] [DeviceService] Device connection state changed to: {
"bootloaderActive": false,
"bleDeviceConnected": false,
"communicationInterfaceAvailable": true,
"dongle": {
"bootloaderActive": false,
"multiDevice": false,
"serialNumber": ""
},
"leftHalfBootloaderActive": false,
"hasPermission": true,
"halvesInfo": {
"areHalvesMerged": false,
"isLeftHalfConnected": false,
"leftModuleSlot": 0,
"rightModuleSlot": 0
},
"hardwareModules": {
"moduleInfos": [
{
"module": {
"id": 1,
"name": "Left keyboard half",
"slotId": 1,
"i2cAddress": 16,
"firmwareUpgradeSupported": true
},
"info": {}
}
],
"rightModuleInfo": {
"firmwareVersion": "14.0.1",
"deviceProtocolVersion": "4.15.0",
"moduleProtocolVersion": "4.3.0",
"userConfigVersion": "11.0.0",
"hardwareConfigVersion": "1.0.0",
"smartMacrosVersion": "3.4.1",
"firmwareGitRepo": "UltimateHackingKeyboard/firmware",
"firmwareGitTag": "v14.0.1",
"builtFirmwareChecksum": "faa4eeb38630f30b67e521c435e4fef7",
"modules": {
"1": {
"builtFirmwareChecksum": "628e2b535f3c722456e2985f6a0157d1"
}
}
}
},
"isMacroStatusDirty": false,
"isZephyrLogAvailable": false,
"leftHalfDetected": false,
"multiDevice": false,
"newPairedDevices": [],
"udevRulesInfo": "Ok",
"connectedDevice": {
"id": 4,
"asCliArg": "uhk80-right",
"firmwareUpgradeMethod": "mcuboot",
"logName": "UHK 80 right",
"name": "UHK 80",
"keyboard": [
{
"vid": 14248,
"pid": 9
}
],
"bootloader": [
{
"vid": 14248,
"pid": 8
}
],
"buspal": [],
"reportId": 4
},
"bleAddress": "e6:99:d8:42:06:ed"
}
[2025-06-11 08:49:30.598] [info] [DeviceRendererService] dispatch action [device] connection state changed
[2025-06-11 08:49:30.604] [info] [SmartMacroDocRendererService] downloadDocumentation
[2025-06-11 08:49:30.595] [info] [SmartMacroService] start downloading firmware documentation {
firmwareGitRepo: 'UltimateHackingKeyboard/firmware',
firmwareGitTag: 'v14.0.1'
}
[2025-06-11 08:49:30.596] [info] [DeviceOperation] status buffer segment: �{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{
[2025-06-11 08:49:30.596] [info] [SmartMacroService] firmware documentation downloaded earlier
[2025-06-11 08:49:30.596] [info] [SmartMacroService] reference manual downloaded earlier
[2025-06-11 08:49:30.608] [info] [SmartMacroDocRendererService] dispatch action: [smart-macro-doc] download documentation success
[2025-06-11 08:49:30.608] [info] [SmartMacroDocRendererService] dispatch action: [smart-macro-doc] reference manual changed
[2025-06-11 08:49:30.604] [info] [DeviceOperation] status buffer segment:  5�{ 5�{ 5�{ 5�{ 5�{ 5
[2025-06-11 08:49:30.614] [info] [DeviceRendererService] dispatch action [device] Status buffer changed
[2025-06-11 08:49:30.989] [info] [DeviceOperation] Read "leftHalf" version information
[2025-06-11 08:49:31.005] [info] [DeviceOperation] Read "leftHalf" repo information
[2025-06-11 08:49:31.039] [info] [DeviceOperation] Read "leftHalf" firmware checksum
[2025-06-11 08:49:31.071] [info] [DeviceService] Device connection state changed to: {
"bootloaderActive": false,
"bleDeviceConnected": false,
"communicationInterfaceAvailable": true,
"dongle": {
"bootloaderActive": false,
"multiDevice": false,
"serialNumber": ""
},
"leftHalfBootloaderActive": false,
"hasPermission": true,
"halvesInfo": {
"areHalvesMerged": false,
"isLeftHalfConnected": true,
"leftModuleSlot": 0,
"rightModuleSlot": 0
},
"hardwareModules": {
"moduleInfos": [
{
"module": {
"id": 1,
"name": "Left keyboard half",
"slotId": 1,
"i2cAddress": 16,
"firmwareUpgradeSupported": true
},
"info": {
"moduleProtocolVersion": "4.3.0",
"firmwareVersion": "13.0.2",
"firmwareGitRepo": "UltimateHackingKeyboard/firmware",
"firmwareGitTag": "v13.0.2",
"remoteFirmwareChecksum": "2fbc7807396daa7d8836292923792053"
}
}
],
"rightModuleInfo": {
"firmwareVersion": "14.0.1",
"deviceProtocolVersion": "4.15.0",
"moduleProtocolVersion": "4.3.0",
"userConfigVersion": "11.0.0",
"hardwareConfigVersion": "1.0.0",
"smartMacrosVersion": "3.4.1",
"firmwareGitRepo": "UltimateHackingKeyboard/firmware",
"firmwareGitTag": "v14.0.1",
"builtFirmwareChecksum": "faa4eeb38630f30b67e521c435e4fef7",
"modules": {
"1": {
"builtFirmwareChecksum": "628e2b535f3c722456e2985f6a0157d1"
}
}
}
},
"isMacroStatusDirty": false,
"isZephyrLogAvailable": false,
"leftHalfDetected": false,
"multiDevice": false,
"newPairedDevices": [],
"udevRulesInfo": "Ok",
"connectedDevice": {
"id": 4,
"asCliArg": "uhk80-right",
"firmwareUpgradeMethod": "mcuboot",
"logName": "UHK 80 right",
"name": "UHK 80",
"keyboard": [
{
"vid": 14248,
"pid": 9
}
],
"bootloader": [
{
"vid": 14248,
"pid": 8
}
],
"buspal": [],
"reportId": 4
},
"bleAddress": "e6:99:d8:42:06:ed"
}
[2025-06-11 08:49:31.081] [info] [DeviceRendererService] dispatch action [device] connection state changed
[2025-06-11 08:49:31.084] [info] [SmartMacroDocRendererService] downloadDocumentation
[2025-06-11 08:49:31.075] [info] [SmartMacroService] start downloading firmware documentation {
firmwareGitRepo: 'UltimateHackingKeyboard/firmware',
firmwareGitTag: 'v14.0.1'
}
[2025-06-11 08:49:31.076] [info] [DeviceOperation] status buffer segment: �{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{
[2025-06-11 08:49:31.076] [info] [SmartMacroService] firmware documentation downloaded earlier
[2025-06-11 08:49:31.076] [info] [SmartMacroService] reference manual downloaded earlier
[2025-06-11 08:49:31.086] [info] [SmartMacroDocRendererService] dispatch action: [smart-macro-doc] download documentation success
[2025-06-11 08:49:31.087] [info] [SmartMacroDocRendererService] dispatch action: [smart-macro-doc] reference manual changed
[2025-06-11 08:49:31.083] [info] [DeviceOperation] status buffer segment:  5�{ 5�{ 5�{ 5�{ 5�{ 5
[2025-06-11 08:49:31.093] [info] [DeviceRendererService] dispatch action [device] Status buffer changed
[2025-06-11 08:49:31.459] [info] [DeviceOperation] Read "leftHalf" version information
[2025-06-11 08:49:31.471] [info] [DeviceOperation] Read "leftHalf" repo information
[2025-06-11 08:49:31.502] [info] [DeviceOperation] Read "leftHalf" firmware checksum
[2025-06-11 08:49:31.507] [info] [DeviceOperation] Read "leftModule" version information
[2025-06-11 08:49:31.515] [info] [DeviceOperation] Read "leftModule" repo information
[2025-06-11 08:49:31.550] [info] [DeviceOperation] Read "leftModule" firmware checksum
[2025-06-11 08:49:31.595] [info] [DeviceService] Device connection state changed to: {
"bootloaderActive": false,
"bleDeviceConnected": false,
"communicationInterfaceAvailable": true,
"dongle": {
"bootloaderActive": false,
"multiDevice": false,
"serialNumber": ""
},
"leftHalfBootloaderActive": false,
"hasPermission": true,
"halvesInfo": {
"areHalvesMerged": false,
"isLeftHalfConnected": true,
"leftModuleSlot": 2,
"rightModuleSlot": 0
},
"hardwareModules": {
"moduleInfos": [
{
"module": {
"id": 1,
"name": "Left keyboard half",
"slotId": 1,
"i2cAddress": 16,
"firmwareUpgradeSupported": true
},
"info": {
"moduleProtocolVersion": "4.3.0",
"firmwareVersion": "13.0.2",
"firmwareGitRepo": "UltimateHackingKeyboard/firmware",
"firmwareGitTag": "v13.0.2",
"remoteFirmwareChecksum": "2fbc7807396daa7d8836292923792053"
}
},
{
"module": {
"id": 2,
"name": "Key cluster",
"configPath": "/add-on/key-cluster",
"slotId": 2,
"i2cAddress": 32,
"firmwareUpgradeSupported": true
},
"info": {
"moduleProtocolVersion": "4.3.0",
"firmwareVersion": "13.0.2",
"firmwareGitRepo": "UltimateHackingKeyboard/firmware",
"firmwareGitTag": "v13.0.2",
"remoteFirmwareChecksum": "a0323a7f4ae17b6be9c5d1a0954e49de"
}
}
],
"rightModuleInfo": {
"firmwareVersion": "14.0.1",
"deviceProtocolVersion": "4.15.0",
"moduleProtocolVersion": "4.3.0",
"userConfigVersion": "11.0.0",
"hardwareConfigVersion": "1.0.0",
"smartMacrosVersion": "3.4.1",
"firmwareGitRepo": "UltimateHackingKeyboard/firmware",
"firmwareGitTag": "v14.0.1",
"builtFirmwareChecksum": "faa4eeb38630f30b67e521c435e4fef7",
"modules": {
"1": {
"builtFirmwareChecksum": "628e2b535f3c722456e2985f6a0157d1"
},
"2": {
"builtFirmwareChecksum": "a0323a7f4ae17b6be9c5d1a0954e49de"
}
}
}
},
"isMacroStatusDirty": false,
"isZephyrLogAvailable": false,
"leftHalfDetected": false,
"multiDevice": false,
"newPairedDevices": [],
"udevRulesInfo": "Ok",
"connectedDevice": {
"id": 4,
"asCliArg": "uhk80-right",
"firmwareUpgradeMethod": "mcuboot",
"logName": "UHK 80 right",
"name": "UHK 80",
"keyboard": [
{
"vid": 14248,
"pid": 9
}
],
"bootloader": [
{
"vid": 14248,
"pid": 8
}
],
"buspal": [],
"reportId": 4
},
"bleAddress": "e6:99:d8:42:06:ed"
}
[2025-06-11 08:49:31.604] [info] [DeviceRendererService] dispatch action [device] connection state changed
[2025-06-11 08:49:31.607] [info] [SmartMacroDocRendererService] downloadDocumentation
[2025-06-11 08:49:31.599] [info] [SmartMacroService] start downloading firmware documentation {
firmwareGitRepo: 'UltimateHackingKeyboard/firmware',
firmwareGitTag: 'v14.0.1'
}
[2025-06-11 08:49:31.599] [info] [SmartMacroService] firmware documentation downloaded earlier
[2025-06-11 08:49:31.600] [info] [SmartMacroService] reference manual downloaded earlier
[2025-06-11 08:49:31.610] [info] [SmartMacroDocRendererService] dispatch action: [smart-macro-doc] download documentation success
[2025-06-11 08:49:31.610] [info] [SmartMacroDocRendererService] dispatch action: [smart-macro-doc] reference manual changed
[2025-06-11 08:49:31.605] [info] [DeviceOperation] status buffer segment: �{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{
[2025-06-11 08:49:31.611] [info] [DeviceOperation] status buffer segment:  5�{ 5�{ 5�{ 5�{ 5�{ 5
[2025-06-11 08:49:31.621] [info] [DeviceRendererService] dispatch action [device] Status buffer changed
[2025-06-11 08:49:32.056] [info] [DeviceService] Device connection state changed to: {
"bootloaderActive": false,
"bleDeviceConnected": false,
"communicationInterfaceAvailable": true,
"dongle": {
"bootloaderActive": false,
"multiDevice": false,
"serialNumber": ""
},
"leftHalfBootloaderActive": false,
"hasPermission": true,
"halvesInfo": {
"areHalvesMerged": false,
"isLeftHalfConnected": false,
"leftModuleSlot": 0,
"rightModuleSlot": 0
},
"hardwareModules": {
"moduleInfos": [
{
"module": {
"id": 1,
"name": "Left keyboard half",
"slotId": 1,
"i2cAddress": 16,
"firmwareUpgradeSupported": true
},
"info": {}
}
],
"rightModuleInfo": {
"firmwareVersion": "14.0.1",
"deviceProtocolVersion": "4.15.0",
"moduleProtocolVersion": "4.3.0",
"userConfigVersion": "11.0.0",
"hardwareConfigVersion": "1.0.0",
"smartMacrosVersion": "3.4.1",
"firmwareGitRepo": "UltimateHackingKeyboard/firmware",
"firmwareGitTag": "v14.0.1",
"builtFirmwareChecksum": "faa4eeb38630f30b67e521c435e4fef7",
"modules": {
"1": {
"builtFirmwareChecksum": "628e2b535f3c722456e2985f6a0157d1"
}
}
}
},
"isMacroStatusDirty": false,
"isZephyrLogAvailable": false,
"leftHalfDetected": false,
"multiDevice": false,
"newPairedDevices": [],
"udevRulesInfo": "Ok",
"connectedDevice": {
"id": 4,
"asCliArg": "uhk80-right",
"firmwareUpgradeMethod": "mcuboot",
"logName": "UHK 80 right",
"name": "UHK 80",
"keyboard": [
{
"vid": 14248,
"pid": 9
}
],
"bootloader": [
{
"vid": 14248,
"pid": 8
}
],
"buspal": [],
"reportId": 4
},
"bleAddress": "e6:99:d8:42:06:ed"
}
[2025-06-11 08:49:32.065] [info] [DeviceRendererService] dispatch action [device] connection state changed
[2025-06-11 08:49:32.070] [info] [SmartMacroDocRendererService] downloadDocumentation
[2025-06-11 08:49:32.061] [info] [SmartMacroService] start downloading firmware documentation {
firmwareGitRepo: 'UltimateHackingKeyboard/firmware',
firmwareGitTag: 'v14.0.1'
}
[2025-06-11 08:49:32.062] [info] [SmartMacroService] firmware documentation downloaded earlier
[2025-06-11 08:49:32.062] [info] [SmartMacroService] reference manual downloaded earlier
[2025-06-11 08:49:32.074] [info] [SmartMacroDocRendererService] dispatch action: [smart-macro-doc] download documentation success
[2025-06-11 08:49:32.074] [info] [SmartMacroDocRendererService] dispatch action: [smart-macro-doc] reference manual changed
[2025-06-11 08:49:32.067] [info] [DeviceOperation] status buffer segment: �{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{
[2025-06-11 08:49:32.081] [info] [DeviceOperation] status buffer segment:  5�{ 5�{ 5�{ 5�{ 5�{ 5
[2025-06-11 08:49:32.091] [info] [DeviceRendererService] dispatch action [device] Status buffer changed
[2025-06-11 08:49:32.471] [info] [DeviceOperation] Read "leftHalf" version information
[2025-06-11 08:49:32.475] [info] [DeviceOperation] Read "leftHalf" repo information
[2025-06-11 08:49:32.505] [info] [DeviceOperation] Read "leftHalf" firmware checksum
[2025-06-11 08:49:32.519] [info] [DeviceOperation] Read "leftModule" version information
[2025-06-11 08:49:32.535] [info] [DeviceOperation] Read "leftModule" repo information
[2025-06-11 08:49:32.551] [info] [DeviceOperation] Read "leftModule" firmware checksum
[2025-06-11 08:49:32.588] [info] [DeviceService] Device connection state changed to: {
"bootloaderActive": false,
"bleDeviceConnected": false,
"communicationInterfaceAvailable": true,
"dongle": {
"bootloaderActive": false,
"multiDevice": false,
"serialNumber": ""
},
"leftHalfBootloaderActive": false,
"hasPermission": true,
"halvesInfo": {
"areHalvesMerged": false,
"isLeftHalfConnected": true,
"leftModuleSlot": 2,
"rightModuleSlot": 0
},
"hardwareModules": {
"moduleInfos": [
{
"module": {
"id": 1,
"name": "Left keyboard half",
"slotId": 1,
"i2cAddress": 16,
"firmwareUpgradeSupported": true
},
"info": {
"moduleProtocolVersion": "4.3.0",
"firmwareVersion": "13.0.2",
"firmwareGitRepo": "UltimateHackingKeyboard/firmware",
"firmwareGitTag": "v13.0.2",
"remoteFirmwareChecksum": "2fbc7807396daa7d8836292923792053"
}
},
{
"module": {
"id": 2,
"name": "Key cluster",
"configPath": "/add-on/key-cluster",
"slotId": 2,
"i2cAddress": 32,
"firmwareUpgradeSupported": true
},
"info": {
"moduleProtocolVersion": "4.3.0",
"firmwareVersion": "13.0.2",
"firmwareGitRepo": "UltimateHackingKeyboard/firmware",
"firmwareGitTag": "v13.0.2",
"remoteFirmwareChecksum": "a0323a7f4ae17b6be9c5d1a0954e49de"
}
}
],
"rightModuleInfo": {
"firmwareVersion": "14.0.1",
"deviceProtocolVersion": "4.15.0",
"moduleProtocolVersion": "4.3.0",
"userConfigVersion": "11.0.0",
"hardwareConfigVersion": "1.0.0",
"smartMacrosVersion": "3.4.1",
"firmwareGitRepo": "UltimateHackingKeyboard/firmware",
"firmwareGitTag": "v14.0.1",
"builtFirmwareChecksum": "faa4eeb38630f30b67e521c435e4fef7",
"modules": {
"1": {
"builtFirmwareChecksum": "628e2b535f3c722456e2985f6a0157d1"
},
"2": {
"builtFirmwareChecksum": "a0323a7f4ae17b6be9c5d1a0954e49de"
}
}
}
},
"isMacroStatusDirty": false,
"isZephyrLogAvailable": false,
"leftHalfDetected": false,
"multiDevice": false,
"newPairedDevices": [],
"udevRulesInfo": "Ok",
"connectedDevice": {
"id": 4,
"asCliArg": "uhk80-right",
"firmwareUpgradeMethod": "mcuboot",
"logName": "UHK 80 right",
"name": "UHK 80",
"keyboard": [
{
"vid": 14248,
"pid": 9
}
],
"bootloader": [
{
"vid": 14248,
"pid": 8
}
],
"buspal": [],
"reportId": 4
},
"bleAddress": "e6:99:d8:42:06:ed"
}
[2025-06-11 08:49:32.597] [info] [DeviceRendererService] dispatch action [device] connection state changed
[2025-06-11 08:49:32.600] [info] [SmartMacroDocRendererService] downloadDocumentation
[2025-06-11 08:49:32.591] [info] [SmartMacroService] start downloading firmware documentation {
firmwareGitRepo: 'UltimateHackingKeyboard/firmware',
firmwareGitTag: 'v14.0.1'
}
[2025-06-11 08:49:32.592] [info] [SmartMacroService] firmware documentation downloaded earlier
[2025-06-11 08:49:32.592] [info] [SmartMacroService] reference manual downloaded earlier
[2025-06-11 08:49:32.604] [info] [SmartMacroDocRendererService] dispatch action: [smart-macro-doc] download documentation success
[2025-06-11 08:49:32.595] [info] [DeviceOperation] status buffer segment: �{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{
[2025-06-11 08:49:32.604] [info] [SmartMacroDocRendererService] dispatch action: [smart-macro-doc] reference manual changed
[2025-06-11 08:49:32.608] [info] [DeviceOperation] status buffer segment:  5�{ 5�{ 5�{ 5�{ 5�{ 5
[2025-06-11 08:49:32.618] [info] [DeviceRendererService] dispatch action [device] Status buffer changed
[2025-06-11 08:49:32.845] [info] [DeviceService] stop poll UHK Device
[2025-06-11 08:49:32.846] [info] [DeviceService] stopped poll UHK Device
[2025-06-11 08:49:32.847] [info] [DeviceService] Operating system: Windows_NT 10.0.26100 x64
[2025-06-11 08:49:32.847] [info] [DeviceService] Agent version: 7.0.1
[2025-06-11 08:49:32.848] [info] [DeviceService] New firmware version: 14.0.1
[2025-06-11 08:49:32.848] [info] [DeviceService] New firmware user config version: 11.0.0
[2025-06-11 08:49:32.859] [info] [DeviceRendererService] dispatch action [device] update firmware JSON
[2025-06-11 08:49:33.021] [info] [DeviceService] UHK Device firmware upgrade starts: {"id":4,"asCliArg":"uhk80-right","firmwareUpgradeMethod":"mcuboot","logName":"UHK 80 right","name":"UHK 80","keyboard":[{"vid":14248,"pid":9}],"bootloader":[{"vid":14248,"pid":8}],"buspal":[],"reportId":4}
[2025-06-11 08:49:33.022] [info] [DeviceService] Current Device right built firmware checksum: faa4eeb38630f30b67e521c435e4fef7
[2025-06-11 08:49:33.022] [info] [DeviceService] New Device right firmware checksum: faa4eeb38630f30b67e521c435e4fef7
[2025-06-11 08:49:33.022] [info] Skip right firmware upgrade.
[2025-06-11 08:49:33.023] [info] [DeviceService] Left module firmware version: undefined
[2025-06-11 08:49:33.023] [info] [DeviceService] Left module remote firmware checksum: undefined
[2025-06-11 08:49:33.024] [info] [DeviceService] Left module built firmware checksum: 628e2b535f3c722456e2985f6a0157d1
[2025-06-11 08:49:33.034] [info] [DeviceRendererService] dispatch action [device] currently update skip module
[2025-06-11 08:49:33.035] [info] [DeviceRendererService] dispatch action [device] currently updating module
[2025-06-11 08:49:33.063] [info] [DeviceService] To continue the firmware upgrade, now connect the left half via USB. (You can disconnect the right half or use a second USB cable.)
[2025-06-11 08:50:50.862] [info] [UhkOperations] Start flashing UHK 80 left firmware with mcumgr
[2025-06-11 08:50:50.863] [info] [UhkOperations] Reenumerate bootloader
[2025-06-11 08:50:50.863] [info] [UhkHidDevice] Device communication closing.
[2025-06-11 08:50:50.864] [info] [UhkHidDevice] Device communication closed.
[2025-06-11 08:50:50.864] [info] [UhkHidDevice] Start reenumeration, mode: Bootloader, timeout: 5000ms
[2025-06-11 08:50:50.893] [info] [UhkHidDevice] Available devices unchanged
[2025-06-11 08:50:51.052] [info] [UhkHidDevice] Available devices unchanged
[2025-06-11 08:50:51.222] [info] [UhkHidDevice] Available devices unchanged
[2025-06-11 08:50:51.386] [info] [UhkHidDevice] Available devices unchanged
[2025-06-11 08:50:51.543] [info] [UhkHidDevice] Available devices unchanged
[2025-06-11 08:50:51.700] [info] [UhkHidDevice] Available devices unchanged
[2025-06-11 08:50:51.947] [info] [UhkHidDevice] Reenumeration error. We hope it would not break the process Error: Cannot write to hid device
[2025-06-11 08:50:51.948] [info] [UhkHidDevice] closing normal keyboard after reenumeration
[2025-06-11 08:50:51.976] [info] [UhkHidDevice] Available devices unchanged
[2025-06-11 08:50:52.080] [info] [UhkHidDevice] Could not find reenumerated device: Bootloader. Waiting...
[2025-06-11 08:50:52.082] [info] [UhkHidDevice] Available devices changed.
[2025-06-11 08:50:52.083] [info] [UhkHidDevice] Removed: {"vendorId":"0x37A8","productId":"0x9","path":"\\\\?\\HID#VID_37A8&PID_0009&MI_00#8&1b67c4f0&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}\\KBD","serialNumber":"1886017019","manufacturer":"Ultimate Gadget Laboratories","product":"UHK 80 Right USB","release":1,"interface":0,"usagePage":1,"usage":6}
[2025-06-11 08:50:52.083] [info] [UhkHidDevice] Removed: {"vendorId":"0x37A8","productId":"0x9","path":"\\\\?\\HID#VID_37A8&PID_0009&MI_01#8&837a8b2&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}","serialNumber":"1886017019","manufacturer":"Ultimate Gadget Laboratories","product":"UHK 80 Right USB","release":1,"interface":1,"usagePage":1,"usage":2}
[2025-06-11 08:50:52.084] [info] [UhkHidDevice] Removed: {"vendorId":"0x37A8","productId":"0x9","path":"\\\\?\\HID#VID_37A8&PID_0009&MI_02#8&30a2567b&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}","serialNumber":"1886017019","manufacturer":"Ultimate Gadget Laboratories","product":"UHK 80 Right USB","release":1,"interface":2,"usagePage":65280,"usage":1}
[2025-06-11 08:50:52.084] [info] [UhkHidDevice] Removed: {"vendorId":"0x37A8","productId":"0x9","path":"\\\\?\\HID#VID_37A8&PID_0009&MI_03#8&1d723a3d&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}","serialNumber":"1886017019","manufacturer":"Ultimate Gadget Laboratories","product":"UHK 80 Right USB","release":1,"interface":3,"usagePage":12,"usage":1}
[2025-06-11 08:50:52.111] [info] [UhkHidDevice] Available devices changed.
[2025-06-11 08:50:52.112] [info] [UhkHidDevice] Added: {"vendorId":"0x37A8","productId":"0x9","path":"\\\\?\\HID#VID_37A8&PID_0009&MI_00#8&1b67c4f0&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}\\KBD","serialNumber":"1886017019","manufacturer":"Ultimate Gadget Laboratories","product":"UHK 80 Right USB","release":1,"interface":0,"usagePage":1,"usage":6}
[2025-06-11 08:50:52.112] [info] [UhkHidDevice] Added: {"vendorId":"0x37A8","productId":"0x9","path":"\\\\?\\HID#VID_37A8&PID_0009&MI_01#8&837a8b2&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}","serialNumber":"1886017019","manufacturer":"Ultimate Gadget Laboratories","product":"UHK 80 Right USB","release":1,"interface":1,"usagePage":1,"usage":2}
[2025-06-11 08:50:52.112] [info] [UhkHidDevice] Added: {"vendorId":"0x37A8","productId":"0x9","path":"\\\\?\\HID#VID_37A8&PID_0009&MI_02#8&30a2567b&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}","serialNumber":"1886017019","manufacturer":"Ultimate Gadget Laboratories","product":"UHK 80 Right USB","release":1,"interface":2,"usagePage":65280,"usage":1}
[2025-06-11 08:50:52.112] [info] [UhkHidDevice] Added: {"vendorId":"0x37A8","productId":"0x9","path":"\\\\?\\HID#VID_37A8&PID_0009&MI_03#8&1d723a3d&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}","serialNumber":"1886017019","manufacturer":"Ultimate Gadget Laboratories","product":"UHK 80 Right USB","release":1,"interface":3,"usagePage":12,"usage":1}
[2025-06-11 08:50:52.226] [info] [UhkHidDevice] Could not find reenumerated device: Bootloader. Waiting...
[2025-06-11 08:50:52.232] [info] [UhkHidDevice] Available devices changed.
[2025-06-11 08:50:52.232] [info] [UhkHidDevice] Removed: {"vendorId":"0x37A8","productId":"0x9","path":"\\\\?\\HID#VID_37A8&PID_0009&MI_00#8&1b67c4f0&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}\\KBD","serialNumber":"1886017019","manufacturer":"Ultimate Gadget Laboratories","product":"UHK 80 Right USB","release":1,"interface":0,"usagePage":1,"usage":6}
[2025-06-11 08:50:52.233] [info] [UhkHidDevice] Removed: {"vendorId":"0x37A8","productId":"0x9","path":"\\\\?\\HID#VID_37A8&PID_0009&MI_01#8&837a8b2&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}","serialNumber":"1886017019","manufacturer":"Ultimate Gadget Laboratories","product":"UHK 80 Right USB","release":1,"interface":1,"usagePage":1,"usage":2}
[2025-06-11 08:50:52.233] [info] [UhkHidDevice] Removed: {"vendorId":"0x37A8","productId":"0x9","path":"\\\\?\\HID#VID_37A8&PID_0009&MI_02#8&30a2567b&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}","serialNumber":"1886017019","manufacturer":"Ultimate Gadget Laboratories","product":"UHK 80 Right USB","release":1,"interface":2,"usagePage":65280,"usage":1}
[2025-06-11 08:50:52.233] [info] [UhkHidDevice] Removed: {"vendorId":"0x37A8","productId":"0x9","path":"\\\\?\\HID#VID_37A8&PID_0009&MI_03#8&1d723a3d&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}","serialNumber":"1886017019","manufacturer":"Ultimate Gadget Laboratories","product":"UHK 80 Right USB","release":1,"interface":3,"usagePage":12,"usage":1}
[2025-06-11 08:50:52.265] [info] [UhkHidDevice] Available devices changed.
[2025-06-11 08:50:52.265] [info] [UhkHidDevice] Added: {"vendorId":"0x37A8","productId":"0x9","path":"\\\\?\\HID#VID_37A8&PID_0009&MI_00#8&1b67c4f0&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}\\KBD","serialNumber":"1886017019","manufacturer":"Ultimate Gadget Laboratories","product":"UHK 80 Right USB","release":1,"interface":0,"usagePage":1,"usage":6}
[2025-06-11 08:50:52.265] [info] [UhkHidDevice] Added: {"vendorId":"0x37A8","productId":"0x9","path":"\\\\?\\HID#VID_37A8&PID_0009&MI_01#8&837a8b2&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}","serialNumber":"1886017019","manufacturer":"Ultimate Gadget Laboratories","product":"UHK 80 Right USB","release":1,"interface":1,"usagePage":1,"usage":2}
[2025-06-11 08:50:52.266] [info] [UhkHidDevice] Added: {"vendorId":"0x37A8","productId":"0x9","path":"\\\\?\\HID#VID_37A8&PID_0009&MI_02#8&30a2567b&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}","serialNumber":"1886017019","manufacturer":"Ultimate Gadget Laboratories","product":"UHK 80 Right USB","release":1,"interface":2,"usagePage":65280,"usage":1}
[2025-06-11 08:50:52.266] [info] [UhkHidDevice] Added: {"vendorId":"0x37A8","productId":"0x9","path":"\\\\?\\HID#VID_37A8&PID_0009&MI_03#8&1d723a3d&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}","serialNumber":"1886017019","manufacturer":"Ultimate Gadget Laboratories","product":"UHK 80 Right USB","release":1,"interface":3,"usagePage":12,"usage":1}
[2025-06-11 08:50:52.373] [info] [UhkHidDevice] Could not find reenumerated device: Bootloader. Waiting...
[2025-06-11 08:50:52.374] [info] [UhkHidDevice] Available devices changed.
[2025-06-11 08:50:52.374] [info] [UhkHidDevice] Removed: {"vendorId":"0x37A8","productId":"0x9","path":"\\\\?\\HID#VID_37A8&PID_0009&MI_00#8&1b67c4f0&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}\\KBD","serialNumber":"1886017019","manufacturer":"Ultimate Gadget Laboratories","product":"UHK 80 Right USB","release":1,"interface":0,"usagePage":1,"usage":6}
[2025-06-11 08:50:52.374] [info] [UhkHidDevice] Removed: {"vendorId":"0x37A8","productId":"0x9","path":"\\\\?\\HID#VID_37A8&PID_0009&MI_01#8&837a8b2&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}","serialNumber":"1886017019","manufacturer":"Ultimate Gadget Laboratories","product":"UHK 80 Right USB","release":1,"interface":1,"usagePage":1,"usage":2}
[2025-06-11 08:50:52.374] [info] [UhkHidDevice] Removed: {"vendorId":"0x37A8","productId":"0x9","path":"\\\\?\\HID#VID_37A8&PID_0009&MI_02#8&30a2567b&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}","serialNumber":"1886017019","manufacturer":"Ultimate Gadget Laboratories","product":"UHK 80 Right USB","release":1,"interface":2,"usagePage":65280,"usage":1}
[2025-06-11 08:50:52.375] [info] [UhkHidDevice] Removed: {"vendorId":"0x37A8","productId":"0x9","path":"\\\\?\\HID#VID_37A8&PID_0009&MI_03#8&1d723a3d&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}","serialNumber":"1886017019","manufacturer":"Ultimate Gadget Laboratories","product":"UHK 80 Right USB","release":1,"interface":3,"usagePage":12,"usage":1}
[2025-06-11 08:50:52.404] [info] [UhkHidDevice] Available devices changed.
[2025-06-11 08:50:52.404] [info] [UhkHidDevice] Added: {"vendorId":"0x37A8","productId":"0x9","path":"\\\\?\\HID#VID_37A8&PID_0009&MI_00#8&1b67c4f0&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}\\KBD","serialNumber":"1886017019","manufacturer":"Ultimate Gadget Laboratories","product":"UHK 80 Right USB","release":1,"interface":0,"usagePage":1,"usage":6}
[2025-06-11 08:50:52.405] [info] [UhkHidDevice] Added: {"vendorId":"0x37A8","productId":"0x9","path":"\\\\?\\HID#VID_37A8&PID_0009&MI_01#8&837a8b2&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}","serialNumber":"1886017019","manufacturer":"Ultimate Gadget Laboratories","product":"UHK 80 Right USB","release":1,"interface":1,"usagePage":1,"usage":2}
[2025-06-11 08:50:52.405] [info] [UhkHidDevice] Added: {"vendorId":"0x37A8","productId":"0x9","path":"\\\\?\\HID#VID_37A8&PID_0009&MI_02#8&30a2567b&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}","serialNumber":"1886017019","manufacturer":"Ultimate Gadget Laboratories","product":"UHK 80 Right USB","release":1,"interface":2,"usagePage":65280,"usage":1}
[2025-06-11 08:50:52.405] [info] [UhkHidDevice] Added: {"vendorId":"0x37A8","productId":"0x9","path":"\\\\?\\HID#VID_37A8&PID_0009&MI_03#8&1d723a3d&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}","serialNumber":"1886017019","manufacturer":"Ultimate Gadget Laboratories","product":"UHK 80 Right USB","release":1,"interface":3,"usagePage":12,"usage":1}
[2025-06-11 08:50:52.512] [info] [UhkHidDevice] Could not find reenumerated device: Bootloader. Waiting...
[2025-06-11 08:50:52.513] [info] [UhkHidDevice] Available devices changed.
[2025-06-11 08:50:52.513] [info] [UhkHidDevice] Removed: {"vendorId":"0x37A8","productId":"0x9","path":"\\\\?\\HID#VID_37A8&PID_0009&MI_00#8&1b67c4f0&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}\\KBD","serialNumber":"1886017019","manufacturer":"Ultimate Gadget Laboratories","product":"UHK 80 Right USB","release":1,"interface":0,"usagePage":1,"usage":6}
[2025-06-11 08:50:52.513] [info] [UhkHidDevice] Removed: {"vendorId":"0x37A8","productId":"0x9","path":"\\\\?\\HID#VID_37A8&PID_0009&MI_01#8&837a8b2&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}","serialNumber":"1886017019","manufacturer":"Ultimate Gadget Laboratories","product":"UHK 80 Right USB","release":1,"interface":1,"usagePage":1,"usage":2}
[2025-06-11 08:50:52.514] [info] [UhkHidDevice] Removed: {"vendorId":"0x37A8","productId":"0x9","path":"\\\\?\\HID#VID_37A8&PID_0009&MI_02#8&30a2567b&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}","serialNumber":"1886017019","manufacturer":"Ultimate Gadget Laboratories","product":"UHK 80 Right USB","release":1,"interface":2,"usagePage":65280,"usage":1}
[2025-06-11 08:50:52.514] [info] [UhkHidDevice] Removed: {"vendorId":"0x37A8","productId":"0x9","path":"\\\\?\\HID#VID_37A8&PID_0009&MI_03#8&1d723a3d&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}","serialNumber":"1886017019","manufacturer":"Ultimate Gadget Laboratories","product":"UHK 80 Right USB","release":1,"interface":3,"usagePage":12,"usage":1}
[2025-06-11 08:50:52.540] [info] [UhkHidDevice] Available devices changed.
[2025-06-11 08:50:52.540] [info] [UhkHidDevice] Added: {"vendorId":"0x37A8","productId":"0x9","path":"\\\\?\\HID#VID_37A8&PID_0009&MI_00#8&1b67c4f0&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}\\KBD","serialNumber":"1886017019","manufacturer":"Ultimate Gadget Laboratories","product":"UHK 80 Right USB","release":1,"interface":0,"usagePage":1,"usage":6}
[2025-06-11 08:50:52.541] [info] [UhkHidDevice] Added: {"vendorId":"0x37A8","productId":"0x9","path":"\\\\?\\HID#VID_37A8&PID_0009&MI_01#8&837a8b2&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}","serialNumber":"1886017019","manufacturer":"Ultimate Gadget Laboratories","product":"UHK 80 Right USB","release":1,"interface":1,"usagePage":1,"usage":2}
[2025-06-11 08:50:52.541] [info] [UhkHidDevice] Added: {"vendorId":"0x37A8","productId":"0x9","path":"\\\\?\\HID#VID_37A8&PID_0009&MI_02#8&30a2567b&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}","serialNumber":"1886017019","manufacturer":"Ultimate Gadget Laboratories","product":"UHK 80 Right USB","release":1,"interface":2,"usagePage":65280,"usage":1}
[2025-06-11 08:50:52.541] [info] [UhkHidDevice] Added: {"vendorId":"0x37A8","productId":"0x9","path":"\\\\?\\HID#VID_37A8&PID_0009&MI_03#8&1d723a3d&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}","serialNumber":"1886017019","manufacturer":"Ultimate Gadget Laboratories","product":"UHK 80 Right USB","release":1,"interface":3,"usagePage":12,"usage":1}
[2025-06-11 08:50:52.642] [info] [UhkHidDevice] Could not find reenumerated device: Bootloader. Waiting...
[2025-06-11 08:50:52.643] [info] [UhkHidDevice] Available devices changed.
[2025-06-11 08:50:52.643] [info] [UhkHidDevice] Removed: {"vendorId":"0x37A8","productId":"0x9","path":"\\\\?\\HID#VID_37A8&PID_0009&MI_00#8&1b67c4f0&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}\\KBD","serialNumber":"1886017019","manufacturer":"Ultimate Gadget Laboratories","product":"UHK 80 Right USB","release":1,"interface":0,"usagePage":1,"usage":6}
[2025-06-11 08:50:52.643] [info] [UhkHidDevice] Removed: {"vendorId":"0x37A8","productId":"0x9","path":"\\\\?\\HID#VID_37A8&PID_0009&MI_01#8&837a8b2&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}","serialNumber":"1886017019","manufacturer":"Ultimate Gadget Laboratories","product":"UHK 80 Right USB","release":1,"interface":1,"usagePage":1,"usage":2}
[2025-06-11 08:50:52.643] [info] [UhkHidDevice] Removed: {"vendorId":"0x37A8","productId":"0x9","path":"\\\\?\\HID#VID_37A8&PID_0009&MI_02#8&30a2567b&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}","serialNumber":"1886017019","manufacturer":"Ultimate Gadget Laboratories","product":"UHK 80 Right USB","release":1,"interface":2,"usagePage":65280,"usage":1}
[2025-06-11 08:50:52.643] [info] [UhkHidDevice] Removed: {"vendorId":"0x37A8","productId":"0x9","path":"\\\\?\\HID#VID_37A8&PID_0009&MI_03#8&1d723a3d&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}","serialNumber":"1886017019","manufacturer":"Ultimate Gadget Laboratories","product":"UHK 80 Right USB","release":1,"interface":3,"usagePage":12,"usage":1}
[2025-06-11 08:50:52.696] [info] [UhkHidDevice] Available devices changed.
[2025-06-11 08:50:52.696] [info] [UhkHidDevice] Added: {"vendorId":"0x37A8","productId":"0x9","path":"\\\\?\\HID#VID_37A8&PID_0009&MI_00#8&1b67c4f0&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}\\KBD","serialNumber":"1886017019","manufacturer":"Ultimate Gadget Laboratories","product":"UHK 80 Right USB","release":1,"interface":0,"usagePage":1,"usage":6}
[2025-06-11 08:50:52.697] [info] [UhkHidDevice] Added: {"vendorId":"0x37A8","productId":"0x9","path":"\\\\?\\HID#VID_37A8&PID_0009&MI_01#8&837a8b2&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}","serialNumber":"1886017019","manufacturer":"Ultimate Gadget Laboratories","product":"UHK 80 Right USB","release":1,"interface":1,"usagePage":1,"usage":2}
[2025-06-11 08:50:52.697] [info] [UhkHidDevice] Added: {"vendorId":"0x37A8","productId":"0x9","path":"\\\\?\\HID#VID_37A8&PID_0009&MI_02#8&30a2567b&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}","serialNumber":"1886017019","manufacturer":"Ultimate Gadget Laboratories","product":"UHK 80 Right USB","release":1,"interface":2,"usagePage":65280,"usage":1}
[2025-06-11 08:50:52.697] [info] [UhkHidDevice] Added: {"vendorId":"0x37A8","productId":"0x9","path":"\\\\?\\HID#VID_37A8&PID_0009&MI_03#8&1d723a3d&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}","serialNumber":"1886017019","manufacturer":"Ultimate Gadget Laboratories","product":"UHK 80 Right USB","release":1,"interface":3,"usagePage":12,"usage":1}
[2025-06-11 08:50:52.797] [info] [UhkHidDevice] Could not find reenumerated device: Bootloader. Waiting...
[2025-06-11 08:50:52.799] [info] [UhkHidDevice] Available devices changed.
[2025-06-11 08:50:52.799] [info] [UhkHidDevice] Removed: {"vendorId":"0x37A8","productId":"0x9","path":"\\\\?\\HID#VID_37A8&PID_0009&MI_00#8&1b67c4f0&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}\\KBD","serialNumber":"1886017019","manufacturer":"Ultimate Gadget Laboratories","product":"UHK 80 Right USB","release":1,"interface":0,"usagePage":1,"usage":6}
[2025-06-11 08:50:52.800] [info] [UhkHidDevice] Removed: {"vendorId":"0x37A8","productId":"0x9","path":"\\\\?\\HID#VID_37A8&PID_0009&MI_01#8&837a8b2&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}","serialNumber":"1886017019","manufacturer":"Ultimate Gadget Laboratories","product":"UHK 80 Right USB","release":1,"interface":1,"usagePage":1,"usage":2}
[2025-06-11 08:50:52.800] [info] [UhkHidDevice] Removed: {"vendorId":"0x37A8","productId":"0x9","path":"\\\\?\\HID#VID_37A8&PID_0009&MI_02#8&30a2567b&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}","serialNumber":"1886017019","manufacturer":"Ultimate Gadget Laboratories","product":"UHK 80 Right USB","release":1,"interface":2,"usagePage":65280,"usage":1}
[2025-06-11 08:50:52.800] [info] [UhkHidDevice] Removed: {"vendorId":"0x37A8","productId":"0x9","path":"\\\\?\\HID#VID_37A8&PID_0009&MI_03#8&1d723a3d&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}","serialNumber":"1886017019","manufacturer":"Ultimate Gadget Laboratories","product":"UHK 80 Right USB","release":1,"interface":3,"usagePage":12,"usage":1}
[2025-06-11 08:50:52.800] [info] [UhkHidDevice] Added: {"path":"COM5","manufacturer":"Microsoft","serialNumber":"6&37AE108F&0&0000","pnpId":"USB\\VID_37A8&PID_0006&MI_00\\6&37AE108F&0&0000","locationId":"0000.0014.0000.012.000.000.000.000.000","friendlyName":"USB Serial Device (COM5)","vendorId":"0x37A8","productId":"0x0006"}
[2025-06-11 08:50:52.830] [info] [UhkHidDevice] Available devices changed.
[2025-06-11 08:50:52.831] [info] [UhkHidDevice] Added: {"vendorId":"0x37A8","productId":"0x9","path":"\\\\?\\HID#VID_37A8&PID_0009&MI_00#8&1b67c4f0&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}\\KBD","serialNumber":"1886017019","manufacturer":"Ultimate Gadget Laboratories","product":"UHK 80 Right USB","release":1,"interface":0,"usagePage":1,"usage":6}
[2025-06-11 08:50:52.831] [info] [UhkHidDevice] Added: {"vendorId":"0x37A8","productId":"0x9","path":"\\\\?\\HID#VID_37A8&PID_0009&MI_01#8&837a8b2&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}","serialNumber":"1886017019","manufacturer":"Ultimate Gadget Laboratories","product":"UHK 80 Right USB","release":1,"interface":1,"usagePage":1,"usage":2}
[2025-06-11 08:50:52.831] [info] [UhkHidDevice] Added: {"vendorId":"0x37A8","productId":"0x9","path":"\\\\?\\HID#VID_37A8&PID_0009&MI_02#8&30a2567b&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}","serialNumber":"1886017019","manufacturer":"Ultimate Gadget Laboratories","product":"UHK 80 Right USB","release":1,"interface":2,"usagePage":65280,"usage":1}
[2025-06-11 08:50:52.831] [info] [UhkHidDevice] Added: {"vendorId":"0x37A8","productId":"0x9","path":"\\\\?\\HID#VID_37A8&PID_0009&MI_03#8&1d723a3d&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}","serialNumber":"1886017019","manufacturer":"Ultimate Gadget Laboratories","product":"UHK 80 Right USB","release":1,"interface":3,"usagePage":12,"usage":1}
[2025-06-11 08:50:52.831] [info] [UhkHidDevice] Device communication closing.
[2025-06-11 08:50:53.846] [info] [UhkOperations] Init SerialPeripheral: COM5
[2025-06-11 08:50:53.847] [info] [UhkOperations] Read UHK 80 left firmware from file
[2025-06-11 08:50:53.864] [info] [UhkOperations] Write memory with mcumgr
[2025-06-11 08:51:16.219] [info] [UhkOperations] Reset mcu bootloader
[2025-06-11 08:51:16.238] [info] [UhkOperations] Close mcu communication channels
[2025-06-11 08:51:16.243] [info] [UhkOperations] UHK 80 left firmware successfully flashed
[2025-06-11 08:51:16.301] [info] [SmartMacroCopy] start
[2025-06-11 08:51:16.302] [info] [SmartMacroCopy] copy {
destination: 'C:\\Users\\david\\AppData\\Roaming\\uhk-agent\\smart-macro-docs\\UltimateHackingKeyboard\\firmware\\v14.0.1',
smartMacroDocFirmwarePath: 'C:\\Users\\david\\AppData\\Local\\Programs\\uhk-agent\\resources\\packages\\firmware\\doc'
}
[2025-06-11 08:51:16.319] [info] [SmartMacroCopy] done
[2025-06-11 08:51:16.833] [info] [DeviceService] start poll UHK Device
[2025-06-11 08:51:16.833] [info] [ZephyrLogService | UHK Dongle] Enabling
[2025-06-11 08:51:16.834] [info] [ZephyrLogService | UHK 80 left] Enabling
[2025-06-11 08:51:16.837] [info] [DeviceRendererService] dispatch action [device] update firmware reply
[2025-06-11 08:51:16.837] [info] [SmartMacroDocRendererService] downloadDocumentation
[2025-06-11 08:51:16.838] [info] [SmartMacroService] start downloading firmware documentation {
firmwareGitRepo: 'UltimateHackingKeyboard/firmware',
firmwareGitTag: 'v14.0.1'
}
[2025-06-11 08:51:16.839] [info] [SmartMacroService] firmware documentation downloaded earlier
[2025-06-11 08:51:16.839] [info] [SmartMacroService] reference manual downloaded earlier
[2025-06-11 08:51:16.844] [info] [SmartMacroDocRendererService] dispatch action: [smart-macro-doc] download documentation success
[2025-06-11 08:51:16.849] [info] [SmartMacroDocRendererService] dispatch action: [smart-macro-doc] reference manual changed
[2025-06-11 08:51:17.035] [info] [UhkHidDevice] Available devices changed.
[2025-06-11 08:51:17.035] [info] [UhkHidDevice] Removed: {"path":"COM5","manufacturer":"Microsoft","serialNumber":"6&37AE108F&0&0000","pnpId":"USB\\VID_37A8&PID_0006&MI_00\\6&37AE108F&0&0000","locationId":"0000.0014.0000.012.000.000.000.000.000","friendlyName":"USB Serial Device (COM5)","vendorId":"0x37A8","productId":"0x0006"}
[2025-06-11 08:51:17.065] [info] [UhkHidDevice] Used device: {"vendorId":"0x37A8","productId":"0x9","path":"\\\\?\\HID#VID_37A8&PID_0009&MI_02#8&30a2567b&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}","serialNumber":"1886017019","manufacturer":"Ultimate Gadget Laboratories","product":"UHK 80 Right USB","release":1,"interface":2,"usagePage":65280,"usage":1}
[2025-06-11 08:51:17.104] [info] [UhkHidDevice] productId: 9 protocol versions: {"firmwareVersion":"14.0.1","deviceProtocolVersion":"4.15.0","moduleProtocolVersion":"4.3.0","userConfigVersion":"11.0.0","hardwareConfigVersion":"1.0.0","smartMacrosVersion":"3.4.1"}
[2025-06-11 08:51:17.182] [info] [ZephyrLogService | UHK Dongle] Disabling
[2025-06-11 08:51:17.182] [info] [ZephyrLogService | UHK Dongle] wait until polling
[2025-06-11 08:51:17.182] [info] [ZephyrLogService | UHK Dongle] stopped
[2025-06-11 08:51:17.183] [info] [ZephyrLogService | UHK Dongle] releaseOperations
[2025-06-11 08:51:17.183] [info] [ZephyrLogService | UHK Dongle] no instances to release
[2025-06-11 08:51:17.183] [info] [ZephyrLogService | UHK Dongle] Disabled
[2025-06-11 08:51:17.184] [info] [DeviceService] Device connection state changed to: {
"bootloaderActive": false,
"bleDeviceConnected": false,
"communicationInterfaceAvailable": true,
"dongle": {
"bootloaderActive": false,
"multiDevice": false,
"serialNumber": ""
},
"leftHalfBootloaderActive": false,
"hasPermission": true,
"halvesInfo": {
"areHalvesMerged": false,
"isLeftHalfConnected": false,
"leftModuleSlot": 0,
"rightModuleSlot": 0
},
"hardwareModules": {
"moduleInfos": [
{
"module": {
"id": 1,
"name": "Left keyboard half",
"slotId": 1,
"i2cAddress": 16,
"firmwareUpgradeSupported": true
},
"info": {}
}
],
"rightModuleInfo": {
"firmwareVersion": "14.0.1",
"deviceProtocolVersion": "4.15.0",
"moduleProtocolVersion": "4.3.0",
"userConfigVersion": "11.0.0",
"hardwareConfigVersion": "1.0.0",
"smartMacrosVersion": "3.4.1",
"firmwareGitRepo": "UltimateHackingKeyboard/firmware",
"firmwareGitTag": "v14.0.1",
"builtFirmwareChecksum": "faa4eeb38630f30b67e521c435e4fef7",
"modules": {
"1": {
"builtFirmwareChecksum": "628e2b535f3c722456e2985f6a0157d1"
}
}
}
},
"isMacroStatusDirty": true,
"isZephyrLogAvailable": false,
"leftHalfDetected": false,
"multiDevice": false,
"newPairedDevices": [],
"udevRulesInfo": "Ok",
"connectedDevice": {
"id": 4,
"asCliArg": "uhk80-right",
"firmwareUpgradeMethod": "mcuboot",
"logName": "UHK 80 right",
"name": "UHK 80",
"keyboard": [
{
"vid": 14248,
"pid": 9
}
],
"bootloader": [
{
"vid": 14248,
"pid": 8
}
],
"buspal": [],
"reportId": 4
},
"bleAddress": "e6:99:d8:42:06:ed"
}
[2025-06-11 08:51:17.185] [info] [DeviceRendererService] dispatch action [device] connection state changed
[2025-06-11 08:51:17.189] [info] [SmartMacroDocRendererService] downloadDocumentation
[2025-06-11 08:51:17.188] [info] [SmartMacroService] start downloading firmware documentation {
firmwareGitRepo: 'UltimateHackingKeyboard/firmware',
firmwareGitTag: 'v14.0.1'
}
[2025-06-11 08:51:17.189] [info] [SmartMacroService] firmware documentation downloaded earlier
[2025-06-11 08:51:17.189] [info] [SmartMacroService] reference manual downloaded earlier
[2025-06-11 08:51:17.191] [info] [DeviceOperation] status buffer segment: �{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{
[2025-06-11 08:51:17.195] [info] [SmartMacroDocRendererService] dispatch action: [smart-macro-doc] download documentation success
[2025-06-11 08:51:17.196] [info] [SmartMacroDocRendererService] dispatch action: [smart-macro-doc] reference manual changed
[2025-06-11 08:51:17.199] [info] [DeviceOperation] status buffer segment:  5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{
[2025-06-11 08:51:17.207] [info] [DeviceOperation] status buffer segment: 5�{ 5�{ 5�{ 5
[2025-06-11 08:51:17.207] [info] [ZephyrLogService | UHK 80 left] Disabling
[2025-06-11 08:51:17.207] [info] [ZephyrLogService | UHK 80 left] wait until polling
[2025-06-11 08:51:17.208] [info] [ZephyrLogService | UHK 80 left] stopped
[2025-06-11 08:51:17.208] [info] [ZephyrLogService | UHK 80 left] releaseOperations
[2025-06-11 08:51:17.208] [info] [ZephyrLogService | UHK 80 left] no instances to release
[2025-06-11 08:51:17.208] [info] [ZephyrLogService | UHK 80 left] Disabled
[2025-06-11 08:51:17.209] [info] [DeviceRendererService] dispatch action [device] Status buffer changed
[2025-06-11 08:51:17.635] [info] [DeviceService] Device connection state changed to: {
"bootloaderActive": false,
"bleDeviceConnected": false,
"communicationInterfaceAvailable": true,
"dongle": {
"bootloaderActive": false,
"multiDevice": false,
"serialNumber": ""
},
"leftHalfBootloaderActive": false,
"hasPermission": true,
"halvesInfo": {
"areHalvesMerged": false,
"isLeftHalfConnected": false,
"leftModuleSlot": 0,
"rightModuleSlot": 0
},
"hardwareModules": {
"moduleInfos": [
{
"module": {
"id": 1,
"name": "Left keyboard half",
"slotId": 1,
"i2cAddress": 16,
"firmwareUpgradeSupported": true
},
"info": {}
}
],
"rightModuleInfo": {
"firmwareVersion": "14.0.1",
"deviceProtocolVersion": "4.15.0",
"moduleProtocolVersion": "4.3.0",
"userConfigVersion": "11.0.0",
"hardwareConfigVersion": "1.0.0",
"smartMacrosVersion": "3.4.1",
"firmwareGitRepo": "UltimateHackingKeyboard/firmware",
"firmwareGitTag": "v14.0.1",
"builtFirmwareChecksum": "faa4eeb38630f30b67e521c435e4fef7",
"modules": {
"1": {
"builtFirmwareChecksum": "628e2b535f3c722456e2985f6a0157d1"
}
}
}
},
"isMacroStatusDirty": false,
"isZephyrLogAvailable": false,
"leftHalfDetected": false,
"multiDevice": false,
"newPairedDevices": [],
"udevRulesInfo": "Ok",
"connectedDevice": {
"id": 4,
"asCliArg": "uhk80-right",
"firmwareUpgradeMethod": "mcuboot",
"logName": "UHK 80 right",
"name": "UHK 80",
"keyboard": [
{
"vid": 14248,
"pid": 9
}
],
"bootloader": [
{
"vid": 14248,
"pid": 8
}
],
"buspal": [],
"reportId": 4
},
"bleAddress": "e6:99:d8:42:06:ed"
}
[2025-06-11 08:51:17.636] [info] [DeviceRendererService] dispatch action [device] connection state changed
[2025-06-11 08:51:17.642] [info] [SmartMacroDocRendererService] downloadDocumentation
[2025-06-11 08:51:17.641] [info] [SmartMacroService] start downloading firmware documentation {
firmwareGitRepo: 'UltimateHackingKeyboard/firmware',
firmwareGitTag: 'v14.0.1'
}
[2025-06-11 08:51:17.642] [info] [SmartMacroService] firmware documentation downloaded earlier
[2025-06-11 08:51:17.643] [info] [DeviceOperation] status buffer segment: �{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{
[2025-06-11 08:51:17.643] [info] [SmartMacroService] reference manual downloaded earlier
[2025-06-11 08:51:17.647] [info] [SmartMacroDocRendererService] dispatch action: [smart-macro-doc] download documentation success
[2025-06-11 08:51:17.648] [info] [SmartMacroDocRendererService] dispatch action: [smart-macro-doc] reference manual changed
[2025-06-11 08:51:17.648] [info] [DeviceOperation] status buffer segment:  5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{
[2025-06-11 08:51:17.655] [info] [DeviceOperation] status buffer segment: 5�{ 5�{ 5�{ 5
[2025-06-11 08:51:17.656] [info] [DeviceRendererService] dispatch action [device] Status buffer changed
[2025-06-11 08:51:18.077] [info] [DeviceService] Device connection state changed to: {
"bootloaderActive": false,
"bleDeviceConnected": false,
"communicationInterfaceAvailable": true,
"dongle": {
"bootloaderActive": false,
"multiDevice": false,
"serialNumber": ""
},
"leftHalfBootloaderActive": false,
"hasPermission": true,
"halvesInfo": {
"areHalvesMerged": false,
"isLeftHalfConnected": false,
"leftModuleSlot": 0,
"rightModuleSlot": 0
},
"hardwareModules": {
"moduleInfos": [
{
"module": {
"id": 1,
"name": "Left keyboard half",
"slotId": 1,
"i2cAddress": 16,
"firmwareUpgradeSupported": true
},
"info": {}
}
],
"rightModuleInfo": {
"firmwareVersion": "14.0.1",
"deviceProtocolVersion": "4.15.0",
"moduleProtocolVersion": "4.3.0",
"userConfigVersion": "11.0.0",
"hardwareConfigVersion": "1.0.0",
"smartMacrosVersion": "3.4.1",
"firmwareGitRepo": "UltimateHackingKeyboard/firmware",
"firmwareGitTag": "v14.0.1",
"builtFirmwareChecksum": "faa4eeb38630f30b67e521c435e4fef7",
"modules": {
"1": {
"builtFirmwareChecksum": "628e2b535f3c722456e2985f6a0157d1"
}
}
}
},
"isMacroStatusDirty": false,
"isZephyrLogAvailable": false,
"leftHalfDetected": true,
"multiDevice": false,
"newPairedDevices": [],
"udevRulesInfo": "Ok",
"connectedDevice": {
"id": 4,
"asCliArg": "uhk80-right",
"firmwareUpgradeMethod": "mcuboot",
"logName": "UHK 80 right",
"name": "UHK 80",
"keyboard": [
{
"vid": 14248,
"pid": 9
}
],
"bootloader": [
{
"vid": 14248,
"pid": 8
}
],
"buspal": [],
"reportId": 4
},
"bleAddress": "e6:99:d8:42:06:ed"
}
[2025-06-11 08:51:18.078] [info] [DeviceRendererService] dispatch action [device] connection state changed
[2025-06-11 08:51:18.083] [info] [SmartMacroDocRendererService] downloadDocumentation
[2025-06-11 08:51:18.083] [info] [SmartMacroService] start downloading firmware documentation {
firmwareGitRepo: 'UltimateHackingKeyboard/firmware',
firmwareGitTag: 'v14.0.1'
}
[2025-06-11 08:51:18.084] [info] [SmartMacroService] firmware documentation downloaded earlier
[2025-06-11 08:51:18.084] [info] [SmartMacroService] reference manual downloaded earlier
[2025-06-11 08:51:18.087] [info] [SmartMacroDocRendererService] dispatch action: [smart-macro-doc] download documentation success
[2025-06-11 08:51:18.087] [info] [SmartMacroDocRendererService] dispatch action: [smart-macro-doc] reference manual changed
[2025-06-11 08:51:18.088] [info] [DeviceOperation] status buffer segment: �{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{
[2025-06-11 08:51:18.095] [info] [DeviceOperation] status buffer segment:  5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{
[2025-06-11 08:51:18.117] [info] [DeviceOperation] status buffer segment: 5�{ 5�{ 5�{ 5
[2025-06-11 08:51:18.118] [info] [ZephyrLogService | UHK 80 left] Enabling
[2025-06-11 08:51:18.120] [info] [DeviceRendererService] dispatch action [device] Status buffer changed
[2025-06-11 08:51:18.528] [info] [DeviceOperation] Read "leftHalf" version information
[2025-06-11 08:51:18.535] [info] [DeviceOperation] Read "leftHalf" repo information
[2025-06-11 08:51:18.552] [info] [DeviceOperation] Read "leftHalf" firmware checksum
[2025-06-11 08:51:18.581] [info] [DeviceService] Device connection state changed to: {
"bootloaderActive": false,
"bleDeviceConnected": false,
"communicationInterfaceAvailable": true,
"dongle": {
"bootloaderActive": false,
"multiDevice": false,
"serialNumber": ""
},
"leftHalfBootloaderActive": false,
"hasPermission": true,
"halvesInfo": {
"areHalvesMerged": false,
"isLeftHalfConnected": true,
"leftModuleSlot": 0,
"rightModuleSlot": 0
},
"hardwareModules": {
"moduleInfos": [
{
"module": {
"id": 1,
"name": "Left keyboard half",
"slotId": 1,
"i2cAddress": 16,
"firmwareUpgradeSupported": true
},
"info": {
"moduleProtocolVersion": "4.3.0",
"firmwareVersion": "14.0.1",
"firmwareGitRepo": "UltimateHackingKeyboard/firmware",
"firmwareGitTag": "v14.0.1",
"remoteFirmwareChecksum": "628e2b535f3c722456e2985f6a0157d1"
}
}
],
"rightModuleInfo": {
"firmwareVersion": "14.0.1",
"deviceProtocolVersion": "4.15.0",
"moduleProtocolVersion": "4.3.0",
"userConfigVersion": "11.0.0",
"hardwareConfigVersion": "1.0.0",
"smartMacrosVersion": "3.4.1",
"firmwareGitRepo": "UltimateHackingKeyboard/firmware",
"firmwareGitTag": "v14.0.1",
"builtFirmwareChecksum": "faa4eeb38630f30b67e521c435e4fef7",
"modules": {
"1": {
"builtFirmwareChecksum": "628e2b535f3c722456e2985f6a0157d1"
}
}
}
},
"isMacroStatusDirty": false,
"isZephyrLogAvailable": false,
"leftHalfDetected": true,
"multiDevice": false,
"newPairedDevices": [],
"udevRulesInfo": "Ok",
"connectedDevice": {
"id": 4,
"asCliArg": "uhk80-right",
"firmwareUpgradeMethod": "mcuboot",
"logName": "UHK 80 right",
"name": "UHK 80",
"keyboard": [
{
"vid": 14248,
"pid": 9
}
],
"bootloader": [
{
"vid": 14248,
"pid": 8
}
],
"buspal": [],
"reportId": 4
},
"bleAddress": "e6:99:d8:42:06:ed"
}
[2025-06-11 08:51:18.583] [info] [DeviceRendererService] dispatch action [device] connection state changed
[2025-06-11 08:51:18.586] [info] [SmartMacroDocRendererService] downloadDocumentation
[2025-06-11 08:51:18.586] [info] [SmartMacroService] start downloading firmware documentation {
firmwareGitRepo: 'UltimateHackingKeyboard/firmware',
firmwareGitTag: 'v14.0.1'
}
[2025-06-11 08:51:18.586] [info] [SmartMacroService] firmware documentation downloaded earlier
[2025-06-11 08:51:18.587] [info] [SmartMacroService] reference manual downloaded earlier
[2025-06-11 08:51:18.590] [info] [SmartMacroDocRendererService] dispatch action: [smart-macro-doc] download documentation success
[2025-06-11 08:51:18.590] [info] [SmartMacroDocRendererService] dispatch action: [smart-macro-doc] reference manual changed
[2025-06-11 08:51:18.591] [info] [DeviceOperation] status buffer segment: �{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{
[2025-06-11 08:51:18.600] [info] [DeviceOperation] status buffer segment:  5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{
[2025-06-11 08:51:18.608] [info] [DeviceOperation] status buffer segment: 5�{ 5�{ 5�{ 5
[2025-06-11 08:51:18.610] [info] [DeviceRendererService] dispatch action [device] Status buffer changed
[2025-06-11 08:51:19.015] [info] [DeviceOperation] Read "leftHalf" version information
[2025-06-11 08:51:19.023] [info] [DeviceOperation] Read "leftHalf" repo information
[2025-06-11 08:51:19.044] [info] [DeviceOperation] Read "leftHalf" firmware checksum
[2025-06-11 08:51:19.054] [info] [DeviceOperation] Read "leftModule" version information
[2025-06-11 08:51:19.063] [info] [DeviceOperation] Read "leftModule" repo information
[2025-06-11 08:51:19.085] [info] [DeviceOperation] Read "leftModule" firmware checksum
[2025-06-11 08:51:19.126] [info] [DeviceService] Device connection state changed to: {
"bootloaderActive": false,
"bleDeviceConnected": false,
"communicationInterfaceAvailable": true,
"dongle": {
"bootloaderActive": false,
"multiDevice": false,
"serialNumber": ""
},
"leftHalfBootloaderActive": false,
"hasPermission": true,
"halvesInfo": {
"areHalvesMerged": false,
"isLeftHalfConnected": true,
"leftModuleSlot": 2,
"rightModuleSlot": 0
},
"hardwareModules": {
"moduleInfos": [
{
"module": {
"id": 1,
"name": "Left keyboard half",
"slotId": 1,
"i2cAddress": 16,
"firmwareUpgradeSupported": true
},
"info": {
"moduleProtocolVersion": "4.3.0",
"firmwareVersion": "14.0.1",
"firmwareGitRepo": "UltimateHackingKeyboard/firmware",
"firmwareGitTag": "v14.0.1",
"remoteFirmwareChecksum": "628e2b535f3c722456e2985f6a0157d1"
}
},
{
"module": {
"id": 2,
"name": "Key cluster",
"configPath": "/add-on/key-cluster",
"slotId": 2,
"i2cAddress": 32,
"firmwareUpgradeSupported": true
},
"info": {
"moduleProtocolVersion": "4.3.0",
"firmwareVersion": "13.0.2",
"firmwareGitRepo": "UltimateHackingKeyboard/firmware",
"firmwareGitTag": "v13.0.2",
"remoteFirmwareChecksum": "a0323a7f4ae17b6be9c5d1a0954e49de"
}
}
],
"rightModuleInfo": {
"firmwareVersion": "14.0.1",
"deviceProtocolVersion": "4.15.0",
"moduleProtocolVersion": "4.3.0",
"userConfigVersion": "11.0.0",
"hardwareConfigVersion": "1.0.0",
"smartMacrosVersion": "3.4.1",
"firmwareGitRepo": "UltimateHackingKeyboard/firmware",
"firmwareGitTag": "v14.0.1",
"builtFirmwareChecksum": "faa4eeb38630f30b67e521c435e4fef7",
"modules": {
"1": {
"builtFirmwareChecksum": "628e2b535f3c722456e2985f6a0157d1"
},
"2": {
"builtFirmwareChecksum": "a0323a7f4ae17b6be9c5d1a0954e49de"
}
}
}
},
"isMacroStatusDirty": false,
"isZephyrLogAvailable": false,
"leftHalfDetected": true,
"multiDevice": false,
"newPairedDevices": [],
"udevRulesInfo": "Ok",
"connectedDevice": {
"id": 4,
"asCliArg": "uhk80-right",
"firmwareUpgradeMethod": "mcuboot",
"logName": "UHK 80 right",
"name": "UHK 80",
"keyboard": [
{
"vid": 14248,
"pid": 9
}
],
"bootloader": [
{
"vid": 14248,
"pid": 8
}
],
"buspal": [],
"reportId": 4
},
"bleAddress": "e6:99:d8:42:06:ed"
}
[2025-06-11 08:51:19.127] [info] [DeviceRendererService] dispatch action [device] connection state changed
[2025-06-11 08:51:19.132] [info] [SmartMacroDocRendererService] downloadDocumentation
[2025-06-11 08:51:19.131] [info] [SmartMacroService] start downloading firmware documentation {
firmwareGitRepo: 'UltimateHackingKeyboard/firmware',
firmwareGitTag: 'v14.0.1'
}
[2025-06-11 08:51:19.132] [info] [SmartMacroService] firmware documentation downloaded earlier
[2025-06-11 08:51:19.133] [info] [SmartMacroService] reference manual downloaded earlier
[2025-06-11 08:51:19.135] [info] [DeviceOperation] status buffer segment: �{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{
[2025-06-11 08:51:19.137] [info] [SmartMacroDocRendererService] dispatch action: [smart-macro-doc] download documentation success
[2025-06-11 08:51:19.137] [info] [SmartMacroDocRendererService] dispatch action: [smart-macro-doc] reference manual changed
[2025-06-11 08:51:19.143] [info] [DeviceOperation] status buffer segment:  5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{
[2025-06-11 08:51:19.151] [info] [DeviceOperation] status buffer segment: 5�{ 5�{ 5�{ 5
[2025-06-11 08:51:19.153] [info] [DeviceRendererService] dispatch action [device] Status buffer changed
[2025-06-11 08:51:38.535] [info] [DeviceOperation] Read "leftHalf" version information
[2025-06-11 08:51:38.550] [info] [DeviceOperation] Read "leftHalf" repo information
[2025-06-11 08:51:38.582] [info] [DeviceOperation] Read "leftHalf" firmware checksum
[2025-06-11 08:51:38.598] [info] [DeviceOperation] Read "leftModule" version information
[2025-06-11 08:51:38.615] [info] [DeviceOperation] Read "leftModule" repo information
[2025-06-11 08:51:38.647] [info] [DeviceOperation] Read "leftModule" firmware checksum
[2025-06-11 08:51:38.703] [info] [DeviceService] Device connection state changed to: {
"bootloaderActive": false,
"bleDeviceConnected": false,
"communicationInterfaceAvailable": true,
"dongle": {
"bootloaderActive": false,
"multiDevice": false,
"serialNumber": ""
},
"leftHalfBootloaderActive": false,
"hasPermission": true,
"halvesInfo": {
"areHalvesMerged": false,
"isLeftHalfConnected": true,
"leftModuleSlot": 2,
"rightModuleSlot": 0
},
"hardwareModules": {
"moduleInfos": [
{
"module": {
"id": 1,
"name": "Left keyboard half",
"slotId": 1,
"i2cAddress": 16,
"firmwareUpgradeSupported": true
},
"info": {
"moduleProtocolVersion": "4.3.0",
"firmwareVersion": "14.0.1",
"firmwareGitRepo": "UltimateHackingKeyboard/firmware",
"firmwareGitTag": "v14.0.1",
"remoteFirmwareChecksum": "628e2b535f3c722456e2985f6a0157d1"
}
},
{
"module": {
"id": 2,
"name": "Key cluster",
"configPath": "/add-on/key-cluster",
"slotId": 2,
"i2cAddress": 32,
"firmwareUpgradeSupported": true
},
"info": {
"moduleProtocolVersion": "4.3.0",
"firmwareVersion": "13.0.2",
"firmwareGitRepo": "UltimateHackingKeyboard/firmware",
"firmwareGitTag": "v13.0.2",
"remoteFirmwareChecksum": "a0323a7f4ae17b6be9c5d1a0954e49de"
}
}
],
"rightModuleInfo": {
"firmwareVersion": "14.0.1",
"deviceProtocolVersion": "4.15.0",
"moduleProtocolVersion": "4.3.0",
"userConfigVersion": "11.0.0",
"hardwareConfigVersion": "1.0.0",
"smartMacrosVersion": "3.4.1",
"firmwareGitRepo": "UltimateHackingKeyboard/firmware",
"firmwareGitTag": "v14.0.1",
"builtFirmwareChecksum": "faa4eeb38630f30b67e521c435e4fef7",
"modules": {
"1": {
"builtFirmwareChecksum": "628e2b535f3c722456e2985f6a0157d1"
},
"2": {
"builtFirmwareChecksum": "a0323a7f4ae17b6be9c5d1a0954e49de"
}
}
}
},
"isMacroStatusDirty": false,
"isZephyrLogAvailable": false,
"leftHalfDetected": false,
"multiDevice": false,
"newPairedDevices": [],
"udevRulesInfo": "Ok",
"connectedDevice": {
"id": 4,
"asCliArg": "uhk80-right",
"firmwareUpgradeMethod": "mcuboot",
"logName": "UHK 80 right",
"name": "UHK 80",
"keyboard": [
{
"vid": 14248,
"pid": 9
}
],
"bootloader": [
{
"vid": 14248,
"pid": 8
}
],
"buspal": [],
"reportId": 4
},
"bleAddress": "e6:99:d8:42:06:ed"
}
[2025-06-11 08:51:38.704] [info] [DeviceRendererService] dispatch action [device] connection state changed
[2025-06-11 08:51:38.708] [info] [SmartMacroDocRendererService] downloadDocumentation
[2025-06-11 08:51:38.708] [info] [SmartMacroService] start downloading firmware documentation {
firmwareGitRepo: 'UltimateHackingKeyboard/firmware',
firmwareGitTag: 'v14.0.1'
}
[2025-06-11 08:51:38.708] [info] [SmartMacroService] firmware documentation downloaded earlier
[2025-06-11 08:51:38.709] [info] [SmartMacroService] reference manual downloaded earlier
[2025-06-11 08:51:38.711] [info] [DeviceOperation] status buffer segment: �{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{
[2025-06-11 08:51:38.711] [info] [SmartMacroDocRendererService] dispatch action: [smart-macro-doc] download documentation success
[2025-06-11 08:51:38.711] [info] [SmartMacroDocRendererService] dispatch action: [smart-macro-doc] reference manual changed
[2025-06-11 08:51:38.719] [info] [DeviceOperation] status buffer segment:  5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{
[2025-06-11 08:51:38.727] [info] [DeviceOperation] status buffer segment: 5�{ 5�{ 5�{ 5
[2025-06-11 08:51:38.728] [info] [ZephyrLogService | UHK 80 left] Disabling
[2025-06-11 08:51:38.728] [info] [ZephyrLogService | UHK 80 left] wait until polling
[2025-06-11 08:51:38.728] [info] [ZephyrLogService | UHK 80 left] stopped
[2025-06-11 08:51:38.728] [info] [ZephyrLogService | UHK 80 left] releaseOperations
[2025-06-11 08:51:38.728] [info] [ZephyrLogService | UHK 80 left] no instances to release
[2025-06-11 08:51:38.729] [info] [ZephyrLogService | UHK 80 left] Disabled
[2025-06-11 08:51:38.729] [info] [DeviceRendererService] dispatch action [device] Status buffer changed
[2025-06-11 09:26:14.755] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:26:14.846] [info] [DeviceOperation] Read "leftHalf" version information
[2025-06-11 09:26:14.863] [info] [DeviceOperation] Read "leftHalf" repo information
[2025-06-11 09:26:14.896] [info] [DeviceOperation] Read "leftHalf" firmware checksum
[2025-06-11 09:26:14.910] [info] [DeviceOperation] Read "leftModule" version information
[2025-06-11 09:26:14.927] [info] [DeviceOperation] Read "leftModule" repo information
[2025-06-11 09:26:14.958] [info] [DeviceOperation] Read "leftModule" firmware checksum
[2025-06-11 09:26:15.025] [info] [DeviceService] Device connection state changed to: {
"bootloaderActive": false,
"bleDeviceConnected": false,
"communicationInterfaceAvailable": true,
"dongle": {
"bootloaderActive": false,
"multiDevice": false,
"serialNumber": ""
},
"leftHalfBootloaderActive": false,
"hasPermission": true,
"halvesInfo": {
"areHalvesMerged": false,
"isLeftHalfConnected": true,
"leftModuleSlot": 2,
"rightModuleSlot": 0
},
"hardwareModules": {
"moduleInfos": [
{
"module": {
"id": 1,
"name": "Left keyboard half",
"slotId": 1,
"i2cAddress": 16,
"firmwareUpgradeSupported": true
},
"info": {
"moduleProtocolVersion": "4.3.0",
"firmwareVersion": "14.0.1",
"firmwareGitRepo": "UltimateHackingKeyboard/firmware",
"firmwareGitTag": "v14.0.1",
"remoteFirmwareChecksum": "628e2b535f3c722456e2985f6a0157d1"
}
},
{
"module": {
"id": 2,
"name": "Key cluster",
"configPath": "/add-on/key-cluster",
"slotId": 2,
"i2cAddress": 32,
"firmwareUpgradeSupported": true
},
"info": {
"moduleProtocolVersion": "4.3.0",
"firmwareVersion": "13.0.2",
"firmwareGitRepo": "UltimateHackingKeyboard/firmware",
"firmwareGitTag": "v13.0.2",
"remoteFirmwareChecksum": "a0323a7f4ae17b6be9c5d1a0954e49de"
}
}
],
"rightModuleInfo": {
"firmwareVersion": "14.0.1",
"deviceProtocolVersion": "4.15.0",
"moduleProtocolVersion": "4.3.0",
"userConfigVersion": "11.0.0",
"hardwareConfigVersion": "1.0.0",
"smartMacrosVersion": "3.4.1",
"firmwareGitRepo": "UltimateHackingKeyboard/firmware",
"firmwareGitTag": "v14.0.1",
"builtFirmwareChecksum": "faa4eeb38630f30b67e521c435e4fef7",
"modules": {
"1": {
"builtFirmwareChecksum": "628e2b535f3c722456e2985f6a0157d1"
},
"2": {
"builtFirmwareChecksum": "a0323a7f4ae17b6be9c5d1a0954e49de"
}
}
}
},
"isMacroStatusDirty": false,
"isZephyrLogAvailable": false,
"leftHalfDetected": false,
"multiDevice": false,
"newPairedDevices": [
"88:f4:da:e4:98:63"
],
"udevRulesInfo": "Ok",
"connectedDevice": {
"id": 4,
"asCliArg": "uhk80-right",
"firmwareUpgradeMethod": "mcuboot",
"logName": "UHK 80 right",
"name": "UHK 80",
"keyboard": [
{
"vid": 14248,
"pid": 9
}
],
"bootloader": [
{
"vid": 14248,
"pid": 8
}
],
"buspal": [],
"reportId": 4
},
"bleAddress": "e6:99:d8:42:06:ed"
}
[2025-06-11 09:26:15.029] [info] [DeviceRendererService] dispatch action [device] connection state changed
[2025-06-11 09:26:15.034] [info] [SmartMacroDocRendererService] downloadDocumentation
[2025-06-11 09:26:15.030] [info] [SmartMacroService] start downloading firmware documentation {
firmwareGitRepo: 'UltimateHackingKeyboard/firmware',
firmwareGitTag: 'v14.0.1'
}
[2025-06-11 09:26:15.031] [info] [SmartMacroService] firmware documentation downloaded earlier
[2025-06-11 09:26:15.031] [info] [SmartMacroService] reference manual downloaded earlier
[2025-06-11 09:26:15.034] [info] [DeviceOperation] status buffer segment: �{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{
[2025-06-11 09:26:15.042] [info] [SmartMacroDocRendererService] dispatch action: [smart-macro-doc] download documentation success
[2025-06-11 09:26:15.042] [info] [SmartMacroDocRendererService] dispatch action: [smart-macro-doc] reference manual changed
[2025-06-11 09:26:15.043] [info] [DeviceOperation] status buffer segment:  5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{
[2025-06-11 09:26:15.051] [info] [DeviceOperation] status buffer segment: 5�{ 5�{ 5�{ 5
[2025-06-11 09:26:15.056] [info] [DeviceRendererService] dispatch action [device] Status buffer changed
[2025-06-11 09:26:15.372] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:26:15.701] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:26:16.027] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:26:16.362] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:26:16.411] [info] [DeviceOperation] Read "leftHalf" version information
[2025-06-11 09:26:16.422] [info] [DeviceOperation] Read "leftHalf" repo information
[2025-06-11 09:26:16.439] [info] [DeviceOperation] Read "leftHalf" firmware checksum
[2025-06-11 09:26:16.444] [info] [DeviceOperation] Read "leftModule" version information
[2025-06-11 09:26:16.451] [info] [DeviceOperation] Read "leftModule" repo information
[2025-06-11 09:26:16.469] [info] [DeviceOperation] Read "leftModule" firmware checksum
[2025-06-11 09:26:16.510] [info] [DeviceService] Device connection state changed to: {
"bootloaderActive": false,
"bleDeviceConnected": true,
"communicationInterfaceAvailable": true,
"dongle": {
"bootloaderActive": false,
"multiDevice": false,
"serialNumber": ""
},
"leftHalfBootloaderActive": false,
"hasPermission": true,
"halvesInfo": {
"areHalvesMerged": false,
"isLeftHalfConnected": true,
"leftModuleSlot": 2,
"rightModuleSlot": 0
},
"hardwareModules": {
"moduleInfos": [
{
"module": {
"id": 1,
"name": "Left keyboard half",
"slotId": 1,
"i2cAddress": 16,
"firmwareUpgradeSupported": true
},
"info": {
"moduleProtocolVersion": "4.3.0",
"firmwareVersion": "14.0.1",
"firmwareGitRepo": "UltimateHackingKeyboard/firmware",
"firmwareGitTag": "v14.0.1",
"remoteFirmwareChecksum": "628e2b535f3c722456e2985f6a0157d1"
}
},
{
"module": {
"id": 2,
"name": "Key cluster",
"configPath": "/add-on/key-cluster",
"slotId": 2,
"i2cAddress": 32,
"firmwareUpgradeSupported": true
},
"info": {
"moduleProtocolVersion": "4.3.0",
"firmwareVersion": "13.0.2",
"firmwareGitRepo": "UltimateHackingKeyboard/firmware",
"firmwareGitTag": "v13.0.2",
"remoteFirmwareChecksum": "a0323a7f4ae17b6be9c5d1a0954e49de"
}
}
],
"rightModuleInfo": {
"firmwareVersion": "14.0.1",
"deviceProtocolVersion": "4.15.0",
"moduleProtocolVersion": "4.3.0",
"userConfigVersion": "11.0.0",
"hardwareConfigVersion": "1.0.0",
"smartMacrosVersion": "3.4.1",
"firmwareGitRepo": "UltimateHackingKeyboard/firmware",
"firmwareGitTag": "v14.0.1",
"builtFirmwareChecksum": "faa4eeb38630f30b67e521c435e4fef7",
"modules": {
"1": {
"builtFirmwareChecksum": "628e2b535f3c722456e2985f6a0157d1"
},
"2": {
"builtFirmwareChecksum": "a0323a7f4ae17b6be9c5d1a0954e49de"
}
}
}
},
"isMacroStatusDirty": false,
"isZephyrLogAvailable": false,
"leftHalfDetected": false,
"multiDevice": false,
"newPairedDevices": [
"88:f4:da:e4:98:63"
],
"udevRulesInfo": "Ok",
"connectedDevice": {
"id": 4,
"asCliArg": "uhk80-right",
"firmwareUpgradeMethod": "mcuboot",
"logName": "UHK 80 right",
"name": "UHK 80",
"keyboard": [
{
"vid": 14248,
"pid": 9
}
],
"bootloader": [
{
"vid": 14248,
"pid": 8
}
],
"buspal": [],
"reportId": 4
},
"bleAddress": "e6:99:d8:42:06:ed"
}
[2025-06-11 09:26:16.515] [info] [DeviceRendererService] dispatch action [device] connection state changed
[2025-06-11 09:26:16.519] [info] [SmartMacroDocRendererService] downloadDocumentation
[2025-06-11 09:26:16.515] [info] [SmartMacroService] start downloading firmware documentation {
firmwareGitRepo: 'UltimateHackingKeyboard/firmware',
firmwareGitTag: 'v14.0.1'
}
[2025-06-11 09:26:16.516] [info] [DeviceOperation] status buffer segment: �{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{
[2025-06-11 09:26:16.516] [info] [SmartMacroService] firmware documentation downloaded earlier
[2025-06-11 09:26:16.516] [info] [SmartMacroService] reference manual downloaded earlier
[2025-06-11 09:26:16.522] [info] [SmartMacroDocRendererService] dispatch action: [smart-macro-doc] download documentation success
[2025-06-11 09:26:16.523] [info] [SmartMacroDocRendererService] dispatch action: [smart-macro-doc] reference manual changed
[2025-06-11 09:26:16.523] [info] [DeviceOperation] status buffer segment:  5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{
[2025-06-11 09:26:16.533] [info] [DeviceOperation] status buffer segment: 5�{ 5�{ 5�{ 5
[2025-06-11 09:26:16.538] [info] [DeviceRendererService] dispatch action [device] Status buffer changed
[2025-06-11 09:26:16.852] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:26:17.187] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:26:17.519] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:26:17.849] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:26:18.172] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:26:18.491] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:26:18.818] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:26:19.146] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:26:19.486] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:26:19.821] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:26:20.157] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:26:20.495] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:26:20.818] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:26:21.152] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:26:21.491] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:26:21.831] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:26:22.170] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:26:22.483] [info] [DeviceService] Device connection state changed to: {
"bootloaderActive": false,
"bleDeviceConnected": true,
"communicationInterfaceAvailable": false,
"dongle": {
"bootloaderActive": false,
"multiDevice": false,
"serialNumber": ""
},
"leftHalfBootloaderActive": false,
"hasPermission": true,
"halvesInfo": {
"areHalvesMerged": true,
"leftModuleSlot": 0,
"isLeftHalfConnected": true,
"rightModuleSlot": 0
},
"hardwareModules": {
"moduleInfos": [],
"rightModuleInfo": {
"modules": {}
}
},
"isMacroStatusDirty": false,
"isZephyrLogAvailable": false,
"leftHalfDetected": false,
"multiDevice": false,
"newPairedDevices": [],
"udevRulesInfo": "Ok"
}
[2025-06-11 09:26:22.487] [info] [DeviceRendererService] dispatch action [device] connection state changed
[2025-06-11 09:26:22.490] [info] [SmartMacroDocRendererService] downloadDocumentation
[2025-06-11 09:26:22.487] [info] [SmartMacroService] fallback to bundled firmware documentation because git repo or tag missing { firmwareGitRepo: '', firmwareGitTag: '' }
[2025-06-11 09:26:22.487] [info] [SmartMacroService] fallback to bundled firmware documentation
[2025-06-11 09:26:22.488] [info] [SmartMacroService] start downloading firmware documentation {
firmwareGitRepo: 'UltimateHackingKeyboard/firmware',
firmwareGitTag: 'v14.0.1'
}
[2025-06-11 09:26:22.489] [info] [SmartMacroService] firmware documentation downloaded earlier
[2025-06-11 09:26:22.490] [info] [SmartMacroService] reference manual downloaded earlier
[2025-06-11 09:26:22.498] [info] [SmartMacroDocRendererService] dispatch action: [smart-macro-doc] download documentation success
[2025-06-11 09:26:22.499] [info] [SmartMacroDocRendererService] dispatch action: [smart-macro-doc] reference manual changed
[2025-06-11 09:26:43.413] [info] [UhkHidDevice] Available devices changed.
[2025-06-11 09:26:43.445] [info] [UhkHidDevice] Used device: {"vendorId":"0x37A8","productId":"0x9","path":"\\\\?\\HID#VID_37A8&PID_0009&MI_02#8&30a2567b&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}","serialNumber":"1886017019","manufacturer":"Ultimate Gadget Laboratories","product":"UHK 80 Right USB","release":1,"interface":2,"usagePage":65280,"usage":1}
[2025-06-11 09:26:43.451] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:26:43.500] [info] [UhkHidDevice] productId: 9 protocol versions: {"firmwareVersion":"14.0.1","deviceProtocolVersion":"4.15.0","moduleProtocolVersion":"4.3.0","userConfigVersion":"11.0.0","hardwareConfigVersion":"1.0.0","smartMacrosVersion":"3.4.1"}
[2025-06-11 09:26:43.562] [info] [DeviceOperation] Read "leftHalf" version information
[2025-06-11 09:26:43.578] [info] [DeviceOperation] Read "leftHalf" repo information
[2025-06-11 09:26:43.609] [info] [DeviceOperation] Read "leftHalf" firmware checksum
[2025-06-11 09:26:43.625] [info] [DeviceOperation] Read "leftModule" version information
[2025-06-11 09:26:43.641] [info] [DeviceOperation] Read "leftModule" repo information
[2025-06-11 09:26:43.672] [info] [DeviceOperation] Read "leftModule" firmware checksum
[2025-06-11 09:26:43.735] [info] [DeviceService] Device connection state changed to: {
"bootloaderActive": false,
"bleDeviceConnected": true,
"communicationInterfaceAvailable": true,
"dongle": {
"bootloaderActive": false,
"multiDevice": false,
"serialNumber": ""
},
"leftHalfBootloaderActive": false,
"hasPermission": true,
"halvesInfo": {
"areHalvesMerged": false,
"isLeftHalfConnected": true,
"leftModuleSlot": 2,
"rightModuleSlot": 0
},
"hardwareModules": {
"moduleInfos": [
{
"module": {
"id": 1,
"name": "Left keyboard half",
"slotId": 1,
"i2cAddress": 16,
"firmwareUpgradeSupported": true
},
"info": {
"moduleProtocolVersion": "4.3.0",
"firmwareVersion": "14.0.1",
"firmwareGitRepo": "UltimateHackingKeyboard/firmware",
"firmwareGitTag": "v14.0.1",
"remoteFirmwareChecksum": "628e2b535f3c722456e2985f6a0157d1"
}
},
{
"module": {
"id": 2,
"name": "Key cluster",
"configPath": "/add-on/key-cluster",
"slotId": 2,
"i2cAddress": 32,
"firmwareUpgradeSupported": true
},
"info": {
"moduleProtocolVersion": "4.3.0",
"firmwareVersion": "13.0.2",
"firmwareGitRepo": "UltimateHackingKeyboard/firmware",
"firmwareGitTag": "v13.0.2",
"remoteFirmwareChecksum": "a0323a7f4ae17b6be9c5d1a0954e49de"
}
}
],
"rightModuleInfo": {
"firmwareVersion": "14.0.1",
"deviceProtocolVersion": "4.15.0",
"moduleProtocolVersion": "4.3.0",
"userConfigVersion": "11.0.0",
"hardwareConfigVersion": "1.0.0",
"smartMacrosVersion": "3.4.1",
"firmwareGitRepo": "UltimateHackingKeyboard/firmware",
"firmwareGitTag": "v14.0.1",
"builtFirmwareChecksum": "faa4eeb38630f30b67e521c435e4fef7",
"modules": {
"1": {
"builtFirmwareChecksum": "628e2b535f3c722456e2985f6a0157d1"
},
"2": {
"builtFirmwareChecksum": "a0323a7f4ae17b6be9c5d1a0954e49de"
}
}
}
},
"isMacroStatusDirty": false,
"isZephyrLogAvailable": false,
"leftHalfDetected": false,
"multiDevice": false,
"newPairedDevices": [
"88:f4:da:e4:98:63"
],
"udevRulesInfo": "Ok",
"connectedDevice": {
"id": 4,
"asCliArg": "uhk80-right",
"firmwareUpgradeMethod": "mcuboot",
"logName": "UHK 80 right",
"name": "UHK 80",
"keyboard": [
{
"vid": 14248,
"pid": 9
}
],
"bootloader": [
{
"vid": 14248,
"pid": 8
}
],
"buspal": [],
"reportId": 4
},
"bleAddress": "e6:99:d8:42:06:ed"
}
[2025-06-11 09:26:43.740] [info] [DeviceRendererService] dispatch action [device] connection state changed
[2025-06-11 09:26:43.744] [info] [SmartMacroDocRendererService] downloadDocumentation
[2025-06-11 09:26:43.741] [info] [SmartMacroService] start downloading firmware documentation {
firmwareGitRepo: 'UltimateHackingKeyboard/firmware',
firmwareGitTag: 'v14.0.1'
}
[2025-06-11 09:26:43.741] [info] [DeviceService] stop poll UHK Device
[2025-06-11 09:26:43.741] [info] [SmartMacroService] firmware documentation downloaded earlier
[2025-06-11 09:26:43.742] [info] [SmartMacroService] reference manual downloaded earlier
[2025-06-11 09:26:43.744] [info] [DeviceOperation] status buffer segment: �{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{
[2025-06-11 09:26:43.748] [info] [DeviceOperation] status buffer segment:  5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{
[2025-06-11 09:26:43.753] [info] [SmartMacroDocRendererService] dispatch action: [smart-macro-doc] download documentation success
[2025-06-11 09:26:43.753] [info] [SmartMacroDocRendererService] dispatch action: [smart-macro-doc] reference manual changed
[2025-06-11 09:26:43.755] [info] [DeviceOperation] status buffer segment: 5�{ 5�{ 5�{ 5
[2025-06-11 09:26:43.760] [info] [DeviceRendererService] dispatch action [device] Status buffer changed
[2025-06-11 09:26:43.844] [info] [DeviceService] stopped poll UHK Device
[2025-06-11 09:26:43.860] [info] [UhkHidDevice] Device communication closing.
[2025-06-11 09:26:43.861] [info] [UhkHidDevice] Device communication closed.
[2025-06-11 09:26:43.861] [info] [DeviceService] start poll UHK Device
[2025-06-11 09:26:43.862] [info] [DeviceService] load user configuration
[2025-06-11 09:26:43.862] [info] [DeviceService] stop poll UHK Device
[2025-06-11 09:26:43.862] [info] [DeviceService] stopped poll UHK Device
[2025-06-11 09:26:43.866] [info] [DeviceRendererService] dispatch action [device] Read config sizes reply
[2025-06-11 09:26:43.892] [info] [UhkHidDevice] Available devices unchanged
[2025-06-11 09:26:43.922] [info] [UhkHidDevice] Used device: {"vendorId":"0x37A8","productId":"0x9","path":"\\\\?\\HID#VID_37A8&PID_0009&MI_02#8&30a2567b&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}","serialNumber":"1886017019","manufacturer":"Ultimate Gadget Laboratories","product":"UHK 80 Right USB","release":1,"interface":2,"usagePage":65280,"usage":1}
[2025-06-11 09:26:43.959] [info] [UhkHidDevice] Device communication closing.
[2025-06-11 09:26:43.959] [info] [UhkHidDevice] Device communication closed.
[2025-06-11 09:26:43.960] [info] [DeviceOperation] User config size: 32768
[2025-06-11 09:26:43.990] [info] [UhkHidDevice] Available devices unchanged
[2025-06-11 09:26:44.026] [info] [UhkHidDevice] Used device: {"vendorId":"0x37A8","productId":"0x9","path":"\\\\?\\HID#VID_37A8&PID_0009&MI_02#8&30a2567b&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}","serialNumber":"1886017019","manufacturer":"Ultimate Gadget Laboratories","product":"UHK 80 Right USB","release":1,"interface":2,"usagePage":65280,"usage":1}
[2025-06-11 09:26:44.034] [info] [DeviceOperation] userConfigSize: 6388
[2025-06-11 09:26:45.356] [info] [UhkHidDevice] Device communication closing.
[2025-06-11 09:26:45.357] [info] [UhkHidDevice] Device communication closed.
[2025-06-11 09:26:45.357] [info] [DeviceOperation] Hardware config size: 64
[2025-06-11 09:26:45.385] [info] [UhkHidDevice] Available devices unchanged
[2025-06-11 09:26:45.417] [info] [UhkHidDevice] Used device: {"vendorId":"0x37A8","productId":"0x9","path":"\\\\?\\HID#VID_37A8&PID_0009&MI_02#8&30a2567b&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}","serialNumber":"1886017019","manufacturer":"Ultimate Gadget Laboratories","product":"UHK 80 Right USB","release":1,"interface":2,"usagePage":65280,"usage":1}
[2025-06-11 09:26:45.435] [info] [UhkHidDevice] Device communication closing.
[2025-06-11 09:26:45.435] [info] [UhkHidDevice] Device communication closed.
[2025-06-11 09:26:45.464] [info] [UhkHidDevice] Available devices unchanged
[2025-06-11 09:26:45.492] [info] [UhkHidDevice] Used device: {"vendorId":"0x37A8","productId":"0x9","path":"\\\\?\\HID#VID_37A8&PID_0009&MI_02#8&30a2567b&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}","serialNumber":"1886017019","manufacturer":"Ultimate Gadget Laboratories","product":"UHK 80 Right USB","release":1,"interface":2,"usagePage":65280,"usage":1}
[2025-06-11 09:26:45.507] [info] [UhkHidDevice] productId: 9 protocol versions: {"firmwareVersion":"14.0.1","deviceProtocolVersion":"4.15.0","moduleProtocolVersion":"4.3.0","userConfigVersion":"11.0.0","hardwareConfigVersion":"1.0.0","smartMacrosVersion":"3.4.1"}
[2025-06-11 09:26:45.554] [info] [DeviceOperation] Read "leftHalf" version information
[2025-06-11 09:26:45.562] [info] [DeviceOperation] Read "leftHalf" repo information
[2025-06-11 09:26:45.582] [info] [DeviceOperation] Read "leftHalf" firmware checksum
[2025-06-11 09:26:45.598] [info] [DeviceOperation] Read "leftModule" version information
[2025-06-11 09:26:45.606] [info] [DeviceOperation] Read "leftModule" repo information
[2025-06-11 09:26:45.626] [info] [DeviceOperation] Read "leftModule" firmware checksum
[2025-06-11 09:26:45.673] [info] [UhkHidDevice] Device communication closing.
[2025-06-11 09:26:45.673] [info] [UhkHidDevice] Device communication closed.
[2025-06-11 09:26:45.673] [info] [DeviceService] start poll UHK Device
[2025-06-11 09:26:45.678] [info] [DeviceRendererService] dispatch action [user-config] Load User Config from Device reply
[2025-06-11 09:26:45.681] [info] [DeviceService] Check BLE Addresses are paired
[2025-06-11 09:26:45.681] [info] [DeviceService] stop poll UHK Device
[2025-06-11 09:26:45.681] [info] [DeviceService] stopped poll UHK Device
[2025-06-11 09:26:45.681] [info] [DeviceService] start poll UHK Device
[2025-06-11 09:26:45.685] [info] [SmartMacroDocRendererService] downloadDocumentation
[2025-06-11 09:26:45.682] [info] [SmartMacroService] start downloading firmware documentation {
firmwareGitRepo: 'UltimateHackingKeyboard/firmware',
firmwareGitTag: 'v14.0.1'
}
[2025-06-11 09:26:45.682] [info] [SmartMacroService] firmware documentation downloaded earlier
[2025-06-11 09:26:45.682] [info] [SmartMacroService] reference manual downloaded earlier
[2025-06-11 09:26:45.691] [info] [DeviceRendererService] dispatch action [device] check are host connections paired reply
[2025-06-11 09:26:45.691] [info] [SmartMacroDocRendererService] dispatch action: [smart-macro-doc] download documentation success
[2025-06-11 09:26:45.691] [info] [SmartMacroDocRendererService] dispatch action: [smart-macro-doc] reference manual changed
[2025-06-11 09:26:45.858] [info] [UhkHidDevice] Available devices unchanged
[2025-06-11 09:26:45.889] [info] [UhkHidDevice] Used device: {"vendorId":"0x37A8","productId":"0x9","path":"\\\\?\\HID#VID_37A8&PID_0009&MI_02#8&30a2567b&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}","serialNumber":"1886017019","manufacturer":"Ultimate Gadget Laboratories","product":"UHK 80 Right USB","release":1,"interface":2,"usagePage":65280,"usage":1}
[2025-06-11 09:26:45.900] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:26:45.924] [info] [UhkHidDevice] productId: 9 protocol versions: {"firmwareVersion":"14.0.1","deviceProtocolVersion":"4.15.0","moduleProtocolVersion":"4.3.0","userConfigVersion":"11.0.0","hardwareConfigVersion":"1.0.0","smartMacrosVersion":"3.4.1"}
[2025-06-11 09:26:45.974] [info] [DeviceOperation] Read "leftHalf" version information
[2025-06-11 09:26:45.984] [info] [DeviceOperation] Read "leftHalf" repo information
[2025-06-11 09:26:46.000] [info] [DeviceOperation] Read "leftHalf" firmware checksum
[2025-06-11 09:26:46.007] [info] [DeviceOperation] Read "leftModule" version information
[2025-06-11 09:26:46.017] [info] [DeviceOperation] Read "leftModule" repo information
[2025-06-11 09:26:46.042] [info] [DeviceOperation] Read "leftModule" firmware checksum
[2025-06-11 09:26:46.074] [info] [DeviceService] Device connection state changed to: {
"bootloaderActive": false,
"bleDeviceConnected": true,
"communicationInterfaceAvailable": true,
"dongle": {
"bootloaderActive": false,
"multiDevice": false,
"serialNumber": ""
},
"leftHalfBootloaderActive": false,
"hasPermission": true,
"halvesInfo": {
"areHalvesMerged": false,
"isLeftHalfConnected": true,
"leftModuleSlot": 2,
"rightModuleSlot": 0
},
"hardwareModules": {
"moduleInfos": [
{
"module": {
"id": 1,
"name": "Left keyboard half",
"slotId": 1,
"i2cAddress": 16,
"firmwareUpgradeSupported": true
},
"info": {
"moduleProtocolVersion": "4.3.0",
"firmwareVersion": "14.0.1",
"firmwareGitRepo": "UltimateHackingKeyboard/firmware",
"firmwareGitTag": "v14.0.1",
"remoteFirmwareChecksum": "628e2b535f3c722456e2985f6a0157d1"
}
},
{
"module": {
"id": 2,
"name": "Key cluster",
"configPath": "/add-on/key-cluster",
"slotId": 2,
"i2cAddress": 32,
"firmwareUpgradeSupported": true
},
"info": {
"moduleProtocolVersion": "4.3.0",
"firmwareVersion": "13.0.2",
"firmwareGitRepo": "UltimateHackingKeyboard/firmware",
"firmwareGitTag": "v13.0.2",
"remoteFirmwareChecksum": "a0323a7f4ae17b6be9c5d1a0954e49de"
}
}
],
"rightModuleInfo": {
"firmwareVersion": "14.0.1",
"deviceProtocolVersion": "4.15.0",
"moduleProtocolVersion": "4.3.0",
"userConfigVersion": "11.0.0",
"hardwareConfigVersion": "1.0.0",
"smartMacrosVersion": "3.4.1",
"firmwareGitRepo": "UltimateHackingKeyboard/firmware",
"firmwareGitTag": "v14.0.1",
"builtFirmwareChecksum": "faa4eeb38630f30b67e521c435e4fef7",
"modules": {
"1": {
"builtFirmwareChecksum": "628e2b535f3c722456e2985f6a0157d1"
},
"2": {
"builtFirmwareChecksum": "a0323a7f4ae17b6be9c5d1a0954e49de"
}
}
}
},
"isMacroStatusDirty": false,
"isZephyrLogAvailable": false,
"leftHalfDetected": false,
"multiDevice": false,
"newPairedDevices": [
"88:f4:da:e4:98:63"
],
"udevRulesInfo": "Ok",
"connectedDevice": {
"id": 4,
"asCliArg": "uhk80-right",
"firmwareUpgradeMethod": "mcuboot",
"logName": "UHK 80 right",
"name": "UHK 80",
"keyboard": [
{
"vid": 14248,
"pid": 9
}
],
"bootloader": [
{
"vid": 14248,
"pid": 8
}
],
"buspal": [],
"reportId": 4
},
"bleAddress": "e6:99:d8:42:06:ed"
}
[2025-06-11 09:26:46.079] [info] [DeviceRendererService] dispatch action [device] connection state changed
[2025-06-11 09:26:46.083] [info] [SmartMacroDocRendererService] downloadDocumentation
[2025-06-11 09:26:46.079] [info] [SmartMacroService] start downloading firmware documentation {
firmwareGitRepo: 'UltimateHackingKeyboard/firmware',
firmwareGitTag: 'v14.0.1'
}
[2025-06-11 09:26:46.080] [info] [SmartMacroService] firmware documentation downloaded earlier
[2025-06-11 09:26:46.081] [info] [SmartMacroService] reference manual downloaded earlier
[2025-06-11 09:26:46.086] [info] [SmartMacroDocRendererService] dispatch action: [smart-macro-doc] download documentation success
[2025-06-11 09:26:46.083] [info] [DeviceOperation] status buffer segment: �{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{
[2025-06-11 09:26:46.087] [info] [SmartMacroDocRendererService] dispatch action: [smart-macro-doc] reference manual changed
[2025-06-11 09:26:46.090] [info] [DeviceOperation] status buffer segment:  5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{
[2025-06-11 09:26:46.100] [info] [DeviceOperation] status buffer segment: 5�{ 5�{ 5�{ 5
[2025-06-11 09:26:46.104] [info] [DeviceRendererService] dispatch action [device] Status buffer changed
[2025-06-11 09:26:46.419] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:26:46.746] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:26:47.083] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:26:47.424] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:26:47.778] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:26:48.107] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:26:48.444] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:26:48.763] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:26:49.091] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:26:49.424] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:26:49.751] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:26:50.111] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:26:50.442] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:26:50.774] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:26:51.107] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:26:51.428] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:26:51.782] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:26:52.117] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:26:52.453] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:26:52.804] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:26:53.155] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:26:53.490] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:26:53.824] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:26:54.157] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:26:54.491] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:26:54.810] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:26:55.158] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:26:55.490] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:26:55.834] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:26:56.170] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:26:56.501] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:26:56.841] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:26:57.201] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:26:57.542] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:26:57.883] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:26:58.219] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:26:58.569] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:26:58.903] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:26:59.242] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:26:59.573] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:26:59.906] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:27:00.244] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:27:00.579] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:27:00.922] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:27:01.275] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:27:01.626] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:27:01.975] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:27:02.304] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:27:02.642] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:27:02.988] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:27:03.341] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:27:03.683] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:27:04.010] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:27:04.358] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:27:04.691] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:27:05.042] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:27:05.391] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:27:05.730] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:27:06.082] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:27:06.427] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:27:06.778] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:27:07.128] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:27:07.477] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:27:07.827] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:27:08.178] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:27:08.527] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:27:08.878] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:27:09.212] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:27:09.546] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:27:09.876] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:27:10.202] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:27:10.549] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:27:10.917] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:27:11.266] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:27:11.618] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:27:11.946] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:27:12.276] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:27:12.632] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:27:12.982] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:27:13.325] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:27:13.675] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:27:14.019] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:27:14.375] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:27:14.699] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:27:15.051] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:27:15.394] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:27:15.735] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:27:16.085] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:27:16.439] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:27:16.786] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:27:17.137] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:27:17.487] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:27:17.837] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:27:18.188] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:27:18.539] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:27:18.889] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:27:19.228] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:27:19.558] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:27:19.905] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:27:20.244] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:27:20.588] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:27:20.928] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:27:20.942] [info] [DeviceService] Check BLE Addresses are paired
[2025-06-11 09:27:20.942] [info] [DeviceService] stop poll UHK Device
[2025-06-11 09:27:21.046] [info] [DeviceService] stopped poll UHK Device
[2025-06-11 09:27:21.047] [info] [DeviceService] start poll UHK Device
[2025-06-11 09:27:21.046] [info] [DeviceRendererService] dispatch action [device] check are host connections paired reply
[2025-06-11 09:27:21.286] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:27:21.359] [info] [DeviceOperation] Read "leftHalf" version information
[2025-06-11 09:27:21.367] [info] [DeviceOperation] Read "leftHalf" repo information
[2025-06-11 09:27:21.398] [info] [DeviceOperation] Read "leftHalf" firmware checksum
[2025-06-11 09:27:21.414] [info] [DeviceOperation] Read "leftModule" version information
[2025-06-11 09:27:21.431] [info] [DeviceOperation] Read "leftModule" repo information
[2025-06-11 09:27:21.447] [info] [DeviceOperation] Read "leftModule" firmware checksum
[2025-06-11 09:27:21.510] [info] [DeviceService] Device connection state changed to: {
"bootloaderActive": false,
"bleDeviceConnected": true,
"communicationInterfaceAvailable": true,
"dongle": {
"bootloaderActive": false,
"multiDevice": false,
"serialNumber": ""
},
"leftHalfBootloaderActive": false,
"hasPermission": true,
"halvesInfo": {
"areHalvesMerged": false,
"isLeftHalfConnected": true,
"leftModuleSlot": 2,
"rightModuleSlot": 0
},
"hardwareModules": {
"moduleInfos": [
{
"module": {
"id": 1,
"name": "Left keyboard half",
"slotId": 1,
"i2cAddress": 16,
"firmwareUpgradeSupported": true
},
"info": {
"moduleProtocolVersion": "4.3.0",
"firmwareVersion": "14.0.1",
"firmwareGitRepo": "UltimateHackingKeyboard/firmware",
"firmwareGitTag": "v14.0.1",
"remoteFirmwareChecksum": "628e2b535f3c722456e2985f6a0157d1"
}
},
{
"module": {
"id": 2,
"name": "Key cluster",
"configPath": "/add-on/key-cluster",
"slotId": 2,
"i2cAddress": 32,
"firmwareUpgradeSupported": true
},
"info": {
"moduleProtocolVersion": "4.3.0",
"firmwareVersion": "13.0.2",
"firmwareGitRepo": "UltimateHackingKeyboard/firmware",
"firmwareGitTag": "v13.0.2",
"remoteFirmwareChecksum": "a0323a7f4ae17b6be9c5d1a0954e49de"
}
}
],
"rightModuleInfo": {
"firmwareVersion": "14.0.1",
"deviceProtocolVersion": "4.15.0",
"moduleProtocolVersion": "4.3.0",
"userConfigVersion": "11.0.0",
"hardwareConfigVersion": "1.0.0",
"smartMacrosVersion": "3.4.1",
"firmwareGitRepo": "UltimateHackingKeyboard/firmware",
"firmwareGitTag": "v14.0.1",
"builtFirmwareChecksum": "faa4eeb38630f30b67e521c435e4fef7",
"modules": {
"1": {
"builtFirmwareChecksum": "628e2b535f3c722456e2985f6a0157d1"
},
"2": {
"builtFirmwareChecksum": "a0323a7f4ae17b6be9c5d1a0954e49de"
}
}
}
},
"isMacroStatusDirty": false,
"isZephyrLogAvailable": false,
"leftHalfDetected": false,
"multiDevice": false,
"newPairedDevices": [
"88:f4:da:e4:98:63"
],
"udevRulesInfo": "Ok",
"connectedDevice": {
"id": 4,
"asCliArg": "uhk80-right",
"firmwareUpgradeMethod": "mcuboot",
"logName": "UHK 80 right",
"name": "UHK 80",
"keyboard": [
{
"vid": 14248,
"pid": 9
}
],
"bootloader": [
{
"vid": 14248,
"pid": 8
}
],
"buspal": [],
"reportId": 4
},
"bleAddress": "e6:99:d8:42:06:ed"
}
[2025-06-11 09:27:21.509] [info] [DeviceRendererService] dispatch action [device] connection state changed
[2025-06-11 09:27:21.514] [info] [SmartMacroDocRendererService] downloadDocumentation
[2025-06-11 09:27:21.516] [info] [SmartMacroService] start downloading firmware documentation {
firmwareGitRepo: 'UltimateHackingKeyboard/firmware',
firmwareGitTag: 'v14.0.1'
}
[2025-06-11 09:27:21.516] [info] [SmartMacroService] firmware documentation downloaded earlier
[2025-06-11 09:27:21.517] [info] [SmartMacroService] reference manual downloaded earlier
[2025-06-11 09:27:21.518] [info] [SmartMacroDocRendererService] dispatch action: [smart-macro-doc] download documentation success
[2025-06-11 09:27:21.520] [info] [DeviceOperation] status buffer segment: �{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{
[2025-06-11 09:27:21.519] [info] [SmartMacroDocRendererService] dispatch action: [smart-macro-doc] reference manual changed
[2025-06-11 09:27:21.535] [info] [DeviceOperation] status buffer segment:  5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{ 5�{
[2025-06-11 09:27:21.551] [info] [DeviceOperation] status buffer segment: 5�{ 5�{ 5�{ 5
[2025-06-11 09:27:21.551] [info] [DeviceRendererService] dispatch action [device] Status buffer changed
[2025-06-11 09:27:21.887] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:27:22.236] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:27:22.583] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:27:22.930] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:27:23.264] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:27:23.612] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:27:23.950] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:27:24.295] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:27:24.648] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:27:24.983] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:27:25.329] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:27:25.679] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:27:26.028] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:27:26.385] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:27:26.726] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:27:27.071] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:27:27.425] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:27:27.779] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:27:28.136] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:27:28.487] [info] [UhkHidDevice] Read paired devices
[2025-06-11 09:27:28.602] [info] [AppService] set-config of "application-settings": {"errorPanelHeight":10,"checkForUpdateOnStartUp":true,"everAttemptedSavingToKeyboard":true,"animationEnabled":true,"appTheme":"system","backlightingColorPalette":[{"r":255,"g":0,"b":0},{"r":0,"g":255,"b":0},{"r":0,"g":0,"b":255}],"keyboardHalvesAlwaysJoined":false,"smartMacroPanelWidth":41}
[2025-06-11 09:27:28.715] [info] [DeviceService] stop poll UHK Device
[2025-06-11 09:27:28.716] [info] [DeviceService] stopped poll UHK Device
[2025-06-11 09:27:30.379] [info] [UhkHidDevice] Device communication closing.
[2025-06-11 09:27:30.380] [info] [UhkHidDevice] Device communication closed.
[2025-06-11 09:27:30.411] [info] [UhkHidDevice] Device communication closing.
[2025-06-11 09:27:30.412] [info] [DeviceService] start poll UHK Device
[2025-06-11 09:27:30.410] [info] [DeviceRendererService] dispatch action [user-config] Load user configuration history success
[2025-06-11 09:27:30.412] [info] [DeviceRendererService] dispatch action [device] save configuration reply
[2025-06-11 09:27:30.681] [info] [UhkHidDevice] Available devices unchanged
[2025-06-11 09:27:30.916] [info] [UhkHidDevice] Used device: {"vendorId":"0x37A8","productId":"0x9","path":"\\\\?\\HID#VID_37A8&PID_0009&MI_02#8&30a2567b&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}","serialNumber":"1886017019","manufacturer":"Ultimate Gadget Laboratories","product":"UHK 80 Right USB","release":1,"interface":2,"usagePage":65280,"usage":1}
[2025-06-11 09:27:31.047] [info] [UhkHidDevice] productId: 9 protocol versions: {"firmwareVersion":"14.0.1","deviceProtocolVersion":"4.15.0","moduleProtocolVersion":"4.3.0","userConfigVersion":"11.0.0","hardwareConfigVersion":"1.0.0","smartMacrosVersion":"3.4.1"}
[2025-06-11 09:27:31.097] [info] [DeviceOperation] Read "leftHalf" version information
[2025-06-11 09:27:31.113] [info] [DeviceOperation] Read "leftHalf" repo information
[2025-06-11 09:27:31.227] [info] [DeviceOperation] Read "leftHalf" firmware checksum
[2025-06-11 09:27:31.233] [info] [DeviceOperation] Read "leftModule" version information
[2025-06-11 09:27:31.248] [info] [DeviceOperation] Read "leftModule" repo information
[2025-06-11 09:27:31.351] [info] [DeviceOperation] Read "leftModule" firmware checksum
[2025-06-11 09:27:31.400] [info] [DeviceService] Device connection state changed to: {
"bootloaderActive": false,
"bleDeviceConnected": true,
"communicationInterfaceAvailable": true,
"dongle": {
"bootloaderActive": false,
"multiDevice": false,
"serialNumber": ""
},
"leftHalfBootloaderActive": false,
"hasPermission": true,
"halvesInfo": {
"areHalvesMerged": false,
"isLeftHalfConnected": true,
"leftModuleSlot": 2,
"rightModuleSlot": 0
},
"hardwareModules": {
"moduleInfos": [
{
"module": {
"id": 1,
"name": "Left keyboard half",
"slotId": 1,
"i2cAddress": 16,
"firmwareUpgradeSupported": true
},
"info": {
"moduleProtocolVersion": "4.3.0",
"firmwareVersion": "14.0.1",
"firmwareGitRepo": "UltimateHackingKeyboard/firmware",
"firmwareGitTag": "v14.0.1",
"remoteFirmwareChecksum": "628e2b535f3c722456e2985f6a0157d1"
}
},
{
"module": {
"id": 2,
"name": "Key cluster",
"configPath": "/add-on/key-cluster",
"slotId": 2,
"i2cAddress": 32,
"firmwareUpgradeSupported": true
},
"info": {
"moduleProtocolVersion": "4.3.0",
"firmwareVersion": "13.0.2",
"firmwareGitRepo": "UltimateHackingKeyboard/firmware",
"firmwareGitTag": "v13.0.2",
"remoteFirmwareChecksum": "a0323a7f4ae17b6be9c5d1a0954e49de"
}
}
],
"rightModuleInfo": {
"firmwareVersion": "14.0.1",
"deviceProtocolVersion": "4.15.0",
"moduleProtocolVersion": "4.3.0",
"userConfigVersion": "11.0.0",
"hardwareConfigVersion": "1.0.0",
"smartMacrosVersion": "3.4.1",
"firmwareGitRepo": "UltimateHackingKeyboard/firmware",
"firmwareGitTag": "v14.0.1",
"builtFirmwareChecksum": "faa4eeb38630f30b67e521c435e4fef7",
"modules": {
"1": {
"builtFirmwareChecksum": "628e2b535f3c722456e2985f6a0157d1"
},
"2": {
"builtFirmwareChecksum": "a0323a7f4ae17b6be9c5d1a0954e49de"
}
}
}
},
"isMacroStatusDirty": false,
"isZephyrLogAvailable": false,
"leftHalfDetected": false,
"multiDevice": false,
"newPairedDevices": [],
"udevRulesInfo": "Ok",
"connectedDevice": {
"id": 4,
"asCliArg": "uhk80-right",
"firmwareUpgradeMethod": "mcuboot",
"logName": "UHK 80 right",
"name": "UHK 80",
"keyboard": [
{
"vid": 14248,
"pid": 9
}
],
"bootloader": [
{
"vid": 14248,
"pid": 8
}
],
"buspal": [],
"reportId": 4
},
"bleAddress": "e6:99:d8:42:06:ed"
}
[2025-06-11 09:27:31.399] [info] [DeviceRendererService] dispatch action [device] connection state changed
[2025-06-11 09:27:31.404] [info] [SmartMacroDocRendererService] downloadDocumentation
[2025-06-11 09:27:31.405] [info] [SmartMacroService] start downloading firmware documentation {
firmwareGitRepo: 'UltimateHackingKeyboard/firmware',
firmwareGitTag: 'v14.0.1'
}
[2025-06-11 09:27:31.406] [info] [SmartMacroService] firmware documentation downloaded earlier
[2025-06-11 09:27:31.406] [info] [SmartMacroService] reference manual downloaded earlier
[2025-06-11 09:27:31.407] [info] [DeviceOperation] status buffer segment:
[2025-06-11 09:27:31.407] [info] [SmartMacroDocRendererService] dispatch action: [smart-macro-doc] download documentation success
[2025-06-11 09:27:31.407] [info] [DeviceRendererService] dispatch action [device] Status buffer changed
[2025-06-11 09:27:31.410] [info] [SmartMacroDocRendererService] dispatch action: [smart-macro-doc] reference manual changed
[2025-06-11 09:27:53.829] [info] [AppService] set-config of "application-settings": {"errorPanelHeight":10,"checkForUpdateOnStartUp":true,"everAttemptedSavingToKeyboard":true,"animationEnabled":true,"appTheme":"system","backlightingColorPalette":[{"r":255,"g":0,"b":0},{"r":0,"g":255,"b":0},{"r":0,"g":0,"b":255}],"keyboardHalvesAlwaysJoined":false,"smartMacroPanelWidth":41}
[2025-06-11 09:27:53.932] [info] [DeviceService] stop poll UHK Device
[2025-06-11 09:27:54.034] [info] [DeviceService] stopped poll UHK Device
[2025-06-11 09:27:55.650] [info] [UhkHidDevice] Device communication closing.
[2025-06-11 09:27:55.651] [info] [UhkHidDevice] Device communication closed.
[2025-06-11 09:27:55.675] [info] [UhkHidDevice] Device communication closing.
[2025-06-11 09:27:55.675] [info] [DeviceService] start poll UHK Device
[2025-06-11 09:27:55.670] [info] [DeviceRendererService] dispatch action [user-config] Load user configuration history success
[2025-06-11 09:27:55.671] [info] [DeviceRendererService] dispatch action [device] save configuration reply
[2025-06-11 09:27:56.099] [info] [UhkHidDevice] Available devices unchanged
[2025-06-11 09:27:56.133] [info] [UhkHidDevice] Used device: {"vendorId":"0x37A8","productId":"0x9","path":"\\\\?\\HID#VID_37A8&PID_0009&MI_02#8&30a2567b&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}","serialNumber":"1886017019","manufacturer":"Ultimate Gadget Laboratories","product":"UHK 80 Right USB","release":1,"interface":2,"usagePage":65280,"usage":1}
[2025-06-11 09:27:56.153] [info] [DeviceOperation] status buffer segment:
[2025-06-11 09:27:56.148] [info] [DeviceRendererService] dispatch action [device] Status buffer changed
[2025-06-11 09:28:23.753] [info] [AppService] set-config of "application-settings": {"errorPanelHeight":10,"checkForUpdateOnStartUp":true,"everAttemptedSavingToKeyboard":true,"animationEnabled":true,"appTheme":"system","backlightingColorPalette":[{"r":255,"g":0,"b":0},{"r":0,"g":255,"b":0},{"r":0,"g":0,"b":255}],"keyboardHalvesAlwaysJoined":false,"smartMacroPanelWidth":41}
[2025-06-11 09:28:23.859] [info] [DeviceService] stop poll UHK Device
[2025-06-11 09:28:23.859] [info] [DeviceService] stopped poll UHK Device
[2025-06-11 09:28:25.490] [info] [UhkHidDevice] Device communication closing.
[2025-06-11 09:28:25.490] [info] [UhkHidDevice] Device communication closed.
[2025-06-11 09:28:25.502] [info] [UhkHidDevice] Device communication closing.
[2025-06-11 09:28:25.502] [info] [DeviceService] start poll UHK Device
[2025-06-11 09:28:25.506] [info] [DeviceRendererService] dispatch action [user-config] Load user configuration history success
[2025-06-11 09:28:25.507] [info] [DeviceRendererService] dispatch action [device] save configuration reply
[2025-06-11 09:28:25.777] [info] [UhkHidDevice] Available devices unchanged
[2025-06-11 09:28:25.913] [info] [UhkHidDevice] Used device: {"vendorId":"0x37A8","productId":"0x9","path":"\\\\?\\HID#VID_37A8&PID_0009&MI_02#8&30a2567b&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}","serialNumber":"1886017019","manufacturer":"Ultimate Gadget Laboratories","product":"UHK 80 Right USB","release":1,"interface":2,"usagePage":65280,"usage":1}
[2025-06-11 09:28:26.031] [info] [DeviceOperation] status buffer segment:
[2025-06-11 09:28:26.037] [info] [DeviceRendererService] dispatch action [device] Status buffer changed
[2025-06-11 09:30:10.479] [info] [DeviceRendererService] dispatch action [user-config] Load user configuration history success
[2025-06-11 09:30:53.627] [info] [AppService] set-config of "application-settings": {"errorPanelHeight":10,"checkForUpdateOnStartUp":true,"everAttemptedSavingToKeyboard":true,"animationEnabled":true,"appTheme":"system","backlightingColorPalette":[{"r":255,"g":0,"b":0},{"r":0,"g":255,"b":0},{"r":0,"g":0,"b":255}],"keyboardHalvesAlwaysJoined":false,"smartMacroPanelWidth":41}
[2025-06-11 09:30:53.729] [info] [DeviceService] stop poll UHK Device
[2025-06-11 09:30:53.730] [info] [DeviceService] stopped poll UHK Device
[2025-06-11 09:30:55.442] [info] [UhkHidDevice] Device communication closing.
[2025-06-11 09:30:55.443] [info] [UhkHidDevice] Device communication closed.
[2025-06-11 09:30:55.453] [info] [UhkHidDevice] Device communication closing.
[2025-06-11 09:30:55.453] [info] [DeviceService] start poll UHK Device
[2025-06-11 09:30:55.453] [info] [DeviceRendererService] dispatch action [user-config] Load user configuration history success
[2025-06-11 09:30:55.454] [info] [DeviceRendererService] dispatch action [device] save configuration reply
[2025-06-11 09:30:55.849] [info] [UhkHidDevice] Available devices unchanged
[2025-06-11 09:30:55.968] [info] [UhkHidDevice] Used device: {"vendorId":"0x37A8","productId":"0x9","path":"\\\\?\\HID#VID_37A8&PID_0009&MI_02#8&30a2567b&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}","serialNumber":"1886017019","manufacturer":"Ultimate Gadget Laboratories","product":"UHK 80 Right USB","release":1,"interface":2,"usagePage":65280,"usage":1}
[2025-06-11 09:30:55.988] [info] [DeviceOperation] status buffer segment:
[2025-06-11 09:30:55.989] [info] [DeviceRendererService] dispatch action [device] Status buffer changed
[2025-06-11 10:41:17.031] [info] [AppService] set-config of "application-settings": {"errorPanelHeight":10,"checkForUpdateOnStartUp":true,"everAttemptedSavingToKeyboard":true,"animationEnabled":true,"appTheme":"system","backlightingColorPalette":[{"r":255,"g":0,"b":0},{"r":0,"g":255,"b":0},{"r":0,"g":0,"b":255}],"keyboardHalvesAlwaysJoined":false,"smartMacroPanelWidth":41}
[2025-06-11 10:41:17.147] [info] [DeviceService] stop poll UHK Device
[2025-06-11 10:41:17.148] [info] [DeviceService] stopped poll UHK Device
[2025-06-11 10:41:19.294] [info] [UhkHidDevice] Device communication closing.
[2025-06-11 10:41:19.296] [info] [UhkHidDevice] Device communication closed.
[2025-06-11 10:41:19.307] [info] [UhkHidDevice] Device communication closing.
[2025-06-11 10:41:19.307] [info] [DeviceService] start poll UHK Device
[2025-06-11 10:41:19.308] [info] [DeviceRendererService] dispatch action [user-config] Load user configuration history success
[2025-06-11 10:41:19.309] [info] [DeviceRendererService] dispatch action [device] save configuration reply
[2025-06-11 10:41:19.855] [info] [UhkHidDevice] Available devices unchanged
[2025-06-11 10:41:19.886] [info] [UhkHidDevice] Used device: {"vendorId":"0x37A8","productId":"0x9","path":"\\\\?\\HID#VID_37A8&PID_0009&MI_02#8&30a2567b&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}","serialNumber":"1886017019","manufacturer":"Ultimate Gadget Laboratories","product":"UHK 80 Right USB","release":1,"interface":2,"usagePage":65280,"usage":1}
[2025-06-11 10:41:19.909] [info] [DeviceOperation] status buffer segment:
[2025-06-11 10:41:19.910] [info] [DeviceRendererService] dispatch action [device] Status buffer changed
[2025-06-11 10:49:17.429] [info] [DeviceRendererService] dispatch action [user-config] Load user configuration history success
[2025-06-11 10:49:26.070] [info] [DeviceService] Check BLE Addresses are paired
[2025-06-11 10:49:26.070] [info] [DeviceService] stop poll UHK Device
[2025-06-11 10:49:26.070] [info] [DeviceService] stopped poll UHK Device
[2025-06-11 10:49:26.093] [info] [UhkHidDevice] productId: 9 protocol versions: {"firmwareVersion":"14.0.1","deviceProtocolVersion":"4.15.0","moduleProtocolVersion":"4.3.0","userConfigVersion":"11.0.0","hardwareConfigVersion":"1.0.0","smartMacrosVersion":"3.4.1"}
[2025-06-11 10:49:26.106] [info] [DeviceService] start poll UHK Device
[2025-06-11 10:49:26.107] [info] [DeviceRendererService] dispatch action [device] check are host connections paired reply
[2025-06-11 10:49:26.371] [info] [DeviceOperation] Read "leftHalf" version information
[2025-06-11 10:49:26.391] [info] [DeviceOperation] Read "leftHalf" repo information
[2025-06-11 10:49:26.424] [info] [DeviceOperation] Read "leftHalf" firmware checksum
[2025-06-11 10:49:26.441] [info] [DeviceOperation] Read "leftModule" version information
[2025-06-11 10:49:26.449] [info] [DeviceOperation] Read "leftModule" repo information
[2025-06-11 10:49:26.471] [info] [DeviceOperation] Read "leftModule" firmware checksum
[2025-06-11 10:49:26.524] [info] [DeviceService] Device connection state changed to: {
"bootloaderActive": false,
"bleDeviceConnected": true,
"communicationInterfaceAvailable": true,
"dongle": {
"bootloaderActive": false,
"multiDevice": false,
"serialNumber": ""
},
"leftHalfBootloaderActive": false,
"hasPermission": true,
"halvesInfo": {
"areHalvesMerged": false,
"isLeftHalfConnected": true,
"leftModuleSlot": 2,
"rightModuleSlot": 0
},
"hardwareModules": {
"moduleInfos": [
{
"module": {
"id": 1,
"name": "Left keyboard half",
"slotId": 1,
"i2cAddress": 16,
"firmwareUpgradeSupported": true
},
"info": {
"moduleProtocolVersion": "4.3.0",
"firmwareVersion": "14.0.1",
"firmwareGitRepo": "UltimateHackingKeyboard/firmware",
"firmwareGitTag": "v14.0.1",
"remoteFirmwareChecksum": "628e2b535f3c722456e2985f6a0157d1"
}
},
{
"module": {
"id": 2,
"name": "Key cluster",
"configPath": "/add-on/key-cluster",
"slotId": 2,
"i2cAddress": 32,
"firmwareUpgradeSupported": true
},
"info": {
"moduleProtocolVersion": "4.3.0",
"firmwareVersion": "13.0.2",
"firmwareGitRepo": "UltimateHackingKeyboard/firmware",
"firmwareGitTag": "v13.0.2",
"remoteFirmwareChecksum": "a0323a7f4ae17b6be9c5d1a0954e49de"
}
}
],
"rightModuleInfo": {
"firmwareVersion": "14.0.1",
"deviceProtocolVersion": "4.15.0",
"moduleProtocolVersion": "4.3.0",
"userConfigVersion": "11.0.0",
"hardwareConfigVersion": "1.0.0",
"smartMacrosVersion": "3.4.1",
"firmwareGitRepo": "UltimateHackingKeyboard/firmware",
"firmwareGitTag": "v14.0.1",
"builtFirmwareChecksum": "faa4eeb38630f30b67e521c435e4fef7",
"modules": {
"1": {
"builtFirmwareChecksum": "628e2b535f3c722456e2985f6a0157d1"
},
"2": {
"builtFirmwareChecksum": "a0323a7f4ae17b6be9c5d1a0954e49de"
}
}
}
},
"isMacroStatusDirty": false,
"isZephyrLogAvailable": false,
"leftHalfDetected": false,
"multiDevice": false,
"newPairedDevices": [],
"udevRulesInfo": "Ok",
"connectedDevice": {
"id": 4,
"asCliArg": "uhk80-right",
"firmwareUpgradeMethod": "mcuboot",
"logName": "UHK 80 right",
"name": "UHK 80",
"keyboard": [
{
"vid": 14248,
"pid": 9
}
],
"bootloader": [
{
"vid": 14248,
"pid": 8
}
],
"buspal": [],
"reportId": 4
},
"bleAddress": "e6:99:d8:42:06:ed"
}
[2025-06-11 10:49:26.524] [info] [DeviceRendererService] dispatch action [device] connection state changed
[2025-06-11 10:49:26.532] [info] [SmartMacroDocRendererService] downloadDocumentation
[2025-06-11 10:49:26.532] [info] [SmartMacroService] start downloading firmware documentation {
firmwareGitRepo: 'UltimateHackingKeyboard/firmware',
firmwareGitTag: 'v14.0.1'
}
[2025-06-11 10:49:26.533] [info] [DeviceOperation] status buffer segment:
[2025-06-11 10:49:26.533] [info] [SmartMacroService] firmware documentation downloaded earlier
[2025-06-11 10:49:26.534] [info] [SmartMacroService] reference manual downloaded earlier
[2025-06-11 10:49:26.535] [info] [DeviceRendererService] dispatch action [device] Status buffer changed
[2025-06-11 10:49:26.536] [info] [SmartMacroDocRendererService] dispatch action: [smart-macro-doc] download documentation success
[2025-06-11 10:49:26.536] [info] [SmartMacroDocRendererService] dispatch action: [smart-macro-doc] reference manual changed
[2025-06-11 10:50:24.833] [info] [AppService] set-config of "application-settings": {"errorPanelHeight":10,"checkForUpdateOnStartUp":true,"everAttemptedSavingToKeyboard":true,"animationEnabled":true,"appTheme":"system","backlightingColorPalette":[{"r":255,"g":0,"b":0},{"r":0,"g":255,"b":0},{"r":0,"g":0,"b":255}],"keyboardHalvesAlwaysJoined":false,"smartMacroPanelWidth":41}
[2025-06-11 10:50:24.940] [info] [DeviceService] stop poll UHK Device
[2025-06-11 10:50:24.941] [info] [DeviceService] stopped poll UHK Device
[2025-06-11 10:50:26.658] [info] [UhkHidDevice] Device communication closing.
[2025-06-11 10:50:26.661] [info] [UhkHidDevice] Device communication closed.
[2025-06-11 10:50:26.675] [info] [UhkHidDevice] Device communication closing.
[2025-06-11 10:50:26.675] [info] [DeviceService] start poll UHK Device
[2025-06-11 10:50:26.675] [info] [DeviceRendererService] dispatch action [user-config] Load user configuration history success
[2025-06-11 10:50:26.676] [info] [DeviceRendererService] dispatch action [device] save configuration reply
[2025-06-11 10:50:26.963] [info] [UhkHidDevice] Available devices unchanged
[2025-06-11 10:50:26.992] [info] [UhkHidDevice] Used device: {"vendorId":"0x37A8","productId":"0x9","path":"\\\\?\\HID#VID_37A8&PID_0009&MI_02#8&30a2567b&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}","serialNumber":"1886017019","manufacturer":"Ultimate Gadget Laboratories","product":"UHK 80 Right USB","release":1,"interface":2,"usagePage":65280,"usage":1}
[2025-06-11 10:50:27.112] [info] [DeviceOperation] status buffer segment:
[2025-06-11 10:50:27.113] [info] [DeviceRendererService] dispatch action [device] Status buffer changed
[2025-06-11 10:56:11.659] [info] [DeviceService] Device connection state changed to: {
"bootloaderActive": false,
"bleDeviceConnected": true,
"communicationInterfaceAvailable": false,
"dongle": {
"bootloaderActive": false,
"multiDevice": false,
"serialNumber": ""
},
"leftHalfBootloaderActive": false,
"hasPermission": true,
"halvesInfo": {
"areHalvesMerged": true,
"leftModuleSlot": 0,
"isLeftHalfConnected": true,
"rightModuleSlot": 0
},
"hardwareModules": {
"moduleInfos": [],
"rightModuleInfo": {
"modules": {}
}
},
"isMacroStatusDirty": false,
"isZephyrLogAvailable": false,
"leftHalfDetected": false,
"multiDevice": false,
"newPairedDevices": [],
"udevRulesInfo": "Ok"
}
[2025-06-11 10:56:11.659] [info] [DeviceRendererService] dispatch action [device] connection state changed
[2025-06-11 10:56:11.667] [info] [SmartMacroDocRendererService] downloadDocumentation
[2025-06-11 10:56:11.668] [info] [SmartMacroService] fallback to bundled firmware documentation because git repo or tag missing { firmwareGitRepo: '', firmwareGitTag: '' }
[2025-06-11 10:56:11.668] [info] [SmartMacroService] fallback to bundled firmware documentation
[2025-06-11 10:56:11.670] [info] [SmartMacroService] start downloading firmware documentation {
firmwareGitRepo: 'UltimateHackingKeyboard/firmware',
firmwareGitTag: 'v14.0.1'
}
[2025-06-11 10:56:11.671] [info] [SmartMacroService] firmware documentation downloaded earlier
[2025-06-11 10:56:11.671] [info] [SmartMacroService] reference manual downloaded earlier
[2025-06-11 10:56:11.680] [info] [SmartMacroDocRendererService] dispatch action: [smart-macro-doc] download documentation success
[2025-06-11 10:56:11.681] [info] [SmartMacroDocRendererService] dispatch action: [smart-macro-doc] reference manual changed
[2025-06-11 10:56:18.584] [info] [UhkHidDevice] Available devices unchanged
[2025-06-11 10:56:18.614] [info] [UhkHidDevice] Used device: {"vendorId":"0x37A8","productId":"0x9","path":"\\\\?\\HID#VID_37A8&PID_0009&MI_02#8&30a2567b&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}","serialNumber":"1886017019","manufacturer":"Ultimate Gadget Laboratories","product":"UHK 80 Right USB","release":1,"interface":2,"usagePage":65280,"usage":1}
[2025-06-11 10:56:18.650] [info] [UhkHidDevice] productId: 9 protocol versions: {"firmwareVersion":"14.0.1","deviceProtocolVersion":"4.15.0","moduleProtocolVersion":"4.3.0","userConfigVersion":"11.0.0","hardwareConfigVersion":"1.0.0","smartMacrosVersion":"3.4.1"}
[2025-06-11 10:56:18.717] [info] [DeviceOperation] Read "leftHalf" version information
[2025-06-11 10:56:18.736] [info] [DeviceOperation] Read "leftHalf" repo information
[2025-06-11 10:56:18.767] [info] [DeviceOperation] Read "leftHalf" firmware checksum
[2025-06-11 10:56:18.784] [info] [DeviceOperation] Read "leftModule" version information
[2025-06-11 10:56:18.803] [info] [DeviceOperation] Read "leftModule" repo information
[2025-06-11 10:56:18.834] [info] [DeviceOperation] Read "leftModule" firmware checksum
[2025-06-11 10:56:18.883] [info] [DeviceService] Device connection state changed to: {
"bootloaderActive": false,
"bleDeviceConnected": true,
"communicationInterfaceAvailable": true,
"dongle": {
"bootloaderActive": false,
"multiDevice": false,
"serialNumber": ""
},
"leftHalfBootloaderActive": false,
"hasPermission": true,
"halvesInfo": {
"areHalvesMerged": false,
"isLeftHalfConnected": true,
"leftModuleSlot": 2,
"rightModuleSlot": 0
},
"hardwareModules": {
"moduleInfos": [
{
"module": {
"id": 1,
"name": "Left keyboard half",
"slotId": 1,
"i2cAddress": 16,
"firmwareUpgradeSupported": true
},
"info": {
"moduleProtocolVersion": "4.3.0",
"firmwareVersion": "14.0.1",
"firmwareGitRepo": "UltimateHackingKeyboard/firmware",
"firmwareGitTag": "v14.0.1",
"remoteFirmwareChecksum": "628e2b535f3c722456e2985f6a0157d1"
}
},
{
"module": {
"id": 2,
"name": "Key cluster",
"configPath": "/add-on/key-cluster",
"slotId": 2,
"i2cAddress": 32,
"firmwareUpgradeSupported": true
},
"info": {
"moduleProtocolVersion": "4.3.0",
"firmwareVersion": "13.0.2",
"firmwareGitRepo": "UltimateHackingKeyboard/firmware",
"firmwareGitTag": "v13.0.2",
"remoteFirmwareChecksum": "a0323a7f4ae17b6be9c5d1a0954e49de"
}
}
],
"rightModuleInfo": {
"firmwareVersion": "14.0.1",
"deviceProtocolVersion": "4.15.0",
"moduleProtocolVersion": "4.3.0",
"userConfigVersion": "11.0.0",
"hardwareConfigVersion": "1.0.0",
"smartMacrosVersion": "3.4.1",
"firmwareGitRepo": "UltimateHackingKeyboard/firmware",
"firmwareGitTag": "v14.0.1",
"builtFirmwareChecksum": "faa4eeb38630f30b67e521c435e4fef7",
"modules": {
"1": {
"builtFirmwareChecksum": "628e2b535f3c722456e2985f6a0157d1"
},
"2": {
"builtFirmwareChecksum": "a0323a7f4ae17b6be9c5d1a0954e49de"
}
}
}
},
"isMacroStatusDirty": false,
"isZephyrLogAvailable": false,
"leftHalfDetected": false,
"multiDevice": false,
"newPairedDevices": [],
"udevRulesInfo": "Ok",
"connectedDevice": {
"id": 4,
"asCliArg": "uhk80-right",
"firmwareUpgradeMethod": "mcuboot",
"logName": "UHK 80 right",
"name": "UHK 80",
"keyboard": [
{
"vid": 14248,
"pid": 9
}
],
"bootloader": [
{
"vid": 14248,
"pid": 8
}
],
"buspal": [],
"reportId": 4
},
"bleAddress": "e6:99:d8:42:06:ed"
}
[2025-06-11 10:56:18.883] [info] [DeviceRendererService] dispatch action [device] connection state changed
[2025-06-11 10:56:18.889] [info] [SmartMacroDocRendererService] downloadDocumentation
[2025-06-11 10:56:18.890] [info] [SmartMacroService] start downloading firmware documentation {
firmwareGitRepo: 'UltimateHackingKeyboard/firmware',
firmwareGitTag: 'v14.0.1'
}
[2025-06-11 10:56:18.890] [info] [DeviceService] stop poll UHK Device
[2025-06-11 10:56:18.891] [info] [SmartMacroService] firmware documentation downloaded earlier
[2025-06-11 10:56:18.891] [info] [SmartMacroService] reference manual downloaded earlier
[2025-06-11 10:56:18.893] [info] [DeviceOperation] status buffer segment:
[2025-06-11 10:56:18.895] [info] [SmartMacroDocRendererService] dispatch action: [smart-macro-doc] download documentation success
[2025-06-11 10:56:18.895] [info] [SmartMacroDocRendererService] dispatch action: [smart-macro-doc] reference manual changed
[2025-06-11 10:56:18.895] [info] [DeviceRendererService] dispatch action [device] Status buffer changed
[2025-06-11 10:56:18.999] [info] [DeviceService] stopped poll UHK Device
[2025-06-11 10:56:19.015] [info] [UhkHidDevice] Device communication closing.
[2025-06-11 10:56:19.016] [info] [UhkHidDevice] Device communication closed.
[2025-06-11 10:56:19.016] [info] [DeviceService] start poll UHK Device
[2025-06-11 10:56:19.017] [info] [DeviceService] load user configuration
[2025-06-11 10:56:19.017] [info] [DeviceService] stop poll UHK Device
[2025-06-11 10:56:19.017] [info] [DeviceService] stopped poll UHK Device
[2025-06-11 10:56:19.017] [info] [DeviceRendererService] dispatch action [device] Read config sizes reply
[2025-06-11 10:56:19.046] [info] [UhkHidDevice] Available devices unchanged
[2025-06-11 10:56:19.080] [info] [UhkHidDevice] Used device: {"vendorId":"0x37A8","productId":"0x9","path":"\\\\?\\HID#VID_37A8&PID_0009&MI_02#8&30a2567b&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}","serialNumber":"1886017019","manufacturer":"Ultimate Gadget Laboratories","product":"UHK 80 Right USB","release":1,"interface":2,"usagePage":65280,"usage":1}
[2025-06-11 10:56:19.126] [info] [UhkHidDevice] Device communication closing.
[2025-06-11 10:56:19.127] [info] [UhkHidDevice] Device communication closed.
[2025-06-11 10:56:19.127] [info] [DeviceOperation] User config size: 32768
[2025-06-11 10:56:19.159] [info] [UhkHidDevice] Available devices unchanged
[2025-06-11 10:56:19.190] [info] [UhkHidDevice] Used device: {"vendorId":"0x37A8","productId":"0x9","path":"\\\\?\\HID#VID_37A8&PID_0009&MI_02#8&30a2567b&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}","serialNumber":"1886017019","manufacturer":"Ultimate Gadget Laboratories","product":"UHK 80 Right USB","release":1,"interface":2,"usagePage":65280,"usage":1}
[2025-06-11 10:56:19.197] [info] [DeviceOperation] userConfigSize: 7327
[2025-06-11 10:56:20.741] [info] [UhkHidDevice] Device communication closing.
[2025-06-11 10:56:20.742] [info] [UhkHidDevice] Device communication closed.
[2025-06-11 10:56:20.743] [info] [DeviceOperation] Hardware config size: 64
[2025-06-11 10:56:20.773] [info] [UhkHidDevice] Available devices unchanged
[2025-06-11 10:56:20.805] [info] [UhkHidDevice] Used device: {"vendorId":"0x37A8","productId":"0x9","path":"\\\\?\\HID#VID_37A8&PID_0009&MI_02#8&30a2567b&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}","serialNumber":"1886017019","manufacturer":"Ultimate Gadget Laboratories","product":"UHK 80 Right USB","release":1,"interface":2,"usagePage":65280,"usage":1}
[2025-06-11 10:56:20.830] [info] [UhkHidDevice] Device communication closing.
[2025-06-11 10:56:20.831] [info] [UhkHidDevice] Device communication closed.
[2025-06-11 10:56:20.861] [info] [UhkHidDevice] Available devices unchanged
[2025-06-11 10:56:20.892] [info] [UhkHidDevice] Used device: {"vendorId":"0x37A8","productId":"0x9","path":"\\\\?\\HID#VID_37A8&PID_0009&MI_02#8&30a2567b&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}","serialNumber":"1886017019","manufacturer":"Ultimate Gadget Laboratories","product":"UHK 80 Right USB","release":1,"interface":2,"usagePage":65280,"usage":1}
[2025-06-11 10:56:20.923] [info] [UhkHidDevice] productId: 9 protocol versions: {"firmwareVersion":"14.0.1","deviceProtocolVersion":"4.15.0","moduleProtocolVersion":"4.3.0","userConfigVersion":"11.0.0","hardwareConfigVersion":"1.0.0","smartMacrosVersion":"3.4.1"}
[2025-06-11 10:56:20.987] [info] [DeviceOperation] Read "leftHalf" version information
[2025-06-11 10:56:20.999] [info] [DeviceOperation] Read "leftHalf" repo information
[2025-06-11 10:56:21.031] [info] [DeviceOperation] Read "leftHalf" firmware checksum
[2025-06-11 10:56:21.044] [info] [DeviceOperation] Read "leftModule" version information
[2025-06-11 10:56:21.060] [info] [DeviceOperation] Read "leftModule" repo information
[2025-06-11 10:56:21.077] [info] [DeviceOperation] Read "leftModule" firmware checksum
[2025-06-11 10:56:21.127] [info] [UhkHidDevice] Device communication closing.
[2025-06-11 10:56:21.128] [info] [UhkHidDevice] Device communication closed.
[2025-06-11 10:56:21.128] [info] [DeviceService] start poll UHK Device
[2025-06-11 10:56:21.129] [info] [DeviceRendererService] dispatch action [user-config] Load User Config from Device reply
[2025-06-11 10:56:21.139] [info] [DeviceService] Check BLE Addresses are paired
[2025-06-11 10:56:21.140] [info] [DeviceService] stop poll UHK Device
[2025-06-11 10:56:21.140] [info] [DeviceService] stopped poll UHK Device
[2025-06-11 10:56:21.139] [info] [SmartMacroDocRendererService] downloadDocumentation
[2025-06-11 10:56:21.140] [info] [SmartMacroService] start downloading firmware documentation {
firmwareGitRepo: 'UltimateHackingKeyboard/firmware',
firmwareGitTag: 'v14.0.1'
}
[2025-06-11 10:56:21.141] [info] [SmartMacroService] firmware documentation downloaded earlier
[2025-06-11 10:56:21.141] [info] [SmartMacroService] reference manual downloaded earlier
[2025-06-11 10:56:21.147] [info] [SmartMacroDocRendererService] dispatch action: [smart-macro-doc] download documentation success
[2025-06-11 10:56:21.147] [info] [SmartMacroDocRendererService] dispatch action: [smart-macro-doc] reference manual changed
[2025-06-11 10:56:21.171] [info] [UhkHidDevice] Available devices unchanged
[2025-06-11 10:56:21.205] [info] [UhkHidDevice] Used device: {"vendorId":"0x37A8","productId":"0x9","path":"\\\\?\\HID#VID_37A8&PID_0009&MI_02#8&30a2567b&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}","serialNumber":"1886017019","manufacturer":"Ultimate Gadget Laboratories","product":"UHK 80 Right USB","release":1,"interface":2,"usagePage":65280,"usage":1}
[2025-06-11 10:56:21.213] [info] [UhkHidDevice] productId: 9 protocol versions: {"firmwareVersion":"14.0.1","deviceProtocolVersion":"4.15.0","moduleProtocolVersion":"4.3.0","userConfigVersion":"11.0.0","hardwareConfigVersion":"1.0.0","smartMacrosVersion":"3.4.1"}
[2025-06-11 10:56:21.227] [info] [DeviceService] start poll UHK Device
[2025-06-11 10:56:21.228] [info] [DeviceRendererService] dispatch action [device] check are host connections paired reply
[2025-06-11 10:56:21.589] [info] [DeviceOperation] Read "leftHalf" version information
[2025-06-11 10:56:21.597] [info] [DeviceOperation] Read "leftHalf" repo information
[2025-06-11 10:56:21.626] [info] [DeviceOperation] Read "leftHalf" firmware checksum
[2025-06-11 10:56:21.642] [info] [DeviceOperation] Read "leftModule" version information
[2025-06-11 10:56:21.657] [info] [DeviceOperation] Read "leftModule" repo information
[2025-06-11 10:56:21.689] [info] [DeviceOperation] Read "leftModule" firmware checksum
[2025-06-11 10:56:21.746] [info] [DeviceService] Device connection state changed to: {
"bootloaderActive": false,
"bleDeviceConnected": true,
"communicationInterfaceAvailable": true,
"dongle": {
"bootloaderActive": false,
"multiDevice": false,
"serialNumber": ""
},
"leftHalfBootloaderActive": false,
"hasPermission": true,
"halvesInfo": {
"areHalvesMerged": false,
"isLeftHalfConnected": true,
"leftModuleSlot": 2,
"rightModuleSlot": 0
},
"hardwareModules": {
"moduleInfos": [
{
"module": {
"id": 1,
"name": "Left keyboard half",
"slotId": 1,
"i2cAddress": 16,
"firmwareUpgradeSupported": true
},
"info": {
"moduleProtocolVersion": "4.3.0",
"firmwareVersion": "14.0.1",
"firmwareGitRepo": "UltimateHackingKeyboard/firmware",
"firmwareGitTag": "v14.0.1",
"remoteFirmwareChecksum": "628e2b535f3c722456e2985f6a0157d1"
}
},
{
"module": {
"id": 2,
"name": "Key cluster",
"configPath": "/add-on/key-cluster",
"slotId": 2,
"i2cAddress": 32,
"firmwareUpgradeSupported": true
},
"info": {
"moduleProtocolVersion": "4.3.0",
"firmwareVersion": "13.0.2",
"firmwareGitRepo": "UltimateHackingKeyboard/firmware",
"firmwareGitTag": "v13.0.2",
"remoteFirmwareChecksum": "a0323a7f4ae17b6be9c5d1a0954e49de"
}
}
],
"rightModuleInfo": {
"firmwareVersion": "14.0.1",
"deviceProtocolVersion": "4.15.0",
"moduleProtocolVersion": "4.3.0",
"userConfigVersion": "11.0.0",
"hardwareConfigVersion": "1.0.0",
"smartMacrosVersion": "3.4.1",
"firmwareGitRepo": "UltimateHackingKeyboard/firmware",
"firmwareGitTag": "v14.0.1",
"builtFirmwareChecksum": "faa4eeb38630f30b67e521c435e4fef7",
"modules": {
"1": {
"builtFirmwareChecksum": "628e2b535f3c722456e2985f6a0157d1"
},
"2": {
"builtFirmwareChecksum": "a0323a7f4ae17b6be9c5d1a0954e49de"
}
}
}
},
"isMacroStatusDirty": false,
"isZephyrLogAvailable": false,
"leftHalfDetected": false,
"multiDevice": false,
"newPairedDevices": [],
"udevRulesInfo": "Ok",
"connectedDevice": {
"id": 4,
"asCliArg": "uhk80-right",
"firmwareUpgradeMethod": "mcuboot",
"logName": "UHK 80 right",
"name": "UHK 80",
"keyboard": [
{
"vid": 14248,
"pid": 9
}
],
"bootloader": [
{
"vid": 14248,
"pid": 8
}
],
"buspal": [],
"reportId": 4
},
"bleAddress": "e6:99:d8:42:06:ed"
}
[2025-06-11 10:56:21.746] [info] [DeviceRendererService] dispatch action [device] connection state changed
[2025-06-11 10:56:21.751] [info] [SmartMacroDocRendererService] downloadDocumentation
[2025-06-11 10:56:21.751] [info] [SmartMacroService] start downloading firmware documentation {
firmwareGitRepo: 'UltimateHackingKeyboard/firmware',
firmwareGitTag: 'v14.0.1'
}
[2025-06-11 10:56:21.752] [info] [SmartMacroService] firmware documentation downloaded earlier
[2025-06-11 10:56:21.752] [info] [SmartMacroService] reference manual downloaded earlier
[2025-06-11 10:56:21.753] [info] [DeviceOperation] status buffer segment:
[2025-06-11 10:56:21.754] [info] [SmartMacroDocRendererService] dispatch action: [smart-macro-doc] download documentation success
[2025-06-11 10:56:21.754] [info] [DeviceRendererService] dispatch action [device] Status buffer changed
[2025-06-11 10:56:21.755] [info] [SmartMacroDocRendererService] dispatch action: [smart-macro-doc] reference manual changed
[2025-06-11 10:58:15.833] [info] [AppService] set-config of "application-settings": {"errorPanelHeight":10,"checkForUpdateOnStartUp":true,"everAttemptedSavingToKeyboard":true,"animationEnabled":true,"appTheme":"system","backlightingColorPalette":[{"r":255,"g":0,"b":0},{"r":0,"g":255,"b":0},{"r":0,"g":0,"b":255}],"keyboardHalvesAlwaysJoined":false,"smartMacroPanelWidth":41}
[2025-06-11 10:58:15.938] [info] [DeviceService] stop poll UHK Device
[2025-06-11 10:58:15.939] [info] [DeviceService] stopped poll UHK Device
[2025-06-11 10:58:17.673] [info] [UhkHidDevice] Device communication closing.
[2025-06-11 10:58:17.674] [info] [UhkHidDevice] Device communication closed.
[2025-06-11 10:58:17.685] [info] [UhkHidDevice] Device communication closing.
[2025-06-11 10:58:17.685] [info] [DeviceService] start poll UHK Device
[2025-06-11 10:58:17.685] [info] [DeviceRendererService] dispatch action [user-config] Load user configuration history success
[2025-06-11 10:58:17.686] [info] [DeviceRendererService] dispatch action [device] save configuration reply
[2025-06-11 10:58:18.068] [info] [UhkHidDevice] Available devices unchanged
[2025-06-11 10:58:18.098] [info] [UhkHidDevice] Used device: {"vendorId":"0x37A8","productId":"0x9","path":"\\\\?\\HID#VID_37A8&PID_0009&MI_02#8&30a2567b&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}","serialNumber":"1886017019","manufacturer":"Ultimate Gadget Laboratories","product":"UHK 80 Right USB","release":1,"interface":2,"usagePage":65280,"usage":1}
[2025-06-11 10:58:18.123] [info] [DeviceOperation] status buffer segment:
[2025-06-11 10:58:18.124] [info] [DeviceRendererService] dispatch action [device] Status buffer changed
[2025-06-11 10:58:50.910] [info] [UhkHidDevice] productId: 9 protocol versions: {"firmwareVersion":"14.0.1","deviceProtocolVersion":"4.15.0","moduleProtocolVersion":"4.3.0","userConfigVersion":"11.0.0","hardwareConfigVersion":"1.0.0","smartMacrosVersion":"3.4.1"}
[2025-06-11 10:58:50.958] [info] [DeviceOperation] Read "leftHalf" version information
[2025-06-11 10:58:50.975] [info] [DeviceOperation] Read "leftHalf" repo information
[2025-06-11 10:58:51.007] [info] [DeviceOperation] Read "leftHalf" firmware checksum
[2025-06-11 10:58:51.054] [info] [DeviceService] Device connection state changed to: {
"bootloaderActive": false,
"bleDeviceConnected": true,
"communicationInterfaceAvailable": true,
"dongle": {
"bootloaderActive": false,
"multiDevice": false,
"serialNumber": ""
},
"leftHalfBootloaderActive": false,
"hasPermission": true,
"halvesInfo": {
"areHalvesMerged": false,
"isLeftHalfConnected": true,
"leftModuleSlot": 0,
"rightModuleSlot": 0
},
"hardwareModules": {
"moduleInfos": [
{
"module": {
"id": 1,
"name": "Left keyboard half",
"slotId": 1,
"i2cAddress": 16,
"firmwareUpgradeSupported": true
},
"info": {
"moduleProtocolVersion": "4.3.0",
"firmwareVersion": "14.0.1",
"firmwareGitRepo": "UltimateHackingKeyboard/firmware",
"firmwareGitTag": "v14.0.1",
"remoteFirmwareChecksum": "628e2b535f3c722456e2985f6a0157d1"
}
}
],
"rightModuleInfo": {
"firmwareVersion": "14.0.1",
"deviceProtocolVersion": "4.15.0",
"moduleProtocolVersion": "4.3.0",
"userConfigVersion": "11.0.0",
"hardwareConfigVersion": "1.0.0",
"smartMacrosVersion": "3.4.1",
"firmwareGitRepo": "UltimateHackingKeyboard/firmware",
"firmwareGitTag": "v14.0.1",
"builtFirmwareChecksum": "faa4eeb38630f30b67e521c435e4fef7",
"modules": {
"1": {
"builtFirmwareChecksum": "628e2b535f3c722456e2985f6a0157d1"
}
}
}
},
"isMacroStatusDirty": false,
"isZephyrLogAvailable": false,
"leftHalfDetected": false,
"multiDevice": false,
"newPairedDevices": [],
"udevRulesInfo": "Ok",
"connectedDevice": {
"id": 4,
"asCliArg": "uhk80-right",
"firmwareUpgradeMethod": "mcuboot",
"logName": "UHK 80 right",
"name": "UHK 80",
"keyboard": [
{
"vid": 14248,
"pid": 9
}
],
"bootloader": [
{
"vid": 14248,
"pid": 8
}
],
"buspal": [],
"reportId": 4
},
"bleAddress": "e6:99:d8:42:06:ed"
}
[2025-06-11 10:58:51.054] [info] [DeviceRendererService] dispatch action [device] connection state changed
[2025-06-11 10:58:51.061] [info] [SmartMacroDocRendererService] downloadDocumentation
[2025-06-11 10:58:51.061] [info] [SmartMacroService] start downloading firmware documentation {
firmwareGitRepo: 'UltimateHackingKeyboard/firmware',
firmwareGitTag: 'v14.0.1'
}
[2025-06-11 10:58:51.061] [info] [SmartMacroService] firmware documentation downloaded earlier
[2025-06-11 10:58:51.062] [info] [DeviceOperation] status buffer segment:
[2025-06-11 10:58:51.062] [info] [SmartMacroService] reference manual downloaded earlier
[2025-06-11 10:58:51.068] [info] [SmartMacroDocRendererService] dispatch action: [smart-macro-doc] download documentation success
[2025-06-11 10:58:51.069] [info] [DeviceRendererService] dispatch action [device] Status buffer changed
[2025-06-11 10:58:51.069] [info] [SmartMacroDocRendererService] dispatch action: [smart-macro-doc] reference manual changed
[2025-06-11 10:59:16.279] [info] [DeviceOperation] Read "leftHalf" version information
[2025-06-11 10:59:16.289] [info] [DeviceOperation] Read "leftHalf" repo information
[2025-06-11 10:59:16.312] [info] [DeviceOperation] Read "leftHalf" firmware checksum
[2025-06-11 10:59:16.328] [info] [DeviceOperation] Read "leftModule" version information
[2025-06-11 10:59:16.345] [info] [DeviceOperation] Read "leftModule" repo information
[2025-06-11 10:59:16.374] [info] [DeviceOperation] Read "leftModule" firmware checksum
[2025-06-11 10:59:16.427] [info] [DeviceService] Device connection state changed to: {
"bootloaderActive": false,
"bleDeviceConnected": true,
"communicationInterfaceAvailable": true,
"dongle": {
"bootloaderActive": false,
"multiDevice": false,
"serialNumber": ""
},
"leftHalfBootloaderActive": false,
"hasPermission": true,
"halvesInfo": {
"areHalvesMerged": false,
"isLeftHalfConnected": true,
"leftModuleSlot": 2,
"rightModuleSlot": 0
},
"hardwareModules": {
"moduleInfos": [
{
"module": {
"id": 1,
"name": "Left keyboard half",
"slotId": 1,
"i2cAddress": 16,
"firmwareUpgradeSupported": true
},
"info": {
"moduleProtocolVersion": "4.3.0",
"firmwareVersion": "14.0.1",
"firmwareGitRepo": "UltimateHackingKeyboard/firmware",
"firmwareGitTag": "v14.0.1",
"remoteFirmwareChecksum": "628e2b535f3c722456e2985f6a0157d1"
}
},
{
"module": {
"id": 2,
"name": "Key cluster",
"configPath": "/add-on/key-cluster",
"slotId": 2,
"i2cAddress": 32,
"firmwareUpgradeSupported": true
},
"info": {
"moduleProtocolVersion": "4.3.0",
"firmwareVersion": "13.0.2",
"firmwareGitRepo": "UltimateHackingKeyboard/firmware",
"firmwareGitTag": "v13.0.2",
"remoteFirmwareChecksum": "a0323a7f4ae17b6be9c5d1a0954e49de"
}
}
],
"rightModuleInfo": {
"firmwareVersion": "14.0.1",
"deviceProtocolVersion": "4.15.0",
"moduleProtocolVersion": "4.3.0",
"userConfigVersion": "11.0.0",
"hardwareConfigVersion": "1.0.0",
"smartMacrosVersion": "3.4.1",
"firmwareGitRepo": "UltimateHackingKeyboard/firmware",
"firmwareGitTag": "v14.0.1",
"builtFirmwareChecksum": "faa4eeb38630f30b67e521c435e4fef7",
"modules": {
"1": {
"builtFirmwareChecksum": "628e2b535f3c722456e2985f6a0157d1"
},
"2": {
"builtFirmwareChecksum": "a0323a7f4ae17b6be9c5d1a0954e49de"
}
}
}
},
"isMacroStatusDirty": false,
"isZephyrLogAvailable": false,
"leftHalfDetected": false,
"multiDevice": false,
"newPairedDevices": [],
"udevRulesInfo": "Ok",
"connectedDevice": {
"id": 4,
"asCliArg": "uhk80-right",
"firmwareUpgradeMethod": "mcuboot",
"logName": "UHK 80 right",
"name": "UHK 80",
"keyboard": [
{
"vid": 14248,
"pid": 9
}
],
"bootloader": [
{
"vid": 14248,
"pid": 8
}
],
"buspal": [],
"reportId": 4
},
"bleAddress": "e6:99:d8:42:06:ed"
}
[2025-06-11 10:59:16.427] [info] [DeviceRendererService] dispatch action [device] connection state changed
[2025-06-11 10:59:16.430] [info] [DeviceOperation] status buffer segment:
[2025-06-11 10:59:16.432] [info] [SmartMacroDocRendererService] downloadDocumentation
[2025-06-11 10:59:16.433] [info] [SmartMacroService] start downloading firmware documentation {
firmwareGitRepo: 'UltimateHackingKeyboard/firmware',
firmwareGitTag: 'v14.0.1'
}
[2025-06-11 10:59:16.434] [info] [SmartMacroService] firmware documentation downloaded earlier
[2025-06-11 10:59:16.434] [info] [SmartMacroService] reference manual downloaded earlier
[2025-06-11 10:59:16.440] [info] [DeviceRendererService] dispatch action [device] Status buffer changed
[2025-06-11 10:59:16.441] [info] [SmartMacroDocRendererService] dispatch action: [smart-macro-doc] download documentation success
[2025-06-11 10:59:16.441] [info] [SmartMacroDocRendererService] dispatch action: [smart-macro-doc] reference manual changed
[2025-06-11 10:59:17.211] [info] [DeviceOperation] Read "leftHalf" version information
[2025-06-11 10:59:17.228] [info] [DeviceOperation] Read "leftHalf" repo information
[2025-06-11 10:59:17.258] [info] [DeviceOperation] Read "leftHalf" firmware checksum
[2025-06-11 10:59:17.289] [info] [DeviceService] Device connection state changed to: {
"bootloaderActive": false,
"bleDeviceConnected": true,
"communicationInterfaceAvailable": true,
"dongle": {
"bootloaderActive": false,
"multiDevice": false,
"serialNumber": ""
},
"leftHalfBootloaderActive": false,
"hasPermission": true,
"halvesInfo": {
"areHalvesMerged": false,
"isLeftHalfConnected": true,
"leftModuleSlot": 0,
"rightModuleSlot": 0
},
"hardwareModules": {
"moduleInfos": [
{
"module": {
"id": 1,
"name": "Left keyboard half",
"slotId": 1,
"i2cAddress": 16,
"firmwareUpgradeSupported": true
},
"info": {
"moduleProtocolVersion": "4.3.0",
"firmwareVersion": "14.0.1",
"firmwareGitRepo": "UltimateHackingKeyboard/firmware",
"firmwareGitTag": "v14.0.1",
"remoteFirmwareChecksum": "628e2b535f3c722456e2985f6a0157d1"
}
}
],
"rightModuleInfo": {
"firmwareVersion": "14.0.1",
"deviceProtocolVersion": "4.15.0",
"moduleProtocolVersion": "4.3.0",
"userConfigVersion": "11.0.0",
"hardwareConfigVersion": "1.0.0",
"smartMacrosVersion": "3.4.1",
"firmwareGitRepo": "UltimateHackingKeyboard/firmware",
"firmwareGitTag": "v14.0.1",
"builtFirmwareChecksum": "faa4eeb38630f30b67e521c435e4fef7",
"modules": {
"1": {
"builtFirmwareChecksum": "628e2b535f3c722456e2985f6a0157d1"
}
}
}
},
"isMacroStatusDirty": false,
"isZephyrLogAvailable": false,
"leftHalfDetected": false,
"multiDevice": false,
"newPairedDevices": [],
"udevRulesInfo": "Ok",
"connectedDevice": {
"id": 4,
"asCliArg": "uhk80-right",
"firmwareUpgradeMethod": "mcuboot",
"logName": "UHK 80 right",
"name": "UHK 80",
"keyboard": [
{
"vid": 14248,
"pid": 9
}
],
"bootloader": [
{
"vid": 14248,
"pid": 8
}
],
"buspal": [],
"reportId": 4
},
"bleAddress": "e6:99:d8:42:06:ed"
}
[2025-06-11 10:59:17.289] [info] [DeviceRendererService] dispatch action [device] connection state changed
[2025-06-11 10:59:17.296] [info] [SmartMacroDocRendererService] downloadDocumentation
[2025-06-11 10:59:17.297] [info] [SmartMacroService] start downloading firmware documentation {
firmwareGitRepo: 'UltimateHackingKeyboard/firmware',
firmwareGitTag: 'v14.0.1'
}
[2025-06-11 10:59:17.298] [info] [DeviceOperation] status buffer segment:
[2025-06-11 10:59:17.298] [info] [SmartMacroService] firmware documentation downloaded earlier
[2025-06-11 10:59:17.298] [info] [SmartMacroService] reference manual downloaded earlier
[2025-06-11 10:59:17.306] [info] [DeviceRendererService] dispatch action [device] Status buffer changed
[2025-06-11 10:59:17.307] [info] [SmartMacroDocRendererService] dispatch action: [smart-macro-doc] download documentation success
[2025-06-11 10:59:17.307] [info] [SmartMacroDocRendererService] dispatch action: [smart-macro-doc] reference manual changed
[2025-06-11 10:59:32.860] [info] [DeviceOperation] Read "leftHalf" version information
[2025-06-11 10:59:32.875] [info] [DeviceOperation] Read "leftHalf" repo information
[2025-06-11 10:59:32.906] [info] [DeviceOperation] Read "leftHalf" firmware checksum
[2025-06-11 10:59:32.922] [info] [DeviceOperation] Read "leftModule" version information
[2025-06-11 10:59:32.937] [info] [DeviceOperation] Read "leftModule" repo information
[2025-06-11 10:59:32.962] [info] [DeviceOperation] Read "leftModule" firmware checksum
[2025-06-11 10:59:33.025] [info] [DeviceService] Device connection state changed to: {
"bootloaderActive": false,
"bleDeviceConnected": true,
"communicationInterfaceAvailable": true,
"dongle": {
"bootloaderActive": false,
"multiDevice": false,
"serialNumber": ""
},
"leftHalfBootloaderActive": false,
"hasPermission": true,
"halvesInfo": {
"areHalvesMerged": false,
"isLeftHalfConnected": true,
"leftModuleSlot": 2,
"rightModuleSlot": 0
},
"hardwareModules": {
"moduleInfos": [
{
"module": {
"id": 1,
"name": "Left keyboard half",
"slotId": 1,
"i2cAddress": 16,
"firmwareUpgradeSupported": true
},
"info": {
"moduleProtocolVersion": "4.3.0",
"firmwareVersion": "14.0.1",
"firmwareGitRepo": "UltimateHackingKeyboard/firmware",
"firmwareGitTag": "v14.0.1",
"remoteFirmwareChecksum": "628e2b535f3c722456e2985f6a0157d1"
}
},
{
"module": {
"id": 2,
"name": "Key cluster",
"configPath": "/add-on/key-cluster",
"slotId": 2,
"i2cAddress": 32,
"firmwareUpgradeSupported": true
},
"info": {
"moduleProtocolVersion": "4.3.0",
"firmwareVersion": "13.0.2",
"firmwareGitRepo": "UltimateHackingKeyboard/firmware",
"firmwareGitTag": "v13.0.2",
"remoteFirmwareChecksum": "a0323a7f4ae17b6be9c5d1a0954e49de"
}
}
],
"rightModuleInfo": {
"firmwareVersion": "14.0.1",
"deviceProtocolVersion": "4.15.0",
"moduleProtocolVersion": "4.3.0",
"userConfigVersion": "11.0.0",
"hardwareConfigVersion": "1.0.0",
"smartMacrosVersion": "3.4.1",
"firmwareGitRepo": "UltimateHackingKeyboard/firmware",
"firmwareGitTag": "v14.0.1",
"builtFirmwareChecksum": "faa4eeb38630f30b67e521c435e4fef7",
"modules": {
"1": {
"builtFirmwareChecksum": "628e2b535f3c722456e2985f6a0157d1"
},
"2": {
"builtFirmwareChecksum": "a0323a7f4ae17b6be9c5d1a0954e49de"
}
}
}
},
"isMacroStatusDirty": false,
"isZephyrLogAvailable": false,
"leftHalfDetected": false,
"multiDevice": false,
"newPairedDevices": [],
"udevRulesInfo": "Ok",
"connectedDevice": {
"id": 4,
"asCliArg": "uhk80-right",
"firmwareUpgradeMethod": "mcuboot",
"logName": "UHK 80 right",
"name": "UHK 80",
"keyboard": [
{
"vid": 14248,
"pid": 9
}
],
"bootloader": [
{
"vid": 14248,
"pid": 8
}
],
"buspal": [],
"reportId": 4
},
"bleAddress": "e6:99:d8:42:06:ed"
}
[2025-06-11 10:59:33.024] [info] [DeviceRendererService] dispatch action [device] connection state changed
[2025-06-11 10:59:33.031] [info] [SmartMacroDocRendererService] downloadDocumentation
[2025-06-11 10:59:33.032] [info] [SmartMacroService] start downloading firmware documentation {
firmwareGitRepo: 'UltimateHackingKeyboard/firmware',
firmwareGitTag: 'v14.0.1'
}
[2025-06-11 10:59:33.032] [info] [DeviceOperation] status buffer segment:
[2025-06-11 10:59:33.033] [info] [SmartMacroService] firmware documentation downloaded earlier
[2025-06-11 10:59:33.033] [info] [SmartMacroService] reference manual downloaded earlier
[2025-06-11 10:59:33.041] [info] [DeviceRendererService] dispatch action [device] Status buffer changed
[2025-06-11 10:59:33.042] [info] [SmartMacroDocRendererService] dispatch action: [smart-macro-doc] download documentation success
[2025-06-11 10:59:33.042] [info] [SmartMacroDocRendererService] dispatch action: [smart-macro-doc] reference manual changed
[2025-06-11 10:59:34.409] [info] [DeviceOperation] Read "leftHalf" version information
[2025-06-11 10:59:34.425] [info] [DeviceOperation] Read "leftHalf" repo information
[2025-06-11 10:59:34.456] [info] [DeviceOperation] Read "leftHalf" firmware checksum
[2025-06-11 10:59:34.495] [info] [DeviceService] Device connection state changed to: {
"bootloaderActive": false,
"bleDeviceConnected": true,
"communicationInterfaceAvailable": true,
"dongle": {
"bootloaderActive": false,
"multiDevice": false,
"serialNumber": ""
},
"leftHalfBootloaderActive": false,
"hasPermission": true,
"halvesInfo": {
"areHalvesMerged": false,
"isLeftHalfConnected": true,
"leftModuleSlot": 0,
"rightModuleSlot": 0
},
"hardwareModules": {
"moduleInfos": [
{
"module": {
"id": 1,
"name": "Left keyboard half",
"slotId": 1,
"i2cAddress": 16,
"firmwareUpgradeSupported": true
},
"info": {
"moduleProtocolVersion": "4.3.0",
"firmwareVersion": "14.0.1",
"firmwareGitRepo": "UltimateHackingKeyboard/firmware",
"firmwareGitTag": "v14.0.1",
"remoteFirmwareChecksum": "628e2b535f3c722456e2985f6a0157d1"
}
}
],
"rightModuleInfo": {
"firmwareVersion": "14.0.1",
"deviceProtocolVersion": "4.15.0",
"moduleProtocolVersion": "4.3.0",
"userConfigVersion": "11.0.0",
"hardwareConfigVersion": "1.0.0",
"smartMacrosVersion": "3.4.1",
"firmwareGitRepo": "UltimateHackingKeyboard/firmware",
"firmwareGitTag": "v14.0.1",
"builtFirmwareChecksum": "faa4eeb38630f30b67e521c435e4fef7",
"modules": {
"1": {
"builtFirmwareChecksum": "628e2b535f3c722456e2985f6a0157d1"
}
}
}
},
"isMacroStatusDirty": false,
"isZephyrLogAvailable": false,
"leftHalfDetected": false,
"multiDevice": false,
"newPairedDevices": [],
"udevRulesInfo": "Ok",
"connectedDevice": {
"id": 4,
"asCliArg": "uhk80-right",
"firmwareUpgradeMethod": "mcuboot",
"logName": "UHK 80 right",
"name": "UHK 80",
"keyboard": [
{
"vid": 14248,
"pid": 9
}
],
"bootloader": [
{
"vid": 14248,
"pid": 8
}
],
"buspal": [],
"reportId": 4
},
"bleAddress": "e6:99:d8:42:06:ed"
}
[2025-06-11 10:59:34.494] [info] [DeviceRendererService] dispatch action [device] connection state changed
[2025-06-11 10:59:34.498] [info] [SmartMacroDocRendererService] downloadDocumentation
[2025-06-11 10:59:34.499] [info] [SmartMacroService] start downloading firmware documentation {
firmwareGitRepo: 'UltimateHackingKeyboard/firmware',
firmwareGitTag: 'v14.0.1'
}
[2025-06-11 10:59:34.500] [info] [SmartMacroService] firmware documentation downloaded earlier
[2025-06-11 10:59:34.501] [info] [SmartMacroService] reference manual downloaded earlier
[2025-06-11 10:59:34.502] [info] [DeviceOperation] status buffer segment:
[2025-06-11 10:59:34.505] [info] [SmartMacroDocRendererService] dispatch action: [smart-macro-doc] download documentation success
[2025-06-11 10:59:34.505] [info] [SmartMacroDocRendererService] dispatch action: [smart-macro-doc] reference manual changed
[2025-06-11 10:59:34.505] [info] [DeviceRendererService] dispatch action [device] Status buffer changed
[2025-06-11 10:59:35.909] [info] [DeviceOperation] Read "leftHalf" version information
[2025-06-11 10:59:35.925] [info] [DeviceOperation] Read "leftHalf" repo information
[2025-06-11 10:59:35.955] [info] [DeviceOperation] Read "leftHalf" firmware checksum
[2025-06-11 10:59:35.971] [info] [DeviceOperation] Read "leftModule" version information
[2025-06-11 10:59:35.980] [info] [DeviceOperation] Read "leftModule" repo information
[2025-06-11 10:59:35.995] [info] [DeviceOperation] Read "leftModule" firmware checksum
[2025-06-11 10:59:36.058] [info] [DeviceService] Device connection state changed to: {
"bootloaderActive": false,
"bleDeviceConnected": true,
"communicationInterfaceAvailable": true,
"dongle": {
"bootloaderActive": false,
"multiDevice": false,
"serialNumber": ""
},
"leftHalfBootloaderActive": false,
"hasPermission": true,
"halvesInfo": {
"areHalvesMerged": false,
"isLeftHalfConnected": true,
"leftModuleSlot": 2,
"rightModuleSlot": 0
},
"hardwareModules": {
"moduleInfos": [
{
"module": {
"id": 1,
"name": "Left keyboard half",
"slotId": 1,
"i2cAddress": 16,
"firmwareUpgradeSupported": true
},
"info": {
"moduleProtocolVersion": "4.3.0",
"firmwareVersion": "14.0.1",
"firmwareGitRepo": "UltimateHackingKeyboard/firmware",
"firmwareGitTag": "v14.0.1",
"remoteFirmwareChecksum": "628e2b535f3c722456e2985f6a0157d1"
}
},
{
"module": {
"id": 2,
"name": "Key cluster",
"configPath": "/add-on/key-cluster",
"slotId": 2,
"i2cAddress": 32,
"firmwareUpgradeSupported": true
},
"info": {
"moduleProtocolVersion": "4.3.0",
"firmwareVersion": "13.0.2",
"firmwareGitRepo": "UltimateHackingKeyboard/firmware",
"firmwareGitTag": "v13.0.2",
"remoteFirmwareChecksum": "a0323a7f4ae17b6be9c5d1a0954e49de"
}
}
],
"rightModuleInfo": {
"firmwareVersion": "14.0.1",
"deviceProtocolVersion": "4.15.0",
"moduleProtocolVersion": "4.3.0",
"userConfigVersion": "11.0.0",
"hardwareConfigVersion": "1.0.0",
"smartMacrosVersion": "3.4.1",
"firmwareGitRepo": "UltimateHackingKeyboard/firmware",
"firmwareGitTag": "v14.0.1",
"builtFirmwareChecksum": "faa4eeb38630f30b67e521c435e4fef7",
"modules": {
"1": {
"builtFirmwareChecksum": "628e2b535f3c722456e2985f6a0157d1"
},
"2": {
"builtFirmwareChecksum": "a0323a7f4ae17b6be9c5d1a0954e49de"
}
}
}
},
"isMacroStatusDirty": false,
"isZephyrLogAvailable": false,
"leftHalfDetected": false,
"multiDevice": false,
"newPairedDevices": [],
"udevRulesInfo": "Ok",
"connectedDevice": {
"id": 4,
"asCliArg": "uhk80-right",
"firmwareUpgradeMethod": "mcuboot",
"logName": "UHK 80 right",
"name": "UHK 80",
"keyboard": [
{
"vid": 14248,
"pid": 9
}
],
"bootloader": [
{
"vid": 14248,
"pid": 8
}
],
"buspal": [],
"reportId": 4
},
"bleAddress": "e6:99:d8:42:06:ed"
}
[2025-06-11 10:59:36.057] [info] [DeviceRendererService] dispatch action [device] connection state changed
[2025-06-11 10:59:36.066] [info] [SmartMacroDocRendererService] downloadDocumentation
[2025-06-11 10:59:36.068] [info] [SmartMacroService] start downloading firmware documentation {
firmwareGitRepo: 'UltimateHackingKeyboard/firmware',
firmwareGitTag: 'v14.0.1'
}
[2025-06-11 10:59:36.069] [info] [DeviceOperation] status buffer segment:
[2025-06-11 10:59:36.069] [info] [SmartMacroService] firmware documentation downloaded earlier
[2025-06-11 10:59:36.070] [info] [SmartMacroService] reference manual downloaded earlier
[2025-06-11 10:59:36.074] [info] [DeviceRendererService] dispatch action [device] Status buffer changed
[2025-06-11 10:59:36.075] [info] [SmartMacroDocRendererService] dispatch action: [smart-macro-doc] download documentation success
[2025-06-11 10:59:36.075] [info] [SmartMacroDocRendererService] dispatch action: [smart-macro-doc] reference manual changed
[2025-06-11 10:59:37.121] [info] [DeviceOperation] Read "leftHalf" version information
[2025-06-11 10:59:37.129] [info] [DeviceOperation] Read "leftHalf" repo information
[2025-06-11 10:59:37.162] [info] [DeviceOperation] Read "leftHalf" firmware checksum
[2025-06-11 10:59:37.176] [info] [DeviceOperation] Read "leftModule" version information
[2025-06-11 10:59:37.191] [info] [DeviceOperation] Read "leftModule" repo information
[2025-06-11 10:59:37.208] [info] [DeviceOperation] Read "leftModule" firmware checksum
[2025-06-11 10:59:37.263] [info] [DeviceService] Device connection state changed to: {
"bootloaderActive": false,
"bleDeviceConnected": true,
"communicationInterfaceAvailable": true,
"dongle": {
"bootloaderActive": false,
"multiDevice": false,
"serialNumber": ""
},
"leftHalfBootloaderActive": false,
"hasPermission": true,
"halvesInfo": {
"areHalvesMerged": false,
"isLeftHalfConnected": true,
"leftModuleSlot": 0,
"rightModuleSlot": 0
},
"hardwareModules": {
"moduleInfos": [
{
"module": {
"id": 1,
"name": "Left keyboard half",
"slotId": 1,
"i2cAddress": 16,
"firmwareUpgradeSupported": true
},
"info": {
"moduleProtocolVersion": "4.3.0",
"firmwareVersion": "14.0.1",
"firmwareGitRepo": "UltimateHackingKeyboard/firmware",
"firmwareGitTag": "v14.0.1",
"remoteFirmwareChecksum": "628e2b535f3c722456e2985f6a0157d1"
}
},
{
"module": {
"id": 2,
"name": "Key cluster",
"configPath": "/add-on/key-cluster",
"slotId": 2,
"i2cAddress": 32,
"firmwareUpgradeSupported": true
},
"info": {
"moduleProtocolVersion": "4.3.0",
"firmwareVersion": "13.0.2",
"firmwareGitRepo": "UltimateHackingKeyboard/firmware",
"firmwareGitTag": "v13.0.2",
"remoteFirmwareChecksum": "a0323a7f4ae17b6be9c5d1a0954e49de"
}
}
],
"rightModuleInfo": {
"firmwareVersion": "14.0.1",
"deviceProtocolVersion": "4.15.0",
"moduleProtocolVersion": "4.3.0",
"userConfigVersion": "11.0.0",
"hardwareConfigVersion": "1.0.0",
"smartMacrosVersion": "3.4.1",
"firmwareGitRepo": "UltimateHackingKeyboard/firmware",
"firmwareGitTag": "v14.0.1",
"builtFirmwareChecksum": "faa4eeb38630f30b67e521c435e4fef7",
"modules": {
"1": {
"builtFirmwareChecksum": "628e2b535f3c722456e2985f6a0157d1"
},
"2": {
"builtFirmwareChecksum": "a0323a7f4ae17b6be9c5d1a0954e49de"
}
}
}
},
"isMacroStatusDirty": false,
"isZephyrLogAvailable": false,
"leftHalfDetected": false,
"multiDevice": false,
"newPairedDevices": [],
"udevRulesInfo": "Ok",
"connectedDevice": {
"id": 4,
"asCliArg": "uhk80-right",
"firmwareUpgradeMethod": "mcuboot",
"logName": "UHK 80 right",
"name": "UHK 80",
"keyboard": [
{
"vid": 14248,
"pid": 9
}
],
"bootloader": [
{
"vid": 14248,
"pid": 8
}
],
"buspal": [],
"reportId": 4
},
"bleAddress": "e6:99:d8:42:06:ed"
}
[2025-06-11 10:59:37.262] [info] [DeviceRendererService] dispatch action [device] connection state changed
[2025-06-11 10:59:37.265] [info] [SmartMacroDocRendererService] downloadDocumentation
[2025-06-11 10:59:37.266] [info] [SmartMacroService] start downloading firmware documentation {
firmwareGitRepo: 'UltimateHackingKeyboard/firmware',
firmwareGitTag: 'v14.0.1'
}
[2025-06-11 10:59:37.267] [info] [SmartMacroService] firmware documentation downloaded earlier
[2025-06-11 10:59:37.267] [info] [SmartMacroService] reference manual downloaded earlier
[2025-06-11 10:59:37.270] [info] [DeviceOperation] status buffer segment:
[2025-06-11 10:59:37.272] [info] [SmartMacroDocRendererService] dispatch action: [smart-macro-doc] download documentation success
[2025-06-11 10:59:37.272] [info] [SmartMacroDocRendererService] dispatch action: [smart-macro-doc] reference manual changed
[2025-06-11 10:59:37.272] [info] [DeviceRendererService] dispatch action [device] Status buffer changed
[2025-06-11 10:59:37.668] [info] [DeviceOperation] Read "leftHalf" version information
[2025-06-11 10:59:37.685] [info] [DeviceOperation] Read "leftHalf" repo information
[2025-06-11 10:59:37.716] [info] [DeviceOperation] Read "leftHalf" firmware checksum
[2025-06-11 10:59:37.731] [info] [DeviceOperation] Read "leftModule" version information
[2025-06-11 10:59:37.748] [info] [DeviceOperation] Read "leftModule" repo information
[2025-06-11 10:59:37.779] [info] [DeviceOperation] Read "leftModule" firmware checksum
[2025-06-11 10:59:37.825] [info] [DeviceService] Device connection state changed to: {
"bootloaderActive": false,
"bleDeviceConnected": true,
"communicationInterfaceAvailable": true,
"dongle": {
"bootloaderActive": false,
"multiDevice": false,
"serialNumber": ""
},
"leftHalfBootloaderActive": false,
"hasPermission": true,
"halvesInfo": {
"areHalvesMerged": false,
"isLeftHalfConnected": true,
"leftModuleSlot": 2,
"rightModuleSlot": 0
},
"hardwareModules": {
"moduleInfos": [
{
"module": {
"id": 1,
"name": "Left keyboard half",
"slotId": 1,
"i2cAddress": 16,
"firmwareUpgradeSupported": true
},
"info": {
"moduleProtocolVersion": "4.3.0",
"firmwareVersion": "14.0.1",
"firmwareGitRepo": "UltimateHackingKeyboard/firmware",
"firmwareGitTag": "v14.0.1",
"remoteFirmwareChecksum": "628e2b535f3c722456e2985f6a0157d1"
}
},
{
"module": {
"id": 2,
"name": "Key cluster",
"configPath": "/add-on/key-cluster",
"slotId": 2,
"i2cAddress": 32,
"firmwareUpgradeSupported": true
},
"info": {
"moduleProtocolVersion": "4.3.0",
"firmwareVersion": "13.0.2",
"firmwareGitRepo": "UltimateHackingKeyboard/firmware",
"firmwareGitTag": "v13.0.2",
"remoteFirmwareChecksum": "a0323a7f4ae17b6be9c5d1a0954e49de"
}
}
],
"rightModuleInfo": {
"firmwareVersion": "14.0.1",
"deviceProtocolVersion": "4.15.0",
"moduleProtocolVersion": "4.3.0",
"userConfigVersion": "11.0.0",
"hardwareConfigVersion": "1.0.0",
"smartMacrosVersion": "3.4.1",
"firmwareGitRepo": "UltimateHackingKeyboard/firmware",
"firmwareGitTag": "v14.0.1",
"builtFirmwareChecksum": "faa4eeb38630f30b67e521c435e4fef7",
"modules": {
"1": {
"builtFirmwareChecksum": "628e2b535f3c722456e2985f6a0157d1"
},
"2": {
"builtFirmwareChecksum": "a0323a7f4ae17b6be9c5d1a0954e49de"
}
}
}
},
"isMacroStatusDirty": false,
"isZephyrLogAvailable": false,
"leftHalfDetected": false,
"multiDevice": false,
"newPairedDevices": [],
"udevRulesInfo": "Ok",
"connectedDevice": {
"id": 4,
"asCliArg": "uhk80-right",
"firmwareUpgradeMethod": "mcuboot",
"logName": "UHK 80 right",
"name": "UHK 80",
"keyboard": [
{
"vid": 14248,
"pid": 9
}
],
"bootloader": [
{
"vid": 14248,
"pid": 8
}
],
"buspal": [],
"reportId": 4
},
"bleAddress": "e6:99:d8:42:06:ed"
}
[2025-06-11 10:59:37.824] [info] [DeviceRendererService] dispatch action [device] connection state changed
[2025-06-11 10:59:37.829] [info] [SmartMacroDocRendererService] downloadDocumentation
[2025-06-11 10:59:37.831] [info] [SmartMacroService] start downloading firmware documentation {
firmwareGitRepo: 'UltimateHackingKeyboard/firmware',
firmwareGitTag: 'v14.0.1'
}
[2025-06-11 10:59:37.831] [info] [DeviceOperation] status buffer segment:
[2025-06-11 10:59:37.831] [info] [SmartMacroService] firmware documentation downloaded earlier
[2025-06-11 10:59:37.832] [info] [SmartMacroService] reference manual downloaded earlier
[2025-06-11 10:59:37.836] [info] [DeviceRendererService] dispatch action [device] Status buffer changed
[2025-06-11 10:59:37.836] [info] [SmartMacroDocRendererService] dispatch action: [smart-macro-doc] download documentation success
[2025-06-11 10:59:37.836] [info] [SmartMacroDocRendererService] dispatch action: [smart-macro-doc] reference manual changed
[2025-06-11 15:31:37.248] [info] [AppRendererService] open url: https://github.com/UltimateHackingKeyboard/agent
[2025-06-11 15:31:48.307] [info] [AppUpdateEffect] call checkForUpdate
[2025-06-11 15:31:48.308] [info] [AppUpdateService] checkForUpdate request from renderer process. Allow prerelease: false
[2025-06-11 15:31:48.309] [info] Checking for update
[2025-06-11 15:31:48.309] [info] [AppUpdateService] checking for update
[2025-06-11 15:31:48.309] [info] sendIpcToWindow: checking-for-update undefined
[2025-06-11 15:31:49.654] [info] Update for version 7.0.1 is not available (latest version: 7.0.1, downgrade is disallowed).
[2025-06-11 15:31:49.655] [info] [AppUpdateService] update not available
[2025-06-11 15:31:49.655] [info] sendIpcToWindow: update-not-available {
tag: 'v7.0.1',
version: '7.0.1',
files: [
{
url: 'UHK.Agent-7.0.1-win.exe',
sha512: 'S7mITi4vA9BoMod3rx10J3VPB/AYUSzijhPmUHymClvinHlns5PGUX086TyGGPVbCD0RaEs7E+dj2e3x+lkZ5g==',
size: 179822280
},
{
url: 'UHK.Agent-7.0.1-win-ia32.exe',
sha512: 'dOgp6MlkQ56g/+5DjGGaDaNsTqKTF6qn8YrO1BUAX2iTr6Mu5T6sckkb60o0yHUfPRHlvxsb1v7DdmQLFGvlNA==',
size: 87368192
},
{
url: 'UHK.Agent-7.0.1-win-x64.exe',
sha512: 'THNluxx2SdWbJQIik5O4YKOc+GPBxu3uAncze32MbnrObOQVbrtFRsEUAxf1qejJRBo6PsjLuWzHZmRVDXSK5Q==',
size: 93139504
}
],
path: 'UHK.Agent-7.0.1-win.exe',
sha512: 'S7mITi4vA9BoMod3rx10J3VPB/AYUSzijhPmUHymClvinHlns5PGUX086TyGGPVbCD0RaEs7E+dj2e3x+lkZ5g==',
releaseDate: '2025-05-22T08:30:01.412Z',
releaseName: '7.0.1',
releaseNotes: '<p>Firmware: 14.0.1 [<a href="https://github.com/UltimateHackingKeyboard/firmware/releases/tag/v14.0.1">release</a>] | Device Protocol: 4.15.0 | User Config: 11.0.0 | Hardware Config: 1.0.0</p>\n' +
'<ul>\n' +
'<li>Add sleep mode to the device tab of the key action popover.</li>\n' +
'</ul>'
}
[2025-06-11 15:31:49.656] [info] [AppUpdateService] checkForUpdate success
[2025-06-11 15:31:49.656] [info] update-not-available
[2025-06-11 15:31:49.656] [info] [AppUpdateService] dispatch action: [app-update-config] Check for update success
[2025-06-11 15:55:46.747] [info] [DeviceOperation] Read "leftHalf" version information
[2025-06-11 15:55:46.755] [info] [DeviceOperation] Read "leftHalf" repo information
[2025-06-11 15:55:46.772] [info] [DeviceOperation] Read "leftHalf" firmware checksum
[2025-06-11 15:55:46.804] [info] [DeviceService] Device connection state changed to: {
"bootloaderActive": false,
"bleDeviceConnected": true,
"communicationInterfaceAvailable": true,
"dongle": {
"bootloaderActive": false,
"multiDevice": false,
"serialNumber": ""
},
"leftHalfBootloaderActive": false,
"hasPermission": true,
"halvesInfo": {
"areHalvesMerged": false,
"isLeftHalfConnected": true,
"leftModuleSlot": 0,
"rightModuleSlot": 0
},
"hardwareModules": {
"moduleInfos": [
{
"module": {
"id": 1,
"name": "Left keyboard half",
"slotId": 1,
"i2cAddress": 16,
"firmwareUpgradeSupported": true
},
"info": {
"moduleProtocolVersion": "4.3.0",
"firmwareVersion": "14.0.1",
"firmwareGitRepo": "UltimateHackingKeyboard/firmware",
"firmwareGitTag": "v14.0.1",
"remoteFirmwareChecksum": "628e2b535f3c722456e2985f6a0157d1"
}
}
],
"rightModuleInfo": {
"firmwareVersion": "14.0.1",
"deviceProtocolVersion": "4.15.0",
"moduleProtocolVersion": "4.3.0",
"userConfigVersion": "11.0.0",
"hardwareConfigVersion": "1.0.0",
"smartMacrosVersion": "3.4.1",
"firmwareGitRepo": "UltimateHackingKeyboard/firmware",
"firmwareGitTag": "v14.0.1",
"builtFirmwareChecksum": "faa4eeb38630f30b67e521c435e4fef7",
"modules": {
"1": {
"builtFirmwareChecksum": "628e2b535f3c722456e2985f6a0157d1"
}
}
}
},
"isMacroStatusDirty": false,
"isZephyrLogAvailable": false,
"leftHalfDetected": false,
"multiDevice": false,
"newPairedDevices": [],
"udevRulesInfo": "Ok",
"connectedDevice": {
"id": 4,
"asCliArg": "uhk80-right",
"firmwareUpgradeMethod": "mcuboot",
"logName": "UHK 80 right",
"name": "UHK 80",
"keyboard": [
{
"vid": 14248,
"pid": 9
}
],
"bootloader": [
{
"vid": 14248,
"pid": 8
}
],
"buspal": [],
"reportId": 4
},
"bleAddress": "e6:99:d8:42:06:ed"
}
[2025-06-11 15:55:46.804] [info] [DeviceRendererService] dispatch action [device] connection state changed
[2025-06-11 15:55:46.811] [info] [DeviceOperation] status buffer segment:
[2025-06-11 15:55:46.811] [info] [SmartMacroDocRendererService] downloadDocumentation
[2025-06-11 15:55:46.812] [info] [SmartMacroService] start downloading firmware documentation {
firmwareGitRepo: 'UltimateHackingKeyboard/firmware',
firmwareGitTag: 'v14.0.1'
}
[2025-06-11 15:55:46.813] [info] [SmartMacroService] firmware documentation downloaded earlier
[2025-06-11 15:55:46.813] [info] [SmartMacroService] reference manual downloaded earlier
[2025-06-11 15:55:46.813] [info] [DeviceRendererService] dispatch action [device] Status buffer changed
[2025-06-11 15:55:46.814] [info] [SmartMacroDocRendererService] dispatch action: [smart-macro-doc] download documentation success
[2025-06-11 15:55:46.814] [info] [SmartMacroDocRendererService] dispatch action: [smart-macro-doc] reference manual changed
[2025-06-11 15:55:47.177] [info] [DeviceOperation] Read "leftHalf" version information
[2025-06-11 15:55:47.190] [info] [DeviceOperation] Read "leftHalf" repo information
[2025-06-11 15:55:47.211] [info] [DeviceOperation] Read "leftHalf" firmware checksum
[2025-06-11 15:55:47.219] [info] [DeviceOperation] Read "leftModule" version information
[2025-06-11 15:55:47.229] [info] [DeviceOperation] Read "leftModule" repo information
[2025-06-11 15:55:47.252] [info] [DeviceOperation] Read "leftModule" firmware checksum
[2025-06-11 15:55:47.303] [info] [DeviceService] Device connection state changed to: {
"bootloaderActive": false,
"bleDeviceConnected": true,
"communicationInterfaceAvailable": true,
"dongle": {
"bootloaderActive": false,
"multiDevice": false,
"serialNumber": ""
},
"leftHalfBootloaderActive": false,
"hasPermission": true,
"halvesInfo": {
"areHalvesMerged": false,
"isLeftHalfConnected": true,
"leftModuleSlot": 2,
"rightModuleSlot": 0
},
"hardwareModules": {
"moduleInfos": [
{
"module": {
"id": 1,
"name": "Left keyboard half",
"slotId": 1,
"i2cAddress": 16,
"firmwareUpgradeSupported": true
},
"info": {
"moduleProtocolVersion": "4.3.0",
"firmwareVersion": "14.0.1",
"firmwareGitRepo": "UltimateHackingKeyboard/firmware",
"firmwareGitTag": "v14.0.1",
"remoteFirmwareChecksum": "628e2b535f3c722456e2985f6a0157d1"
}
},
{
"module": {
"id": 2,
"name": "Key cluster",
"configPath": "/add-on/key-cluster",
"slotId": 2,
"i2cAddress": 32,
"firmwareUpgradeSupported": true
},
"info": {
"moduleProtocolVersion": "4.3.0",
"firmwareVersion": "13.0.2",
"firmwareGitRepo": "UltimateHackingKeyboard/firmware",
"firmwareGitTag": "v13.0.2",
"remoteFirmwareChecksum": "a0323a7f4ae17b6be9c5d1a0954e49de"
}
}
],
"rightModuleInfo": {
"firmwareVersion": "14.0.1",
"deviceProtocolVersion": "4.15.0",
"moduleProtocolVersion": "4.3.0",
"userConfigVersion": "11.0.0",
"hardwareConfigVersion": "1.0.0",
"smartMacrosVersion": "3.4.1",
"firmwareGitRepo": "UltimateHackingKeyboard/firmware",
"firmwareGitTag": "v14.0.1",
"builtFirmwareChecksum": "faa4eeb38630f30b67e521c435e4fef7",
"modules": {
"1": {
"builtFirmwareChecksum": "628e2b535f3c722456e2985f6a0157d1"
},
"2": {
"builtFirmwareChecksum": "a0323a7f4ae17b6be9c5d1a0954e49de"
}
}
}
},
"isMacroStatusDirty": false,
"isZephyrLogAvailable": false,
"leftHalfDetected": false,
"multiDevice": false,
"newPairedDevices": [],
"udevRulesInfo": "Ok",
"connectedDevice": {
"id": 4,
"asCliArg": "uhk80-right",
"firmwareUpgradeMethod": "mcuboot",
"logName": "UHK 80 right",
"name": "UHK 80",
"keyboard": [
{
"vid": 14248,
"pid": 9
}
],
"bootloader": [
{
"vid": 14248,
"pid": 8
}
],
"buspal": [],
"reportId": 4
},
"bleAddress": "e6:99:d8:42:06:ed"
}
[2025-06-11 15:55:47.302] [info] [DeviceRendererService] dispatch action [device] connection state changed
[2025-06-11 15:55:47.307] [info] [SmartMacroDocRendererService] downloadDocumentation
[2025-06-11 15:55:47.308] [info] [SmartMacroService] start downloading firmware documentation {
firmwareGitRepo: 'UltimateHackingKeyboard/firmware',
firmwareGitTag: 'v14.0.1'
}
[2025-06-11 15:55:47.309] [info] [DeviceOperation] status buffer segment:
[2025-06-11 15:55:47.309] [info] [SmartMacroService] firmware documentation downloaded earlier
[2025-06-11 15:55:47.309] [info] [DeviceRendererService] dispatch action [device] Status buffer changed
[2025-06-11 15:55:47.310] [info] [SmartMacroService] reference manual downloaded earlier
[2025-06-11 15:55:47.309] [info] [SmartMacroDocRendererService] dispatch action: [smart-macro-doc] download documentation success
[2025-06-11 15:55:47.312] [info] [SmartMacroDocRendererService] dispatch action: [smart-macro-doc] reference manual changed
[2025-06-11 20:57:45.235] [info] [AppRendererService] open config folder
[2025-06-11 21:50:30.327] [info] [WindowState] save settings: {
x: 172,
y: 1280,
width: 1492,
height: 1262,
isMaximized: false,
isFullScreen: false
}
[2025-06-11 21:50:30.339] [info] [WindowState] save settings success
[2025-06-11 21:50:30.372] [info] [Electron Main] win closed
[2025-06-11 21:50:30.372] [info] [DeviceService] closing.
[2025-06-11 21:50:30.372] [info] [ZephyrLogService | UHK Dongle] Closing
[2025-06-11 21:50:30.373] [info] [ZephyrLogService | UHK Dongle] wait until polling
[2025-06-11 21:50:30.373] [info] [ZephyrLogService | UHK Dongle] stopped
[2025-06-11 21:50:30.373] [info] [ZephyrLogService | UHK Dongle] releaseOperations
[2025-06-11 21:50:30.373] [info] [ZephyrLogService | UHK Dongle] no instances to release
[2025-06-11 21:50:30.373] [info] [ZephyrLogService | UHK Dongle] Closed
[2025-06-11 21:50:30.373] [info] [ZephyrLogService | UHK 80 left] Closing
[2025-06-11 21:50:30.373] [info] [ZephyrLogService | UHK 80 left] wait until polling
[2025-06-11 21:50:30.373] [info] [ZephyrLogService | UHK 80 left] stopped
[2025-06-11 21:50:30.373] [info] [ZephyrLogService | UHK 80 left] releaseOperations
[2025-06-11 21:50:30.373] [info] [ZephyrLogService | UHK 80 left] no instances to release
[2025-06-11 21:50:30.373] [info] [ZephyrLogService | UHK 80 left] Closed
[2025-06-11 21:50:30.374] [info] [DeviceService] stop poll UHK Device
[2025-06-12 08:20:45.713] [info] [Electron Main] command line arguments {}
[2025-06-12 08:20:45.719] [info] [Electron Main] init services.
[2025-06-12 08:20:45.719] [info] [Electron Main] packagesDir: C:\Users\david\AppData\Local\Programs\uhk-agent\resources
[2025-06-12 08:20:45.789] [info] [Electron Main] Create new window.
[2025-06-12 08:20:45.789] [info] [WindowState] load settings
[2025-06-12 08:20:45.795] [info] [WindowState] loaded settings {
x: 172,
y: 1280,
width: 1492,
height: 1262,
isMaximized: false,
isFullScreen: false
}
[2025-06-12 08:20:45.797] [info] [WindowState] loaded settings is visible true
[2025-06-12 08:20:45.797] [info] [WindowState] return with loaded settings
[2025-06-12 08:20:45.797] [info] [SmartMacroService] starting...
[2025-06-12 08:20:45.798] [info] [SmartMacroCopy] start
[2025-06-12 08:20:45.818] [info] [SmartMacroCopy] copy {
destination: 'C:\\Users\\david\\AppData\\Roaming\\uhk-agent\\smart-macro-docs\\UltimateHackingKeyboard\\firmware\\v14.0.1',
smartMacroDocFirmwarePath: 'C:\\Users\\david\\AppData\\Local\\Programs\\uhk-agent\\resources\\packages\\firmware\\doc'
}
[2025-06-12 08:20:45.847] [info] [SmartMacroCopy] done
[2025-06-12 08:20:45.847] [info] [SmartMacroCopy] start copy loading.html
[2025-06-12 08:20:45.850] [info] [SmartMacroCopy] end copy loading.html
[2025-06-12 08:20:45.850] [info] [SmartMacroService] get free TCP port
[2025-06-12 08:20:45.856] [info] [SmartMacroService] acquired TCP port: 50957
[2025-06-12 08:20:45.873] [info] [SmartMacroService] started on 50957.
[2025-06-12 08:20:45.928] [info] [ZephyrLogService | UHK Dongle] Inited
[2025-06-12 08:20:45.929] [info] [ZephyrLogService | UHK 80 left] Inited
[2025-06-12 08:20:45.929] [info] [DeviceService] init success
[2025-06-12 08:20:45.929] [info] [AppUpdateService] init success
[2025-06-12 08:20:45.930] [info] [AppService] init success
[2025-06-12 08:20:45.930] [info] [SudoService] App root dir: C:\Users\david\AppData\Local\Programs\uhk-agent\resources
[2025-06-12 08:20:45.941] [info] [DeviceService] Udev info: Ok
[2025-06-12 08:20:46.047] [info] [AppService] get-config: application-settings
[2025-06-12 08:20:46.049] [info] [AppService] get-config of "application-settings": {"errorPanelHeight":10,"checkForUpdateOnStartUp":true,"everAttemptedSavingToKeyboard":true,"animationEnabled":true,"appTheme":"system","backlightingColorPalette":[{"r":255,"g":0,"b":0},{"r":0,"g":255,"b":0},{"r":0,"g":0,"b":255}],"keyboardHalvesAlwaysJoined":false,"smartMacroPanelWidth":41}
[2025-06-12 08:20:46.352] [info] [DeviceRendererService] init success
[2025-06-12 08:20:46.353] [info] [AppRendererService] init success
[2025-06-12 08:20:46.356] [info] [MonacoEditorCompletionItemProvider] initialized.
[2025-06-12 08:20:46.357] [info] [SmartMacroDocRendererService] init success
[2025-06-12 08:20:46.358] [info] Renderer appStart effect start
[2025-06-12 08:20:46.358] [info] [AppRendererService] getAppStartInfo
[2025-06-12 08:20:46.359] [info] [SmartMacroService] getAppStartInfo
[2025-06-12 08:20:46.359] [info] [AppService] getAppStartInfo
[2025-06-12 08:20:46.360] [info] [AppService] getAppStartInfo response: {
commandLineArgs: { 'disable-agent-update-protection': false },
platform: 'win32',
osVersion: '10.0.26100',
udevFileContent: ''
}
[2025-06-12 08:20:46.358] [info] Renderer appStart effect end
[2025-06-12 08:20:46.360] [info] [AppService] get-config: application-settings
[2025-06-12 08:20:46.361] [info] [AppService] get-config of "application-settings": {"errorPanelHeight":10,"checkForUpdateOnStartUp":true,"everAttemptedSavingToKeyboard":true,"animationEnabled":true,"appTheme":"system","backlightingColorPalette":[{"r":255,"g":0,"b":0},{"r":0,"g":255,"b":0},{"r":0,"g":0,"b":255}],"keyboardHalvesAlwaysJoined":false,"smartMacroPanelWidth":41}
[2025-06-12 08:20:46.362] [info] [AppUpdateService] check for update at startup: { checkForUpdateOnStartUp: true }
[2025-06-12 08:20:46.362] [info] [AppUpdateService] app started. Automatically check for update.
[2025-06-12 08:20:46.362] [info] Checking for update
[2025-06-12 08:20:46.363] [info] [AppUpdateService] checking for update
[2025-06-12 08:20:46.363] [info] sendIpcToWindow: checking-for-update undefined
[2025-06-12 08:20:46.436] [info] [SmartMacroDocRendererService] dispatch action: [smart-macro-doc] service listening
[2025-06-12 08:20:46.436] [info] [AppRendererService] dispatch action: [app] process start info
[2025-06-12 08:20:46.437] [info] [AppEffect][processStartInfo] payload: {
commandLineArgs: { 'disable-agent-update-protection': false },
platform: 'win32',
osVersion: '10.0.26100',
udevFileContent: ''
}
[2025-06-12 08:20:46.483] [info] [DeviceService] start poll UHK Device
[2025-06-12 08:20:46.886] [info] [UhkHidDevice] Devices before checking permission:
[2025-06-12 08:20:46.919] [info] [UhkHidDevice] Available devices changed.
[2025-06-12 08:20:46.920] [info] [UhkHidDevice] Added: {"vendorId":"0x37A8","productId":"0x9","path":"\\\\?\\HID#VID_37A8&PID_0009&MI_00#8&1b67c4f0&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}\\KBD","serialNumber":"1886017019","manufacturer":"Ultimate Gadget Laboratories","product":"UHK 80 Right USB","release":1,"interface":0,"usagePage":1,"usage":6}
[2025-06-12 08:20:46.920] [info] [UhkHidDevice] Added: {"vendorId":"0x37A8","productId":"0x9","path":"\\\\?\\HID#VID_37A8&PID_0009&MI_03#8&1d723a3d&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}","serialNumber":"1886017019","manufacturer":"Ultimate Gadget Laboratories","product":"UHK 80 Right USB","release":1,"interface":3,"usagePage":12,"usage":1}
[2025-06-12 08:20:46.920] [info] [UhkHidDevice] Added: {"vendorId":"0x37A8","productId":"0x9","path":"\\\\?\\HID#VID_37A8&PID_0009&MI_01#8&837a8b2&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}","serialNumber":"1886017019","manufacturer":"Ultimate Gadget Laboratories","product":"UHK 80 Right USB","release":1,"interface":1,"usagePage":1,"usage":2}
[2025-06-12 08:20:46.921] [info] [UhkHidDevice] Added: {"vendorId":"0x37A8","productId":"0x9","path":"\\\\?\\HID#VID_37A8&PID_0009&MI_02#8&30a2567b&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}","serialNumber":"1886017019","manufacturer":"Ultimate Gadget Laboratories","product":"UHK 80 Right USB","release":1,"interface":2,"usagePage":65280,"usage":1}
[2025-06-12 08:20:46.987] [info] [UhkHidDevice] Available devices unchanged
[2025-06-12 08:20:47.019] [info] [UhkHidDevice] Used device: {"vendorId":"0x37A8","productId":"0x9","path":"\\\\?\\HID#VID_37A8&PID_0009&MI_02#8&30a2567b&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}","serialNumber":"1886017019","manufacturer":"Ultimate Gadget Laboratories","product":"UHK 80 Right USB","release":1,"interface":2,"usagePage":65280,"usage":1}
[2025-06-12 08:20:47.053] [info] [UhkHidDevice] productId: 9 protocol versions: {"firmwareVersion":"14.0.1","deviceProtocolVersion":"4.15.0","moduleProtocolVersion":"4.3.0","userConfigVersion":"11.0.0","hardwareConfigVersion":"1.0.0","smartMacrosVersion":"3.4.1"}
[2025-06-12 08:20:47.109] [info] [DeviceOperation] Read "leftHalf" version information
[2025-06-12 08:20:47.117] [info] [DeviceOperation] Read "leftHalf" repo information
[2025-06-12 08:20:47.148] [info] [DeviceOperation] Read "leftHalf" firmware checksum
[2025-06-12 08:20:47.163] [info] [DeviceOperation] Read "leftModule" version information
[2025-06-12 08:20:47.178] [info] [DeviceOperation] Read "leftModule" repo information
[2025-06-12 08:20:47.194] [info] [DeviceOperation] Read "leftModule" firmware checksum
[2025-06-12 08:20:47.256] [info] [DeviceService] Device connection state changed to: {
"bootloaderActive": false,
"bleDeviceConnected": true,
"communicationInterfaceAvailable": true,
"dongle": {
"bootloaderActive": false,
"multiDevice": false,
"serialNumber": ""
},
"leftHalfBootloaderActive": false,
"hasPermission": true,
"halvesInfo": {
"areHalvesMerged": false,
"isLeftHalfConnected": true,
"leftModuleSlot": 2,
"rightModuleSlot": 0
},
"hardwareModules": {
"moduleInfos": [
{
"module": {
"id": 1,
"name": "Left keyboard half",
"slotId": 1,
"i2cAddress": 16,
"firmwareUpgradeSupported": true
},
"info": {
"moduleProtocolVersion": "4.3.0",
"firmwareVersion": "14.0.1",
"firmwareGitRepo": "UltimateHackingKeyboard/firmware",
"firmwareGitTag": "v14.0.1",
"remoteFirmwareChecksum": "628e2b535f3c722456e2985f6a0157d1"
}
},
{
"module": {
"id": 2,
"name": "Key cluster",
"configPath": "/add-on/key-cluster",
"slotId": 2,
"i2cAddress": 32,
"firmwareUpgradeSupported": true
},
"info": {
"moduleProtocolVersion": "4.3.0",
"firmwareVersion": "13.0.2",
"firmwareGitRepo": "UltimateHackingKeyboard/firmware",
"firmwareGitTag": "v13.0.2",
"remoteFirmwareChecksum": "a0323a7f4ae17b6be9c5d1a0954e49de"
}
}
],
"rightModuleInfo": {
"firmwareVersion": "14.0.1",
"deviceProtocolVersion": "4.15.0",
"moduleProtocolVersion": "4.3.0",
"userConfigVersion": "11.0.0",
"hardwareConfigVersion": "1.0.0",
"smartMacrosVersion": "3.4.1",
"firmwareGitRepo": "UltimateHackingKeyboard/firmware",
"firmwareGitTag": "v14.0.1",
"builtFirmwareChecksum": "faa4eeb38630f30b67e521c435e4fef7",
"modules": {
"1": {
"builtFirmwareChecksum": "628e2b535f3c722456e2985f6a0157d1"
},
"2": {
"builtFirmwareChecksum": "a0323a7f4ae17b6be9c5d1a0954e49de"
}
}
}
},
"isMacroStatusDirty": false,
"isZephyrLogAvailable": false,
"leftHalfDetected": false,
"multiDevice": false,
"newPairedDevices": [],
"udevRulesInfo": "Ok",
"connectedDevice": {
"id": 4,
"asCliArg": "uhk80-right",
"firmwareUpgradeMethod": "mcuboot",
"logName": "UHK 80 right",
"name": "UHK 80",
"keyboard": [
{
"vid": 14248,
"pid": 9
}
],
"bootloader": [
{
"vid": 14248,
"pid": 8
}
],
"buspal": [],
"reportId": 4
},
"bleAddress": "e6:99:d8:42:06:ed"
}
[2025-06-12 08:20:47.256] [info] [DeviceRendererService] dispatch action [device] connection state changed
[2025-06-12 08:20:47.263] [info] [SmartMacroDocRendererService] downloadDocumentation
[2025-06-12 08:20:47.264] [info] [SmartMacroService] start downloading firmware documentation {
firmwareGitRepo: 'UltimateHackingKeyboard/firmware',
firmwareGitTag: 'v14.0.1'
}
[2025-06-12 08:20:47.264] [info] [DeviceService] stop poll UHK Device
[2025-06-12 08:20:47.265] [info] [SmartMacroService] firmware documentation downloaded earlier
[2025-06-12 08:20:47.266] [info] [SmartMacroService] reference manual downloaded earlier
[2025-06-12 08:20:47.266] [info] [DeviceOperation] status buffer segment:
[2025-06-12 08:20:47.279] [info] [SmartMacroDocRendererService] dispatch action: [smart-macro-doc] download documentation success
[2025-06-12 08:20:47.279] [info] [DeviceRendererService] dispatch action [device] Status buffer changed
[2025-06-12 08:20:47.280] [info] [SmartMacroDocRendererService] dispatch action: [smart-macro-doc] reference manual changed
[2025-06-12 08:20:47.280] [info] [MonacoEditorCompletionItemProvider] reference manual updated.
[2025-06-12 08:20:47.365] [info] [DeviceService] stopped poll UHK Device
[2025-06-12 08:20:47.373] [info] [UhkHidDevice] Device communication closing.
[2025-06-12 08:20:47.373] [info] [UhkHidDevice] Device communication closed.
[2025-06-12 08:20:47.374] [info] [DeviceService] start poll UHK Device
[2025-06-12 08:20:47.374] [info] [DeviceService] load user configuration
[2025-06-12 08:20:47.374] [info] [DeviceService] stop poll UHK Device
[2025-06-12 08:20:47.374] [info] [DeviceService] stopped poll UHK Device
[2025-06-12 08:20:47.406] [info] [UhkHidDevice] Available devices unchanged
[2025-06-12 08:20:47.437] [info] [DeviceRendererService] dispatch action [device] Read config sizes reply
[2025-06-12 08:20:47.439] [info] [UhkHidDevice] Used device: {"vendorId":"0x37A8","productId":"0x9","path":"\\\\?\\HID#VID_37A8&PID_0009&MI_02#8&30a2567b&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}","serialNumber":"1886017019","manufacturer":"Ultimate Gadget Laboratories","product":"UHK 80 Right USB","release":1,"interface":2,"usagePage":65280,"usage":1}
[2025-06-12 08:20:47.474] [info] [UhkHidDevice] Device communication closing.
[2025-06-12 08:20:47.475] [info] [UhkHidDevice] Device communication closed.
[2025-06-12 08:20:47.475] [info] [DeviceOperation] User config size: 32768
[2025-06-12 08:20:47.508] [info] [UhkHidDevice] Available devices unchanged
[2025-06-12 08:20:47.539] [info] [UhkHidDevice] Used device: {"vendorId":"0x37A8","productId":"0x9","path":"\\\\?\\HID#VID_37A8&PID_0009&MI_02#8&30a2567b&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}","serialNumber":"1886017019","manufacturer":"Ultimate Gadget Laboratories","product":"UHK 80 Right USB","release":1,"interface":2,"usagePage":65280,"usage":1}
[2025-06-12 08:20:47.552] [info] [DeviceOperation] userConfigSize: 7327
[2025-06-12 08:20:47.803] [info] Update for version 7.0.1 is not available (latest version: 7.0.1, downgrade is disallowed).
[2025-06-12 08:20:47.803] [info] [AppUpdateService] checkForUpdate success
[2025-06-12 08:20:49.242] [info] [UhkHidDevice] Device communication closing.
[2025-06-12 08:20:49.242] [info] [UhkHidDevice] Device communication closed.
[2025-06-12 08:20:49.243] [info] [DeviceOperation] Hardware config size: 64
[2025-06-12 08:20:49.272] [info] [UhkHidDevice] Available devices unchanged
[2025-06-12 08:20:49.304] [info] [UhkHidDevice] Used device: {"vendorId":"0x37A8","productId":"0x9","path":"\\\\?\\HID#VID_37A8&PID_0009&MI_02#8&30a2567b&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}","serialNumber":"1886017019","manufacturer":"Ultimate Gadget Laboratories","product":"UHK 80 Right USB","release":1,"interface":2,"usagePage":65280,"usage":1}
[2025-06-12 08:20:49.335] [info] [UhkHidDevice] Device communication closing.
[2025-06-12 08:20:49.335] [info] [UhkHidDevice] Device communication closed.
[2025-06-12 08:20:49.363] [info] [UhkHidDevice] Available devices unchanged
[2025-06-12 08:20:49.394] [info] [UhkHidDevice] Used device: {"vendorId":"0x37A8","productId":"0x9","path":"\\\\?\\HID#VID_37A8&PID_0009&MI_02#8&30a2567b&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}","serialNumber":"1886017019","manufacturer":"Ultimate Gadget Laboratories","product":"UHK 80 Right USB","release":1,"interface":2,"usagePage":65280,"usage":1}
[2025-06-12 08:20:49.427] [info] [UhkHidDevice] productId: 9 protocol versions: {"firmwareVersion":"14.0.1","deviceProtocolVersion":"4.15.0","moduleProtocolVersion":"4.3.0","userConfigVersion":"11.0.0","hardwareConfigVersion":"1.0.0","smartMacrosVersion":"3.4.1"}
[2025-06-12 08:20:49.490] [info] [DeviceOperation] Read "leftHalf" version information
[2025-06-12 08:20:49.505] [info] [DeviceOperation] Read "leftHalf" repo information
[2025-06-12 08:20:49.535] [info] [DeviceOperation] Read "leftHalf" firmware checksum
[2025-06-12 08:20:49.550] [info] [DeviceOperation] Read "leftModule" version information
[2025-06-12 08:20:49.566] [info] [DeviceOperation] Read "leftModule" repo information
[2025-06-12 08:20:49.596] [info] [DeviceOperation] Read "leftModule" firmware checksum
[2025-06-12 08:20:49.634] [info] [UhkHidDevice] Device communication closing.
[2025-06-12 08:20:49.635] [info] [UhkHidDevice] Device communication closed.
[2025-06-12 08:20:49.635] [info] [DeviceService] start poll UHK Device
[2025-06-12 08:20:49.636] [info] [DeviceRendererService] dispatch action [user-config] Load User Config from Device reply
[2025-06-12 08:20:49.648] [info] [DeviceService] Check BLE Addresses are paired
[2025-06-12 08:20:49.648] [info] [DeviceService] stop poll UHK Device
[2025-06-12 08:20:49.648] [info] [DeviceService] stopped poll UHK Device
[2025-06-12 08:20:49.648] [info] [SmartMacroDocRendererService] downloadDocumentation
[2025-06-12 08:20:49.649] [info] [SmartMacroService] start downloading firmware documentation {
firmwareGitRepo: 'UltimateHackingKeyboard/firmware',
firmwareGitTag: 'v14.0.1'
}
[2025-06-12 08:20:49.649] [info] [SmartMacroService] firmware documentation downloaded earlier
[2025-06-12 08:20:49.650] [info] [SmartMacroService] reference manual downloaded earlier
[2025-06-12 08:20:49.659] [info] [SmartMacroDocRendererService] dispatch action: [smart-macro-doc] download documentation success
[2025-06-12 08:20:49.659] [info] [SmartMacroDocRendererService] dispatch action: [smart-macro-doc] reference manual changed
[2025-06-12 08:20:49.659] [info] [AppEffects] navigate to { commands: [ '/' ] }
[2025-06-12 08:20:49.680] [info] [UhkHidDevice] Available devices unchanged
[2025-06-12 08:20:49.712] [info] [UhkHidDevice] Used device: {"vendorId":"0x37A8","productId":"0x9","path":"\\\\?\\HID#VID_37A8&PID_0009&MI_02#8&30a2567b&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}","serialNumber":"1886017019","manufacturer":"Ultimate Gadget Laboratories","product":"UHK 80 Right USB","release":1,"interface":2,"usagePage":65280,"usage":1}
[2025-06-12 08:20:49.723] [info] [UhkHidDevice] productId: 9 protocol versions: {"firmwareVersion":"14.0.1","deviceProtocolVersion":"4.15.0","moduleProtocolVersion":"4.3.0","userConfigVersion":"11.0.0","hardwareConfigVersion":"1.0.0","smartMacrosVersion":"3.4.1"}
[2025-06-12 08:20:49.739] [info] [DeviceService] start poll UHK Device
[2025-06-12 08:20:49.765] [info] [DeviceRendererService] dispatch action [device] check are host connections paired reply
[2025-06-12 08:20:49.930] [info] [DeviceOperation] Read "leftHalf" version information
[2025-06-12 08:20:49.944] [info] [DeviceOperation] Read "leftHalf" repo information
[2025-06-12 08:20:49.975] [info] [DeviceOperation] Read "leftHalf" firmware checksum
[2025-06-12 08:20:49.990] [info] [DeviceOperation] Read "leftModule" version information
[2025-06-12 08:20:50.007] [info] [DeviceOperation] Read "leftModule" repo information
[2025-06-12 08:20:50.039] [info] [DeviceOperation] Read "leftModule" firmware checksum
[2025-06-12 08:20:50.102] [info] [DeviceService] Device connection state changed to: {
"bootloaderActive": false,
"bleDeviceConnected": true,
"communicationInterfaceAvailable": true,
"dongle": {
"bootloaderActive": false,
"multiDevice": false,
"serialNumber": ""
},
"leftHalfBootloaderActive": false,
"hasPermission": true,
"halvesInfo": {
"areHalvesMerged": false,
"isLeftHalfConnected": true,
"leftModuleSlot": 2,
"rightModuleSlot": 0
},
"hardwareModules": {
"moduleInfos": [
{
"module": {
"id": 1,
"name": "Left keyboard half",
"slotId": 1,
"i2cAddress": 16,
"firmwareUpgradeSupported": true
},
"info": {
"moduleProtocolVersion": "4.3.0",
"firmwareVersion": "14.0.1",
"firmwareGitRepo": "UltimateHackingKeyboard/firmware",
"firmwareGitTag": "v14.0.1",
"remoteFirmwareChecksum": "628e2b535f3c722456e2985f6a0157d1"
}
},
{
"module": {
"id": 2,
"name": "Key cluster",
"configPath": "/add-on/key-cluster",
"slotId": 2,
"i2cAddress": 32,
"firmwareUpgradeSupported": true
},
"info": {
"moduleProtocolVersion": "4.3.0",
"firmwareVersion": "13.0.2",
"firmwareGitRepo": "UltimateHackingKeyboard/firmware",
"firmwareGitTag": "v13.0.2",
"remoteFirmwareChecksum": "a0323a7f4ae17b6be9c5d1a0954e49de"
}
}
],
"rightModuleInfo": {
"firmwareVersion": "14.0.1",
"deviceProtocolVersion": "4.15.0",
"moduleProtocolVersion": "4.3.0",
"userConfigVersion": "11.0.0",
"hardwareConfigVersion": "1.0.0",
"smartMacrosVersion": "3.4.1",
"firmwareGitRepo": "UltimateHackingKeyboard/firmware",
"firmwareGitTag": "v14.0.1",
"builtFirmwareChecksum": "faa4eeb38630f30b67e521c435e4fef7",
"modules": {
"1": {
"builtFirmwareChecksum": "628e2b535f3c722456e2985f6a0157d1"
},
"2": {
"builtFirmwareChecksum": "a0323a7f4ae17b6be9c5d1a0954e49de"
}
}
}
},
"isMacroStatusDirty": false,
"isZephyrLogAvailable": false,
"leftHalfDetected": false,
"multiDevice": false,
"newPairedDevices": [],
"udevRulesInfo": "Ok",
"connectedDevice": {
"id": 4,
"asCliArg": "uhk80-right",
"firmwareUpgradeMethod": "mcuboot",
"logName": "UHK 80 right",
"name": "UHK 80",
"keyboard": [
{
"vid": 14248,
"pid": 9
}
],
"bootloader": [
{
"vid": 14248,
"pid": 8
}
],
"buspal": [],
"reportId": 4
},
"bleAddress": "e6:99:d8:42:06:ed"
}
[2025-06-12 08:20:50.102] [info] [DeviceRendererService] dispatch action [device] connection state changed
[2025-06-12 08:20:50.107] [info] [SmartMacroDocRendererService] downloadDocumentation
[2025-06-12 08:20:50.107] [info] [SmartMacroService] start downloading firmware documentation {
firmwareGitRepo: 'UltimateHackingKeyboard/firmware',
firmwareGitTag: 'v14.0.1'
}
[2025-06-12 08:20:50.108] [info] [SmartMacroService] firmware documentation downloaded earlier
[2025-06-12 08:20:50.108] [info] [SmartMacroService] reference manual downloaded earlier
[2025-06-12 08:20:50.109] [info] [DeviceOperation] status buffer segment:
[2025-06-12 08:20:50.113] [info] [SmartMacroDocRendererService] dispatch action: [smart-macro-doc] download documentation success
[2025-06-12 08:20:50.114] [info] [DeviceRendererService] dispatch action [device] Status buffer changed
[2025-06-12 08:20:50.114] [info] [SmartMacroDocRendererService] dispatch action: [smart-macro-doc] reference manual changed
[2025-06-12 08:20:54.309] [info] [WindowState] save settings: {
x: 63,
y: 1708,
width: 1495,
height: 1265,
isMaximized: false,
isFullScreen: false
}
[2025-06-12 08:20:54.313] [info] [WindowState] save settings success
[2025-06-12 08:20:54.348] [info] [Electron Main] win closed
[2025-06-12 08:20:54.349] [info] [DeviceService] closing.
[2025-06-12 08:20:54.349] [info] [ZephyrLogService | UHK Dongle] Closing
[2025-06-12 08:20:54.350] [info] [ZephyrLogService | UHK Dongle] wait until polling
[2025-06-12 08:20:54.350] [info] [ZephyrLogService | UHK Dongle] stopped
[2025-06-12 08:20:54.350] [info] [ZephyrLogService | UHK Dongle] releaseOperations
[2025-06-12 08:20:54.351] [info] [ZephyrLogService | UHK Dongle] no instances to release
[2025-06-12 08:20:54.351] [info] [ZephyrLogService | UHK Dongle] Closed
[2025-06-12 08:20:54.351] [info] [ZephyrLogService | UHK 80 left] Closing
[2025-06-12 08:20:54.351] [info] [ZephyrLogService | UHK 80 left] wait until polling
[2025-06-12 08:20:54.351] [info] [ZephyrLogService | UHK 80 left] stopped
[2025-06-12 08:20:54.351] [info] [ZephyrLogService | UHK 80 left] releaseOperations
[2025-06-12 08:20:54.351] [info] [ZephyrLogService | UHK 80 left] no instances to release
[2025-06-12 08:20:54.351] [info] [ZephyrLogService | UHK 80 left] Closed
[2025-06-12 08:20:54.352] [info] [DeviceService] stop poll UHK Device
[2025-06-12 08:21:47.621] [info] [DeviceRendererService] init success
[2025-06-12 08:21:47.622] [info] [AppRendererService] init success
[2025-06-12 08:21:47.625] [info] [MonacoEditorCompletionItemProvider] initialized.
[2025-06-12 08:21:47.625] [info] [SmartMacroDocRendererService] init success
[2025-06-12 08:21:47.626] [info] Renderer appStart effect start
[2025-06-12 08:21:47.626] [info] [AppRendererService] getAppStartInfo
[2025-06-12 08:21:47.626] [info] Renderer appStart effect end
[2025-06-12 08:21:47.688] [info] [SmartMacroDocRendererService] dispatch action: [smart-macro-doc] service listening
[2025-06-12 08:21:47.695] [info] [AppRendererService] dispatch action: [app] process start info
[2025-06-12 08:21:48.088] [info] [DeviceOperation] USB[T]: Device information
[2025-06-12 08:21:48.089] [info] [UhkHidDevice] USB[T]: Read device protocol version information
[2025-06-12 08:21:48.106] [info] [DeviceOperation] USB[T]: Read device firmware repo information
[2025-06-12 08:21:48.107] [info] [DeviceOperation] USB[T]: Device module "GitRepo" property information
[2025-06-12 08:21:48.119] [info] [DeviceOperation] USB[T]: Device module "GitTag" property information
[2025-06-12 08:21:48.135] [info] [DeviceOperation] USB[T]: Device module "BuiltFirmwareChecksumByModuleId" property information
[2025-06-12 08:21:48.157] [info] [DeviceOperation] USB[T]: Read module version information
[2025-06-12 08:21:48.158] [info] [DeviceOperation] USB[T]: Read "leftHalf" module "protocolVersions" property information as string
[2025-06-12 08:21:48.166] [info] [DeviceOperation] USB[T]: Read "leftHalf" module "GitRepo" property information as string
[2025-06-12 08:21:48.181] [info] [DeviceOperation] USB[T]: Read "leftHalf" module "GitTag" property information as string
[2025-06-12 08:21:48.197] [info] [DeviceOperation] USB[T]: Read "leftHalf" module "RemoteFirmwareChecksumBySlotId" property information as string
[2025-06-12 08:21:48.212] [info] [DeviceOperation] USB[T]: Read module version information
[2025-06-12 08:21:48.213] [info] [DeviceOperation] USB[T]: Read "leftModule" module "protocolVersions" property information as string
[2025-06-12 08:21:48.229] [info] [DeviceOperation] USB[T]: Read "leftModule" module "GitRepo" property information as string
[2025-06-12 08:21:48.244] [info] [DeviceOperation] USB[T]: Read "leftModule" module "GitTag" property information as string
[2025-06-12 08:21:48.253] [info] [DeviceOperation] USB[T]: Read "leftModule" module "RemoteFirmwareChecksumBySlotId" property information as string
[2025-06-12 08:21:48.260] [info] [DeviceOperation] USB[T]: Device module "BuiltFirmwareChecksumByModuleId" property information
[2025-06-12 08:21:48.276] [info] [DeviceOperation] USB[T]: Device module "BuiltFirmwareChecksumByModuleId" property information
[2025-06-12 08:21:48.291] [info] [UhkHidDevice] USB[T]: get BLE address
[2025-06-12 08:21:48.306] [info] [DeviceOperation] USB[T]: get variable: statusBuffer. Iteration: 0
[2025-06-12 08:21:48.526] [info] [DeviceOperation] USB[T]: Read ValidatedUserConfig size from keyboard
[2025-06-12 08:21:48.542] [info] [DeviceOperation] USB[T]: Read ValidatedUserConfig from keyboard
[2025-06-12 08:21:50.350] [info] [DeviceOperation] USB[T]: Read HardwareConfig size from keyboard
[2025-06-12 08:21:50.366] [info] [DeviceOperation] USB[T]: Read HardwareConfig from keyboard
[2025-06-12 08:21:50.541] [info] [DeviceOperation] USB[T]: Device information
[2025-06-12 08:21:50.541] [info] [UhkHidDevice] USB[T]: Read device protocol version information
[2025-06-12 08:21:50.552] [info] [DeviceOperation] USB[T]: Read device firmware repo information
[2025-06-12 08:21:50.552] [info] [DeviceOperation] USB[T]: Device module "GitRepo" property information
[2025-06-12 08:21:50.567] [info] [DeviceOperation] USB[T]: Device module "GitTag" property information
[2025-06-12 08:21:50.573] [info] [DeviceOperation] USB[T]: Device module "BuiltFirmwareChecksumByModuleId" property information
[2025-06-12 08:21:50.598] [info] [DeviceOperation] USB[T]: Read module version information
[2025-06-12 08:21:50.599] [info] [DeviceOperation] USB[T]: Read "leftHalf" module "protocolVersions" property information as string
[2025-06-12 08:21:50.615] [info] [DeviceOperation] USB[T]: Read "leftHalf" module "GitRepo" property information as string
[2025-06-12 08:21:50.621] [info] [DeviceOperation] USB[T]: Read "leftHalf" module "GitTag" property information as string
[2025-06-12 08:21:50.628] [info] [DeviceOperation] USB[T]: Read "leftHalf" module "RemoteFirmwareChecksumBySlotId" property information as string
[2025-06-12 08:21:50.645] [info] [DeviceOperation] USB[T]: Read module version information
[2025-06-12 08:21:50.646] [info] [DeviceOperation] USB[T]: Read "leftModule" module "protocolVersions" property information as string
[2025-06-12 08:21:50.661] [info] [DeviceOperation] USB[T]: Read "leftModule" module "GitRepo" property information as string
[2025-06-12 08:21:50.676] [info] [DeviceOperation] USB[T]: Read "leftModule" module "GitTag" property information as string
[2025-06-12 08:21:50.691] [info] [DeviceOperation] USB[T]: Read "leftModule" module "RemoteFirmwareChecksumBySlotId" property information as string
[2025-06-12 08:21:50.707] [info] [DeviceOperation] USB[T]: Device module "BuiltFirmwareChecksumByModuleId" property information
[2025-06-12 08:21:50.723] [info] [DeviceOperation] USB[T]: Device module "BuiltFirmwareChecksumByModuleId" property information
[2025-06-12 08:21:50.758] [info] [UhkHidDevice] USB[T]: Read device protocol version information
[2025-06-12 08:21:50.834] [info] [UhkHidDevice] USB[T]: is paired with
[2025-06-12 08:21:51.180] [info] [DeviceOperation] USB[T]: Device information
[2025-06-12 08:21:51.181] [info] [DeviceOperation] USB[T]: Read device firmware repo information
[2025-06-12 08:21:51.182] [info] [DeviceOperation] USB[T]: Device module "GitRepo" property information
[2025-06-12 08:21:51.194] [info] [DeviceOperation] USB[T]: Device module "GitTag" property information
[2025-06-12 08:21:51.209] [info] [DeviceOperation] USB[T]: Device module "BuiltFirmwareChecksumByModuleId" property information
[2025-06-12 08:21:51.240] [info] [DeviceOperation] USB[T]: Read module version information
[2025-06-12 08:21:51.240] [info] [DeviceOperation] USB[T]: Read "leftHalf" module "protocolVersions" property information as string
[2025-06-12 08:21:51.245] [info] [DeviceOperation] USB[T]: Read "leftHalf" module "GitRepo" property information as string
[2025-06-12 08:21:51.255] [info] [DeviceOperation] USB[T]: Read "leftHalf" module "GitTag" property information as string
[2025-06-12 08:21:51.272] [info] [DeviceOperation] USB[T]: Read "leftHalf" module "RemoteFirmwareChecksumBySlotId" property information as string
[2025-06-12 08:21:51.286] [info] [DeviceOperation] USB[T]: Read module version information
[2025-06-12 08:21:51.287] [info] [DeviceOperation] USB[T]: Read "leftModule" module "protocolVersions" property information as string
[2025-06-12 08:21:51.302] [info] [DeviceOperation] USB[T]: Read "leftModule" module "GitRepo" property information as string
[2025-06-12 08:21:51.318] [info] [DeviceOperation] USB[T]: Read "leftModule" module "GitTag" property information as string
[2025-06-12 08:21:51.333] [info] [DeviceOperation] USB[T]: Read "leftModule" module "RemoteFirmwareChecksumBySlotId" property information as string
[2025-06-12 08:21:51.341] [info] [DeviceOperation] USB[T]: Device module "BuiltFirmwareChecksumByModuleId" property information
[2025-06-12 08:21:51.349] [info] [DeviceOperation] USB[T]: Device module "BuiltFirmwareChecksumByModuleId" property information
[2025-06-12 08:21:51.365] [info] [UhkHidDevice] USB[T]: get BLE address
[2025-06-12 08:21:51.381] [info] [DeviceOperation] USB[T]: get variable: statusBuffer. Iteration: 0
@david-bakin
Copy link
Author

@david-bakin
Copy link
Author

Start flashing firmware
[DeviceService] stop poll UHK Device
[DeviceService] stopped poll UHK Device
[DeviceService] Operating system: Windows_NT 10.0.26100 x64
[DeviceService] Agent version: 7.0.1
[DeviceService] New firmware version: 14.0.1
[DeviceService] New firmware user config version: 11.0.0
[UhkHidDevice] USB[T]: Get device state
[UhkHidDevice] USB[W]: 04 09 
[UhkHidDevice] USB[R]: 04 00 00 00 01 02 00 00 00 06 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
[DeviceOperation] USB[T]: Device information
[DeviceOperation] USB[T]: Read device firmware repo information
[DeviceOperation] USB[T]: Device module "GitRepo" property information
[UhkHidDevice] USB[W]: 04 00 07 
[UhkHidDevice] USB[R]: 04 00 55 6c 74 69 6d 61 74 65 48 61 63 6b 69 6e 67 4b 65 79 62 6f 61 72 64 2f 66 69 72 6d 77 61 72 65 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
[DeviceOperation] USB[T]: Device module "GitTag" property information
[UhkHidDevice] USB[W]: 04 00 06 
[UhkHidDevice] USB[R]: 04 00 76 31 34 2e 30 2e 31 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
[DeviceOperation] USB[T]: Device module "BuiltFirmwareChecksumByModuleId" property information
[UhkHidDevice] USB[W]: 04 00 08 00 
[UhkHidDevice] USB[R]: 04 00 66 61 61 34 65 65 62 33 38 36 33 30 66 33 30 62 36 37 65 35 32 31 63 34 33 35 65 34 66 65 66 37 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
[UhkHidDevice] USB[T]: Get device state
[UhkHidDevice] USB[W]: 04 09 
[UhkHidDevice] USB[R]: 04 00 00 00 01 02 00 00 00 06 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
[DeviceOperation] Read "leftHalf" version information
[DeviceOperation] USB[T]: Read module version information
[DeviceOperation] USB[T]: Read "leftHalf" module "protocolVersions" property information as string
[UhkHidDevice] USB[W]: 04 0e 01 00 
[UhkHidDevice] USB[R]: 04 00 01 04 00 03 00 00 00 0e 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
[DeviceOperation] Read "leftHalf" repo information
[DeviceOperation] USB[T]: Read "leftHalf" module "GitRepo" property information as string
[UhkHidDevice] USB[W]: 04 0e 01 02 
[UhkHidDevice] USB[R]: 04 00 55 6c 74 69 6d 61 74 65 48 61 63 6b 69 6e 67 4b 65 79 62 6f 61 72 64 2f 66 69 72 6d 77 61 72 65 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
[DeviceOperation] USB[T]: Read "leftHalf" module "GitTag" property information as string
[UhkHidDevice] USB[W]: 04 0e 01 01 
[UhkHidDevice] USB[R]: 04 00 76 31 34 2e 30 2e 31 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
[DeviceOperation] Read "leftHalf" firmware checksum
[DeviceOperation] USB[T]: Read "leftHalf" module "RemoteFirmwareChecksumBySlotId" property information as string
[UhkHidDevice] USB[W]: 04 0e 01 03 
[UhkHidDevice] USB[R]: 04 00 36 32 38 65 32 62 35 33 35 66 33 63 37 32 32 34 35 36 65 32 39 38 35 66 36 61 30 31 35 37 64 31 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
[DeviceOperation] Read "leftModule" version information
[DeviceOperation] USB[T]: Read module version information
[DeviceOperation] USB[T]: Read "leftModule" module "protocolVersions" property information as string
[UhkHidDevice] USB[W]: 04 0e 02 00 
[UhkHidDevice] USB[R]: 04 00 02 04 00 03 00 00 00 0d 00 00 00 02 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
[DeviceOperation] Read "leftModule" repo information
[DeviceOperation] USB[T]: Read "leftModule" module "GitRepo" property information as string
[UhkHidDevice] USB[W]: 04 0e 02 02 
[UhkHidDevice] USB[R]: 04 00 55 6c 74 69 6d 61 74 65 48 61 63 6b 69 6e 67 4b 65 79 62 6f 61 72 64 2f 66 69 72 6d 77 61 72 65 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
[DeviceOperation] USB[T]: Read "leftModule" module "GitTag" property information as string
[UhkHidDevice] USB[W]: 04 0e 02 01 
[UhkHidDevice] USB[R]: 04 00 76 31 33 2e 30 2e 32 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
[DeviceOperation] Read "leftModule" firmware checksum
[DeviceOperation] USB[T]: Read "leftModule" module "RemoteFirmwareChecksumBySlotId" property information as string
[UhkHidDevice] USB[W]: 04 0e 02 03 
[UhkHidDevice] USB[R]: 04 00 61 30 33 32 33 61 37 66 34 61 65 31 37 62 36 62 65 39 63 35 64 31 61 30 39 35 34 65 34 39 64 65 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
[DeviceOperation] USB[T]: Device module "BuiltFirmwareChecksumByModuleId" property information
[UhkHidDevice] USB[W]: 04 00 08 01 
[UhkHidDevice] USB[R]: 04 00 36 32 38 65 32 62 35 33 35 66 33 63 37 32 32 34 35 36 65 32 39 38 35 66 36 61 30 31 35 37 64 31 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
[DeviceOperation] USB[T]: Device module "BuiltFirmwareChecksumByModuleId" property information
[UhkHidDevice] USB[W]: 04 00 08 02 
[UhkHidDevice] USB[R]: 04 00 61 30 33 32 33 61 37 66 34 61 65 31 37 62 36 62 65 39 63 35 64 31 61 30 39 35 34 65 34 39 64 65 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
[DeviceService] UHK Device firmware upgrade starts: {"id":4,"asCliArg":"uhk80-right","firmwareUpgradeMethod":"mcuboot","logName":"UHK 80 right","name":"UHK 80","keyboard":[{"vid":14248,"pid":9}],"bootloader":[{"vid":14248,"pid":8}],"buspal":[],"reportId":4}
[DeviceService] Current Device right built firmware checksum: faa4eeb38630f30b67e521c435e4fef7
[DeviceService] New Device right firmware checksum: faa4eeb38630f30b67e521c435e4fef7
Skip right firmware upgrade.
[DeviceService] Left module firmware version:  14.0.1
[DeviceService] Left module remote firmware checksum:  628e2b535f3c722456e2985f6a0157d1
[DeviceService] Left module built firmware checksum:  628e2b535f3c722456e2985f6a0157d1
[DeviceService] Skip left firmware upgrade.
[SmartMacroCopy] start
[SmartMacroCopy] copy {"destination":"C:\\Users\\david\\AppData\\Roaming\\uhk-agent\\smart-macro-docs\\UltimateHackingKeyboard\\firmware\\v14.0.1","smartMacroDocFirmwarePath":"C:\\Users\\david\\AppData\\Local\\Programs\\uhk-agent\\resources\\packages\\firmware\\doc"}
[SmartMacroCopy] done
[DeviceService] start poll UHK Device
[ZephyrLogService | UHK Dongle] Enabling
[ZephyrLogService | UHK 80 left] Enabling

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