快速桌面切换器

DeskHop 是一款开源硬件 KVM 切换器,基于 Raspberry Pi Pico 开发,用于在两台电脑之间无缝共享键盘和鼠标。

快速桌面切换器封面
oshw_hqzl2026-03-27 17:20:56GPL 3.0
163
Star

PCBA

设计文件

KiCad图标deskhop-main.zip13.76MB(0次下载)

EDA查看器

复制嵌入代码

详细介绍

你有没有注意到,在这个疯狂的科技世界里,总有那么一个古怪的小项目,试图解决一个极其小众的问题 —— 它的竞争对手可能只有左撇子螺丝刀和会自己藏起来的闹钟?

在日常工作流中,我需要同时操作两台电脑,并共享一套键盘与鼠标设备。为此我测试了多款亚马逊在售的 USB 切换器,却发现它们普遍存在相似痛点:切换延迟明显、物理按键操作繁琐,且随着使用时间推移,体验也没有任何改善。

我所期待的理想方案,是既能通过键盘快捷键实现快速输出切换,也能依托鼠标指针跨屏移动的逻辑完成无缝流转。而该项目恰好覆盖了这两大核心需求,即便是跨操作系统运行的双设备场景,也能完美适配。

DeskHop 就是这样一款 开源硬件 KVM 切换器,基于 Raspberry Pi Pico 开发,用于在两台电脑之间无缝共享键盘和鼠标。(KVM 是 Keyboard(键盘)、Video(视频)、Mouse(鼠标) 的缩写,KVM 切换器就是一种让多台电脑共享同一套键盘、鼠标和显示器的硬件设备。)

核心功能

  • 跨系统支持:兼容 Linux、macOS、Windows 系统,无需安装任何驱动程序。

  • 无缝切换

    • 鼠标拖动到屏幕边缘即可自动切换到另一台电脑

    • 支持自定义快捷键(如 Right Shift + F12)手动切换

  • 电气隔离:使用 ADUM1201 数字隔离器,实现两台电脑间的完全电气隔离,保护设备安全。

  • 附加功能

    • 鼠标慢速模式(Right Ctrl + Right Alt

    • 屏幕锁定(Right Ctrl + K

    • 游戏模式(屏蔽自动切换,避免误操作)

    • 记住每台电脑的键盘 LED 状态

硬件与原理

  • 核心硬件:2 块 Raspberry Pi Pico 开发板 + 数字隔离器 + USB 接口

  • 工作原理

    • 设备作为中介,同时连接两台电脑

    • 鼠标使用绝对坐标定位,实现跨屏光标连续移动

    • 键盘跟随鼠标状态,切换时同步转移输入焦点

  • DIY 友好:提供 PCB 设计文件、3D 打印外壳模型和完整物料清单(BOM)

展示图:把鼠标从 Mac 拖到 Linux 会自动切换输出

展示图:键盘在2台设备之间自由切换输出

构建与使用

  • 构建方式

    • 本地编译:依赖 cmakegcc-arm-none-eabi 等工具链

    • 容器化构建:使用 Docker Compose 实现环境一致性

    • 预编译镜像:直接下载固件烧录到 Pico

  • 固件升级

    • 按键组合进入 bootloader 模式(PRG + Right Shift + c + o

    • 或通过 USB 命令行直接执行 flash 指令

  • 配置工具:提供图形化配置界面,可设置切换灵敏度、快捷键等参数

适用场景

  • 程序员 / 设计师:在工作电脑与个人电脑间快速切换

  • 多系统开发者:同时操作 Linux、macOS 环境

  • 家庭 / 工作室:共享一套外设,节省桌面空间与成本

License

GPL-3.0 license

项目地址

https://github.com/hrvach/deskhop