从OBD适配器读取VIN

时间:2013-11-07 09:03:26

标签: android obd-ii vin

我正在使用这个应用程序,它要求我从OBD II适配器读取VIN并检查OBD是否连接到同一车辆。当我发送命令(09 02)来获取VIN时,我无法获得完整的VIN。

每次发送命令时,我都没有收到前3个字符。我收到的唯一的东西是VIN的最后7个字符,有时我得到前7个字符。

无法弄清楚什么是错的。

非常感谢任何形式的帮助或支持。

3 个答案:

答案 0 :(得分:3)

是的,并非每个制造商都支持此命令($ 09 $ 02)来读取VIN。 不同的制造商使用不同的命 请提供更详细的信息,以便您能得到一个好的答案:

  1. 您要连接的车辆是什么?
  2. 什么是通讯协议(KWP 2000,UDS,CAN,K-Line,J1850 ......)?
  3. 您使用什么设备与车辆通信?
  4. 您正在尝试与哪个控制单元进行通信?

答案 1 :(得分:1)

我也无法获得VIN号码响应。我们从一些汽车获得了VIN号,但并非从所有汽车中获得。然后我们才知道每个汽车制造商都没有提供对VIN号码的支持。我们还通过发送命令“0902 \ r \ n”实现了VIN号码解码,无论我们得到什么响应,都按照下面提到的url进行了解析。我通过发送0100命令

检查了模式9支持的PID

http://elmelectronics.com/DSheets/ELM327DS.pdf

你能否告诉我你如何使用蓝牙obd2设备获得VIN号码的响应。我正在使用obd2 plx kiwi2wifi设备。

所以我认为你没有得到所有汽车的VIN号码响应。

查看我的问题

Unable to Get VIN Number response from OBD-2 Device,如果您有解决方案,请回复我

答案 2 :(得分:0)

这篇文章有点陈旧但可能对其他人有所帮助!

VIN通常约为20个字符。在CAN协议中,由于每个消息数据内容限制为8个字节,因此应该在多个消息中发送(取决于答案)。

首先,您应该向控制器发送消息,然后控制器将以第一帧(FF)响应,然后您应该发送流控制消息(FC)以告知控制器发送其他数据。这是CAN协议中多帧消息的过程。 这是我为MCP2515回答的post。其他设备的程序相同,因为它是CAN总线协议。

随时提出任何问题!