3

我正在探索为支持 BLE(蓝牙低功耗)的汽车 OBD2 适配器构建应用程序(Android 和 iOS)。为了使应用程序能够与来自不同供应商的此类适配器一起使用,我认为会有一组标准的 GATT 配置文件,即这些适配器将用于标准功能(如引擎 RPM、燃料水平等)的服务和特性。是在构建移动应用程序时,我可以在某个地方获得此信息吗?

4

1 回答 1

6

OBD2 BLE 适配器不使用任何固定的 GATT 配置文件。大多数(如果不是全部)BLE OBD2 适配器的工作方式是它们提供具有一两个特征的一项服务:

  1. 一个特性。这是移动设备可以将其 AT 命令(在例如 ELM327 的情况下)和 PID 写入的地方。
  2. 通知特性。这是返回汽车(ECU)结果的地方。

一旦您可以访问这些特性,您就可以实现 OBD2 串行协议(例如,在将完成的命令传输到应用层之前,使用写入并等待响应的命令队列)。

一些 BLE 适配器将这两者合并为一个特性。如果您想支持任意适配器,则必须添加一个“选择您的适配器”屏幕,您可以在其中探测找到的适配器,记住特性,然后进行通信。

这样就可以编写适用于各种 BLE OBD2 适配器的应用程序,并且不仅支持少数供应商,例如OBD2 Expert(免责声明:我是该软件的作者)。

希望有帮助!

于 2018-09-02T18:06:47.347 回答