NEWS
Xiaomi Temp and Humidity Monitor 2 + BLE Adapter
-
@nowaczuk hi, ich versuche aktuell auch die Thermometer einzubinden, leider scheitere ich aktuell.
Ich habe den ble adapter installiert und die Custom firmware geflasht. Leider werden mir immer noch keine Werte angezeigt.
Wenn ich in der console folgendes aufrufe dann finde ich auch die Sensoren.
pi@iobroker:~ $ sudo hcitool -i hci0 lescan LE Scan ... A4:C1:38:67:C6:96 LYWSD03MMC A4:C1:38:E6:6A:8C (unknown) A4:C1:38:E6:6A:8C ATC_E66A8C A4:C1:38:AB:E4:B6 (unknown) A4:C1:38:AB:E4:B6 LYWSD03MMC A4:C1:38:12:38:76 LYWSD03MMC
der ble Adapter ist auf grün.
Einstellungen des ble Adapters
-
@treff-and-nix Lösche mal das "xiaomi"-Plugin aus den Einstellungen des ble und starte diesen neu.
Kommt jetzt (kann paar Minuten dauern) in den Objekten unter ble.0. ein Objekt A4:C1:38:E6:6A:8C (dein geflashtes Thermometer) mit einem Service-String? -
@sborg Hi Vielen Dank für die schnelle Reaktion, habe damit nicht mehr gerechnet
Ich habe das xiaomi Plugin entfernt und anschließend manuell zusätzlich neu gestartet.
Im Log zeigt es aber komischerweise trotzdem als geladen an.
leider ist hier kein neuer Punkt aufgetaucht.
Anschließend habe ich den Adapter deinstalliert und neu installiert
hat leider zu keine Erfolg gebracht.
Nun erhalten ist auch hier keine Gerätepi@iobroker:~ $ sudo hcitool -i hci0 lescan Set scan parameters failed: Input/output error
-
@treff-and-nix Hast du nach dem Installieren auch alle Befehle (set cap... aus dem Gedächtnis heraus) wieder ausgeführt? Denn wenn du jetzt mit dem hcitool nichts mehr auslesen kannst, kann auch der BLE nix lesen.
Das mit den Plugins ist Ok, sagt nur aus, dass diese Plugins geladen werden. Diese werden aber ohne den Eintrag im BLE nicht benutzt. Du bekommst mit dem Plugin aus dem "Service-String" "fe95..." bzw. "181a..." dann Klartextwerte wie bspw. 12°C etc.
Wenn hcitool wieder funktioniert, aktiviere mal im BLE noch das "Erfassen von Geräten ohne Daten erlauben" und warte paar Minuten (die Thermometer senden nur seeehr sporadisch) ob jetzt ein neues Objekt im BLE auftaucht.
Wenn dann der String vorliegt, kannst du auch wieder das Xiaomi-Plugin eintragen. Wenn es mal prinzipiell läuft brauchst du auch nur noch ein neues Thermometer flashen und es funktioniert dann -
@sborg Ich habe auch die gleichen Probleme mit den Xiaomi Temperature/Huminity Sensoren.
Nun habe ich zwei Sensoren und einen davon geflasht.
Mit dem Flash Tool (https://pvvx.github.io/ATC_MiThermometer/TelinkMiFlasher.html) kann man die Sensoren auch auslesen.
Der Sensor ohne Flash zeigt mir etwas weniger Informationen: Temp: 24.26°C, Humi: 57%, 3186 mV
Der Sensor mit Flash zeigt: Vbat: 2733 mV , Temp: 22.03°C, Humi: 62.04%, Count: 33452, flg: 04
Mit der Xiaomi Home App konnte ich nur den geflashten Sensor vor dem Flashen verbinden.
Nun geht die Verbindung mit keinem Sensor, nicht mit dem geflashten und auch nicht mit dem ungeflashten.
Vielleicht geht es jedoch nur nicht wenn die Sensoren mit https://pvvx.github.io/ATC_MiThermometer/TelinkMiFlasher.html
verbunden sind. Das teste ich mal.
Kann man die Logik des TeLink Flasher nicht auch in ioBroker integrieren, da er ja alle Werte lesen kann? -
@werner2000x sagte in Xiaomi Temp and Humidity Monitor 2 + BLE Adapter:
Kann man die Logik des TeLink Flasher nicht auch in ioBroker integrieren, da er ja alle Werte lesen kann?
Können schon, aber die Arbeit wird sich IMO kaum jemand machen. Es sendet ja seinen String und den zerlegt dann der BLE-Adapter. Das Ganze läuft bei mir nun schon über einem halben Jahr völlig verlässlich.
Was ich noch ganz vergessen hatte: nach dem flashen beim Handy/Tablett BT ausschalten (ich mache sogar mein Handy kpl. aus). Das Thermometer koppelt sich jeweils immer nur mit einem BT-Device!
-
@werner2000x Als Notlösung würde ja auch ggf. eine Parserlösung auf:
https://pvvx.github.io/ATC_MiThermometer/TelinkMiFlasher.html
in ioBroker funktionieren wenn man vorher das Koppeln manuell vornimmt und den regex setzen kann.
-
@sborg said in Xiaomi Temp and Humidity Monitor 2 + BLE Adapter:
IMO
Ja Danke :-), das Koppeln mit der Xiaomi App hat jetzt mit dem nicht geflashten Sensor geklappt nachdem alle anderen Bluetooth Geräte deaktiviert waren.
-
@werner2000x Hier meine Objekte mit dem xiaomi Sensor:
Beide Sensoren (geflasht und ungeflasht) liefern keine Sensorwerte. -
@werner2000x Doch, dass ist genau der oben erwähnte "fe95" (=Xiaomi) und "181a" (=unsupported) String. Die ellenlangen Zahlen beim Value sind die Daten, nur halt kodiert. Wenn du jetzt im BLE-Adapter noch bei den Plugins Xiaomi einträgst und den BLE neu startest, müsste es nach ein paar Minuten in etwa so aussehen:
-
@sborg klasse, hat nun funtkioniert. Super, Ich danke dir Vielmals. Nun kann ich die anderen 3 Stück flashen
-
@treff-and-nix
Du kannst dann auch den Ordner "services" und den DP "fe95" bzw. "181a" löschen. Der wird nun eh nicht mehr aktualisiert, da du dafür das Xiaomi-Plugin nutzt. So sieht man aber ob beim flashen korrekt auf "Mi like" (oder wie es hieß) umgestellt wurde (dann lautet der String fe95). -
@werner2000x Jetzt klappt es. Ich habe den Xiaomi neu geflasht mit dem Haken bei Advertising statt mit Custom auf MI like. Danke
-
@werner2000x Leider zu früh gefreut. Heute waren in den Objekten des geflashten Sensors keine Werte für Temperatur und Luftfeuchte mehr sichtbar???
-
@werner2000x Jetzt habe ich mal versucht über den Xiaomi BLE Nodered Adapter die Werte auszulesen.
Dort erhalte ich jedoch auch nur Fehlermeldungen:
Kann es sein dass eine fehlerhafte Bluetooth Verbindung mit einem anderen Gerät vorliegt?
-
@werner2000x Oder kann man ggf. mit einem Javascript die Sensorwerte aus dem Hex-String "8cd2fc38c1a49e088f184d0b4dc504" für Temperatur und Luftfeuchte herausfiltern?
-
@werner2000x sagte in Xiaomi Temp and Humidity Monitor 2 + BLE Adapter:
Heute waren in den Objekten des geflashten Sensors keine Werte für Temperatur und Luftfeuchte mehr sichtbar???
Verschwinden tun die nicht einfach so. Starte den Adapter mal mit Loglevel debug und zeige was dann im Log steht.
-
@alcalzone Hier der Log:
ble.0 2021-06-07 16:51:15.581 info (27207) starting scan for services [] ble.0 2021-06-07 16:51:15.061 info (27207) starting scanner process... ble.0 2021-06-07 16:51:15.060 info (27207) monitoring all services ble.0 2021-06-07 16:51:15.059 info (27207) enabled plugins: Xiaomi, _default ble.0 2021-06-07 16:51:15.058 info (27207) loaded plugins: Xiaomi, mi-flora, ruuvi-tag, _default ble.0 2021-06-07 16:51:14.905 info (27207) starting. Version 0.12.0 in /opt/iobroker/node_modules/iobroker.ble, node: v12.22.1, js-controller: 3.2.16
Jetzt habe ich die Sensorwerte wieder da - ich weiss nicht warum?
Screenshot:
-
@werner2000x Aufgefallen ist mir allerdings das im LCD des Xiaomi kein Bluetooth-Logo angezeigt wird wenn Sensorwerte in den Objekten stehen und umgekehrt wenn ein Bluetooth-Logo im LCD angezeigt wird fehlen die Sensorwerte in den Objekten.
-
@werner2000x Viele Geräte senden die Advertisements nicht, solange ein anderes Gerät aktiv verbunden ist. Der Adapter hat dann nichts auf das er "lauschen" kann. Deine Beobachtung deckt sich damit.