6

車の OBD-II ポートに接続された Bluetooth デバイスから Bluetooth 経由で値を読み取る Android アプリケーションを実行する必要があります。

UUID SPP UUID 00001101-0000-1000-8000-00805F9B34FB を使用します。

OBD-II デバイスに接続する 4 つのスレッドを作成すると、3connect()つのスレッドが失敗し、1 つのスレッドしかデバイスに接続できません。

Bluetooth経由でOBD-IIデバイスにさらにスレッドを接続する方法はありますか?

elm-237デバイスがより多くのスレッドと通信できるかどうかはわかりません。

4

1 に答える 1

7

私は OBD/OBD-II の専門家ではありませんが、シリアル ポートについては少し知っています。

実際、あなたが見ているものは私をまったく驚かせません。通常、シリアルポート デバイスは排他モードで動作する必要があるため、1 つの時点で 1 つのアクターのみがシリアル ポート デバイスと通信できます。そのために複数のスレッドを作成してもまったく意味がありません。これにより、シリアルポートの「通信速度が速くなる」ことも、外部デバイス (OBD チップ) の応答が速くなることもありません。これはネットワークではありません!複数のデバイスと並行して通信するには、実際に複数のケーブルと、おそらく複数のチップが必要です。

ELM327 は OBD-2 ケーブルのデバイスです。車内のチップと USB ポート間の通信を仲介し、USB バス経由で仮想シリアル ポートを公開します。Bluetooth 対応の安価な ELM327 クローンについては聞いたことがありませんが、OBD-II Bluetooth アダプターがあることは知っています。私が最後に見たものは、大規模な診断ソフトウェアと自動車部品のデータベースが付属していたため、約 2000 ドルの費用がかかりました(strike:コメントを参照してください)、もちろんケーブルなしで動作しました。しかし、それでも 1 つのデバイスと通信するための仮想シリアル ポートは 1 つしか提供しないと思います。

于 2012-09-01T12:21:52.810 に答える