恒美微站 Logo 恒美微站
  • 首页
  • 关于我们
  • 建站服务
  • 主题模板
  • 案例展示
  • 资讯中心
  • 联系我们

QMK 中的 Chew 34 键 Choc 紧凑键盘:monobloc 与 split 双版本固件配置与刷写指南

  • 首页
  • 资讯中心
  • /
  • QMK 中的 Chew 34 键 Choc 紧凑键盘:monobloc 与 split 双版本固件配置与刷写指南

相关资讯

Git Worktree + Claude Code:Android 多分支高效开发实战 2026/9/19 16:43:57
高通QMVS内存测试环境搭建实战与避坑指南 2026/9/19 16:43:57
计及楼宇空间布局的主动配电网集群划分方法及Matlab实现 2026/9/19 16:43:57

最新资讯

CART决策树与随机森林在乳腺癌分类中的可解释性与鲁棒性实践
Visual C++运行库全版本解析与整合方案:从原理到实操
业财一体基础配置与操作流程图:从科目映射到自动凭证生成
Codex故障排查全指南:从安装到代理与模型配置
Redis VSCode 调试源码:把 Codex 的 Base URL 改到 TaoToken 后定位 setCommand 断点
Greasy Fork 用户脚本实战指南:从安装到编写发布

今日推荐

oh-my-hermes:打造跨工具的命令编排与插件化工作流
OpenClaw.NET 用 /goal start 跑长任务,模型 Base URL 改到 TaoToken
SYB创业计划书财务逻辑拆解:从销售收入预测到现金流量计划

本周热门

AI SDK Harness 依赖更新指南:掌握 harness 包 SDK 依赖的升级、桥接同步与一致性校验
Refine v5 Ant Design NumberField 组件实战:基于 Intl 的本地化数字格式化
Flutter应用改名全指南:从Android到iOS的配置与工具实践

本月精选

自研推理加速器Redwood:两周内实现PyTorch模型高效部署的实战教程
V4L2摄像头采集实战:从camera_client.rar到出图全流程解析
从“谁发明了钢琴键”到知识问答智能体:RAG与记忆工程实践

QMK 中的 Chew 34 键 Choc 紧凑键盘:monobloc 与 split 双版本固件配置与刷写指南

发布时间:2026/9/19 16:43:57
QMK 中的 Chew 34 键 Choc 紧凑键盘:monobloc 与 split 双版本固件配置与刷写指南 QMK 中的 Chew 34 键 Choc 紧凑键盘monobloc 与 split 双版本固件配置与刷写指南【免费下载链接】qmk_firmwareOpen-source keyboard firmware for Atmel AVR and Arm USB families项目地址: https://gitcode.com/GitHub_Trending/qm/qmk_firmwareChew 是一款被设计者称为 crunched极致压缩的 34 键 Choc 间距机械键盘在 QMK 固件仓库中同时提供 monobloc一体式与 split分体式两种形态均以 Waveshare RP2040-Zero 为核心主控。本篇指南将以 keyboards/chew/readme.md 为主线结合仓库内的 info.json、mono/keyboard.json、split/keyboard.json 与两套默认键位文件完整讲解两种版本的系统需求、矩阵与分体通信配置、默认键位设计以及 RP2040 的双重方式进入 Bootloader 与固件刷写流程。键盘概览为极致便携而压缩的 34 键布局Chew 是一把 34 键的 Choc 矮轴间距键盘核心卖点是在保证可用性的前提下把按键数量压缩到最少配合 Choc V1 矮轴与矮键帽实现极薄、极便携的携带形态。其 QMK 支持由 Florent Linguenheld 维护固件支持以chew/mono与chew/split两个独立目标存在于仓库中二者共享同一套 34 键键位思路但硬件形态与矩阵实现截然不同。仓库内的目录结构清晰地将两个版本分开管理keyboards/chew/ ├── info.json # 全系列共用信息处理器、bootloader、features、USB 描述 ├── readme.md # 系列总览 ├── mono/ # 一体式版本 │ ├── keyboard.json # 矩阵引脚与 LAYOUT 定义 │ ├── readme.md # 一体版物料清单与刷写说明 │ └── keymaps/default/keymap.c └── split/ # 分体式版本 ├── keyboard.json # 直接矩阵 分体通信配置 ├── readme.md # 分体版物料清单与刷写说明 └── keymaps/default/keymap.c从系列共用的 info.json 可以看到硬件核心信息{ manufacturer: florentlinguenheld.fr, maintainer: florentlinguenheld.fr, bootloader: rp2040, features: { bootmagic: true, extrakey: true, mousekey: true, nkro: true }, processor: RP2040, usb: { device_version: 1.0.0, pid: 0x0000, vid: 0xFEED } }关键点包括处理器为 RP2040ARM Cortex-M0 双核Bootloader 采用 RP2040 平台原生方案并在默认 feature 中开启了bootmagic可在启动时通过按键组合重置 EEPROM/进入 Bootloader、extrakey媒体键、mousekey鼠标键与nkro全键无冲这些都是后续键位设计与日常使用的基础能力。两种形态monobloc 一体式与 split 分体式chew/mono是单 PCB 的一体式版本monoblocchew/split则是左右手各一块 PCB、通过 TRRS 线连接的分体版本。二者共享 34 键位规划但矩阵实现、所需 PCB 数量与附加硬件完全不同对比关系如下对比项chew/monochew/splitPCB 数量1x PCB2x PCB左右手各一主控1x RP2040-Zero2x RP2040-Zero连接方式单板直连 USB2x TRRS 插座 TRRS 线矩阵扫描行列矩阵COL2ROW直接矩阵direct pins分体通信无RP2040 原生串行vendor driverGP11左右手判定无通过 GP10 引脚电平判定可选扩展热插拔轴座、背板热插拔轴座、背板、Tenting 支撑从 mono/keyboard.json 可以看到一体版采用传统行列扫描{ keyboard_name: chew/mono, diode_direction: COL2ROW, matrix_pins: { cols: [GP28, GP27, GP26, GP15, GP14, GP4, GP3, GP2, GP1, GP0], rows: [GP5, GP6, GP7, GP8] } }10 列 × 4 行共 40 个矩阵交叉点其中 34 个被实际使用diode_direction为COL2ROW即二极管阳极连接列、阴极连接行这是最常见的扫描方向配置。而 split/keyboard.json 则采用直接矩阵每键一个独立 GPIO并完整声明了 QMK 分体键盘的配置{ keyboard_name: chew/split, matrix_pins: { direct: [ [GP4, GP3, GP2, GP1, GP0], [GP15, GP26, GP27, GP28, GP29], [GP14, GP13, GP9, GP8, NO_PIN], [GP7, GP6, GP5, NO_PIN, NO_PIN] ] }, split: { enabled: true, handedness: { pin: GP10 }, matrix_pins: { right: { direct: [ [GP0, GP1, GP2, GP3, GP4], [GP29, GP28, GP27, GP26, GP15], [GP8, GP9, GP13, GP14, NO_PIN], [GP5, GP6, GP7, NO_PIN, NO_PIN] ] } }, serial: { driver: vendor, pin: GP11 }, transport: { watchdog: true } } }几个值得注意的设计点左右手判定handedness通过读取GP10的引脚电平来确定左右手而不是依赖 EEPROM 刷写左右手标记硬件上由 PCB 上拉/下拉电阻决定使用更省心。分体串行通信serial.driver为vendor这是 RP2040 平台推荐的原生串行驱动基于 PIO不占用 UART 外设通信引脚为GP11。从仓库中其他 RP2040 键盘/转换器的配置如 promicro_to_kb2040/converter.mk 中的SERIAL_DRIVER ? vendor可以印证vendor驱动正是该平台分体键盘的标准选择。通信看门狗transport.watchdog开启后在分体通信异常如拔掉 TRRS 线时会触发看门狗复位避免单侧失效导致键盘行为异常。在 quantum/split_common/transport.c 中可以找到这套配置对应的底层实现——分体初始化会分别调用soft_serial_initiator_init()与soft_serial_target_init()分别对应左右手随后通过soft_serial_transaction(id)完成主从之间的周期事务通信左右手按键矩阵、灯效等数据都依赖这条串行链路同步。硬件需求与物料清单两个版本在 mono/readme.md 与 split/readme.md 中分别给出了明确的物料清单。chew/mono一体式必需物料1x PCB一体式单板1x 主控板 RP2040-Zero34x 1N4148W SMD 二极管34x Choc V1 轴体仅限 Choc V1不兼容其他高度轴体34x Choc V1 键帽chew/mono 可选物料18x Mill Max 低剖面插座用于可拆主控34x Kailh Choc 热插拔轴座免焊接换轴1x 背板 PCB 螺丝螺柱增加强度与外观chew/split分体式必需物料2x PCB左右手各一2x 主控板 RP2040-Zero2x TRRS 插座34 个 Choc V1 轴体仅限 Choc V134 个 Choc V1 键帽chew/split 可选物料23 个 Mill Max 低剖面插座34 个 Kailh Choc 热插拔轴座2x 背板 PCB 螺丝螺柱2x Tenting 支撑件抬升打字角度的楔形支架2x 三脚架配合 Tenting 实现更大角度的倾斜支撑默认键位设计解读两个版本的默认键位都放在各自keymaps/default/keymap.c中采用最典型的 34 键列式布局字母区全部保留最下排仅保留拇指区 6 键。一体版 mono/keymaps/default/keymap.c 的布局注释直观展示了键位分布┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐ │ Q │ W │ E │ R │ T │ Y │ U │ I │ O │ P │ ├───┼───┼───┼───┼───┼───┼───┼───┼───┼───┤ │ A │ S │ D │ F │ G │ H │ J │ K │ L │ ; │ ├───┼───┼───┼───┼───┴───┼───┼───┼───┼───┤ │ Z │ X │ C │ V │ │ M │ , │ . │ / │ └───┴───┼───┼───┼───┬───┼───┼───┴───┴───┘ │ B │Bsp│Alt│ ␣ │Ent│ N │ └───┴───┴───┴───┴───┴───┘对应代码如下[0] LAYOUT( KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_Z, KC_X, KC_C, KC_V, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_B, KC_BSPC, KC_RALT, KC_SPC, KC_ENT, KC_N )分体版 split/keymaps/default/keymap.c 键位逻辑一致只是被拆成左右两半左手 QWERT 五行右手 YUIOP 五行拇指区对应变为B / Bspc / Alt与Space / Enter / N[0] LAYOUT( KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_Z, KC_X, KC_C, KC_V, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_B, KC_BSPC, KC_RALT, KC_SPC, KC_ENT, KC_N )可以注意到默认键位把 Backspace、Enter、Space、Alt右 Alt都放在拇指区是典型的 34 键布局惯例——符号、数字与功能键依赖层切换实现这部分由用户按需在 feature_layers.md 等文档指引下自行扩展。同时mono/keyboard.json 中LAYOUT的 34 个矩阵坐标映射与 split/keyboard.json 中带有x/y偏移含0.25、0.125等小数偏移的坐标定义共同决定了 QMK Configurator 与在线编辑器中键位的可视化排布。进入 BootloaderRP2040 的两种方式主控 RP2040-Zero 板载两个按键BOOT 与 RESET因此可以通过两种方式进入 Bootloader见 mono/readme.md 与 split/readme.md方式一按住BOOT键的同时插入 USB 线RP2040 会直接以 USB Mass StorageUF2 拖拽盘模式枚举。方式二快速连按两次RESET键触发 RP2040 平台的双复位进入 Bootloader机制。方式二在 QMK 平台层有明确的代码支撑RP2040 板级配置中定义了RP2040_BOOTLOADER_DOUBLE_TAP_RESET宏例如 GENERIC_PROMICRO_RP2040/configs/config.h启用后MCU 在短时间内检测到两次复位信号会跳过正常启动流程直接进入 USB Bootloader这也是 RP2040 键盘刷写时最常用的免拆机进入方式。进入 Bootloader 后bootloader 一章所描述的 RP2040 刷写流程即可适用将固件以 UF2 格式拖入磁盘或使用qmk flash自动完成。编译与刷写在已安装 QMK CLI 并完成固件环境初始化的前提下参考 getting_started_introduction.md 与 cli.md可以分别对两个版本进行编译# 一体式版本 qmk compile -kb chew/mono -km default # 分体式版本 qmk compile -kb chew/split -km default连接键盘并进入 Bootloader 后将compile换成flash即可直接刷写qmk flash -kb chew/mono -km default qmk flash -kb chew/split -km default分体版本建议左右手分别刷写同一份固件由于 split/keyboard.json 采用GP10引脚判定左右手无需为左右手刷写不同镜像。若在编译前修改了键位可先将keymaps/default复制为用户命名如keymaps/default/keymap.c的同级自定义目录再以对应 keymap 名编译避免覆盖仓库内容。从源码结构看设计要点与延伸阅读矩阵设计差异一体版使用 10×4 行列矩阵配合COL2ROW二极管方向可少占 GPIO分体版使用直接矩阵每个按键独占引脚省去二极管且左右手矩阵在 split/keyboard.json 中按镜像方式声明。分体通信可靠性vendor串行驱动 watchdog的组合是 RP2040 分体键盘保障左右手数据同步与异常恢复的典型方案底层实现可进一步查阅 quantum/split_common/transport.c。默认特性bootmagic、nkro、extrakey、mousekey已在系列级 info.json 中统一开启编译时无需额外在 keymap 层配置。若需要进一步自定义键位层切换、Tap-Hold、组合键等可阅读 keymap.md、feature_layers.md 与 tap_hold.md刷写与 Bootloader 的更多细节参见 flashing.md。本键盘作者在外部维护的 Chew 专属仓库与 wiki 提供了成品固件发布与更多装配信息可自行检索获取。【免费下载链接】qmk_firmwareOpen-source keyboard firmware for Atmel AVR and Arm USB families项目地址: https://gitcode.com/GitHub_Trending/qm/qmk_firmware创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

关于恒美微站

恒美微站专注于为个体商户、工作室提供极简自助建站服务,让每个人都能轻松拥有专业网站。

快速链接

  • 关于我们
  • 建站服务
  • 主题模板
  • 案例展示
  • 资讯中心

服务项目

  • 可视化建站
  • 拖拽编辑
  • 主题定制
  • SEO 优化
  • 网站托管

联系方式

  • 📍 地址:北京市朝阳区建国路 88 号
  • 📞 电话:400-888-8888
  • ✉️ 邮箱:info@hmyw.cn
  • 🕐 时间:周一至周日 9:00-18:00

© 2024 恒美微站 hmyw.cn 版权所有 | 京 ICP 备 12345678 号