Text
Ready for your next paste.
Received plain Unicode text goes straight onto the destination clipboard after verification. Switch over and paste as usual.
plasticcheese
KMSwitcher / One desk, more computers
In development
Push your mouse pointer against the edge of one computer's screen to switch your shared keyboard and mouse to the next. Arrange your desk once, then move between computers as you work.
Automatic switching uses the desktop companion on Windows or Linux X11.
Two computers. One flow.
Selected
Ready
Computer 1 selected. Keyboard and mouse work here.
01 / Screen-edge switching
Place your stations in the companion's layout editor. When you push through an outer screen edge, KMSwitcher finds the next ready screen in that direction and brings your keyboard and mouse with you.
Try a desk layout
Interactive illustrationLaptop selected. Move up to the workstation or right to the second computer.
Only directions with a neighbouring station are enabled. Try up, down, right, then left to return to the laptop.
Adjust the edge delay and corner exclusion to suit your desk. Held keys or mouse buttons block automatic handoffs, and a short arrival cooldown prevents bouncing straight back. Pause automatic switching locally from the tray, or pause it for the whole desk.
Prefer the keyboard?
Double-tap your trigger, then press a receiver number. Ctrl is the default; change the key and timing in preferences.
Illustration: two Ctrl taps, then 2, select computer 2.
03 / Dedicated hardware
An ESP32-S3 controller receives your inputs through a USB hub. An ESP32-S2 receiver stays plugged into each computer. The controller routes input over encrypted ESP-NOW radio to the selected receiver.
Receivers stay connected as USB HID devices while you switch, so a handoff doesn't require USB re-enumeration. Manual keyboard switching works in firmware independently of the desktop companion.
Wired USB keyboards, mice, and compatible wireless keyboard/mouse receivers can share the hub. Standard HID keyboard, pointer, scrolling, mouse-button, media, and system controls are forwarded.
The hardware at a glance
↓ ESP-NOW wireless ↓
Automatic input selection supports up to two physical input devices, subject to the controller's eight USB host channels. A combo receiver counts as one device; hubs also consume channels. Proprietary device reports and generic Bluetooth adapters aren't universally supported.
04 / From hardware to your desk
The desktop companion includes a guided device and firmware wizard. Use it for initial setup, then keep your desk layout and everyday controls close at hand.
The wizard checks the connected chip, flash capacity, firmware checksums, and layout. It backs up pairing and settings, writes the firmware, and verifies the result.
Double-tap your trigger, press P, then a slot 1–7. Hold the receiver's button for about three seconds during the pairing window. Pairings survive normal restarts and firmware updates.
Run the companion on each computer. Drag station groups into place, save the layout to the controller, and enable automatic switching. Optional login startup keeps the companion ready.
05 / The rest of the toolkit
Explore the everyday preferences, device tools, and automation features behind the headlines.
06 / What you need
Screen-edge switching and clipboard sharing need a companion on each participating computer, compatible controller and receiver firmware, and a ready desktop session.
| Desktop | Screen-edge switching | Clipboard sharing | Setup & configuration |
|---|---|---|---|
| Windows x64 | Supported | Supported | Installer or portable ZIP |
| Linux X11, x64 | Supported | Supported | DEB, RPM, or tar; glibc 2.35+ |
| Linux Wayland | Unavailable | Unavailable | Firmware setup and CLI configuration remain available |
Install it on each computer that participates in automatic edge switching or clipboard sharing. Manual hardware shortcuts run in firmware and remain available without the companion. No custom kernel driver is installed.
Cross-computer dragging is future work. To move content today, copy it and explicitly send it from the tray menu, then paste or save it on the destination.
KMSwitcher reads standard USB HID descriptors, with no device-model whitelist. Compatibility still depends on the device's reports and the available USB channel budget. Proprietary touchpad gestures, vendor configuration, and arbitrary Bluetooth adapters are outside the supported standard input path. Other operating systems and device combinations need compatibility testing.