Hardware
Inside are two ESP32-S3 microcontrollers and a CH343 USB-serial bridge. A program speaks only to the CH343 serial port. The two chips share an internal 20 Mbaud link, separate from the 6 Mbaud control link.
| Port | Connects to | Role |
|---|---|---|
USB1 | Game PC | The clone (device chip). It copies the mouse's USB identity, so the PC enumerates the same device as on a direct connection. |
USB2 | Control PC | CH343 serial control (/dev/ttyACM*) |
USB3 | Mouse | Real mouse (host chip) |
USB3 power hazard USB1 and USB3 on one machine
USB1 and USB3 must never both connect to the same machine.
The USB3 5V rail can't be pulled low in firmware, so the pair back-feeds power. Back-fed power can force a shutdown or drain the battery.
DisconnectingUnplug any time
The box is USB bus-powered, with no battery or power button, and safe to unplug at any moment.
| Unplugged | Effect |
|---|---|
USB2 (control), or the program stops | After 1 s of silence the box clears all injection and returns to passthrough. The mouse keeps working. |
USB1 (clone) | An ordinary device detach on the game PC. The box drops its injection state. |
USB3 (mouse) | The box tears down the captured mouse and reports it detached. |
For passthrough at once, without the silence timeout, send RESET before unplugging (library: reset). Dropping the Device stops its threads. The silence timeout then clears the box. Port order otherwise doesn't matter.
USB1 and USB3 must not share a machine at any point, plugging in or unplugging (power hazard).