两百元,我把吃灰动感单车改造成了万能游戏外设

02/25 14:57

前言:一场对抗「西西弗斯式」无聊的折腾对于忙碌又被惯坏的现代人而言,坚持运动从来都不是一件容易的事。我们常用的解决方案往往依赖外部激励:要么是AppleWatch提供的数值化圆环,要么是Switch《 ...


前言:一场对抗「西西弗斯式」无聊的折腾

对于忙碌又被惯坏的现代人而言,坚持运动从来都不是一件容易的事。

我们常用的解决方案往往依赖外部激励:要么是 Apple Watch 提供的数值化圆环,要么是 Switch《健身环大冒险》带来的游戏化反馈。这两种方案的本质,都是通过一种替代性的外部意义来掩盖运动本身的枯燥。但外部意义的新鲜感一旦消退,你就会因感到「西西弗斯推石头」般的乏味而迅速放弃。

于是,我把目光投向了动感单车。它本身不提供任何意义,但你可以一边骑车一边追剧、听播客,以此度过漫长的有氧时间。

这是我原本美好的设想。但现实未能如我所愿(毕竟,我都追剧了,干嘛不躺在舒服的沙发上?),这台 Keep C2 lite 单车同样难逃吃灰的命运。

很快啊,我熟练地打开闲鱼,写好文案,给出了一个童叟无欺的价格,静静等待下一个以为自己能够坚持的人上钩。

正当我在工位上摸鱼,下拉刷新闲鱼第 100 次的时候,灵感突然从天而降:我曾看过一个名为 GTBIKEV 的《GTA 5》MOD 项目(少数派上亦有人介绍过),它可以把骑行台转换成游戏里的控制器。那我的这台动感单车,能不能也变成一台游戏机外设呢?

方案选型与物料清单

我并没有先把兼容 GTABIKEV 项目作为目标,原因有二:一是我希望能玩所有游戏,尤其是《极限竞速:地平线 5》,我想用我的双脚在墨西哥的沙漠里真实地「踩」出推背感。而且只有能够用这套方案玩不同的游戏,才能避免前面说的新鲜感消退问题。

第二,按照我对国产智能健身设备的理解,它们极大概率不会采用开放协议,不太可能做到直接兼容(但这并不意味着兼容 GTABIKEV 是不可行的,我们只是需要写一个国产协议到开放协议的中间转换层)。

经过一番构思,我确定了最终的技术路线:用一块树莓派 Zero 2W 作为数据中枢,同时接收动感单车的踏频数据和实体手柄的按键数据。树莓派将自己伪装成一台通用的 USB 游戏手柄,然后通过有线方式将混合后的指令发送给电脑。

这样一来,电脑端完全不需要安装任何多余的驱动或虚拟软件,即插即用,兼容所有游戏。

具体涉及的硬件及成本如下表所示:

硬件名称 用途说明 预估花费
树莓派 Zero 2W 核心数据处理与 USB 模拟 约 120 元
国产平替 Joy-Con 提供实体按键与摇杆输入 约 70 元
绑带/魔术贴 将手柄固定在单车把手上 约 10 元
总计 将单车变废为宝 约 200 元

实际骑行效果

在墨西哥沙漠里挥洒汗水实际体验下来,效果远超预期。当我把单车的踏频线性映射到手柄的 RT(油门)扳机上后,你踩得越快,车速就越快(我把 100RPM 作为扳机键按到底所需的踏频)。延迟方面,也没感觉到可感的影响游戏体验的延迟。

更棒的是,《地平线 5》提供了极其丰富的辅助功能。你可以开启「自动刹车」并把 NPC 调到门外汉级别,自己只负责打方向盘和疯狂踩踏板。这种设置在「游戏可玩性」和「有氧专注度」之间达到了完美的平衡。

以前在单车上干熬 10 分钟就像受刑,现在跑完三场比赛,不知不觉半小时就过去了,大汗淋漓且意犹未尽。

逆向过程

第一步,也是最关键的一步,是让树莓派能「听懂」单车的话。

如果幸运的话,这款单车应该使用通用的 FTMS (Fitness Machine Service) 协议。这是蓝牙技术联盟基于BLE (蓝牙低功耗)设备使用的GATT协议为动感单车和相关健身器材定义的一套标准。 

打个比方,GATT(蓝牙通用属性配置文件)规定了设备间对话的「语法」(主谓宾结构),而 FTMS 则规定了「词汇表」。比如大家约定俗成用「苹果」指代红色的果子。如果你想知道苹果多少钱一斤,你竖起耳朵听我说「苹果」这个词后面跟着什么东西就可以了。类似的,在FTMS 的通用规定里,只要监听特定的特征值(0x2AD2),就能直接拿到踏频数据。

会员专属文章,欢迎加入少数派会员。
优质内容
权益周边
会员社群
power+
评论区
全部评论0
成为少数派会员方可评论,立即加入。若已是少数派会员,点击登录
还没有评论,来发表第一个评论吧
全部评论
还没有评论,来发表第一个评论吧
成为少数派会员方可评论,立即加入。若已是少数派会员,点击登录
会员新功能
内容侧边栏
点击这里拉开侧边栏,即可查看会员内容列表,快速切换内容。