我想開始在基於iOS/Objective-C的基於ELM327的汽車OBD-II藍牙適配器進行編碼。有關於如何開始的指南/入門指南?是否有ELM327/obdkey OBD-II適配器Objective-C編程指南?
我會想象ELM327適配器是一個串行設備...我可能想出如何建立與手機的藍牙連接,但我不知道從哪裏開始發送/接收OBD-II消息往返於它。
此設備是否有預先存在的API?
我想開始在基於iOS/Objective-C的基於ELM327的汽車OBD-II藍牙適配器進行編碼。有關於如何開始的指南/入門指南?是否有ELM327/obdkey OBD-II適配器Objective-C編程指南?
我會想象ELM327適配器是一個串行設備...我可能想出如何建立與手機的藍牙連接,但我不知道從哪裏開始發送/接收OBD-II消息往返於它。
此設備是否有預先存在的API?
如果您需要某些OBDKey特定命令,請告訴我。作爲一個例子,來訪問RPM數據,發出以下命令
ATZ\r
ATSP0\r
0100\r
010C\r
這些說明將初始化OBDKey接口,設置爲自動協議搜索,初始化communcations與發動機同治ECU和發送模式1 PID 0C命令來請求發動機轉速(RPM)數據。響應010C命令返回的值實際上是實際發動機轉速值的四倍。
在iOS/Objective-C中使用套接字和流是設置與OBDKey WLAN(默認IP地址爲192.168.0.74,端口23)通信的最佳方式。
elm327 odb2設備使用AT和ODB命令。
AT命令與您在調制解調器上使用的命令相同,它們始終以AT開頭。
當設備初始化它發送
ELM327 v2.1
>
如果您發送
ATZ
這將重置設備,它會發出 「ELM327 V2.1」 和>再次提示。
AT命令用於管理elm327設備。
ODB命令在子囊十六進制如上面的例子
01 0C
得到rpm或
以獲得冷卻液溫度
在http://www.elmelectronics.com/obdic.html有更多詳細信息的數據表pdf文件。
您也可以搜索ituns for「elm327」,並獲得有關這個主題的2本免費書籍。
我只是爲我的通用elm327 wifi設備啓動相同的項目,所以我沒有任何細節。
一旦我學到有用的東西,我會盡快添加評論。
我知道你問了這個問題已經有3年多了,但是你有沒有遇到這種情況?我想開發一個iOS應用程序,通過WiFi與基於ELM327的設備進行通話,並希望避免重新發明OBD-II通信設備。 – CharlesA 2014-05-30 17:28:24
我有一個基本的基於無線的AT通信設置工作在這個項目在這裏,可以作爲一個體面的起點,任何人想要做到這一點:https://github.com/jeffmcfadden/CarDash – Jeff 2015-06-27 01:08:55