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

Offline trinitywhm

  • Full Member
  • ***
  • Beiträge: 142
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.

Online CoolTux

  • Developer
  • Hero Member
  • ****
  • Beiträge: 25679
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
My FHEM Git: https://git.cooltux.net/FHEM/
Mein Dokuwiki:
https://www.cooltux.net

Offline trinitywhm

  • Full Member
  • ***
  • Beiträge: 142
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: 142
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

Online CoolTux

  • Developer
  • Hero Member
  • ****
  • Beiträge: 25679
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
My FHEM Git: https://git.cooltux.net/FHEM/
Mein Dokuwiki:
https://www.cooltux.net

Offline trinitywhm

  • Full Member
  • ***
  • Beiträge: 142
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".....

Online CoolTux

  • Developer
  • Hero Member
  • ****
  • Beiträge: 25679
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
My FHEM Git: https://git.cooltux.net/FHEM/
Mein Dokuwiki:
https://www.cooltux.net

Offline trinitywhm

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

Online CoolTux

  • Developer
  • Hero Member
  • ****
  • Beiträge: 25679
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
My FHEM Git: https://git.cooltux.net/FHEM/
Mein Dokuwiki:
https://www.cooltux.net

Offline trinitywhm

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

Online CoolTux

  • Developer
  • Hero Member
  • ****
  • Beiträge: 25679
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
My FHEM Git: https://git.cooltux.net/FHEM/
Mein Dokuwiki:
https://www.cooltux.net

Offline trinitywhm

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

OK, danke. Das funktioniert.
Version 5.23

Offline distel

  • Full Member
  • ***
  • Beiträge: 113
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

Online CoolTux

  • Developer
  • Hero Member
  • ****
  • Beiträge: 25679
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
My FHEM Git: https://git.cooltux.net/FHEM/
Mein Dokuwiki:
https://www.cooltux.net

Offline distel

  • Full Member
  • ***
  • Beiträge: 113
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

 

decade-submarginal