Skip to content

v1.5.6

Choose a tag to compare

@github-actions github-actions released this 10 May 19:32
· 23 commits to main since this release

v1.5.6 adds support for a second KVM chip family and fixes platform compatibility issues!

The headline feature is CH9350L support (closes #13).

The CH9350L is a more capable sibling to the CH9329, and is found in a growing number of KVM-over-serial adapters. The new CH9350Comm backend covers all four working states of the chip: states 0/1 (paired mode with descriptor handshake and relative mouse), state 2 (BIOS-safe relative mouse), state 3 (BIOS-safe absolute mouse), and state 4 (HID Digitizers mode). You can select the chip from the GUI (with the choice persisted across restarts) or from the CLI with --ch9350 and --ch9350-state.

A few non-obvious hardware quirks are worth knowing: state-0/1 absolute mouse coordinates are silently dropped by the chip (use state 3 or 4 for absolute positioning), and the state-3/4 X/Y range is 10-bit rather than the 16-bit suggested by the datasheet.

Full protocol documentation is in docs/CH9350L_PROTO.md and a user guide is in docs/CH9350L_GUIDE.md.

This release also fixes two platform-specific input issues from #36: the pynput backend no longer crashes at import on macOS when Key.scroll_lock is absent, and Windows users who were stuck in kvm-control because Ctrl+C (ETX) wasn't being handled correctly can now exit cleanly.

As always, if you find a problem or bug with this release, please feel free to raise an issue. Check out docs/CONTRIBUTING.md for guidance.

⚠️ IMPORTANT: as the binary distributions in this release are un-signed, OSX users will need to run xattr -dr com.apple.quarantine ./KVM\ Serial.app to enable it. OSX will notify that the package is broken otherwise.

What's Changed

  • Implement CH9350L UART protocol: all states, CLI + GUI wiring, docs, and tests by @sjmf in #40
  • Fix pynput backend on OSX (#36) and input handling on Windows by @sjmf in #38

Full Changelog: v1.5.5...v1.5.6