在没有开发人员指南的情况下连接到 OBD2 蓝牙 LE 设备

Xin*_*nus 7 bluetooth-lowenergy obd-ii elm327

我最近购买了基于 ELM327 的汽车 OBD2 适配器(Vgate Icar PRO)来监控我的汽车仪表,我能够使用 Torque 和其他 obd 工具连接到设备。但我想开发自己的 flutter 应用程序,连接并提取 OBD 诊断信息,以用于我自己的研发目的。但面临着理解用于发送 ELM327 AT 代码的服务和特性的问题。

据我了解,ELM327使用UART协议进行通信。但由于想要使用蓝牙 LE,我无法检查我应该检查的蓝牙服务/特性是什么。

我从演示应用程序中检查了蓝牙 LE 的特性,请检查下面的屏幕截图服务和特性代码如下

在此输入图像描述

在此输入图像描述

从上面的服务/特征代码中我提取了以下信息

180A/2A25   Serial No.      DC0D3047262F
180A/2A28   software revision   5.4.2,20181022
180A/2A27   Hardware Revision   1.2
180A/2A29   Manufacturer Name   Feasycom
180A/2A24   Model Number        FSC-BT826N
1800/2A00   Device Name     IOS-Vlink
Run Code Online (Sandbox Code Playgroud)

但对于其他服务/特性代码,我没有找到它们代表什么的任何参考。有人可以帮助我完成这个任务吗?

Dou*_*ran 1

抱歉,我才刚刚遇到这个问题。

我还使用 Vgate Pro BLE OBD2 设备,并尝试使用 Arduino 微控制器读取它(到目前为止,尚未完全成功)。这是我发现的:-

它宣传 2 种服务,一种具有 2 个特征,另一种具有 1 个特征。这些都是:-

Service UUID        : 000018f0-0000-1000-8000-00805f9b34fb  (A)
Characteristic UUID : 00002af0-0000-1000-8000-00805f9b34fb  (NOTIFY)
Characteristic UUID : 00002af1-0000-1000-8000-00805f9b34fb  (READ, WRITE)

Service UUID        : e7810a71-73ae-499d-8c15-faa9aef0c3f2  (B)
Characteristic UUID : bef8d6c9-9c21-4c9e-b632-bd58c1009f9f  (INDICATE, NOTIFY, READ, WRITE , WRITE NO RESPONSE)
Run Code Online (Sandbox Code Playgroud)

我可以写入 A 服务特征(我知道这一点,因为绿灯闪烁),但到目前为止,无法从 NOTIFY 特征获得任何响应,也无法从 READ/WRITE 特征读取。

尽管我使用的蓝牙终端应用程序可以读取和写入 B 服务,但我对 B 服务一点也不满意。

我希望这对您有所帮助,并且有兴趣知道您是否取得了成功。