Liebe Blauzahnfreunde und besonders -kenner, seit geraumer Weile möchte ich gerne einen Raspi 5 mit einem HM-10 seriellen Modul Daten austauschen lassen. Das will mir immer noch nicht gelingen. Was tue und sehe ich? Ich hab mir fabrikfrische HM-10 Module bei botland gekauft, sodass ich, wenns' mit denen geht, die nochmal identisch nachkaufen kann. Die Module bespaße ich mit AT-Kommandos. "AT+VERSION" bringt "+VERSION=v5.6", "AT+NAME" bringt "+NAME=BT05", "AT+LADDR" bringt die MAC von dem Teil, 'PIN' bringt die PIN usw. , alles erwartungskonform. Ich will HM-10 jetzt starten. Mit "AT+ROLE0" mach ich es zum Slave und mit "AT+IMME1" lass ich HM-10 auf eine connection warten. Auf meinem Android Handy sehe ich das Ding nicht bei Bluetooth. Auf dem raspi starte ich "sudo bluetoothctl" mit "power on", "agent on" "default-agent" "scan on" und sehe den HM-10 mit seiner MAC. "trust D0:39:72:C0:C5:4A" geht immer, "devices Trusted" zeigt ihn. "connect/disconnect D0:39:72:C0:C5:4A" geht auch ohne "pair D0:39:72:C0:C5:4A" oft, nicht immer. "pair D0:39:72:C0:C5:4A" ging noch nie, auch nicht mit richtigem passkey, "Failed to pair: org.bluez.Error.AuthenticationCanceled". Auf dem raspi hab ich Python bleak installiert. "devices = await BleakScanner.discover()" liefert auch mit einem connected HM-10 kein Ergebnis, dito "if await client.is_connected():" Habt Ihr nen Rat? THX Cheers Detlef
:
Bearbeitet durch User
raspi und BT war schon immer ein kleines Drama und ob über BT eine Serielle genutzt werden kann, ich hatte da auch so ab und an Probleme, vor allem ist mir CDC oder so in Erinnerung. Nicht jede BT Schnittstelle oder Treiber? beherrscht die Seriellumsetzung. Im aktuellen ESP32 mit wlan ist sogar BT Unterstützung nicht mal eingebaut obwohl beide 2,4GHz nutzen und alle mir bekannten ESP32 Device Module bis dahin BT konnten.
:
Bearbeitet durch User
Detlef _. schrieb: > Auf meinem Android Handy sehe ich das Ding nicht bei Bluetooth. Schlecht. Installiere mal die "nrf Connect for Mobile" App, die ist zwar von und für NordicSemi, funktioniert aber mit allen BTLE Geräten. Die HM-10 lassen sich IIRC nur dann scannen wenn sie nicht mit anderen Geräten verbunden sind. Dasselbe gilt für "BleakScanner.discover()", auch hier werden nur Geräte erfasst die nicht verbunden sind (und daher advertisen). Verbundene Geräte werden von Bleak offenbar gar nicht behandelt - da unterscheiden sich die Betriebssystem APIs auch stark. Einer der Würgarounds macht einen "bluetoothctl disconnect" Aufruf mit der gespeicheten Adresse, danach sollte discover() funktionieren.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.