【问题标题】:How to communicate with OBD-II device如何与 OBD-II 设备通信
【发布时间】:2015-05-19 16:01:45
【问题描述】:

OBD-II 类似http://www.rczd.com/c/2015/Car_Diagnostic_Tools_0223/41193.html 的设备 该设备提供商没有其网页或文档来源。我们在框中有简短的“快速入门”,并保证它支持OBD-II PIDs

最近关注https://en.wikipedia.org/wiki/OBD-II_PIDs#Mode_1_PID_41

问题是,如果有任何通用模式如何与这个 icar 设备通信。

在我使用(freematics)dongle 连接之前,它发送了我在运行中解析的数据流。

当前一个在我们向它发送一个请求后只发送一个值(它是同步的,一次不能处理多个请求)。

我想获得最新的OBD-II 参数以(经常)显示它们。

有什么想法吗?

【问题讨论】:

  • 嗨@Jacob,我在下面看到你终于实现了它。你能帮我写代码吗?

标签: java android bluetooth stream obd-ii


【解决方案1】:

如果您的设备与 ELM327 兼容,您可以使用多个 PID 请求,但前提是适配器通过 CAN 协议连接到车辆。所以它只适用于一部分车辆,因为并非所有车辆都支持 CAN。

流行的扫描工具只是发送顺序请求。使用这种方法可以获得的最大吞吐量约为 30-40 rps。

我不知道 freematics 加密狗是如何工作的,但我可以看到它安装了一些 SD 卡 - 也许它只提供并行性仿真,并且在内部每个请求都是按顺序发送的?

如果您正在寻找用于连接 OBD II 设备的可靠 Java 库,我会推荐您https://github.com/pires/obd-java-api。你也可以看看我的图书馆——https://github.com/devesion/java-obd-adapter

【讨论】:

  • 是的,我最近用github.com/pires/obd-java-api 解决了这个问题,但那是几周前的事了,所以我看到库中有很多变化:)
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多