Releases: UltimateHackingKeyboard/firmware
Releases · UltimateHackingKeyboard/firmware
8.8.0
Device Protocol: 4.7.0 | Module Protocol: 4.1.0 | User Config: 4.1.1 | Hardware Config: 1.0.0
- Prevent deadlocks and races in USB semaphores. If your UHK frooze every now and then, it shouldn't happen again.
- Implement mouse buttons 4-8.
- Make arrow scancodes stick their modifiers.
- Implement functional trackpoint firmware.
- Expose toggled layer via the GetKeyboardState USB command.
DEVICEPROTOCOL:MINOR
8.7.1
Device Protocol: 4.6.0 | Module Protocol: 4.1.0 | User Config: 4.1.1 | Hardware Config: 1.0.0
- Don't make shortcuts sticky with the exception of Alt+Tab and Cmd+Tab.
- Add extra USB reports for pressing and releasing the modifiers of shortcuts. This makes the firmware play nicer with Karabiner, RDP, and possibly some other applications.
- Make scroll key actions always emit a USB scroll event, even when tapped momentarily.
- When conflicting mouse keys are pressed at the same time, make the most recent key the dominant one.
- Add key cluster, trackball, and trackpoint firmware images to the firmware tarball.
- Set sensible default key actions for modules.
- Make the key cluster scroll and the other modules move the pointer by default.
- Move from .tar.bz2 to .tar.gz as the firmware release file format because the latter can be attached in GitHub issues.
8.7.0
Device Protocol: 4.6.0 | Module Protocol: 4.1.0 | User Config: 4.1.1 | Hardware Config: 1.0.0
- Make the Agent icon of the LED display light up when Agent is running.
- Fix debouncer related data races which slightly affect the left keyboard half.
- When a dual-role key is held and the secondary role gets triggered by another key, don't debounce the latter key.
- Set the key states of disconnected modules to unpressed.
- Update module states upon disconnecting the left and right modules.
- Expose the active layer via the GetDeviceState USB command.
DEVICEPROTOCOL:MINOR
8.6.0
Device Protocol: 4.5.0 | Module Protocol: 4.1.0 | User Config: 4.1.1 | Hardware Config: 1.0.0
- Make the config parser accept mouse button 4 to 8.
USERCONFIG:PATCH
- Implement API for modules to send pointer movements to the master.
MODULEPROTOCOL:MINOR
- Fix empty macro playback.
8.5.4
8.5.3
Device Protocol: 4.5.0 | Module Protocol: 4.0.0 | User Config: 4.1.0 | Hardware Config: 1.0.0
- Re-enable the I2C watchdog of the left keyboard half which was accidentally disabled starting from firmware 8.4.3. This should fix the freezes of the left keyboard half.
8.5.2
8.5.1
8.5.0
Device Protocol: 4.5.0 | Module Protocol: 4.0.0 | User Config: 4.1.0 | Hardware Config: 1.0.0
- Send primary role modifiers consistently.
- Only allow layer switcher keys to deactivate toggled layers.
- Deactivate secondary roles when switching keymaps.
- Use the correct scancode so that commas are outputted for macros.
- Move the pointer not by 1 but by 5 pixels when testing the USB stack to make the pointer easier to see.
- Expose UsbReportUpdateSemaphore via UsbCommand_{Get,Set}Variable()
DEVICEPROTOCOL:MINOR
- Extract CurrentTime and remove Timer_{Get,Set}CurrentTime()