DIY 键盘技术选型:从 QMK、ZMK、Vial 到无线分体架构

DIY 键盘最容易让人混乱的地方,是把不同层级的名词放在了一起:Keyball、Charybdis、Dactyl Manuform、Kinesis Advantage 360、QMK、ZMK、Vial、RP2040 和 2.4G 看起来都和键盘有关,实际负责的事情完全不同。

这篇文章只保留一条主线:先分清层级,再决定固件、控制器和连接方式。

先建立一张技术地图

可以把一把 DIY 键盘拆成下面几层:

text
人体工学设计 / 产品形态
↓
PCB、矩阵、轨迹球和其他硬件
↓
MCU / 控制器板
↓
QMK 或 ZMK 固件
↓
USB、BLE、UART 或专有 2.4G 链路
↓
电脑、手机或 USB 接收器
  • Keyball、Charybdis、Dactyl Manuform 是键盘设计。Keyball 和 Charybdis 重点加入了轨迹球;Dactyl Manuform 重点是手掌曲面和人体工学。它们决定外形、配列和硬件布局,不决定必须使用哪一种固件。
  • Kinesis Advantage 360 是商业化的人体工学键盘产品,可以把它看作成熟的产品实现;Dactyl Manuform 则更像开放的 DIY 设计家族。
  • Aldexuan/MCK 是具体的键盘项目和产品资料集合,其中 Trackball 系列是有线分体轨迹球键盘套件。39、44、47、59、61 是不同配列,59 配列带双旋钮;项目使用 RP2040、QMK/Vial,并提供 OLED、RGB 和鼠标模式等功能。它不是 QMK/ZMK 那样的通用固件,也不是 Vial 那样的配置工具。
  • QMK 和 ZMK 是固件,负责扫描按键、处理层和行为,并向主机发送 HID 报告。
  • Vial 是图形化配置工具和 Vial-QMK 固件分支。它通常用于运行 Vial-QMK 的 QMK 键盘,不能直接配置 ZMK。
  • RP2040、nRF52840、STM32 是 MCU 或控制器平台。
  • USB、BLE 和 2.4G 是连接链路。BLE 和专有 2.4G 都使用 2.4GHz 频段,但协议、配对方式和固件支持完全不同。

在 MCK 的 Trackball 系列里,Trackball39、Trackball47、Trackball59 等数字对应不同配列和按键规模。它们是设计变体,不是固件名称;完整系列还包括 44 和 61 配列。

QMK 和 ZMK 怎么选

QMK:有线、高度定制和外设优先

QMK 的优势是成熟、资料多、功能宽。它适合有线键盘、复杂层逻辑、RGB、OLED、旋钮、轨迹球和自定义 C 代码。QMK 对 pointing device 提供了成熟的处理接口,轨迹球的 CPI/DPI 切换、鼠标层和滚动模式都比较容易实现。

QMK 的代价也很明确:它的设计中心是 USB 有线键盘。蓝牙支持依赖少数特定模块,通用的 2.4G 接收器模式不是主线 QMK 的标准能力。想做无线,通常要依赖厂商固件、定制分支或额外的无线协议。

因此,下面这个组合优先选 QMK:

text
RP2040 或 STM32 + 轨迹球 + DPI 调节 + Vial

ZMK:电池、BLE 和分体优先

ZMK 从一开始就围绕低功耗和无线分体设计。典型结构是:右半通过 BLE 连接左半,左半作为 central 再通过 BLE 连接电脑。它支持多设备 BLE 配置、睡眠和电量管理,适合 Corne、Lily58、Keyball 这类电池供电的无线分体键盘。

ZMK 的代价是生态和功能边界更收敛。它使用 Devicetree、Kconfig 和 behaviors,普通改键不需要大量 C 代码,但遇到复杂外设时需要理解 Zephyr 的配置体系。ZMK 没有通用的专有 2.4G dongle 模式,也没有 Vial 这种成熟的通用配置体验;部分功能还依赖具体 board、shield 和驱动。

ZMK 的首选控制器通常是带 BLE 的 nRF52840,例如 nice!nano、nRFMicro nRF52840 或 XIAO nRF52840。nRF52833 可以降低成本,但内存余量更小,加入显示器和复杂功能前要先确认资源。

控制器怎么选

目标 推荐 判断
ZMK 无线分体 nRF52840 控制器板 最稳妥的默认选择
低成本 ZMK nRF52833 适合功能简单的键盘
QMK 有线、轨迹球、OLED、RGB STM32F411/F401/F303 资源比 ATmega32U4 充足
简单 QMK 有线键盘 ATmega32U4、Pro Micro、Elite-C 成熟便宜,但资源有限
RP2040 的有线替代 STM32F4 或 RP2350 先确认 PCB 和 shield 兼容性

RP2040 也能运行 ZMK,但芯片本身没有 BLE 无线电,所以单独使用时通常只能做 USB 或有线方案。想做原生 BLE 无线分体,直接选 nRF52840 更合理。

分体键盘的四种无线架构

下面假设左半是 central。部分产品会把 central 放进 USB dongle,名称会有所不同。

方案 链路 优点 缺点 适用场景
A 右半 BLE → 左半;左半 BLE → 电脑 不需要接收器,能连电脑、手机和平板,最接近标准 ZMK 两段 BLE 都要配对,central 更耗电,主机蓝牙兼容性会影响体验 日常办公、移动设备、开源无线分体
B 右半 BLE → 左半;左半专有 2.4G → USB 接收器 主机不需要蓝牙,连接稳定,适合固定桌面 需要双无线协议、接收器和定制固件,依赖厂商生态 需要低延迟且电脑没有蓝牙的桌面场景
C 右半有线 → 左半;左半专有 2.4G → USB 接收器 左右同步可靠,功耗和开发复杂度低于 B、D 两半之间仍然有线,仍然依赖接收器 固定桌面、重视稳定性和续航
D 右半专有 2.4G → 左半;左半专有 2.4G → USB 接收器 完全无线,主机不需要蓝牙 两段专有无线都要处理,配对、恢复、干扰和功耗问题最多 已经有成熟商用协议的产品,不适合第一次 DIY

这里最关键的经验是:“2.4G”不是一种固件,也不等于 BLE。 频段相同不代表协议相同。QMK 或 ZMK 能否使用某种无线方式,取决于固件是否实现了对应协议和接收器端逻辑。

最终选型结论

  • 想做 RP2040、轨迹球、DPI 调节、Vial:选 QMK。需要更多 GPIO、显示器或复杂外设时,考虑 STM32F411/F401。
  • 想做 电池供电的无线分体键盘:选 nRF52840 + ZMK。
  • 想做 简单低成本无线键盘:可以考虑 nRF52833,但不要默认它适合显示器和复杂行为。
  • 想做 专有 2.4G USB 接收器:先确认厂商协议和固件源码,不能只看产品写着 QMK 或 ZMK。
  • 想做 稳定、容易调试的分体键盘:有线 QMK 仍然是最直接的方案。

这次探索最后沉淀成五条判断:先决定连接方式,再选固件;先看最难的外设,再选 MCU;把设计、固件、配置工具和传输协议分开理解;不要把“支持某固件”当成“支持所有无线功能”;同一套 PCB 是否兼容某控制器,最终要检查引脚、供电、Bootloader 和 shield 配置。

参考资料


Comments