ich ziemlich neu bin Bluetooth, so könnte dies trivial sein, aber ich werde immer noch fragen:Bluetooth - zu einer Paarung hört sogar in einem Linux-Gerät in Python
Ich mag zwei Geräte über Bluetooth verbinden - ein mobiles Gerät mit einem Linux-Gerät (wie Raspberry Pi, aber ein anderes ...).
Seite 1 - das mobile: Es hat eine App, die mit dem Linux-Gerät gekoppelt werden sollte, und senden Sie einige Daten (eine msg mit "Hallo" in diesem Punkt).
Side 2 - das Linux-Gerät: Es sollte eine Art von Listener zu der Tatsache, dass ein Gerät über Bluetooth verbunden war, und dann die Daten erwarten, empfangen und verarbeiten.
Seite 1 ist alles in Ordnung und klar für mich.
Wie für Seite 2, verwende ich jetzt nur einige Befehlszeilenbefehle, um Bluetooth einzuschalten, einen Namen für das Gerät festzulegen und auf den Scan zu warten. Ich mache es mit „hciconfig“, indem Sie die folgenden Befehle in Python-Skript ausgeführt wird, eine nach der anderen:
hciconfig hci0 up
hciconfig hci0 name MyDevice
hciconfig hci0 sspmode 1
hciconfig hci0 piscan
An dieser Stelle mein Gerät ist discover-Lage, mein Handy und es Paaren mit ihm erfolgreich. Jetzt bin ich mit dem Hörteil festgefahren. Ich möchte, dass das Linux-Gerät eine bestimmte Funktion ausführt (vorzugsweise in Python), wenn das Gerät gepaart ist, und erwarten, Daten von ihm zu erhalten. Ich habe einige Links über das Netz gelesen, mit RFCOMM und Bluez, aber keine gelungen ...
Kann jemand bitte helfen? Dank
Ich habe dieses Beispiel schon gesehen. Die Sache ist die, dass die eine Seite nie vorher die MAC der anderen kennt, also was kann ich aber in bd_addr? nichts ... Eine andere Sache, dass es aussieht wie der Code, der auf der mobilen Seite sein sollte, derjenige, der eine Verbindung zum Linux-Gerät herstellt. Ich suche nach dem Code, der in dem Linux-Gerät sein sollte, das die Daten empfängt (nicht senden) – DanielY
1 - um zu wissen, welche MAC-Adresse Sie einen Scan auf beiden Seiten durchführen müssen, wird der Scan Ihnen die Liste der verfügbaren MAC geben Adressen, dann verwenden Sie Discovery, um nach den tatsächlichen Namen der Geräte zu suchen, damit Sie wissen, welche MAC-Adresse den Socket an bindet. 2 - Sobald Sie beide MAC-Adressen haben, binden Sie sie sowohl auf dem Linux-Computer als auch auf dem Mobiltelefon normale Socket-Kommunikation (send recv auf beiden Seiten) –
Ich habe das teilweise verstanden ... Mobile App scannt nach BL-Geräten, findet das Gerät und paart sich damit. Jetzt kennt es seine MAC-Adresse. Wie kann das andere Gerät wissen, dass das mobile Gerät mit ihm gekoppelt ist? – DanielY