A TINY HOMEMADE BOARD MAKES ONE KEYBOARD AND MOUSE FLOW BETWEEN TWO COMPUTERS

Move your cursor off the edge of one screen and it appears on the other computer, keyboard following instantly — all from a homemade USB device you can build in an evening.

by Hrvoje Cavrak

FULL CAD BOM FIRMWARE DOCS

Open-hardwareWorkshop

Built withRaspberry Pi Pico / RP2040

difficulty
●●●○○
time
an evening
license
GPL-3.0
repo
repo ACTIVE7,919 stars
1
Jump to section

COMPAREE VERDICT

DeskHop is a hardware switch built from two Raspberry Pi Pico boards that lets you share one keyboard and mouse between two computers by moving the cursor off the edge of the screen. Because it is a real USB device, there is no software to install on either computer, although the README lists OS quirks: more than one screen per output on Windows and macOS relies on experimental workarounds. The author lists components at under fifteen euros. The v1.1 PCB uses 0805 passives and a small TVS chip, which the author calls slightly harder but doable to hand solder; Gerbers are in the repo if you want a fab house to make the boards. Settings such as screen count and OS per output are set through a built-in web configuration mode, and mismatched resolutions are handled automatically because the mouse works in an abstract coordinate space. For two computers on one desk, it is transformative. The repository has nearly 8,000 stars, an active maintainer, and an official video assembly guide from the creator.

GOOD TO KNOW

  • —Full KiCad PCB files, Gerbers, and BOM are in the repository.
  • —Firmware is pre-built; you copy the same universal deskhop.uf2 to both Pico boards.
  • —The README is detailed: hardware, BOM, flashing, shortcuts, web configuration and an FAQ.
  • —An optional 3D-printed case STL is included.
  • —GPL-3.0 licence (OSHWA certified) permits commercial use.
  • —Assembly is covered by the creator's video guide (for PCB v1.0; v1.1 is nearly identical).

Parts to buy

3 items

From our check of the build. Exact quantities and part numbers are in the creator’s BOM.

  • Two Raspberry Pi Pico boardsFind
  • DeskHop PCB (Gerbersfrom the repo files
  • USB cablesFind

BUILDS OF THE WEEK

Five open-source builds worth your weekend, every week.

Checked like this one: what’s really in the repo, what it costs, how hard it is. One email, unsubscribe anytime.

Can I build this?

PrintOptional case (STL in repo), or leave the board bare
BuyTwo Raspberry Pi Pico boards, the DeskHop PCB (Gerbers in the repo, or a bare or assembled board from Elecrow), the isolator and passives from the README BOM, USB cables
ToolsSoldering iron with a fine tip for the Pico headers and the 0805/SOT-23 parts (the author says hand soldering is doable), flux cleaner; or order an assembled board
SkillsIntermediate if you self-solder (0805 passives, a SOIC isolator and small SOT-23 TVS chips); otherwise only Pico headers and connectors.
TimeAn evening if the board arrives assembled; a weekend if you hand-solder the SMD components and troubleshoot the first flash
Cost$ — two Picos, PCB and passives under fifteen euros per the author; an assembled board or finished unit from Elecrow costs extra
SafetyNone beyond ordinary electronics care. USB-powered, galvanically isolated outputs, no mains voltage.

Build at your own risk. Projects involve tools, electronics and sometimes mains voltage — follow the creator’s safety notes.

Videos

DeskHop PCB Assembly Guide

Official PCB assembly guide by the creator, linked from the README. It covers PCB v1.0; v1.1 is assembled the same way.

More builds like this

All projects

Gallery

raw.githubusercontent.com
raw.githubusercontent.com
raw.githubusercontent.com
raw.githubusercontent.com
raw.githubusercontent.com
raw.githubusercontent.com
img.youtube.com

Start here

Navigation into the creator’s own docs — we don’t rewrite the guide, we route you to the source.

  1. 1.Read the README end to end (Hardware, BOM, flashing, keyboard shortcuts, web configuration mode and FAQ are all in the README.)
  2. 2.Order the PCB and parts (The pcb/ folder has KiCad files and Gerbers (choose 1.6 mm thickness); the README lists every component with prices.)
  3. 3.Flash the firmware to both Picos (Copy the same universal deskhop.uf2 to each Pico (hold BOOTSEL while plugging in).)
  4. 4.Configure outputs in the web configuration mode (Press Left Ctrl + Right Shift + C + O, then set OS and number of screens per output in the browser page.)

Resources

Documentation, files and community threads for this build — we link straight to the original sources and never rehost the creator’s files.

KNOWN ISSUES

  • Skipping the PCB and isolator to save time. Two bare Picos wired together will work, but the author recommends the isolator, and the PCB gives you the galvanic isolation, ESD protection and snap-fit case.
  • Forgetting to set the OS and screen count per output in the web configuration mode; features like locking both screens depend on it.
  • Flashing old firmware: since version 0.6 one universal deskhop.uf2 goes on both boards, so make sure you use a current release.
  • Ignoring the documented limitations: on Windows, more than one screen per output needs an experimental workaround, macOS multi-screen is also experimental, keyboards with knobs or mice with many extra buttons may not fully work, and both computers must be connected and powering their USB ports.
  • Soldering the Pico headers before testing the bare boards — flash and test the Picos separately before you commit them to the PCB.

Does this work with more than two computers?

No. The hardware is built for exactly two outputs. For three or more, you need a different design.

Can I use wireless keyboard and mouse?

It should, if the receiver plugs into USB. The author tested an Anker wireless mouse with its own receiver, and says combo receivers such as Logitech Unifying work much better after a recent firmware update. The README notes it has not been tested with a wide variety of devices.

Does it sync the clipboard between computers?

No. DeskHop switches keyboard and mouse only; it does not transfer clipboard contents.

Do I need to compile the firmware or is it pre-built?

A pre-built universal deskhop.uf2 is in the releases and goes on both boards. You only compile if you want to change the code.

Community builds

No community builds yet — be the first, we feature the best ones.

Discussion1

FROM THE COMPAREE TEAM

Nearly 8,000 stars and the author puts the component cost at under fifteen euros. If you have already built one, what was the actual hardest part: the soldering or the setup?

CompareeTEAM2mo agoedited

Practical notes from our verification: the repository includes KiCad projects and Gerbers for two PCB revisions, a BOM in the README and a user manual, and the author has published an official PCB assembly video. There are no JLCPCB assembly files, but the README notes you can order a bare PCB, an assembled PCB or a fully assembled device from Elecrow; users report the boards arrive blank, so you still flash the firmware yourself. Firmware is pre-built as a single universal deskhop.uf2 for both Picos, so there is no toolchain to set up. Different monitor resolutions are handled in abstract coordinates and should just work, and on firmware 0.6 and later there is a config mode that turns the device into a USB drive and a web configuration page, so you are not editing a text file and reflashing. The design includes galvanic isolation of at least 2 kV between the two computer outputs, a detail most cheap USB switches skip, and the repository is actively maintained under GPL-3.0. Correction (4 October 2026): we re-checked this page line by line against the project's own repository, documentation and videos, and fixed errors in earlier versions.

Hrvoje Cavrak

Hrvoje uses two computers every day with one keyboard and mouse. The USB switch boxes he tried from Amazon were slow to switch and clumsy, because you had to find a button. DeskHop is his answer: two Raspberry Pi Picos that switch outputs the moment the cursor crosses the screen edge, with the firmware, PCB and case published as open-source hardware.

GitHub

Star the project on GitHub

DISCLAIMER

  • Comparee is not the author of the projects featured here. All rights to each project belong to its creator — every page links to the original source, and we never host creators’ files.
  • Information is provided without warranty and may become outdated as projects evolve. Prices are indicative bands only — always check the creator’s parts list for current costs.
  • Building and operating any project is at your own responsibility. Protective equipment, safe workshop practice and compliance with local regulations are the builder’s responsibility.