This project sprung by trying to make hrvachs awesome project deskhop compatible with my Logitech devices. This project is heavily based on his work, therefore all the credits belong to him and the deskhop community.
I started this project from scratch and just copied the very least code that is need for my opinionated setup.
- it's a MVP and has no batteries included
- we are using the
HID_PROTOCOL_REPORT
by default - we are passing through received reports as-is (no re-mapping)
- your multi-monitor setup will just work as we don't alter the mouse*
- HID device descriptors compatible with Logitech devices
- support for "Suspend both PCs" via shortcut (Linux/macOS)
- support for "Screensaver mode" by jiggling the mouse just one pixel
- works with Raspberry Pi Pico and Pico 2
*since we're keeping the relative mouse, moving your mouse to the next PC won't work. You have to press the CAPS_LOCK
key to hop to the next PC.
For a more detailed documentation take a look here.
Note: don't forget to export PICO_PIO_USB_PATH
, PICO_TINYUSB_PATH
and PICO_SDK_PATH
before building.
Make sure to have all requirements installed as described by pico-sdk.
mkdir -p ./src/build
cd ./src/build
cmake ..
make
DH_DEBUG
: enables stdio-output on uart1DH_PICO_2
: enables building for PICO 2 boards
DeskHopL was tested with the following devices:
- Logitech MX Mechanical
- Logitech MX Master S3
Hub-Devices are currently not supported, see issues: