基本有线版的ergodone, 改造成了蓝牙版本.
改造流程参考教程 bluetooth_ergodone_doc
使用了Arduino IDE, 基于arduino_tmk_keyboard.
从Release里下载bluetooth_ergodone.zip, 在Arduino IDE里, 通过"项目" -> "加载库" -> "添加.zip库", 把本项目导入.
导入完成后, 还需要
- 选择正确的示例程序: 在Arduino IDE里, 通过"文件" -> "示例", 找到本项目名, 然后打开左手或者右手的示例程序,
- 选择正确的开发板: 在Arduino IDE里, 通过"工具" -> "开发板"里选择Arduino Leonardo,
- 选择正确的端口: 当电脑的USB连接到主控芯片(Arduino Pro Micro)后, 在"工具"->"端口"里会出现一个新的端口, 选择这个端口.
然后点Arduino IDE左上角的"上传"按钮, 就可以将代码上传到主控芯片里了.
在右手的示例程序里right_hand.ino, 可以通过ERGODONE_KEYMAP去定义自己的键盘布局, 支持多个键盘布局的切换, 比如我定义了三层, 第三层是鼠标的操作. 还可以自己定义一些宏操作, 比如在第二层里自定义了FN6, 按下这个键, 就会输出Hello, World. 更多玩法, 参考tmk keymap.
并且也是在右手的程序里right_hand.ino通过各种hook函数控制LED灯.
我自己定义键盘布局里, 左手CAPS_LOCK按键的位置被我换了, 按成按着的时候, 会切换到第三层, 第三层是鼠标操作, 在第三层, 按下HJKL会移动鼠标. 原来Z键的位置, 被我换成按下切换到第二层, 这时候HJKL就变成方向键, 原来的Z向右移了一位.
将代码及依赖库TMK下载下来.
git clone --recursive https://github.com/shiqi-614/bluetooth_ergodone.git
有时候网络不行, 而且TMK工程又比较大, 可以分别单独下载
git clone https://github.com/shiqi-614/bluetooth_ergodone.git
cd bluetooth_ergodone/tmk
git clone https://github.com/shiqi-614/tmk_keyboard.git
因为担心到时候TMK有不兼容的改动, 所以fork了一份, 我创建的时候, 升级到了最新的版本, 如果你有兴趣, 可以试试当时最新的TMK.
放到Arduino IDE的library文件夹中, 如在Mac系统里, 是
~/Documents/Arduino/libraries/
现在就可以开始改代码了.