[74_XiaomiBTLESens.pm] Xiaomi Bluetooth Sensoren FlowerSens/Thermometer

Begonnen von CoolTux, 11 Januar 2018, 15:42:45

Vorheriges Thema - Nächstes Thema

distel

Zitat von: CoolTux am 02 Februar 2018, 06:15:44
Vielen Dank für Deine ausführliche Erklärung. Ich werde mal schauen das ich mir das die Tage anschaue. Denke ich habe da schon eine Idee.
Eine mögliche Option wäre (für das Thermometer) auch noch statt auf einen fixen Index auf das letzte Element zuzugreifen. Ich weiß aber nicht, ob Perl einfach ein MaxIndex(Array) bereitstellt...
NUC-I37100
Docker: eBus, fhem, ha-bridge, unifi
Hardware: Homematic, FS20, Somfy RTS, 1wire, FBAHA, enOcean

CoolTux

Zitat von: distel am 02 Februar 2018, 15:11:47
Eine mögliche Option wäre (für das Thermometer) auch noch statt auf einen fixen Index auf das letzte Element zuzugreifen. Ich weiß aber nicht, ob Perl einfach ein MaxIndex(Array) bereitstellt...

Perl kann sowas. Aber ich schaue mir das die Tage in Ruhe an. Sind ja Ferien und ich hab Urlaub.
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

distel

Zitat von: CoolTux am 02 Februar 2018, 19:04:54
Sind ja Ferien und ich hab Urlaub.
Oh, hier in NRW nicht - sorry! Aber: ich bin (nicht mehr ganz) jung, ich kann (trotzdem) warten :-)
NUC-I37100
Docker: eBus, fhem, ha-bridge, unifi
Hardware: Homematic, FS20, Somfy RTS, 1wire, FBAHA, enOcean

CoolTux

Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

distel

Zitat von: CoolTux am 05 Februar 2018, 09:08:17
Bitte noch mal vorsichtig testen.
Hi, hab erst vorsichtig, dann etwas mutiger getestet... Läuft! Daumen hoch!
Aktuell habe ich keine besonderen Vorkommnisse. Die Auswertung der SensorData-Antwort klappt. Auch get/set deviceName hauen hin (Regressionstests ;))

Also wenn es seitens der Flower-Sensor-Fraktion keine Einwände gibt :)


Gruß Dirk

PS: Habe jetzt zwei dran hängen und schaue mal, wie es sich so schlägt. lasse vorsichtshalber mal verbose 5 an  ::)
NUC-I37100
Docker: eBus, fhem, ha-bridge, unifi
Hardware: Homematic, FS20, Somfy RTS, 1wire, FBAHA, enOcean

distel

Aktuell läuft alles stabil, auch mit zwei Thermo-/Hygrometern. Die sensorData-Werte werden gelesen/ausgewertet/geloggt. Es gibt zwar keinen Garant dafür, dass die Dinger (recht-)zeitig Antworten, aber Code handelt das, ohne Zombies und andere Unschönheiten.

Vielen Dankan @CoolTux!
NUC-I37100
Docker: eBus, fhem, ha-bridge, unifi
Hardware: Homematic, FS20, Somfy RTS, 1wire, FBAHA, enOcean

Astrofreak85

Hi,

hab nun endlich meinen Sensor bekommen....am Handy läuft alles, aber beim einbinden in FHEM bekomme ich leider nur Errors:

2018.02.06 18:58:15 4: XiaomiBTLESens (Pflanzen) - Run CreateParamGatttool with mod: read
2018.02.06 18:58:15 4: XiaomiBTLESens (Pflanzen) - Read XiaomiBTLESens_ExecGatttool_Run Pflanzen|C4:7C:8D:65:D4:09|read|0x38
2018.02.06 18:58:40 1: Timeout for XiaomiBTLESens_ExecGatttool_Run reached, terminated process 3723
2018.02.06 18:58:40 4: XiaomiBTLESens (Pflanzen) - WriteReadings: Readings were written
2018.02.06 18:58:40 4: XiaomiBTLESens (Pflanzen) - ExecGatttool_Aborted: The BlockingCall Process terminated unexpectedly. Timedout
2018.02.06 18:59:56 4: XiaomiBTLESens (Pflanzen) - Run CreateParamGatttool with mod: read
2018.02.06 18:59:56 4: XiaomiBTLESens (Pflanzen) - Read XiaomiBTLESens_ExecGatttool_Run Pflanzen|C4:7C:8D:65:D4:09|read|0x38
2018.02.06 18:59:56 5: XiaomiBTLESens (Pflanzen) - ExecGatttool_Run: call gatttool with command gatttool -i hci0 -b C4:7C:8D:65:D4:09 --char-read -a 0x38 2>&1 /dev/null and loop 0
2018.02.06 19:00:37 5: XiaomiBTLESens (Pflanzen) - ExecGatttool_Run: gatttool loop result connect error,Connection refused (111)

2018.02.06 19:00:37 5: XiaomiBTLESens (Pflanzen) - ExecGatttool_Run: call gatttool with command gatttool -i hci0 -b C4:7C:8D:65:D4:09 --char-read -a 0x38 2>&1 /dev/null and loop 1
2018.02.06 19:00:56 1: Timeout for XiaomiBTLESens_ExecGatttool_Run reached, terminated process 3967
2018.02.06 19:00:56 4: XiaomiBTLESens (Pflanzen) - WriteReadings: Readings were written
2018.02.06 19:00:56 4: XiaomiBTLESens (Pflanzen) - ExecGatttool_Aborted: The BlockingCall Process terminated unexpectedly. Timedout


Jemand ne Idee was ich falsch mache?

CoolTux

Ich gehe davon aus daß er neu ist und noch die alte Firmware besitzt. Diese wird nicht mehr unterstützt. Bitte mache zu erst ein Firmware-Update
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

Astrofreak85

hab ich, mit der App,
App sagt: 3.1.8 aktuelle und neueste Version

CoolTux

Dann sollte eigentlich gehen. Zeig mal bitte ein List vom Device
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

Astrofreak85

Internals:
   BTMAC      C4:7C:8D:65:D4:09
   DEF        C4:7C:8D:65:D4:09
   INTERVAL   300
   NAME       Pflanzen
   NOTIFYDEV  global,Pflanzen
   NR         412
   NTFY_ORDER 50-Pflanzen
   STATE      error
   TYPE       XiaomiBTLESens
   VERSION    2.0.5
   loglevel   4
   READINGS:
     2018-02-06 21:03:51   battery         ok
     2018-02-06 21:03:51   batteryLevel    99
     2018-02-06 21:36:18   fertility       59
     2018-02-06 21:03:51   firmware        3.1.8
     2018-02-06 22:02:26   lastGattError   The BlockingCall Process terminated unexpectedly. Timedout
     2018-02-06 21:36:18   lux             43
     2018-02-06 21:36:18   moisture        25
     2018-02-06 22:02:26   state           error
     2018-02-06 21:36:18   temperature     19.6
   helper:
     CallBattery 0
     CallSensDataCounter 0
     updateTimeCallBattery 1517947431.6527
     updateTimestampCallBattery 2018-02-06 21:03:51
Attributes:
   model      flowerSens
   room       XiaomiBTLESens
   verbose    5

CoolTux

Scheint aber mal funktioniert zu haben. Kannst du zu Testzwecken den Sensor näher an den BT Dongle holen?
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

oko

Zitat von: distel am 05 Februar 2018, 20:38:04
Also wenn es seitens der Flower-Sensor-Fraktion keine Einwände gibt :)
Sorry, wenn ich hier rein grätsche, aber ich hätte nen Einwand ;-)

Habe jetzt meine 3 Sensoren vom alten Flower-Sens auf's neue Modul umgestellt.

Im großen und ganzen funktioniert es, allerdings bekomme ich mehrmals am Tag extrem falsche Temperaturwerte.
Im SVG-Plot sind sie als einzelne Nadeln sichtbar, laut Statistikmodul ist der Wert dann 58981.5 °C.
Da der Sensor nicht zu Forschungszwecken in Sonnennähe platziert ist also eher unplausibel...

Wie gesagt, die Sensoren laufen seit letztem Jahr zuverlässig mit dem alten Modul und sie zeigen jetzt alle drei diese Ausreißer.

Welche Daten braucht ihr zur Eingrenzung des Fehlers?

Grüße
Olaf

CoolTux

Interessant wären Logs mit den Rohdaten zum Zeitpunkt der Ausreißer.
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

oko

Also Attribut "verbose" des Sensors auf 5, richtig?

Dann lass ich das mal den Tag über laufen und schau heute Abend die Logs durch...