NEWS
Bluetooth Dongle funktioniert nur sporadisch
-
Hallo zusammen,
Ich betreibe den IOBroker in einer VM in Proxmox (läuft auf einem Intel NUC). Um meine MiFlora Sensoren abzufragen, benötige ich eine Bluetooth Verbindung und deswegen habe ich mir einen Asus USB-BT500 Bluetooth Dongle gekauft. Diesen reiche ich in Proxmox an die VM durch. Die Treiber habe ich mir im Netz zusammengesucht und nach /usr/lib/firmware/rtl_bt kopiert. Soweit so gut.
Die Sensoren lassen sich abfragen, allerdings wirft es mir dabei manchmal folgende Fehlermeldung aus:[ 43.221820] Bluetooth: hci0: Opcode 0x200e failed: -16
Hier habe ich den Output von: "dmesg |grep -i bluetooth"
root@iobrokerVM:~# dmesg |grep -i bluetooth [ 4.071598] Bluetooth: Core ver 2.22 [ 4.071623] NET: Registered PF_BLUETOOTH protocol family [ 4.071624] Bluetooth: HCI device and connection manager initialized [ 4.071627] Bluetooth: HCI socket layer initialized [ 4.071629] Bluetooth: L2CAP socket layer initialized [ 4.071632] Bluetooth: SCO socket layer initialized [ 4.087163] Bluetooth: hci0: RTL: examining hci_ver=0a hci_rev=dfc6 lmp_ver=0a lmp_subver=d922 [ 4.294157] Bluetooth: hci0: RTL: examining hci_ver=0a hci_rev=000b lmp_ver=0a lmp_subver=8761 [ 4.295387] Bluetooth: hci0: RTL: rom_version status=0 version=1 [ 4.295391] Bluetooth: hci0: RTL: loading rtl_bt/rtl8761bu_fw.bin [ 4.297325] bluetooth hci0: firmware: direct-loading firmware rtl_bt/rtl8761bu_fw.bin [ 4.297341] Bluetooth: hci0: RTL: loading rtl_bt/rtl8761bu_config.bin [ 4.298238] bluetooth hci0: firmware: direct-loading firmware rtl_bt/rtl8761bu_config.bin [ 4.298250] Bluetooth: hci0: RTL: cfg_sz 6, total sz 11670 [ 4.320632] Bluetooth: BNEP (Ethernet Emulation) ver 1.3 [ 4.320636] Bluetooth: BNEP filters: protocol multicast [ 4.320640] Bluetooth: BNEP socket layer initialized [ 4.373121] Bluetooth: hci0: RTL: fw version 0x097bec43 [ 4.447420] Bluetooth: MGMT ver 1.22 [ 43.221820] Bluetooth: hci0: Opcode 0x200e failed: -16 [ 64.206191] Bluetooth: hci0: Opcode 0x200e failed: -16 [ 78.795342] Bluetooth: hci0: Opcode 0x200e failed: -16 [ 87.241331] Bluetooth: hci0: Opcode 0x200e failed: -16 [ 121.545682] Bluetooth: hci0: Opcode 0x200e failed: -16
Habt ihr eine Idee woher diese Fehlermeldung kommen kann? Googlen nach dieser Fehlermeldung hat mir leider auch nicht weitergeholfen.
Vielen Dank im Voraus!Mfg,
Alex -
Welchen Adapter benutzt Du zur Abfrage?
-
@haselchen
Einen Adapter verwende ich hierfür nicht. Ich mache das über diesen Daemon:
https://github.com/ThomDietrich/miflora-mqtt-daemon -
@alexwest sagte in Bluetooth Dongle funktioniert nur sporadisch:
Die Treiber habe ich mir im Netz zusammengesucht und nach /usr/lib/firmware/rtl_bt kopiert.
Das ist 'nur' die Firmware. Wird aber über das Paket
firmware-realtek
bereitgestellt. Besser das verwenden und nicht irgendwas von irgendwoher aus dem Netz grabbeln. -
Und warum so kompliziert , wenn es zig Iobroker-Eigene Möglichkeiten gibt ?
-
@thomas-braun Danke für den Hinweis! Habe meine kopierten Treiber gelöscht, dann das Paket installiert, neu gestartet und leider besteht der Fehler weiterhin:
root@iobrokerVM:~# dmesg |grep -i bluetooth [ 4.122534] Bluetooth: Core ver 2.22 [ 4.122563] NET: Registered PF_BLUETOOTH protocol family [ 4.122564] Bluetooth: HCI device and connection manager initialized [ 4.122576] Bluetooth: HCI socket layer initialized [ 4.122578] Bluetooth: L2CAP socket layer initialized [ 4.122581] Bluetooth: SCO socket layer initialized [ 4.178038] Bluetooth: hci0: RTL: examining hci_ver=0a hci_rev=dfc6 lmp_ver=0a lmp_subver=d922 [ 4.301606] Bluetooth: BNEP (Ethernet Emulation) ver 1.3 [ 4.301610] Bluetooth: BNEP filters: protocol multicast [ 4.301613] Bluetooth: BNEP socket layer initialized [ 4.386075] Bluetooth: hci0: RTL: examining hci_ver=0a hci_rev=000b lmp_ver=0a lmp_subver=8761 [ 4.387073] Bluetooth: hci0: RTL: rom_version status=0 version=1 [ 4.387077] Bluetooth: hci0: RTL: loading rtl_bt/rtl8761bu_fw.bin [ 4.388307] bluetooth hci0: firmware: direct-loading firmware rtl_bt/rtl8761bu_fw.bin [ 4.388333] Bluetooth: hci0: RTL: loading rtl_bt/rtl8761bu_config.bin [ 4.388655] bluetooth hci0: firmware: direct-loading firmware rtl_bt/rtl8761bu_config.bin [ 4.388675] Bluetooth: hci0: RTL: cfg_sz 6, total sz 27814 [ 4.531017] Bluetooth: hci0: RTL: fw version 0x09a98a6b [ 4.599189] Bluetooth: MGMT ver 1.22 [ 2137.733668] Bluetooth: hci0: Opcode 0x200e failed: -16 [ 2169.477923] Bluetooth: hci0: Opcode 0x200e failed: -16
@haselchen Der Daemon bietet mir mehr Konfigurationsmöglichkeiten und spuckt zudem gleich auch noch den Akkustand des Sensors aus
-
Das kannst du auch mit den Bordmitteln haben.
Ob der BLE Adapter die Batterieanzeige rausschmeißt, weiß ich nicht genau.
Aber da gibs nen Raspi oder ESP ( mit ESP Home)….und und und ( evtl. geht’s auch mit dem Dongle)
Für das miflora Teil gibt es unzählige Projekte.
Hatte ich alles schon mit den oben genannten Geräten , aber mir war der Batterieverbrauch zu hoch .
Hatte ihn im Vorgarten und musste fast alle 3-4 Tage wechseln. -
@haselchen Noch ein paar Hintergrundinformationen: Den Daemon habe ich schon seit einem knappen Jahr in Betrieb und musste mein komplettes IOBroker/Proxmox Setup nach einem Hardwaredefekt an der SSD neu aufsetzen (hatte leider keine Backups). Damals lief der BT Dongle ohne Probleme. Nur weiß ich eben leider nicht mehr genau wie ich das damals aufgesetzt habe...
Und zur Akkulaufzeit der Sensoren: Ich habe ein Abfrageintervall von 3h und so halten die Batterien bei mir mehrere Monate.Mfg,
Alex -
@alexwest sagte in Bluetooth Dongle funktioniert nur sporadisch:
root@iobrokerVM
Und im Chor:
NEIN, WIR HAMPELN AUCH IN EINER VM NICHT !!!! ALS ROOT HERUM. -
Okay , sollte nur als kleiner Denkanstoß dienen.
Dein Abfrageintervall hat damit nix zu tun.
Es geht um den „Sendeintervall“ des Gerätes.
Und das hat er bei mir alle paar Sekunden getan , weil sich logischerweise immer was geändert hat .
RSSI , Helligkeit ….Vermutlich lag es aber auch an der wechselnden Temperatur im Vorgarten , dass die Batterie die Grätsche gemacht hat.
Edit: wenn Du es nicht mehr weißt , dann nimm doch einen Weg mit Anleitung wie ich es oben beschrieben habe.
-
@haselchen Hm komisch, ich habe davon auch einen Sensor auf dem Balkon und der hält nicht wesentlich kürzer als der Rest? Aber nun gut, hauptsache es funktioniert bei dir jetzt mittlerweile
.
Zum Problem selbst: Ich konnte durch weiteres googlen nur herausfinden, dass die Bluetooth Probleme mit dem Linux Kernel zutun haben können.
Zum Ausprobieren habe ich eine zweite VM aufgesetzt mit Debian 11 (Kernel 5.10.0-29-amd64). Dort habe ich den Bluetooth Dongle durchgereicht, den gleichen Daemon aufgesetzt und siehe da: Es funktioniert ohne Probleme... Da brat mir doch einer ein Storch!
Dann scheint das wohl am Kernel meiner IOBroker VM (6.1.0-18-amd64) zu liegen.
Das mit den zwei VMs ist jetzt bestimmt nicht die beste Lösung, aber nun gut, was will man machen.Danke für euern Input!
-
Ich hab das Teil letztes Jahr eingestampft.
Hab da keinen Nährwert mehr gesehen.
Die Temperatur bekomme ich woanders her und alles andere an DP war Spielerei.
Feuchtigkeit, Helligkeit etc.Freut mich aber wirklich, wenn es wieder funktioniert.
Das sind so die kleinen Glücksgefühle beim SmartHome