Using a 60-yuan Xiaomi Bluetooth Remote 2 Pro as a Handheld Voice Controller for AI Programming
English text is being prepared.
The SSPAI author neyham used a roughly 50–60 yuan Xiaomi TV Bluetooth Voice Remote 2 Pro (model RC003) together with the open-source tool SayAll to turn the remote into a handheld controller for AI programming: hold the voice button to dictate a prompt, release to send it to the screen, and use the directional buttons to switch terminal tabs and workspaces. SayAll generates a virtual microphone, MiRemoteV 2ch, which is used with the WeChat Input Method's hold-to-talk feature; configuration paths are provided for both macOS and Windows. The article also offers troubleshooting methods for issues such as SayAll getting stuck during onboarding and the WeChat Input Method being unable to register a standalone Fn key.
Body
Matrix精选 2026年09月22日 10 分钟阅读 60 元打造你的 vibe coding 神器:小米蓝牙遥控器 2 pro 主作者 neyham 少数派作者 neyham neyham 少数派作者 联合作者 neyham 少数派作者 neyham neyham 少数派作者 10 分钟阅读 微信扫码分享
点击下方按钮可复制链接
0. 为什么想给 AI 编程配个手持遥控器?
最近用终端跑 AI 编程(比如 OpenAI Codex、Claude Code、WorkBuddy 或者各种 CLI Agent)越来越多。用了一段时间后,能明显感觉到工作流里最大的变化是:打字量变少了,但对话和确认变多了。
在几个不同的终端窗口或工作区之间切来切去,看各个 Agent 跑完了没有。
在这样的节奏下,语音输入确实是一个实打实的效率提升——说话往往比手打一段长 Prompt 快得多。但如果纯靠键盘上的按键去唤醒语音,人还是得一直坐在桌子正前方、手放在键盘上。
前段时间 OpenAI 的硬件原型 Codex Micro 公开后,社区里跟风出现了很多各色各样的「Vibe Coding 实体按键/小硬件」。但实际看下来,很多 DIY 小外设要么做工粗糙、按键松垮,要么属于早期的实验性玩具,稳定性和连接体验参差不齐。
其实完全不需要去买那些溢价外设或折腾 3D 打印。手边一个日常能买到的小米电视蓝牙语音遥控器 2 Pro(型号 RC003),成本大概 50~60 元,本身就是大厂量产、模具成熟、自带蓝牙 BLE 和语音麦克风的成品硬件。
拿它当掌上控制器,核心诉求其实很朴素:
按住即说(Push-to-Talk):单手按住遥控器上的语音键直接口述 Prompt,松手自动上屏;
免键鼠盲切:靠在椅子上时,单手用方向键切换终端 Tab 和 Workspace,按中间 OK 键确认放行,按返回键中断。
这套方案不仅适用于我日常在用的 macOS,社区目前也提供了 Windows 的运行路径。下面记录具体的配置方法与排坑细节。
1. 硬件细节:为什么选 RC003?
小米这款遥控器在二手平台或电商平台售价通常在 50 到 60 元左右。选它主要看中几个硬件细节:
原生蓝牙 BLE 直连:走标准蓝牙协议,不需要外挂 USB 接收器,电脑自带的蓝牙就能直接配对连接;
远超几十元价位的金属质感: 许多低价小硬件或 DIY 按钮最大的痛点是外壳轻飘、塑料感强,甚至有 3D 打印的明显毛刺。而 RC003 作为小米高端电视的原配遥控器,整机做工非常扎实:
一体成型的金属质感机身:香槟金色表面经过了细腻的磨砂处理,触感温润微凉且不易留指纹,拿在手里有一定的分量感和重心平衡,绝非轻飘飘的薄塑料;
干脆清晰的按键段落感:按键内部并非软塌塌的导电胶手感,触发时有类似微动的清脆确认感(Clicky),行程适中、回弹利落,盲操时按没按下去心里一清二楚;
不突兀的桌搭颜值:极简的黑金撞色设计,平时随手放在键盘掌托、实木桌面或数码桌垫上,看起来就像一件专门打造的掌上数码配件,毫无违和感;
适合盲操的按键布局:
中间 OK 键有明显的下凹弧度,大拇指搭上去就能瞬间定位;
外圈方向环在上下左右四个方向都有凸起的微小刻度,不用眼睛看也能清楚确认按键方位;
顶部的麦克风键独立居中,单手握持时食指托底、拇指自然落在语音键上;
近场人声拾音:电视遥控器内置的麦克风本身针对近距离人声做了拾音调优,环境杂音相对较小,很适合日常口述 Prompt。
2. 软件配置:打通系统与语音输入
虽然遥控器的方向键蓝牙连接后就能作为普通输入设备使用,但遥控器上的语音键传输的是专用的语音数据包,操作系统默认不会把它识别为常规麦克风。
社区开源的 HD838A/remote-mic-app(SayAll) 解决了两件事:
在系统里生成一个虚拟音频输入设备(macOS 下为 MiRemoteV 2ch);
监听遥控器的语音事件,按住语音键时接收音频并实时推流到虚拟麦克风,松手时结束。
配合支持「按住说话(PTT)」的语音输入法(如微信输入法),就能做到按住说话、松手上屏。
2.1 macOS 平台配置流程
配对遥控器:在 Mac 系统设置的蓝牙列表中,同时长按遥控器的「主页键(房子标)」和「菜单键(三条杠)」,等待指示灯闪烁,在 Mac 上点击配对连接;
安装 SayAll 与音频驱动:
从 GitHub Releases 下载安装 SayAll.app;
打开后根据提示安装音频驱动插件(位于 /Library/Audio/Plug-Ins/HAL/MiRemoteV2ch.driver);
打开「系统设置 ➔ 声音 ➔ 输入」,此时可以看到已出现输入设备 MiRemoteV 2ch;
设置微信输入法(WeType):
微信输入法的语音识别率和标点断句很准确,并且支持长按快捷键说话;
在微信输入法设置中开启「按住快捷键说话」,将快捷键设为 Fn(或指定组合键);
声音输入来源选择 MiRemoteV 2ch。
2.2 Windows 平台配置流程
如果你在 Windows 环境下使用(例如用 Windows 跑终端、运行 Codex 或 WorkBuddy):
同样在 Windows 设置的「蓝牙和其他设备」中长按配对遥控器;
Windows 预览版默认将语音快捷键映射为 Ctrl + Win;
在 Windows 微信输入法中将语音输入快捷键同样匹配为 Ctrl + Win,麦克风选定遥控器映射出的音频设备即可。
3. 几个关键细节的快速排坑
实际配置过程中有几个容易卡住的体验细节,提前处理可以省不少时间:
技巧 1:SayAll 引导界面如果卡住怎么跳过?(macOS)
全新安装 SayAll 时,部分 macOS 版本在连接遥控器后,新手引导界面可能会一直停在最后一步无法点击完成。
无需重新安装,直接在终端执行一行命令写入完成标记即可:
defaults write com.hd838a.RemoteMic "onboarding.completedVersion" -int 1 defaults write com.hd838a.RemoteMic "onboarding.step" -string "complete"
重启 SayAll 即可直接进入完整的按键映射设置界面。
技巧 2:微信输入法 Mac 版录入不上独立 Fn 键?
在 macOS 上,如果想用单按独立 Fn 键作为语音触发,微信输入法设置界面偶尔无法正常录入。推荐直接在微信输入法「快捷键」中设为一个冷门组合键(如 Control + Option + V),并在 SayAll 中同样映射为该组合键,零门槛且绝无冲突。
若执意使用单键 Fn,微信输入法配置由 MMKV 存储且带 CRC32 校验,通过以下精简脚本重算校验即可生效:
# 微信输入法 MMKV 配置修复 (重算 CRC32 校验) import os, zlib, struct path = os.path.expanduser("~/Library/Application Support/WeType/mmkv/wetype.settings") data = bytearray(open(path, "rb").read()) open(path + ".crc", "wb").write(struct.pack(" 关注 少数派公众号,解锁全新阅读体验 📰
> 实用、好用的 正版软件,少数派为你呈现 🚀Matrix首页推荐人工智能 本文责编:
@Lotta
13位派友已充电