Automatisch bestimmen, ob das Bluetooth-Gerät OBD ist oder nicht?

Derzeit arbeite ich an OBDII. Während ich in der Bluetooth-Erkennung bin, um OBD zu verbinden, wie ich feststelle, welches Gerät OBD und welches Gerät ein normales Bluetooth-Gerät ist. Weil ich meine App automatisch mit OBD verbinden möchte.

Gibt es ein gemeinsames Merkmal des OBD-Geräts, das mir hilft, festzustellen, ob es sich um ein OBD-Gerät handelt?

Jede Hilfe ist zu schätzen.

Antworten (3)

Jedes Bluetooth-Gerät hat eine eindeutige 48-Bit-Adresse und einen Gerätenamen (bis zu 248 Bytes). Der Name wird normalerweise angezeigt, wenn ein Bluetooth-Scan mit einem Mobilgerät durchgeführt wird. Die einzige Möglichkeit, das Bluetooth-Gerät als OBD-Scanner zu erkennen, besteht darin, seinen Namen oder seine Adresse zu überprüfen. Die Tatsache, dass es sich um einen OBD-Scanner handelt, verleiht ihm aus Sicht eines Mobilgeräts keine besonderen Eigenschaften.

Vereinfacht ausgedrückt führen Sie einen Bluetooth-Scan durch und überprüfen die gefundenen Gerätenamen. Der Name verrät meist, dass es sich um einen OBD-Scanner handelt, kann aber je nach Hersteller unterschiedlich sein. Wenn Sie es mit einem bestimmten OBD-Scanner verwenden möchten, den Sie haben, suchen und speichern Sie einfach seinen Namen oder seine Adresse.

Wenn Ihre Software (App) nur Adressen und keine aussagekräftigen Namen anzeigt und Sie Zugriff auf ein anderes Auto haben, versuchen Sie es dort und sehen Sie, welche Adresse an beiden Standorten vorhanden ist. Alternativ können Sie Ihren Scanner direkt von einer losen 12-V-Batterie fern von anderen Bluetooth-Quellen mit Strom versorgen, indem Sie Pin 16 mit Plus und Pin 4 mit Minus verbinden. Sie sollten in der Lage sein, die Kopplung außerhalb des Autos abzuschließen. Denken Sie daran, dass Sie Ihr Gerät in Android koppeln müssen, bevor Sie versuchen, eine Verbindung in Ihrer App herzustellen.

Am einfachsten ist es, zuerst zu prüfen, ob das Gerät das serielle rfcommProfil ( ) unterstützt. Wenn nicht, ist es kein OBD2-Gerät. Der zweite Schritt besteht darin, sich mit ihm zu verbinden und ihm einige AT-Befehle zu senden, zB ATI(Send Identification). Wenn es antwortet, können Sie sogar PIDs senden, um herauszufinden, ob es mit einem tatsächlichen Auto verbunden ist.