精华简报:AI 助力改造非智能升降桌

来源:少数派 sspai
文章链接:https://sspai.com/post/113563
作者:未具名(开源项目 Desk Gateway 维护者)
主题:通过 ESP32-S3 与协议逆向,将非智能双电机升降桌改造为支持多端控制、语音与安全防护的智能升降桌。


一句话摘要

作者利用逻辑分析仪逆向原厂升降桌控制面板的 I²C 私有协议,以 ESP32-S3 作为网关模拟面板通信,成功实现旋钮、键盘、手机、Web、手表及语音等多端控制,并加入童锁与 ToF 障碍检测,项目已开源(MIT)。


背景与动机

  • 作者原有办公桌为 V3 版本,因腰椎间盘突出更换为非智能双电机升降桌(升降范围 64~129 cm),保留原桌板以节省成本(高端升降桌 3000+ 元)。
  • 原厂控制面板仅有上升、下降和四个档位键,无童锁、无障碍检测,存在安全隐患(孩子误触导致桌面顶翻风险)。
  • 受少数派 Siri 改造文章和开源项目 Upsy Desky 启发,但现有方案协议不兼容,需自行逆向。
  • 作者具备硬件基础,并借助 AI 辅助完成提纲、润色与代码整理,核心实验(拆板、抓包、时序分析、上拉排查等)均为真机操作。

核心技术方案

硬件架构

  • 核心中枢:ESP32-S3,北向对接 App、手表、键盘、旋钮等控制端;南向对接升降桌控制盒,翻译统一指令为原厂键码。
  • 连接方式:原厂面板通过 RJ45 插头引出四线——GND、CLK、DAT、3.3V。ESP32-S3 通过独立双口 RJ45 模块串联在控制盒与原厂面板之间,保留原厂面板功能并实现透传。
  • 语音终端:小智 AI(JC3636W518C)作为桌面语音入口。

协议逆向关键发现

  1. 总线类型:面板使用 TM1650 驱动数码管,CLK/DAT 符合 I²C 特征,控制盒为 Master,面板为 Slave,时钟约 9.6 kHz。
  2. 轮询机制:控制盒每约 3.7 ms 发起一轮完整问答——先向 7-bit 地址 0x24 写一字节 0x01,再读一字节键码(DR)。面板不主动上报,仅在读请求时返回当前键态。
  3. 关键时序:读操作结束后控制盒使用 ACK + STOP,而非常见 NACK + STOP,这是 ESP32 复现面板侧时序时容易卡住的关键点。
  4. 键码表(DR 值):
操作DR 值说明
空闲/松手0x2E必须持续返回,不可静默
按住上升0x47持续返回则持续上升
按住下降0x4F持续返回则持续下降
档位 1 单击0x17前往已保存高度
档位 1 长按保存0x570x17 + bit6
档位 4 单击0x2F前往已保存高度
档位 4 长按保存0x6F0x2F + bit6
同时按住上下 5 秒0x7F清除 B12 错误码,持续约 7.5 秒后回 0x2E
  1. 高度数据解析:高度不在键码通道,而在数码管段码寄存器(7-bit 地址 0x340x37,对应 TM1650 手册 8-bit 0x680x6E)。控制盒按 DIG3 → DIG2 → DIG1 → DIG4 顺序写入段码,组装高度需按逻辑位编号,不能按时间顺序。示例:AW:36 DW:C5 / AW:35 DW:DB / AW:34 DW:00 / AW:37 DW:C5 → 64 cm。

ESP32-S3 实现要点

  • 配置为 I²C Slave,地址 0x24,响应控制盒读请求。
  • 固件采用 ISR 与任务分离:读请求回调中仅向队列发送记号,实际写总线在任务中完成,避免在中断中执行耗时操作。
  • 控制逻辑本质是“改 Slave 每次被读时交出的 DR”,而非主动发送命令帧。

商业与产品启示

  1. 存量非智能升降桌改造市场:大量用户已拥有非智能升降桌,升级智能控制需求明确,但原厂协议碎片化严重,开源方案可降低门槛。
  2. 低成本网关方案:ESP32-S3 成本极低,配合开源固件可快速复制,适合 DIY 与中小厂商集成。
  3. 多端控制与语音集成:旋钮、键盘、手机、手表、语音等多入口符合智能家居趋势,提升用户体验。
  4. 安全功能差异化:童锁与 ToF 障碍检测是原厂非智能桌缺失的刚需,可作为改造方案的核心卖点。
  5. 开源生态价值:Desk Gateway(MIT)无商业赞助,但可吸引社区贡献,形成协议库与适配案例,未来可能衍生商业服务(如定制适配、硬件套件)。

风险与局限

  • 安全认证缺失:童锁和 ToF 保护不能替代原厂安全认证,紧急情况仍需 STOP、原厂面板或断电。改造存在夹伤风险。
  • 协议兼容性:不同品牌、批次升降桌协议不同,本文方案仅适用于同款控制面板,需用户自行验证线序与协议。
  • 文章截断:给定正文在固件代码片段处截止,后续多端接入、语音控制、ToF 读数等细节未完整呈现,完整实现需参考原文及开源仓库。
  • 技术门槛:需具备逻辑分析仪抓包、I²C 协议理解、ESP32 开发等能力,普通用户复刻难度较高。

结论与建议

本文展示了一个完整的非智能升降桌智能化改造案例,核心价值在于协议逆向方法论与低成本网关架构。对于技术爱好者,可参考其抓包流程与 ESP32 从机实现;对于产品开发者,可借鉴其多端控制与安全功能设计。建议关注开源仓库 Desk Gateway 获取完整代码与后续更新,同时务必重视安全风险,改造前评估自身能力与设备兼容性。


备注:本文基于给定正文撰写,原文后续内容(多端接入细节、语音控制、ToF 保护等)未在提供部分完整呈现,如需完整信息请访问原文链接。