逆向工程一款 VanMoof 电子换挡器 - 第 2 部分 - 解码信号

主要观点:在对 VanMoof 电动变速车 e-shifter 的逆向工程研究中,通过示波器和逻辑分析仪等工具,确定了自行车是请求方,数据速度约为 9600bps,数据格式为 9600 - 8 - N - 1,传输的消息为 Modbus 协议,包括读取寄存器等操作,但对寄存器内容及值的含义未知,下一篇博客将详细记录一次骑行的通信日志以分析消息或进行欺骗。
关键信息:

  • 示波器显示请求在一根线发送,响应在另一根线接收,通过移除跳线可确定哪方询问和响应。
  • 用逻辑分析仪捕获自行车和 e-shifter 之间的数据,经 GTKWave 分析确定数据格式和长度等。
  • 猜测数据格式后用 PulseView 解码信号,发现请求包和响应包的内容及可能的 CRC 校验等,推测为 Modbus 协议。
    重要细节:
  • 总数据位时间为 104187 纳秒,反推波特率约为 9600bps,问题包约 80 位,答案包约 70 位,符合 10 位字节的 Modbus 帧格式。
  • 在 PulseView 中看到请求包和响应包的具体字节内容,如请求包为0x20, 0x03, 0x00, 0x01, 0x00, 0x01, 0xD3, 0x7B,响应包为0x20, 0x03, 0x02, 0x02, 0x00, 0x05, 0x23
  • 推测可能在进行读取寄存器操作,寄存器0x0001的值为0x0200(512),但具体含义未知。
阅读 7
0 条评论