NEWS
Xiaomi Temp and Humidity Monitor 2 + BLE Adapter
-
Welche Entfernung kann man denn das Teil ca. aufstellen, damit es noch Kontakt zum ioBroker hat?
-
@Slowman said in Xiaomi Temp and Humidity Monitor 2 + BLE Adapter:
Welche Entfernung kann man denn das Teil ca. aufstellen, damit es noch Kontakt zum ioBroker hat?
Kommt natürlich immer auf die Hardware an. Aufpassen sollte man ebenfalls wenn man vor hat einen externen usb bluetooth stick direkt in's Gehäuse von einem PC zu stecken, je nach Bauart des Gehäuses kann das u.a. den Empfang extrem beeinflussen (in die negative Richtung).
Ich betreibe einen ESP32 Lolin Lite (3€) mit esphome als Gateway für meine Xiaomi BLE's. Zuverlässig empfange ich etwa 10 Meter durch 1 bis 2 "leichte" Wände. Bei weiter entfernten Gerätschaften werden nicht alle broadcasts zuverlässig empfangen
-
Vielen Dank für die ausführliche Info.
-
Ich habe, dank dieses Beitrags, nun auch einen Temperatur und Luftfeuchtigkeitssensor mit der Custom Firmware geflasht. Nach dem Aktivieren von "Mi Like" wurden im ioBroker die Objekte battery, humidity und temperature angelegt.
Leider werden bei humidity und temperature keine Werte angezeigt. Es wird lediglich der %-Wert der Batterie angezeigt.Bin auch schon auf die org. Firmware zurück und habe nochmal die Custom Firmware geflasht aber das hat nichts gebracht.
Habt ihr ne Idee warum keine Werte angezeigt werden?
Edit:
Es hat einfach nur sehr lange gedauert. -
Moin! Ich habe auch mehrere der kleinen Thermometer mit der Custom Firmware geflasht. "Mi Like" ist gesetzt. In der Android App nRF Connect sehe ich die aktuellen Werte für Temperature / Humidity / Battery - aber im BLE Adapter kommen diese Werte nicht an. Dort sehe ich nur den verschlüsselten Wert aus "Advertised service 181a". Nach den anderen Ausssagen scheint es ja grundsätzlich zu funktionieren. Wenn der Fehler vor der Tastatur sitzt, was kann schief gegangen sein?
-
@WMärker Hast du im BLE-Adapter auch das "Xiaomi"-Plugin aktiviert?
-
@WMärker sagte in Xiaomi Temp and Humidity Monitor 2 + BLE Adapter:
181a
ist im xiaomi-Plugin aber nicht abgefragt. Das schaut nur auf fe95. Kannst du mir mal so einen Wert zeigen?
Ist das denn überhaupt das richtige Gerät? Ggf hat sich mit der neuen Firmware auch die Mac-Adresse geändert. -
@AlCalzone Hatte mein letztes (ca. 14 Tage alt) aber auch. Irgendwann ging es dann. Ev. hängt ab und zu mal was beim flashen oder wird nicht korrekt übertragen, zumindest ist "181a" doch "Customized" und "fe95" dann "Mi Like", oder liege ich da falsch?
-
@SBorg Klingt plausibel.
-
Im Adapter habe ich diese beiden Einstellungen
raus kommt dann in den Objekten
die MAC-Adresse des Sensors stimmt und als Wert: a4c138af6fa000c932610c07cb
@AlCalzone Muss denn beim flashen "Mi Like" gesetzt werden oder nicht? -
@WMärker Beim flashen geht das IMHO nicht bzw. wird es nicht übernommen. Verbinde dich noch mal, setze es auf "Customized", dann noch mal auf "Mi Like" (im Log sollte dann die Ausführung stehen). Dann am besten BT am Handy deaktivieren (es darf keine BT-Verbindung zum Thermometer bestehen) + noch mal pairen.
@AlCalzone Bestünde die Möglichkeit noch Byte 15 + 16 beim Xiaomi zu integrieren? Meine JS-Kenntnisse sind da zu dürftig
... Byte 14 Battery in percent Byte 15-16 Battery in mV uint16_t ...
-
@SBorg sagte in Xiaomi Temp and Humidity Monitor 2 + BLE Adapter:
Bestünde die Möglichkeit noch Byte 15 + 16 beim Xiaomi zu integrieren?
Zeigst du mir mal so ein Payload, wo es drin steht?
-
@AlCalzone Ich "klaue" (von @WMärker ) gerade mal einen.
Wenn man das Thermometer auf "Customized" stellt bekommt man den "181a": a4c138af6fa000c932610c07cb
Die MAC-Adresse mit a4:c1:38:af:6f:a0 stimmt dann schon mal.Auszug von GitHub
Byte 5-10 mac in correct order Byte 11-12 Temperature in int16 Byte 13 Humidity in percent Byte 14 Battery in percent Byte 15-16 Battery in mV uint16_t Byte 17 frame packet counter 0x0e, 0x16, 0x1a, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xbb, 0xcc, 0xdd, 0xdd, 0x00
Da ich nicht weiß ob sich das mit dem Xiaomi-Plugin deckt, wollte ich es "einfach" kopieren, umbenennen und dann Byte 15+16 hinzufügen. Und wie das so mit dem "einfach" ist, wenn man nicht die richtige Ahnung hat ist alles eben doch nicht nur einfach...
*EDIT* ...und wenn ich Byte 15+16 extrahiere: 0c07 = 3079mV = 3.079V dürfte passen
-
@SBorg Ich bräuchte eher einen von fe95. Wenn das aber so einfach ist mit dem customized macht es fast mehr Sinn, dafür ein Plugin zu schreiben bzw. das xiaomi-Plugin zu erweitern, den auch zu verstehen.
-
@AlCalzone fe95: 50305b0556ccb26a38c1a40a10014d000000
Da sehe ich allerdings nur meine MAC rückwärts notiert: ccb26a38c1a4
Der Rest??? Da sieht die 181a übersichtlicher aus, gerade weil sie auch dokumentiert ist. Das sieht sogar für mich lösbar aus -
@SBorg sagte in Xiaomi Temp and Humidity Monitor 2 + BLE Adapter:
50305b0556ccb26a38c1a40a10014d000000
In der Default-Konfiguration sendet das Teil immer nur einen Wert für einige Sekunden, dann den nächsten. Hier ist es der Batteriestatus in % (77)
-
@AlCalzone Ist denn im fe95 die Spannung überhaupt drin?
Sonst hätte man die Qual der Wahl: fe95 = mit Signalstärke + Spg. in %
oder
181a = ohne Signalstärke + Spg. in %, dafür die Spg. aber in VoltAndererseits macht es IMHO auch keinen direkten Sinn da überhaupt Arbeit rein zu stecken. Denn egal wie ich rechne, komme ich bei 77% / 3.079V auf keinen grünen Nenner, denn bei den Werten müsste die Batterie ~4V haben. Ist auch logisch, denn wie will man die Spg. korrekt ohne Referenzwert messen...
Also eher als Gimmik und groben Richtwert abtun -
@SBorg sagte in Xiaomi Temp and Humidity Monitor 2 + BLE Adapter:
Denn egal wie ich rechne, komme ich bei 77% / 3.079V auf keinen grünen Nenner, denn bei den Werten müsste die Batterie ~4V haben.
Du kannst nicht einfach von 0V linear skalieren. Knopfzellen gelten bereits bei etwa 2,8V als leer (0%).
-
Hallo! Am Zustand meiner Installation hat sich nichts geändert. Ich kriege einfach keine Einzelwerte im ble Adapter. Ich sehe nur 181a und den kodierten Wert. In "nRF Connect" sehe ich die Einzelwerte, daher nehme ich doch an, dass die Custom Firmware auf den Sensoren korrekt eingespielt ist. Entweder mache ich einen systematische Fehler oder irgendwo ist noch der Wurm drin. Der ioBroker läuft auf einem Raspi 3B. Ich habe es bereits mit einem externen USB Bluetooth Adapter probiert und die gesamte Installation wiederholt. Keine Änderung. Bin ratlos und frustriert
-
@WMärker Du musst dich nach dem flashen mit der Customized-FW nochmals mit dem Mijia verbinden und dann bei "Advertising Type:"
Mi Like
auswählen. Wenn es funktioniert hat sendet er auch den "fe95". Bei "181a" steht er im "Advertising Type" noch aufCustom
und du musst es nochmals probieren (es geht nicht immer direkt beim 1. mal)