Skip to main content

Cross-platform Python client for KMBox Net devices

Project description

kmbox-universal

Cross-platform Python client for KMBox Net devices.

This package merges the useful parts of the public KMBox ecosystem:

  • the official kvmaibox/kmboxnet protocol and command set
  • the Java ergonomics from OceanTw/KMNet.java
  • the higher-level helpers from uve192/KMBox.NET

It adds:

  • pure Python UDP transport
  • optional encrypted packet sending for enc_* operations
  • monitor mode with keyboard/mouse state tracking
  • mask/unmask helpers
  • LCD, debug, VID/PID, reboot, and trace commands
  • text typing helpers
  • "absolute-ish" cursor movement by homing to top-left first

Install

pip install kmbox-universal

Quick Start

from kmbox_universal import KMBoxClient, HidKey

client = KMBoxClient("192.168.2.188", 6314, "39EBDC32")
client.key_press(HidKey.C, 60)
client.move(100, 0)
client.click("left")

Absolute Click Helper

KMBox Net exposes relative mouse movement, not true absolute cursor positioning. This package provides a pragmatic helper:

client.click_at(10, 10)

It first "homes" to the top-left edge, then moves to the requested target. This works best when:

  • the target machine uses one monitor
  • the resolution stays fixed
  • pointer acceleration is disabled

Feature Coverage

  • connect
  • mouse move / move_auto / bezier / wheel / combined mouse packet
  • left/right/middle/side buttons
  • keyboard down/up/press/combo/text typing
  • encrypted enc_* mouse and keyboard commands
  • monitor mode
  • mouse and keyboard mask/unmask
  • set config, set VID/PID, reboot, debug, trace
  • LCD solid fill and raw image upload

References

These repositories were used as public references while building this package:

Publish

Build:

python -m build

Test:

pytest

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

kmbox_universal-0.1.0.tar.gz (11.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

kmbox_universal-0.1.0-py3-none-any.whl (11.4 kB view details)

Uploaded Python 3

File details

Details for the file kmbox_universal-0.1.0.tar.gz.

File metadata

  • Download URL: kmbox_universal-0.1.0.tar.gz
  • Upload date:
  • Size: 11.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.2

File hashes

Hashes for kmbox_universal-0.1.0.tar.gz
Algorithm Hash digest
SHA256 a1fdef1ccbff67de13df923b609ffd55ff3fbeac8852eb321922403f0cb803cb
MD5 9367bbe6cd81a6c9c8ae6572e2a719e6
BLAKE2b-256 e287eae64a841ca659e53e45f8320ff46e1992c642b750e5759f2218153bf781

See more details on using hashes here.

File details

Details for the file kmbox_universal-0.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for kmbox_universal-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 198065e68145d068eb918788b136282d6a475debd9e12e97c8ce8f4d9186a345
MD5 7275241e6f21f630cf8a44c79a2764e5
BLAKE2b-256 51c01515c0ff9b71e7a3082becf72c71bf05038e4881bc1a2fa3933eba29155a

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page