Please check the build logs for more information.
See Builds for ideas on how to fix a failed build, or Metadata for how to configure docs.rs builds.
If you believe this is docs.rs' fault, open an issue.
keydous-linux
Linux support for the Keydous NJ98-CP V4.
The project provides a small local bridge between the keyboard and the official Keydous web driver. It replaces the Windows-only helper application, so the keyboard can be configured from Chrome or Chromium on Linux.
Supported features
- display clock synchronization
- static images and GIF animations on the display
- global and per-key RGB lighting
- Main and Fn key remapping
- onboard macros
- Hall-effect actuation and release points
- switch profiles and wireless sleep timers
- persistent web-driver data
- USB disconnect and reconnect
Supported devices
| Model | USB ID | Connection | Status |
|---|---|---|---|
| NJ98-CP V4 | 3151:5030 |
USB | Confirmed |
Device detection and command validation are profile-based. Support for another model requires its USB interface, Keydous web-profile ID, and command set to be confirmed on real hardware before it is added.
Installation
Clone the repository and install the udev rule:
Reconnect the keyboard after installing the rule.
Build the bridge:
The pinned Rust toolchain is installed automatically by rustup.
Usage
Connect the keyboard by USB and start the bridge:
Then open the official Keydous web driver in Chrome or Chromium. Keep the bridge running while using the website. Settings are stored in the keyboard and remain active after the bridge exits.
The display clock is synchronized when the website connects. Run the bridge again after the keyboard has been without power if its clock has reset.
Direct RGB control
RGB effects can also be changed without opening the web driver:
Available effects are off, static, breath, neon, wave, dazzle,
and laser.
Data and safety
The bridge listens only on 127.0.0.1:3814 and accepts the official Keydous
website as its browser origin. Firmware, OTA, and bootloader commands are
deliberately blocked.
Web-driver metadata is stored at:
$XDG_DATA_HOME/keydous-linux/web-driver.db
If XDG_DATA_HOME is unset, ~/.local/share/keydous-linux/web-driver.db is
used.
Development
The crate uses semantic versioning from the workspace manifest. Releases use
matching Git tags such as v0.1.0; the AUR package template builds that exact
tag. The same release can be installed from crates.io with
cargo install keydous-bridge.