2

我正在尝试编写一个通过 WiFi 连接到 OBD-II 接口的 iOS 应用程序(特别是 OBDLink MX WiFi 扫描工具)。我已经编写了一些基本的套接字代码,并且能够打开一个到 192.168.0.10:35000 的套接字。我收到了输入和输出流的 NSStreamEventOpenCompleted。

不久之后触发的第一个事件是 NSStreamEventHasBytesAvailable。我尝试读取流,但长度返回 0。我的问题是与这些设备通信的执行流程是什么?我试图发出 ATZ\r 命令,但什么也没发生(没有触发流事件)。

我如何知道我是否已连接并且 OBD-II 接口是否已准备好?

4

2 回答 2

0

通常的命令终止符是ˋ\r\nˋ,所以首先尝试用这个命令发送ˋATZˋ。仅在收到ˋNSOutputStreamˋ 的 HasSpace 通知后发送。

于 2016-10-20T17:06:34.387 回答
0

与此设备通信的另一种替代方法是此 Car Diagnostics API,访问 API 可以在

https://github.com/HellaVentures/Car-Diagnostic-API

于 2017-01-31T10:40:57.633 回答