Autor Thema: [74_XiaomiBTLESens.pm] Xiaomi Bluetooth Sensoren FlowerSens/Thermometer  (Gelesen 59754 mal)

Offline trinitywhm

  • Full Member
  • ***
  • Beiträge: 125
Hatte ich gestern auch schon gemacht. Pflanze stand den ganzen Abend auf dem Schreibtisch auf dem auch der raspi3 liegt. Log sah dabei genauso aus.

Offline CoolTux

  • Developer
  • Hero Member
  • ****
  • Beiträge: 22905
Gib Mal bitte ein list von einer Pflanze.

Am Code hat sich nichts geändert für den Pflanzensensor. Einzig alte Firmwareversionen werden nicht mehr unterstützt.
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://paypal.me/pools/c/8gULisr9BT
FHEM GitHub: https://github.com/fhem/
kein Support für cfg Editierer

Offline trinitywhm

  • Full Member
  • ***
  • Beiträge: 125
List einer Pflanze
Internals:
   BTMAC      C4:7C:8D:65:B8:76
   DEF        C4:7C:8D:65:B8:76
   INTERVAL   300
   NAME       BAD_Pflanze5
   NOTIFYDEV  global,BAD_Pflanze5
   NR         337
   NTFY_ORDER 50-BAD_Pflanze5
   STATE      disabled
   TYPE       XiaomiBTLESens
   VERSION    2.0.5
   loglevel   4
   READINGS:
     2018-01-26 10:35:15   battery         ok
     2018-01-26 10:35:15   batteryLevel    99
     2018-01-26 14:14:51   fertility       587
     2018-01-26 10:35:15   firmware        3.1.8
     2018-01-28 09:04:16   lastGattError   The BlockingCall Process terminated unexpectedly. Timedout
     2018-01-26 14:14:51   lux             55
     2018-01-26 14:14:51   moisture        31
     2018-01-28 11:51:36   state           disabled
     2018-01-26 14:14:51   temperature     20.7
     2018-01-28 09:04:21   uistate         ok
   helper:
     CallBattery 0
     CallSensDataCounter 0
Attributes:
   DbLogExclude .*
   DbLogInclude state,battery,batteryLevel,temperature,moisture,fertility,lux
   alias      Efeu
   disable    1
   event-min-interval state:3600,battery:3600,batteryLevel:3600,temperature:600,moisture:600,fertility:600,lux:300
   event-on-change-reading state
   event-on-update-reading .*
   icon       hue_room_garden
   maxFertility 2000
   maxLux     3500
   maxMoisture 60
   maxTemp    32
   minFertility 350
   minLux     1400
   minMoisture 15
   minTemp    10
   model      flowerSens
   room       70_Bad
   stateFormat {"Feuchte: ".AttrVal($name,"minMoisture","")." / ".ReadingsVal($name,"moisture","")." / ".AttrVal($name,"maxMoisture","")."</br>".
"Dünger: ".AttrVal($name,"minFertility","")." / ".ReadingsVal($name,"fertility","")." / ".AttrVal($name,"maxFertility","")."</br>".
"Temperatur: ".AttrVal($name,"minTemp","")." / ".ReadingsVal($name,"temperature","")." / ".AttrVal($name,"maxTemp","")."</br>"}
   userReadings uistate {my $moist = ReadingsVal($name, "moisture",0);; my $minmoist = AttrVal($name,"minMoisture",10);; my $fert = ReadingsVal($name, "fertility",0);; my $minfert = AttrVal($name,"minFertility",50);; if ($moist < $minmoist && $fert < $minfert) {return "durstig+hungrig"} elsif ($moist < $minmoist) {return "durstig"} elsif ($fert < $minfert) {return "hungrig"} else {return "ok"}}
   verbose    0

Welche Firmware wird nicht mehr unterstützt?

Offline trinitywhm

  • Full Member
  • ***
  • Beiträge: 125
So, Pflanze steht dicht am raspi. Device enabled. Verbose 5. Und dann get SensorData. Das ist das Ergebnis im Log
2018.01.30 08:17:19 1: Timeout for XiaomiBTLESens_ExecGatttool_Run reached, terminated process 25362
2018.01.30 08:20:13 4: XiaomiBTLESens (BAD_Pflanze5) - Run CreateParamGatttool with mod: read
2018.01.30 08:20:13 4: XiaomiBTLESens (BAD_Pflanze5) - Read XiaomiBTLESens_ExecGatttool_Run BAD_Pflanze5|C4:7C:8D:65:B8:76|read|0x38
2018.01.30 08:20:14 5: XiaomiBTLESens (BAD_Pflanze5) - ExecGatttool_Run: call gatttool with command gatttool -i hci0 -b C4:7C:8D:65:B8:76 --char-read -a 0x38 2>&1 /dev/null and loop 0
2018.01.30 08:20:54 5: XiaomiBTLESens (BAD_Pflanze5) - ExecGatttool_Run: gatttool loop result connect error,Connection refused (111)

2018.01.30 08:20:54 5: XiaomiBTLESens (BAD_Pflanze5) - ExecGatttool_Run: call gatttool with command gatttool -i hci0 -b C4:7C:8D:65:B8:76 --char-read -a 0x38 2>&1 /dev/null and loop 1
2018.01.30 08:21:13 1: Timeout for XiaomiBTLESens_ExecGatttool_Run reached, terminated process 25599
2018.01.30 08:21:14 4: XiaomiBTLESens (BAD_Pflanze5) - WriteReadings: Readings were written
2018.01.30 08:21:14 4: XiaomiBTLESens (BAD_Pflanze5) - ExecGatttool_Aborted: The BlockingCall Process terminated unexpectedly. Timedout

Offline CoolTux

  • Developer
  • Hero Member
  • ****
  • Beiträge: 22905
2018.01.30 08:20:14 5: XiaomiBTLESens (BAD_Pflanze5) - ExecGatttool_Run: call gatttool with command gatttool -i hci0 -b C4:7C:8D:65:B8:76 --char-read -a 0x38 2>&1 /dev/null and loop 0
2018.01.30 08:20:54 5: XiaomiBTLESens (BAD_Pflanze5) - ExecGatttool_Run: gatttool loop result connect error,Connection refused (111)

Schau mal auf die Zeiten. gatttool lässt sich 40s Zeit um sich eine Antwort ab zu ringen. Das ist natürlich übelst.
Und mit der anderen Version geht das. Installiert die mal parallel und deaktiviere die Pflanze5 mit dem neuen Modul und aktiviere Pflanze5 mit dem alten Modul.
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://paypal.me/pools/c/8gULisr9BT
FHEM GitHub: https://github.com/fhem/
kein Support für cfg Editierer

Offline trinitywhm

  • Full Member
  • ***
  • Beiträge: 125
Ha, die Idee hatte ich auch schon. Hier das Ergebnis:
2018.01.30 09:34:06 4: XiaomiFlowerSens (BAD_Pflanze55) - CallBatteryFirmware: call function ExecGatttool_Run
2018.01.30 09:34:06 5: XiaomiFlowerSens (BAD_Pflanze55) - ExecGatttool_Run: call gatttool with command gatttool -i hci0 -b C4:7C:8D:65:B8:76 --char-read -a 0x38 2>&1 /dev/null and loop 0
2018.01.30 09:34:47 5: XiaomiFlowerSens (BAD_Pflanze55) - ExecGatttool_Run: gatttool loop result connect error,Connection refused (111)

2018.01.30 09:34:47 5: XiaomiFlowerSens (BAD_Pflanze55) - ExecGatttool_Run: call gatttool with command gatttool -i hci0 -b C4:7C:8D:65:B8:76 --char-read -a 0x38 2>&1 /dev/null and loop 1
2018.01.30 09:35:06 1: Timeout for XiaomiFlowerSens_ExecGatttool_Run reached, terminated process 30431
2018.01.30 09:35:06 4: XiaomiFlowerSens (BAD_Pflanze55) - WriteReadings: Readings were written
2018.01.30 09:35:06 4: XiaomiFlowerSens (BAD_Pflanze55) - ExecGatttool_Aborted: The BlockingCall Process terminated unexpectedly. Timedout

Bevor ich gewechselt bin, hatte ich diese Probleme nicht. Und wie man sieht, "never change a running system".....

Offline CoolTux

  • Developer
  • Hero Member
  • ****
  • Beiträge: 22905
Hast Du in der Zeit auch ein Distributions Update gemacht? welche gatttool Version hast Du?
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://paypal.me/pools/c/8gULisr9BT
FHEM GitHub: https://github.com/fhem/
kein Support für cfg Editierer

Offline trinitywhm

  • Full Member
  • ***
  • Beiträge: 125
Nein, ich habe kein Distributionsupdate gemacht. Wie finde ich die Version von gatttool heraus?

Offline CoolTux

  • Developer
  • Hero Member
  • ****
  • Beiträge: 22905
gatttool --version
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://paypal.me/pools/c/8gULisr9BT
FHEM GitHub: https://github.com/fhem/
kein Support für cfg Editierer

Offline trinitywhm

  • Full Member
  • ***
  • Beiträge: 125
Das hatte ich auch versucht, aber den Aufruf gibt es wohl nicht. Hab Debian jessie.

Offline CoolTux

  • Developer
  • Hero Member
  • ****
  • Beiträge: 22905
Das hatte ich auch versucht, aber den Aufruf gibt es wohl nicht. Hab Debian jessie.

bluetoothctl --version
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://paypal.me/pools/c/8gULisr9BT
FHEM GitHub: https://github.com/fhem/
kein Support für cfg Editierer

Offline trinitywhm

  • Full Member
  • ***
  • Beiträge: 125
bluetoothctl --version

OK, danke. Das funktioniert.
Version 5.23

Offline distel

  • Full Member
  • ***
  • Beiträge: 112
bluetoothctl --version
Mein RasPi (der remote Rechner) hat 5.43 der NUC 5.37.
NUC-I37100
Docker: eBus, fhem, ha-bridge, unifi
Hardware: Homematic, FS20, Somfy RTS, 1wire, FBAHA, enOcean

Offline CoolTux

  • Developer
  • Hero Member
  • ****
  • Beiträge: 22905
Ich habe 5.43

Welche distribution plus Version hast du?
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://paypal.me/pools/c/8gULisr9BT
FHEM GitHub: https://github.com/fhem/
kein Support für cfg Editierer

Offline distel

  • Full Member
  • ***
  • Beiträge: 112
Ich habe 5.43
5.43 ist bei mir ein RasPi 2 mit Rasbian Stretch
5.37 ist der NUC mit Ubuntu 16.04.3 LTS
NUC-I37100
Docker: eBus, fhem, ha-bridge, unifi
Hardware: Homematic, FS20, Somfy RTS, 1wire, FBAHA, enOcean