4

Bluetooth経由で車両のObdアダプターからObdデータを読み取るAndroidアプリケーションを開発しています...アダプターの初期化中に問題が発生します。obdを初期化するために、次のObdコマンドを順番に送信しました。

  1. atz(受信OK)
  2. atsp0(受信OK)
  3. ate0(受信OK)
  4. 0100(これは問題が発生する部分です)...

このコマンドでBUSINIT:ERRORを受け取ることがあります。その後、すべての車両コマンド(ATコマンドを除く)で同じエラーが繰り返されます。

正確な初期化シーケンスを知りたいですか?

4

5 に答える 5

1

私は最近、C++ と LabVIEW で ELM-327 ベースの Bluetooth モジュールと通信して車の ECU から情報を取得するアプリケーションを開発しています。初期化シーケンスが失敗することもあれば、うまくいくこともあります。私が見つけたのは、ECU プロトコルの初期化の「キーワード」バイトが正しく検出されない場合があるということです。私のBluetoothモジュールが問題だと思います.合法的なELM-327の中国のクローンであることが判明したからです. どうすればそれを知ることができますか? コマンド ATI を発行すると、「ELM-327 ver. 1.5」と応答し、メーカーによると、1.5 バージョン =D をリリースしたことはありません。

私のために働いたのは次のようなものです:

  1. 通信を開始し、ATZ を送信します
  2. ATSP0
  3. ATSS (これにより、推奨されるプロトコル検索順序が有効になります)
  4. 010D
  5. 4. 失敗した場合、通信を閉じ、3 秒以上待ってから GO TO 1
  6. より多くの OBD-II または AT-コマンド。

BUSINIT:...ERROR 応答は、ELM-327 が ECU プロトコルのスタートアップ シーケンスを完了できなかったことを意味します。また、ISO-9141-2 または ISO-14230-4 KWP プロトコルを使用できる場合は、010C などの OBD-II コマンドを送信する前に、ATSI コマンドで通信を初期化できます。

完全自動検出に成功した後、コマンド ATDP を ELM-327 に送信すると、車が使用しているプロトコルを見つけることができます。

お役に立てれば。

于 2014-02-19T23:12:47.000 に答える
0

ハードウェアが完全にOBD-IIと互換性があり、車がOBD-IIに準拠している場合、初期化シーケンスは機能するはずです。それでも0100コマンドでエラーが発生する場合は、イグニッションがオンになっていて、ハードウェアが完全に機能していることを確認してください。

于 2012-12-31T16:10:11.807 に答える
0

0100 は実際の車に到達する最初のコマンドです。AT コマンドは (ELM327) チップ上にあります。そのため、OBD コネクタと車の間の通信に問題があります。アプリとコネクタ間の接続は問題ありません。

Obdkey は、OBD-II の互換性について正しい可能性が最も高いです。既存のアプリを使用してみてください。機能しない場合は、車またはコネクタに問題があることを証明してください。

ところで: どの obd-II アダプターを持っているか、またおそらくあなたの車を記載しておくと役に立ちます。

于 2013-03-14T13:04:08.690 に答える