为了打造简洁干净的桌面环境,给键盘和鼠标挂两条充电线在桌面上实在是丑到爆。前不久在刷海鲜市场时,偶尔看到了桌下隔空无线充电,瞬间给我打开了新思路:把妙控键盘触摸板改造成无线充电不就好了吗?这就安排!
入手渠道:海鲜市场以及 PDD
参考价格:320.52 元
第一次改造
第一次改造比较简单,所准备的物品如下:
名称 | 入手渠道 | 价格 |
---|---|---|
隔空无线充电 * 2 | 海鲜市场 | 72 元 |
倍思无线充电接收器 * 2 | 海鲜市场 | 38 元 |
键盘防滑脚垫(3mm 高) | PDD | 10.5 元 |

比较麻烦的是如何第一次找到具体的充电位置,经过一番努力后,用铅笔分别在桌下画出具体的安装位置以及桌上对应的充电位置,之后直接安装好隔空无线充电。

使用了几次后,整体感觉非常不错,但是现实往往没有理想那样美好,所以准备进行第二次改造。
第二次改造
每次充电时,伴随着隔空无线充电刺耳的散热风扇声,实在是感觉过于痛苦,老插拔电源又非常麻烦。所以就想能不能在人不在的时候启动无线充电呢?
有着家里米家智能家居环境打造的经验,心想不如直接通过米家 App 来控制?心动不如行动,海鲜市场启动!
名称 | 入手渠道 | 价格 |
---|---|---|
Aqara 网关 E1 青春版 | 海鲜市场 | 70 元 |
Aqara 双路控制模块 T2 | 海鲜市场 | 110 元 |
公牛单插位插线板 * 2 | PDD | 13.22 元 |
公牛插头 | PDD | 3.56 元 |
两芯电线 1m | PDD | 3.24 元 |

网关很简单,找个 USB 接口插上连接到 App 就好了。然后掏出我的工具箱,开始折腾双路控制模块。

最后再把它固定到桌子下面(还是宜家这个开放式的架子好用),完工!

打开 Aqara Home App(不知道为什么米家 App 虽然能连接,但是双路开关不能控制,所以只能换到了 Aqara 自己的 App 来操作了),分别配置妙控键盘和触摸板的充电开关,点击开关,完美充电!

第三次改造
这次改造为软件自动化改造,不涉及到任何物品的购买。
每当我要离开工位(例如说中午吃饭时),想给妙控键盘和触摸板充电时,发现要重复以下过程:
- 点击状态栏的控制中心;
- 点击蓝牙,看看妙控键盘和触摸板是不是电量比较低;
- 如果某一个设备电量比较低,拿起手机,找到并打开 Aqara Home App;
- 选择对应设备的开关,点击打开;
操作了几次,发现这个流程实在有点太麻烦,那必须得用 Apple 的快捷指令做一个自动化,说干就干!
第一步:获取设备电量
首先,要先获取到当前设备的电量,经过了一番调研,发现通过以下 Shell 脚本可以获取到电量:
ioreg -r -d 1 -k BatteryPercent | egrep '("BatteryPercent"|"Product") '
# 输出如下
# "Product" = "Magic Keyboard with Touch ID"
# "BatteryPercent" = 70
# "Product" = "Magic Trackpad"
# "BatteryPercent" = 54
然后放到快捷指令里面执行,并将结果解析到变量中使用。

注:第一次文本替换是先移除所有的空格(“世界”是快捷指令没有填数据时的示例显示),第二次文本替换使用正则表达式将数据替换为词典样式。
第二步:获取当前的充电状态
如果现在要运行充电快捷指令,那肯定是要对电量比较低的设备开关设置打开,电量比较高的设备开关设置关闭,那前提又要获取到开关当前的状态。
发现使用 Aqara Home App 扩展的快捷指令,只能控制设备充电开或者关,却没法获得当前的状态,那怎么办呢?
去 Aqara 的官网看了下,突然发现了有开发者社区,可以提供 API 接口进行调用。于是果断注册了一个开发者账号,创建项目并绑定了自己的设备。

之后按照 Aqara 开发者文档说明,再创建一个调用“Aqara 查询设备资源最新状态”API 的快捷指令。

第三步:根据状态调整开关
根据第一步获取到的设备电量信息,可以获得想要设置开关的目标状态(如判断电量低于 30% 设置为充电),例如:
设备名称 | 开关状态 |
---|---|
键盘 | 充电 |
触摸板 | 不充电 |
根据第二步获取到的开关状态,也可以生成这么一个表格,例如:
设备名称 | 开关状态 |
---|---|
键盘 | 不充电 |
触摸板 | 不充电 |
那对比目标状态和当前状态这两个表格,就知道应该将键盘对应的开关状态设置为打开,而触摸板对应的开关状态不变(关闭),根据这个过程编写快捷指令如下:

第四步:添加快捷指令到菜单栏
运行成功后,在快捷指令的详细信息里,将“在菜单栏中固定“选项勾选,然后这个快捷指令就出现在了菜单栏中,之后离开工位时,只需要点击一下该捷径就好了!

第五步:添加到 Bartender
充电的流程完成,顺带解决一个小问题:怎么在设备电量较低时,触发一个提醒呢?使用通知的话,可能在收到通知的时候不方便充电,转头又忘记充电这件事情了,不断通知的话又太烦。
而刚好安装了 Bartender 这个应用,这个应用主要是隐藏菜单栏中一些不常用的图标,具体可以去看这个应用的文章,这里不过多介绍。这里使用 Bartender 的 Trigger 设置,即在设备电量低时,主动显示快捷指令图标到菜单栏进行提醒,这样就能很方便的发现设备需要进行充电了。


第四次改造?
最近在考虑增加第四次改造,还在调研过程中,先说一下思路吧。
首先,购买 Aqara 人体存在传感器 FP1(FP2 看参数是使用 WiFi 或者蓝牙连接,这个 E1 网关可能不支持,并且价格也比 FP1 高得多,所以暂未考虑);
然后,完成下面的流程操作;

总结
从原来满桌线材到处缠绕,逐步改造,到现在桌面上基本没有线材(除了耳机),过程还是有点折腾的。
不过在有限的桌面上可以摆放的小玩意就多了起来,毕竟牛马们干活也得保证心情愉悦呀!