这是基肖尔
我使用基于ELM327的OBDII到蓝牙适配器来监控乘用车中的CAN流量。 换句话说,我们的目的是将EML327部署为CAN2BT Dongle(用于CAN消息Rx目的)。
我希望使用Monitor All功能来接收Vehicle中的所有消息(而不仅仅是通过OBDII协议完成的诊断)。 我打算使用ELM327支持的AT-MR和AT-MT接口来选择性地收听应用程序感兴趣的消息。
我遇到的问题是,在实验室中ELM327连接到CANCaseXL以及AT-MA或AT-MR或AT-MT模式,ELM327不发送任何确认。 由于缺少ACK,虽然CANcaseXL以兼容的波特率传输,但传输错误会导致CANcaseXL进入错误状态。
有没有办法发送一系列专有AT命令,使ELM327进入不通过OBDII诊断协议进行通信的模式,而是通过应有的ACK来监听原始CAN总线活动?
在这方面需要社区帮助
谢谢和问候 基肖尔马布
答案 0 :(得分:2)
尝试使用CSMx命令。请参见ELM327数据表的第15页:
CSM0和CSM1 [CAN静音监控关闭或打开]
ELM327设计为完全无声的监控CAN总线。因此,它能够准确地报告它所看到的内容,而不会以任何方式对信息进行着色。偶尔(当进行基准测试或连接到专用CAN端口时),ELM327可能最好无法静默运行(即生成ACK位等),这就是CSM命令的用途。 CSM1将其关闭,CSM0将其关闭,默认值由PP 21确定。在尝试此操作时要小心,如果您应选择错误的波特率,然后在静音监控关闭的情况下监控CAN总线,则会扰乱流量数据。始终保持静音监控,直到您确定已选择正确的波特率。