Production engineer and maker Hrvoje Čavrak has built a tool that aims to replace often-unreliable software keyboard-and-mouse sharing tools with a more robust hardware solution, powered by a pair of Raspberry Pi Pico microcontroller boards: the DeskHop.
"Did you ever notice how, in the crazy world of tech, there's always that one quirky little project trying to solve a problem so niche that its only competitors might be a left-handed screwdriver and a self-hiding alarm clock," Čavrak writes about the origin of his device.
"All I wanted was a way to use a keyboard shortcut to quickly switch outputs, paired with the ability to do the same by magically moving the mouse pointer between monitors. This project enables you to do both, even if your computers run different operating systems!"
DeskHop is inspired both by traditional keyboard-mouse-and-video (KVM) devices and software-based input sharing tools like Barrier, Input Leap, or Synergy. The idea is simple: having two computers with two independent monitors but one keyboard and mouse, they allow you to switch the input devices between the two — in the case of Synergy and similar, as easily as moving your mouse pointer to the edge of one monitor and seeing it flip onto the other.
Tools like Synergy, though, rely on cooperation from the operating system — and, in the world of Linux, the move to Wayland has rendered many software-based solutions useless. Enter DeskHop: an entirely machine-independent hardware solution, closer to a traditional KVM but tailored for the Synergy-style use-case — and, like Synergy, activated as quickly as moving the mouse pointer from the edge of one display onto the other.
"The device acts as an intermediary between your keyboard/mouse and the computer, establishing and maintaining connections with both computers at once," Čavrak explains. "Then it chooses where to forward your mouse and keystrokes to, depending on your selection. Keyboard follows the mouse and vice versa, so just dragging the mouse to the other desktop will switch both."
If it took a button-push to activate, the device would be no better than a USB switch — but DeskHop is smarter: when the mouse cursor hits the far edge of the first machine's monitor it automatically switches to the second machine, even matching the vertical position between machines.
The hardware couldn't be simpler: a single-sided carrier board carries two Raspberry Pi Pico microcontroller boards, one for the keyboard and one for the mouse. As everything happens in hardware, it's operating-system agnostic: if your machines can take USB keyboards and mice, they'll work with DeskHop.
Čavrak has released the DeskHop under the reciprocal GNU General Public License; design files, source code, and a 3D-printable case are available on the DeskHop GitHub repository.