FHEM Forum

FHEM - Hausautomations-Systeme => Sonstige Systeme => Thema gestartet von: dominik am 12 November 2016, 11:45:15

Titel: Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 12 November 2016, 11:45:15
Es wird nun das fhempy Modul empfohlen:
1. fhempy installieren: https://github.com/fhempy/fhempy#installation
2. eq3bt einrichten:
https://github.com/fhempy/fhempy/blob/master/FHEM/bindings/python/fhempy/lib/eq3bt/README.md

Es erlaubt auch fhempy auf Peers (entfernten RPis) laufen zu lassen und damit die Bluetooth Reichweite zu "erhöhen". Man kann beliebig viele Peers verwenden und somit das ganze Haus abdecken. Die Peers müssen kein FHEM installiert haben und können aus FHEM heraus verwaltet werden.

============   ALTE INFOS   ============
Hallo zusammen,

ich habe gerade ein neues Modul für das EQ3 Bluetooth Thermostat ins offizielle FHEM Repository commited. Entstanden ist das Modul in diesem Thread: https://forum.fhem.de/index.php?topic=39308.0
Möchte mich auch bei allen bedanken die mir mit Feedback, hilfreichen Informationen und beim Testing geholfen haben!

Nun zum Modul...
Das Modul steuert die Bluetooth Thermostate von EQ3 (http://www.eq-3.de/produkte/eqiva/bluetooth-smart-heizkoerperthermostat.html). Diese Thermostate kosten zur Zeit 19,90€.

Funktionen
- desiredTemperature [4.5...29.5]   -   set the temperature
- boost on/off   -   activate boost command
- mode manual/automatic   -   set manual/automatic mode
- updateStatus   -   read current thermostat state and update readings
- eco   -   set eco temperature
- comfort   -   set comfort temperature

Voraussetzungen
bluez muss installiert sein. Ihr könnt auch im System prüfen ob ihr die Binary gatttool (Bestandteil von bluez) ausführen könnt. Wenn ja, dann sollte das Modul laufen.

Define
define wz.heizung EQ3BT MACADDRESS

Die Mac Address könnt ihr per bluetoothctl ausfindig machen:
pi@raspberrypi ~/fhem.svn/fhem-code $ bluetoothctl
[NEW] Controller 00:1A:7D:XX:XX:XX raspberrypi [default]
[bluetooth]# scan on
Discovery started
[CHG] Controller 00:1A:7D:XX:XX:XX Discovering: yes
[NEW] Device 41:86:FB:XX:XX:XX 41-86-FB-...
[NEW] Device 00:1A:22:XX:XX:XX CC-RT-BLE <== EQ3 Device, erkennbar an CC-RT-BLE
[CHG] Device 41:86:FB:XX:XX:XX RSSI: -56
[NEW] Device 00:1A:22:XX:XX:XX CC-RT-BLE <== EQ3 Device, erkennbar an CC-RT-BLE
[CHG] Device 41:86:FB:XX:XX:XX RSSI: -70
[NEW] Device 5A:64:25:XX:XX:XX 5A-64-25-...
[bluetooth]# scan off


Hinweise
- Die aktuelle Temperatur kann im Moment nicht ausgelesen werden, da EQ3 diese nicht per Bluetooth zugänglich gemacht hat - vielleicht ändert sich ja das irgendwann, dann kann ich es implementieren.
- Die Reichweite der Thermostate ist mit 10m angegeben. Bei mir klappt es durch 2 Wände mit 7m Reichweit noch ganz gut. Das Modul versucht auch 20x den gewünschten Wert zu setzen, wenn es nach 20x noch immer nicht funktioniert hat, wird auch ein "error" Reading gesetzt.

Viel Spaß mit dem Modul. Bei Wünschen, Anregungen, Feedback, ... bitte einfach hier posten.

Gruß,
Dominik
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: sirnoname am 26 November 2016, 22:07:18
bluetoothctl ist auf der Standard Installation von wheezy nicht vorhanden. (Raspian)

bluez-simple-agent ist vorhanden.
Zitathcitool scan
sieht meine Geräte nicht.
Was kann man da tun?
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 26 November 2016, 23:25:54
Hallo,
ich empfehle ein Update auf jessie um das Modul zu verwenden. Alles andere erfordert weitere Implementierungen und Tests.

Gruß
Dominik
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: sirnoname am 27 November 2016, 03:54:26
Leider nicht möglich, die wheezy zu jessie Wechsel-Anleitungen funktionieren bei meiner aufwändigen Konfiguration nicht.
Das neu kompilierte BlueZ, mit jetzt vorhandenem bluetoothctl, nimmt keine Angabe von der Tastatur an wenn es aufgerufen wird. Vermutlich wegen fehlendem Systemd und D-Bus.
LE Scan ist mit HCI möglich, gatttol ist vorhanden. Ich kann meine Regler sehen, aber dein Modul spricht sie nicht an. Fehler Ausgabe unten.
Ubrigends gibt das lescan vom hcitool andauernd die MAC Adressen aus, auch wenn ich nicht verbunden bin.
Muss ich sie pairen? Brauche ich nicht den 4 stelligen Code, der mir auf dem Reglern angezeigt wird, irgendwo?
Evtl. hast du einen gatttool Aufruf für mich mit dem man das debuggen kann?

error updateStatus, 03100B1B032A failed 2016-11-27 03:50:43

2016.11.27 03:41:43 3: EQ3BT (Heizung.Mitte): setDesiredTemperature, 0x0411, 413B failed 20 times.
2016.11.27 03:41:43 1: Timeout for EQ3BT_execGatttool reached, terminated process 2839
2016.11.27 03:43:08 3: EQ3BT (Heizung.Mitte): setDesiredTemperature, 0x0411, 413B failed 20 times.
2016.11.27 03:45:10 3: EQ3BT (Heizung.Mitte): setDesiredTemperature, 0x0411, 413B failed 20 times.
2016.11.27 03:46:00 3: EQ3BT (Heizung.Mitte): updateSystemInformation, 0x0411, 00 failed 20 times.
2016.11.27 03:46:33 3: EQ3BT (Heizung.Mitte): updateStatus, 0x0411, 03100B1B032A failed 20 times.
2016.11.27 03:47:23 3: EQ3BT (Heizung.Mitte): setDesiredTemperature, 0x0411, 413B failed 20 times.
2016.11.27 03:50:21 3: EQ3BT (Heizung.Mitte): setDesiredTemperature, 0x0411, 413B failed 20 times.
2016.11.27 03:50:43 3: EQ3BT (Heizung.Mitte): updateStatus, 0x0411, 03100B1B032A failed 20 times.

Grüße,
SirNoName
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: sirnoname am 29 November 2016, 22:11:47
Keiner eine Idee?
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Kawaci am 29 November 2016, 22:15:44
Also den 4 stelligen pin hab ich nicht gebraucht und dein logfile auszu sieht aus als ob keine verbindung wäre!
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: sirnoname am 29 November 2016, 22:19:20
Gibt es da kein Pairing? Musste man das Pairing zum Handy vorher löschen?
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Kawaci am 29 November 2016, 22:26:14
Ich musste nicht pairen hab eines mit und eines ohne pairing gemacht und kein unterschied
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Gasmast3r am 29 November 2016, 22:47:01
Hab auch keins mit FHEM gepairt nur mit Handy, und klappt soweit Verbindung vorhanden ist.

Gesendet von meinem SM-N915FY mit Tapatalk

Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: sirnoname am 02 Dezember 2016, 01:02:46
Ok, ich wüsste nicht warum BTLE Signale mit meinem gattol nicht funktionieren sollten.
Hat jemand den exaxten gatttol Aufruf parat um das mal ohne FHEM zu testen?
Evlt. fehlt FHEM ja nur die Zugrifferlaubnis gatttool zu starten.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 03 Dezember 2016, 09:42:08
Probier mal
gatttool -b 00:11:... --char-write-req --handle=0x0411 --value=00 --listen

Dauert paar Sekunden und dann sollte eine Zeichenkette als Rückmeldung kommen. 00:11... ist die MAC Adresse.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: EnderPhilipp am 03 Dezember 2016, 10:05:00
Das ist aber Zufall, habe mir gestern ein HomematicThermostat bestellt, weil ich dachte, dass mein EQ3 Bluetooth Thermostat in FHEM nicht unterstütz wird. :-[
Na, vlt bringe ich das Thermostat in einem anderen Raum an; Wie hoch ist denn die Reichweite vom Thermostat mit einem RPI3, hat da wer irgendwelche Erfahrungen gemacht ?

Mfg
Philipp
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Gasmast3r am 03 Dezember 2016, 10:38:03
Mit Altbau Wänden 4-5m, muss auch mit 2 wlan Routern arbeiten bei ca 80qm, also bestimmt noch was möglich

Gesendet von meinem SM-N915FY mit Tapatalk

Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 03 Dezember 2016, 10:47:07
Reichweite...10m gibt EQ3 an. Das Setzen der Temperatur funktioniert bei mir zu 99% (das Modul probiert es 20x). Das Lesen des aktuellen Status schlägt aber bei mir in der Küche schon ab und zu fehl. Ich gehe also von einer Reichweite mit Berücksichtigung von Wänden von ca. 8m aus. Zumindest klappt es da bei mir mit einem Mini BT Stick am RPi2.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 03 Dezember 2016, 11:23:39
Anbei eine neue Version mit der Bitte um Tests bevor ich diese dann ins Repository hochlade.

- BUGFIX:  better error handling if no notification was received
- BUGFIX:  update system information fixed
- CHANGE:  allow multiple gatttools to be executed in parallel
- CHANGE:  remove error reading
- CHANGE:  add errorCounters based on function (update/...)
            which will be increased if reading from the thermostat
            fails 20 times for one command
- BUGFIX:  retry mechanism for commands with notifications (updateStatus)
- BUGFIX:  remain consumption values after restart
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: VB90 am 03 Dezember 2016, 11:48:42
Zitat2016.12.03 11:38:49.311 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/10_EQ3BT.pm line 402.
2016.12.03 11:43:51.906 1: PERL WARNING: Use of uninitialized value $name in concatenation (.) or string at ./FHEM/10_EQ3BT.pm line 271.
2016.12.03 11:43:51.907 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/10_EQ3BT.pm line 271.

Ansonsten bislang unauffällig
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 03 Dezember 2016, 12:01:33
Das ging ja schnell. Danke dir!

Anbei ein Update...bitte nochmals zu testen.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: VB90 am 03 Dezember 2016, 12:06:47
ok, mal schauen, was wird.

Das es bei mir läuft, oder ich nichts feststelle, das heisst mal garnichts ;)

vb
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: VB90 am 03 Dezember 2016, 23:04:07
bislang alles gut!

Können wir uns an dieser Stelle aber mal über eine Reichweitenvergrößerung von BT unterhalten?
Sei es auf Seiten von der FHEM-Hardware oder des Thermostats.
Thematisch passt es hier, ich würde es aber auch verstehen, wenn der Thread allein dem Modul überlassen bleiben soll.

Ich habe an einigen (zuvielen) Ecken Probleme, die Thermostate zu erreichen.
Zuviele deswegen, weil sich hierdurch der günstige Preis der Thermostate nicht bezahlt macht.
Die Entfernungen sind nichtmal sooo groß, die baulichen Gegebenheiten in einem Altbau von 1908 meines Erachtens nicht die schlechtesten.
Trotzdem komme ich teilweise Luftlinie auf kaum 8m.

vb
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Gasmast3r am 03 Dezember 2016, 23:09:02
Hy hab hier die neue Modul Version runter geladen und auf mein FHEM kopiert nun bekomme ich aber beim Update
2016.12.03 22:59:22 1 : UPD FHEM/10_EQ3BT.pm
2016.12.03 22:59:22 1 : open ./FHEM/10_EQ3BT.pm failed: Keine Berechtigung, trying to restore the previous version and aborting the update

Was hab ich falsch gemacht? ?

Gesendet von meinem SM-N915FY mit Tapatalk

Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: VB90 am 03 Dezember 2016, 23:15:11
wahrscheinlich hast du die Version von hier mit den falschen Userrechten (root) hochgeladen und nun kann dein FHEM da nicht mehr drüber schreiben.

Setze einfach die Userrechte wie bei den anderen Modulen, dann klappt es auch wieder mit dem Update.

vb
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Gasmast3r am 03 Dezember 2016, 23:22:58
Das kann möglich sein, muss dann mal schauen wie das geht

Gesendet von meinem SM-N915FY mit Tapatalk

Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 03 Dezember 2016, 23:50:29
@VB90, eigentlich gibt es nur 2 Möglichkeiten:
- FHEM2FHEM Support implementieren. Erfordert dann aber weitere RPis in der Wohnung. Womöglich macht das Sinn wenn man auch andere Funkstandards verwendet die man in der Reichweite erweitern möchte.
- Hardware Anpassung am Thermostat. Vielleicht kann man noch einen kleinen Draht als Antenne irgendwo anlöten. Ob das was hilft, kann ich nicht beurteilen.

Andere Möglichkeiten fallen mir aktuell nicht ein.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: VB90 am 04 Dezember 2016, 00:08:01
Ich hatte schonmal nen Thermostat offen. Auf die schnelle aber nix gefunden, was nach Antenne aussah. Für mich als Laien.

FHEM2FHEM hab ich auch schon bedacht, aber dann stehen die Dinger 5m auseinander. Nur um BT zu "verlängern"...
Auch net soo der Brüller.

vb
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Gasmast3r am 04 Dezember 2016, 10:32:27
FHEM2FHEM hatte ich auch versucht aber da komme ich nicht weiter( hab 4 Pi's am laufen ) da nur log oder Raw möglich sind.
Hatte auch gegoogelt wie man mehrere dongles ansprechen kann, was nur an der Programmier Seite harpert  (5M USB Verlängerungskabel  möglich).
Wäre da an ne Lösung interessiert

Gesendet von meinem SM-N915FY mit Tapatalk

Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 04 Dezember 2016, 10:41:36
Genau, mehrere Dongles wären auch eine Möglichkeit.

Hast du bei dir mehrere an einem RPi? Da finde ich sicher eine Möglichkeit das im Modul mit aufzunehmen um pro Thermostat das BT Device zu wählen.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Gasmast3r am 04 Dezember 2016, 10:43:41
Hatte das interne vom pi3 und eins per 5m USB Kabel, aber meine Kenntnisse reichen nicht aus und Google war auch keine hilfe.
Geplant sind bei mir eh 4 Pi's auch wegen Anwesenheit's Erkennung.
Ne Möglichkeit beides zu wählen wäre cool, so kann es jeder seinen Bedürfnissen anpassen.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 05 Dezember 2016, 23:44:57
Ich habe das Gefühl, dass ich mit dem iPhone eine bessere Reichweite habe als mit dem BT Stick. Ist das bei euch auch so? Wenn ja, sollte ein besserer Stick (mit Antenne?) ja eigentlich helfen.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: VB90 am 06 Dezember 2016, 13:47:00
Die hoffnung habe ich auch, jedoch hab ich noch nichts passendes gefunden.

vb
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 11 Dezember 2016, 15:53:25
Soeben die letzte Testversion ins offizielle Repository eingespielt:

v1.1.3 - 20161211
- BUGFIX:  better error handling if no notification was received
- BUGFIX:  update system information fixed
- CHANGE:  allow multiple gatttools to be executed in parallel
- CHANGE:  remove error reading
- CHANGE:  add errorCounters based on function (update/...)
            which will be increased if reading from the thermostat
            fails 30 times for one command
- BUGFIX:  retry mechanism for commands with notifications (updateStatus)
- BUGFIX:  remain consumption values after restart

Geplantes nächstes Feature:
- Support von mehreren Bluetooth Sticks um die Reichweite zu erhöhen
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Kawaci am 11 Dezember 2016, 19:48:26
Tolle Arbeit! Wie meinst du das mit mehreren Bluetooth sticks? Schon mit fhem2fhem oder gibt es da andere lösungen?
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: jannau am 11 Dezember 2016, 21:57:11
Ich bin im Moment dabei den Support für das Eq-3 Bluetooth Thermostat in home-assistant zu verbessern.

Dabei ist mir insbesondere aufgefallen, dass der 'update' tatsächlich nur der SetTime command ist. Das heißt, wenn man Datum und Uhrzeit weglässt, bekommt man zwar ein Status notify aber Uhrzeit und Datum werden zufällig gesetzt. Wenn man Glück hat auf den letzten gesetzten Wert, mit Pech auf zufällige Werte. Das funktioniert also nur im manuellen Modus. Der Auto- und Urlaubsmodus brauchen die richtige Uhrzeit und Datum. Die Sekunden werden bei der Uhrzeit mitgesetzt.

https://github.com/jannau/bluepy_devices/blob/enhacements/bluepy_devices/devices/eq3btsmart.py (https://github.com/jannau/bluepy_devices/blob/enhacements/bluepy_devices/devices/eq3btsmart.py) ist hoffentlich lesbar genug um es als Protokolldokumentation zu verwenden.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 11 Dezember 2016, 22:47:30
Zitat von: Kawaci am 11 Dezember 2016, 19:48:26
Tolle Arbeit! Wie meinst du das mit mehreren Bluetooth sticks? Schon mit fhem2fhem oder gibt es da andere lösungen?
FHEM2FHEM noch nicht, sondern so, dass man mehrere BT Sticks am RPi verwenden kann (z.B. mit USB Verlängerung) um größere Reichweiten zu erzielen.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Kawaci am 15 Dezember 2016, 10:59:45
Hallo!
Hat hier noch jemand probleme mit den thermostaten? Ich bekomme seit 2 tagen kein update status und kanns auch nicht steuern über fhem!
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: snoopersen am 15 Dezember 2016, 11:55:04
Seit 2 Tagen scheint der Wurm drin. Dachte es liegt an meinem Raspi oder so.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Kawaci am 15 Dezember 2016, 12:27:53
Habe den raspi upgedatet reboot und jetzt läufts wieder! Mal schaun wie lange!
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 16 Dezember 2016, 00:56:14
Könnt ihr mir euer Log posten? Dann kann ich mir das genauer anschauen woran das lag.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: snoopersen am 16 Dezember 2016, 14:55:41
Gestern gings wieder astrein. Vermute mal das es ein Empfangsproblem ist. Mal gehts und mal gehts nicht. Muss endlich mal die restlichen Thermostate anbringen. Die sind dann näher am Pi und bringen Gewissheit.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: cotecmania am 19 Dezember 2016, 10:35:05
Hi,

habe auch Probleme. Alle 3 Minuten folgender Eintrag :

2016.12.19 07:53:29 3: EQ3BT (HK_WC_EG): updateStatus, 0x0411, 03100C130735 failed 30 times.
2016.12.19 07:56:24 3: EQ3BT (HK_WC_EG): updateStatus, 0x0411, 03100C130738 failed 30 times.
2016.12.19 07:59:12 3: EQ3BT (HK_WC_EG): updateStatus, 0x0411, 03100C13073B failed 30 times.
2016.12.19 08:02:04 3: EQ3BT (HK_WC_EG): updateStatus, 0x0411, 03100C130801 failed 30 times.
2016.12.19 08:05:16 3: EQ3BT (HK_WC_EG): updateStatus, 0x0411, 03100C130805 failed 30 times.
2016.12.19 08:07:43 3: EQ3BT (HK_WC_EG): updateStatus, 0x0411, 03100C130807 failed 30 times.
2016.12.19 08:10:18 3: EQ3BT (HK_WC_EG): updateStatus, 0x0411, 03100C13080A failed 30 times.


Gruss
Joe
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: VB90 am 19 Dezember 2016, 19:33:58
ich würde denken, gleicher Grund wie bei mir.
Schlechter bzw kein Empfang.

vb
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 19 Dezember 2016, 20:45:25
Probier mal die Position des RPi zu ändern oder per USB Verlängerung den BT Stick besser zu positionieren. Dieser "Fehler" liegt am Empfang.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: cotecmania am 20 Dezember 2016, 16:48:45
Das Problem habe ich erst, seit ich auf den Raspy 3 upgedatet habe.
Der hat ja internes Bluetooth, nicht dass das verwendet wird.
Kann man das Interne abschalten ?
Habe nämlich per USB-Verlängerung einen USB-Bluetooth woanders platziert ...

Gruss
Joe
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 20 Dezember 2016, 18:56:33
Das plane ich für die nächste Version, dass man verschiedene BT Devices am RPi ansprechen kann um die Reichweite zu erhöhen.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: sirnoname am 21 Dezember 2016, 03:02:51
Hallo,

nach dem Update auf Jessie läuft es nun einigermaßen.
Einer der Regler sitzt neben dem Raspberry, hat aber anscheinend Probleme sich mit scan on finden zu lassen. Nur beim Pairen bekomme ich kurzzeitig seine MAC.
Nachdem ich die MAC hatte, kann ich ihn steuern.
Ich verwende das RPI 3 interne Modul, die Reichweite ist ok für mich. Andere Regler sitzen gut 5 Meter entfernt durch eine Wand.

Ein Problem ist noch mit andFHEM Android App. Diese will die Slider nicht richtig einbinden, d.h. ich kann die Temperatur nicht einstellen. Vermutlich passt da noch etwas nicht mit der Benahmung oder dem Plugin?

Danke,
SirNoName
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: cotecmania am 21 Dezember 2016, 13:42:45
Zitat von: dominik am 20 Dezember 2016, 18:56:33
Das plane ich für die nächste Version, dass man verschiedene BT Devices am RPi ansprechen kann um die Reichweite zu erhöhen.

d.h. aktuell verwendet er welchen Adapter, wenn 2 vorhanden sind ?
Oder kann man den internen abschalten, denn mein Raspy befindet sich im Keller ...
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 26 Dezember 2016, 00:35:02
Hier das Update um mehrere Bluetooth Sticks zu verwenden. Habe nun 2 Sticks am Laufen die 90 Grad zueinander positioniert sind. Die Fehlerrate ist damit bei mir ziemlich stark nach unten gegangen.

Es ist keine Konfiguration notwendig, das Modul nutzt automatisch den "besseren" Stick und schaltet um wenn der "bessere" doch nicht funktioniert. Bitte unbedingt "shutdown restart" nach dem Update machen.

v1.1.5 - 20161226
- FEATURE: use all available bluetooth interfaces to communicate
            with the bluetooth thermostat
- FEATURE: new reading bluetoothDevice
- CHANGE:  change maximum retries to 20
- FEATURE: new set function resetErrorCounters
- FEATURE: new set function resetConsumption

Gebt mir bitte Bescheid ob es bei euch läuft, dann spiel ich das die nächsten Tage ins Repository.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Kawaci am 02 Januar 2017, 11:18:31
Hab da mal ne frage! Bist du schon draufgekommen wie man wochenpläne einspielt oder ausliest?
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 02 Januar 2017, 11:31:10
Zitat von: Kawaci am 02 Januar 2017, 11:18:31
Hab da mal ne frage! Bist du schon draufgekommen wie man wochenpläne einspielt oder ausliest?
Ja, die Schnittstelle ist mir bekannt. Bin mir aber nicht sicher, ob das ein sehr gefragtes Feature für FHEM ist? Ich mach meine Wochenpläne alle direkt mit DOIF.

Habe mich auch gefragt wie man die Daten dann schön in FHEM darstellen/ändern soll...
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Kawaci am 02 Januar 2017, 12:13:40
Ok! Ich habs mit dem iphone eingerichtet und der wochen plan ist am thermostat direkt gespeichtert! Nur jetzt nach nem ios update hab ich alles wieder verloren! Eq3 hab ich dieses problem eh schon gemeldet! Darum bin ich auf die idee mit fhem gekommen! Weis auch nicht ob das viel genutzt wird! Aber danke für die rasche antwort!
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Tomatenjoghurt am 03 Januar 2017, 07:27:59
Zitat von: dominik am 02 Januar 2017, 11:31:10
Ja, die Schnittstelle ist mir bekannt. Bin mir aber nicht sicher, ob das ein sehr gefragtes Feature für FHEM ist? Ich mach meine Wochenpläne alle direkt mit DOIF.

Habe mich auch gefragt wie man die Daten dann schön in FHEM darstellen/ändern soll...

Hi!
Erstmal danke...ich lese schon eine Weile mit und nutze dieses hier Modul auch schon seit einiger Zeit - bin bisher sehr begeistert! Eine sehr schöne Low-Budget-Variante für kleinere Wohnungen!
Zuerst wollte ich zur Steuerung eines Wochenheizplans das Modul Heating Control (https://wiki.fhem.de/wiki/Heating_Control) nehmen. Das Modul hat aber irgendwie nichts getan und in den Logs stand immer irgendwas bzgl "Unknown Argument" (bin grad auf Arbeit, kanns grad nicht genau nennen). Mir fiel dabei auf, dass Heating Control nicht das Argument "desiredTemperature", sondern "desiredTemerature" (ohne "p") nutzt:
set <device> (desired-temp|desiredTemerature) <temp>
So stehts zumindest im wiki - und das würde meinen Fehler erklären.
Ich weiß jetzt nicht, ob das ein Bug oder ein Feature ist - evtl kann sich das ja jemand, der schon länger als ich (4 Wochen) mit fhem zutun hat einmal anschauen.  ;) ;D
Ich habe meine Steuerung jetzt auch über DOIFS gelöst - da brauche ich aber für ein Thermostat minimum 3 DOIFs, mit Heating Control sollte das in einer Anweisung gehen. Aber läuft erstmal :D

Viele Grüße,
Tomatenjoghurt
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: raspian am 03 Januar 2017, 08:28:27
Ja erstmal vielen Dank an dominik für dieses wichtige Modul! Klasse!

Ich möchte aber auf etwas hinweisen, was mir im Zusammenhang mit Raspberry Pi 3 und FHEM aufgefallen ist. Und zwar kommen sich das Onboard Bluetooth auf dem Raspi Pi 3 und FHEM irgendwie beim Hochbooten ins Gehege ... Solange ich FHEM nicht installiere, klappt Bluetooth (bluetoothctl), installiere ich FHEM wird der Bluetooth-Adapter nach einem Reboot nicht mehr gefunden. Fand das irgendwie rätselhaft.

Ich bin dann zufällig auf diesen WIKI-Eintrag gestossen: https://wiki.fhem.de/wiki/Raspberry_Pi_3:_GPIO-Port_Module_und_Bluetooth (https://wiki.fhem.de/wiki/Raspberry_Pi_3:_GPIO-Port_Module_und_Bluetooth)

Habe dann wie in Schritt 7 eine Verzögerung für den FHEM-Start eingebaut und siehe da: Keine Probleme mehr. Vielleicht nützt der Tip dem einen oder anderen, welcher das gleiche Phänomen festgestellt hat.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: cotecmania am 03 Januar 2017, 12:46:04
Hallo,

mein Thermostat setzt sich immer wieder selbsständig auf 18.5 Grad zurück.

Im Beispiel unten habe ich aus FHEM 23 Grad vorgegeben. Das wurde auch eingestellt und auch die Ventilstellung hat sich angepasst.
2 Minuten später waren wieder die 18.5 gesetzt ...


2017.01.03 12:37:21 5: EQ3BT (HK_WC_EG): gatttool -b 00:1A:22:07:4A:DB --char-write-req --handle=0x0411 --value=412E 2>&1
2017.01.03 12:37:27 4: EQ3BT (HK_WC_EG): gatttool result: Characteristic value was written successfully
2017.01.03 12:37:27 5: EQ3BT (HK_WC_EG): gatttool return string: HK_WC_EG|00:1A:22:07:4A:DB|ok|setDesiredTemperature|0x0411|412E
2017.01.03 12:37:56 5: EQ3BT (HK_WC_EG): timeout 5 gatttool -b 00:1A:22:07:4A:DB --char-write-req --handle=0x0411 --value=031101030C25 --listen 2>&1
2017.01.03 12:38:01 4: EQ3BT (HK_WC_EG): gatttool result:
2017.01.03 12:38:01 5: EQ3BT (HK_WC_EG): gatttool return string: HK_WC_EG|00:1A:22:07:4A:DB|error|updateStatus|0x0411|031101030C25|updateStatus failed
2017.01.03 12:38:01 4: EQ3BT (HK_WC_EG): updateStatus failed (0x0411, 031101030C25, updateStatus failed)
2017.01.03 12:38:07 5: EQ3BT (HK_WC_EG): timeout 5 gatttool -b 00:1A:22:07:4A:DB --char-write-req --handle=0x0411 --value=031101030C26 --listen 2>&1
2017.01.03 12:38:12 4: EQ3BT (HK_WC_EG): gatttool result:
2017.01.03 12:38:12 5: EQ3BT (HK_WC_EG): gatttool return string: HK_WC_EG|00:1A:22:07:4A:DB|error|updateStatus|0x0411|031101030C26|updateStatus failed
2017.01.03 12:38:12 4: EQ3BT (HK_WC_EG): updateStatus failed (0x0411, 031101030C26, updateStatus failed)
2017.01.03 12:38:17 5: EQ3BT (HK_WC_EG): timeout 5 gatttool -b 00:1A:22:07:4A:DB --char-write-req --handle=0x0411 --value=031101030C26 --listen 2>&1
2017.01.03 12:38:22 4: EQ3BT (HK_WC_EG): gatttool result: Characteristic value was written successfully,Notification handle = 0x0421 value: 02 01 09 23 04 2e
2017.01.03 12:38:22 5: EQ3BT (HK_WC_EG): gatttool return string: HK_WC_EG|00:1A:22:07:4A:DB|ok|updateStatus|0x0411|031101030C26|02 01 09 23 04 2e
2017.01.03 12:40:37 5: EQ3BT (HK_WC_EG): timeout 5 gatttool -b 00:1A:22:07:4A:DB --char-write-req --handle=0x0411 --value=031101030C28 --listen 2>&1
2017.01.03 12:40:42 4: EQ3BT (HK_WC_EG): gatttool result: Characteristic value was written successfully,Notification handle = 0x0421 value: 02 01 09 0d 04 25
2017.01.03 12:40:42 5: EQ3BT (HK_WC_EG): gatttool return string: HK_WC_EG|00:1A:22:07:4A:DB|ok|updateStatus|0x0411|031101030C28|02 01 09 0d 04 25


Internals:
   DEF        00:1A:22:07:4A:DB
   MAC        00:1A:22:07:4A:DB
   NAME       HK_WC_EG
   NR         880
   STATE      initialized
   TYPE       EQ3BT
   Readings:
     2017-01-03 12:43:59   battery         ok
     2017-01-03 12:43:59   boost           0
     2017-01-03 12:43:59   consumption     21855.737
     2017-01-03 12:43:59   consumptionToday 428.943
     2017-01-03 00:02:13   consumptionYesterday 447.202
     2017-01-03 12:43:59   desiredTemperature 18.5
     2017-01-03 12:43:59   ecoMode         0
     2016-12-12 13:30:08   error
     2017-01-03 04:11:20   errorCount-updateStatus 4094
     2017-01-03 12:35:23   firmware        106
     2017-01-03 12:43:59   mode            Manual
     2017-01-03 12:43:59   valvePosition   13
     2017-01-03 12:43:59   windowOpen      0
   Helper:
     handlesetDesiredTemperature 0x0411
     handleupdateStatus 0x0411
     handleupdateSystemInformation 0x0411
     listensetDesiredTemperature
     listenupdateStatus 02 01 09 0d 04 25
     listenupdateSystemInformation 01 6a 00 00 7d 75 81 61 63 67 68 65 63 66 99
     retryCountersetDesiredTemperature 0
     retryCounterupdateStatus 0
     retryCounterupdateSystemInformation 0
     valuesetDesiredTemperature 412E
     valueupdateStatus 031101030C2B
     valueupdateSystemInformation 00
     Running_pid:
       abortFn    EQ3BT_killGatttool
       arg        HK_WC_EG|00:1A:22:07:4A:DB|updateStatus|0x0411|03|listen
       bc_pid     91
       finishFn   EQ3BT_processGatttoolResult
       fn         EQ3BT_execGatttool
       pid        DEAD:16773
       terminated 1
       timeout    300
       Abortarg:
Attributes:
   room       Heizung
   verbose    5



PS: Könntest Du die Versionsnummer im Modul noch anzeigen. Ich benutze noch die Vorgängerversion ... zumindest nicht die 1.1.5 von oben

Gruss
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: cotecmania am 03 Januar 2017, 12:50:54
das wiederholt sich wohl zyklisch ...

2017.01.03 12:43:33 5: EQ3BT (HK_WC_EG): timeout 5 gatttool -b 00:1A:22:07:4A:DB --char-write-req --handle=0x0411 --value=031101030C2B --listen 2>&1
2017.01.03 12:43:38 4: EQ3BT (HK_WC_EG): gatttool result:
2017.01.03 12:43:38 5: EQ3BT (HK_WC_EG): gatttool return string: HK_WC_EG|00:1A:22:07:4A:DB|error|updateStatus|0x0411|031101030C2B|updateStatus failed
2017.01.03 12:43:38 4: EQ3BT (HK_WC_EG): updateStatus failed (0x0411, 031101030C2B, updateStatus failed)
2017.01.03 12:43:44 5: EQ3BT (HK_WC_EG): timeout 5 gatttool -b 00:1A:22:07:4A:DB --char-write-req --handle=0x0411 --value=031101030C2B --listen 2>&1
2017.01.03 12:43:49 4: EQ3BT (HK_WC_EG): gatttool result:
2017.01.03 12:43:49 5: EQ3BT (HK_WC_EG): gatttool return string: HK_WC_EG|00:1A:22:07:4A:DB|error|updateStatus|0x0411|031101030C2B|updateStatus failed
2017.01.03 12:43:49 4: EQ3BT (HK_WC_EG): updateStatus failed (0x0411, 031101030C2B, updateStatus failed)
2017.01.03 12:43:54 5: EQ3BT (HK_WC_EG): timeout 5 gatttool -b 00:1A:22:07:4A:DB --char-write-req --handle=0x0411 --value=031101030C2B --listen 2>&1
2017.01.03 12:43:59 4: EQ3BT (HK_WC_EG): gatttool result: Characteristic value was written successfully,Notification handle = 0x0421 value: 02 01 09 0d 04 25
2017.01.03 12:43:59 5: EQ3BT (HK_WC_EG): gatttool return string: HK_WC_EG|00:1A:22:07:4A:DB|ok|updateStatus|0x0411|031101030C2B|02 01 09 0d 04 25
2017.01.03 12:46:17 5: EQ3BT (HK_WC_EG): timeout 5 gatttool -b 00:1A:22:07:4A:DB --char-write-req --handle=0x0411 --value=031101030C2E --listen 2>&1
2017.01.03 12:46:22 4: EQ3BT (HK_WC_EG): gatttool result:
2017.01.03 12:46:22 5: EQ3BT (HK_WC_EG): gatttool return string: HK_WC_EG|00:1A:22:07:4A:DB|error|updateStatus|0x0411|031101030C2E|updateStatus failed
2017.01.03 12:46:22 4: EQ3BT (HK_WC_EG): updateStatus failed (0x0411, 031101030C2E, updateStatus failed)
2017.01.03 12:46:28 5: EQ3BT (HK_WC_EG): timeout 5 gatttool -b 00:1A:22:07:4A:DB --char-write-req --handle=0x0411 --value=031101030C2E --listen 2>&1
2017.01.03 12:46:33 4: EQ3BT (HK_WC_EG): gatttool result: Characteristic value was written successfully,Notification handle = 0x0421 value: 02 01 09 0d 04 25
2017.01.03 12:46:33 5: EQ3BT (HK_WC_EG): gatttool return string: HK_WC_EG|00:1A:22:07:4A:DB|ok|updateStatus|0x0411|031101030C2E|02 01 09 0d 04 25
2017.01.03 12:49:01 5: EQ3BT (HK_WC_EG): timeout 5 gatttool -b 00:1A:22:07:4A:DB --char-write-req --handle=0x0411 --value=031101030C31 --listen 2>&1
2017.01.03 12:49:06 4: EQ3BT (HK_WC_EG): gatttool result: Characteristic value was written successfully,Notification handle = 0x0421 value: 02 01 09 0d 04 25
2017.01.03 12:49:06 5: EQ3BT (HK_WC_EG): gatttool return string: HK_WC_EG|00:1A:22:07:4A:DB|ok|updateStatus|0x0411|031101030C31|02 01 09 0d 04 25
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 03 Januar 2017, 15:31:17
@Tomatenjoghurt, lt. Wiki sollte das Modul aber desiredTemperature nutzen. Ich verwende zum Steuern der Heizung ausschließlich DOIF, da ich jeden Heizkörper auch abhängig von:
- Anwesenheit (ebenfalls Bluetooth)
- Bewegung
- Änderung am Thermostat selbst
- Wecker
- usw.
steuere. Jeder Heizkörper hat daher ein eigenes DOIF mit seiner eigenen Steuerung.

@raspbian, ich habe nur einen RPi2 und 2 CSR BT Module in Verwendung. Danke für den Hinweis mit dem Sleep. Im Modul selbst kann ich da aber leider nichts dazu beitragen.

@cotecmania, lt. deinem Log gibt es nur ein "setDesiredTemperature" und das stellt die Temperatur erfolgreich auf 23 Grad. Die restlichen "updateStatus" Meldungen fragen den Thermostatstatus ab und setzen die Uhrzeit, nicht jedoch die Temperatur. Du kannst gerne noch ein Log posten wo du mir genau die Uhrzeit rein schreibst um welche Uhrzeit (sekundengenau) das Thermostat auf 18,5Grad geht.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Tomatenjoghurt am 03 Januar 2017, 18:30:33
@dominik: Ja, ich kann it den DOIFs auch leben. Mich wundert eben nur, dass Heating_Control mit dem folgenden Logeintrag aussteigt:
2017.01.02 20:00:00 3: Unknown argument 22.0, choose one of desiredTemperature:slider,4.5,0.5,29.5,1 updateStatus:noArg boost:on,off mode:manual,automatic eco:noArg comfort:noArg

@cotecmania: Hast du dein Thermostat noch auf "automatic"-Betrieb? Evtl springt er in eine über Bluetooth konfigurierte Temperaturvorgabe. Ich hab meine Thermostate im "manual" Betrieb.

Viele Grüße,
Tomatenjoghurt
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 03 Januar 2017, 20:05:01
@Tomatenjoghurt, hab mir das HCS Modul mal genauer angesehen. Ich glaub, da müsste EQ3BT mit aufgenommen werden damit es funktioniert. Ansonsten ruft der "set name 22.0" auf was nicht funktioniert. Du kannst den Author von HCS mal schreiben, dass EQ3BT desiredTemperature unterstützt, dann kann der das sicher schnell mit aufnehmen.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: cotecmania am 04 Januar 2017, 08:51:15
Manual-Mode war eingestellt.
Ich habe gestern abend noch einen firmware-Update per Handy gemacht, seitdem hält das Thermostat die eingestellte Temperatur !
Allerdings wird im Modul immer noch Firmware : 106 angezeigt, wie vorher auch  ???
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT) und homebridge
Beitrag von: jensenbln am 05 Januar 2017, 17:09:46
Hallo,

ich hab das Thermostat wunderbar in FHEM einbinden können (DANKE an die Entwicklung)
Habe es soweit auch an homebridge anbinden können mit:

attr Wohnzimmer homebridgeMapping TargetTemperature=desiredTemperature,minValue=15,maxValue=30,minStep=0.5

bekomme ich die Temperatur auch eingestellt.

Aber wie kann ich mir die aktuelle Temperatur in Home auf iOS auch anzeigen lassen.
Sobald ich

CurrentTemperature=desiredTemperature

hinten dran füge antwortet das Gerät nicht mehr in Home auf iOS.


Danke für sachdienliche Hinweise ;-)

Gruss
Jens

Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 05 Januar 2017, 17:57:17
Leider bekommt man die Temperatur aus dem Thermostat nicht ausgelesen. Gerne per Kontaktformular mal bei eq-3 anfragen ob die nicht die aktuelle Temperatur in die App mit aufnehmen wollen. Dann könnte ich das auch in FHEM mit aufnehmen :)
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: jensenbln am 06 Januar 2017, 21:59:28
die zuverlässigkeit der übertragung ist jedoch noch nicht so perferkt. ich habe viele error counts und die werte für temperatur werden nicht richtig übernommen.
woran kann das denn noch liegen?

Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Tomatenjoghurt am 06 Januar 2017, 22:37:19
Zitat von: dominik am 03 Januar 2017, 15:31:17
@Tomatenjoghurt, lt. Wiki sollte das Modul aber desiredTemperature nutzen. Ich verwende zum Steuern der Heizung ausschließlich DOIF, da ich jeden Heizkörper auch abhängig von:
- Anwesenheit (ebenfalls Bluetooth)
- Bewegung
- Änderung am Thermostat selbst
- Wecker
- usw.
steuere. Jeder Heizkörper hat daher ein eigenes DOIF mit seiner eigenen Steuerung.
@dominik: Ich habe mich jetzt ein wenig eingehender mit DOIF beschäftigt und bin echt begeistert, wie mächtig das Modul ist. Als fhem-Anfänger ist das echt überwältigend, welche Welten sich da einem auftun :)
Ich glaube HEATING_CONTROL kann da wirklich gegen einpacken  :D

Zitat von: jensenbln am 06 Januar 2017, 21:59:28
die zuverlässigkeit der übertragung ist jedoch noch nicht so perferkt. ich habe viele error counts und die werte für temperatur werden nicht richtig übernommen.
woran kann das denn noch liegen?

Ein ähnliches Problem habe ich auch noch...ich kann sagen, dass es nicht an der Entfernung liegen kann. Ein Thermostat (Luftline 6-7 Meter) durch 2 Wände wird genauso oft falsch angesteuert, wie ein Thermostat, das sich im gleichen Raum (Luftlinie 2m) befindet. Beide Thermostate sind mit dem PI gepaired und getrustet...
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Kawaci am 09 Januar 2017, 17:08:36
hallo!
hat noch wer Probleme mit 1 nem thermostat? eines will sich nicht mit dem pi verbinden obwohl es schon angeschlossen war! bzw hat alles funktioniert!
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 09 Januar 2017, 21:46:33
Prüf mal mit bluetoothctl ob das Device vielleicht dort verbunden ist.
bluetootctl
#disconnect MACADDR


Ansonsten Reset am Thermostat durchführen. Das hatte ich mal bei einem neuen Thermostat welches sich nicht vernünftig verbinden lies.

Bezüglich Reichweite habe ich bei mir gerade einen USB Hub mit Netzteil angeschlossen. Eventuell bringt das Besserung...ich werde dann berichten.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Tomatenjoghurt am 09 Januar 2017, 22:14:51
Zitat von: dominik am 09 Januar 2017, 21:46:33
Prüf mal mit bluetoothctl ob das Device vielleicht dort verbunden ist.
bluetootctl
#disconnect MACADDR


Ansonsten Reset am Thermostat durchführen. Das hatte ich mal bei einem neuen Thermostat welches sich nicht vernünftig verbinden lies.

Bezüglich Reichweite habe ich bei mir gerade einen USB Hub mit Netzteil angeschlossen. Eventuell bringt das Besserung...ich werde dann berichten.

Ich hab den Bluetooth-Dongle seit kurzem an einer 1m USB-Verlängerung angeschlossen und das ganze per Patafix an eine etwas höhere Position geklebt. Das hat bei einem Thermostat bzgl Reichweite ganz gut geholfen. Dennoch fluten mir insgesamt alle Thermostate im Wechsel den Log  :-\
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 10 Januar 2017, 20:09:18
Update...wäre super wenn paar Leute testen könnten.

Ich habe auch das Gefühl, dass seit der Nutzung des USB Hub mit externen Netzteil die Qualität der Übertragung besser ist. Hatte in der Küche immer Probleme und errorCounts von ca. 100/Tag. Gestern Nacht hatte ich 2. Ich beobachte das noch die nächste Tage und lass euch dann wissen ob es wirklich was bringt. Habe folgenden USB Hub nun im Einsatz: https://www.amazon.de/gp/product/B01E042UH2/ref=oh_aui_detailpage_o00_s01?ie=UTF8&psc=1

Unbedingt shutdown restart machen nach dem Einspielen!

v1.1.5 - 20170110
- FEATURE: use all available bluetooth interfaces to communicate
            with the bluetooth thermostat
- FEATURE: new reading bluetoothDevice (shows used hci device)
- CHANGE:  change maximum retries to 20
- FEATURE: new set function resetErrorCounters
- FEATURE: new set function resetConsumption (not today/yesterday)
- FEATURE: new reading lastChangeBy FHEM or thermostat
            indicates who was responsible for the last change
- CHANGE:  update readings only if changed (reduces number of events)
- FEATURE: support $readingFnAttributes
- FEATURE: add VERSION internal and log output
- CHANGE:  updateStatus changed to 5min intervall (prev. 3min)
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Harst am 10 Januar 2017, 20:38:24
Kurzes Ausprobieren, erfolgreich

Horst
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Tomatenjoghurt am 11 Januar 2017, 09:58:16
Update ist installiert, läuft soweit, danke!
Besonders das feature lastChangedBy klingt sehr interessant...

Was mich immernoch stutzig macht, ist folgendes:

2017.01.11 09:31:17 3: EQ3BT (Wohnzimmer.Heizung): updateStatus, 0x0411, 0311010B091F failed 30 times.
2017.01.11 09:34:18 3: EQ3BT (Bad.Heizung): updateStatus, 0x0411, 0311010B0922 failed 30 times.
2017.01.11 09:36:45 3: EQ3BT (Schlafzimmer.Heizung): updateStatus, 0x0411, 0311010B0924 failed 30 times.
2017.01.11 09:36:53 3: EQ3BT (Wohnzimmer.Heizung): updateStatus, 0x0411, 0311010B0924 failed 30 times.

Einträge dieser Art hab ich in einer Nacht ~250 bei 4 Thermostaten. Ich würde es bei einigen Thermostaten, die weiter weg sind, (Bad, Schlafzimmer) verstehen. Jedoch das Wohnzimmer-Thermostat ist 2m Luftlinie ohne Wand oder sonstiges dazwischen vom BT-Dongle entfernt - da kann es eigentlich nicht an der Entfernung liegen.  :-\

Ist es eventuell möglich, dass das Thermostat auf die fhem-Anfragen nicht "schnell" genug antwortet? Ich habe ein ähnliches Phänomen in der Android App auch - da dauert es bis zu 20 Sekunden, bis das Thermostat in der App als "verbunden" erkannt wird. Erst dann werden Daten gelesen bzw. geschrieben. Meinst du das könnte mit den Fehlern zusammenhängen? Kann man dem Modul - evtl auch Testweise- ein "wait" beibringen? Bzw. wartet das Modul auf eine Rückmeldung vom Thermostat?

Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 11 Januar 2017, 23:08:04
Das kann beim updateStatus definitiv vorkommen, dass das Thermostat nicht schnell genug reagiert. Aktuell hab ich ein Timeout von 10s implementiert.

Btw, du dürftest noch nicht aktuelle Version verwenden. Dort ist der Retry auf 20x limitiert. Kannst ja dann mal ausprobieren in der Datei nach "timeout 10" suchen und durch "timeout 15" ersetzen.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Tomatenjoghurt am 12 Januar 2017, 18:26:10
Zitat von: dominik am 11 Januar 2017, 23:08:04
Das kann beim updateStatus definitiv vorkommen, dass das Thermostat nicht schnell genug reagiert. Aktuell hab ich ein Timeout von 10s implementiert.

Btw, du dürftest noch nicht aktuelle Version verwenden. Dort ist der Retry auf 20x limitiert. Kannst ja dann mal ausprobieren in der Datei nach "timeout 10" suchen und durch "timeout 15" ersetzen.

Hmmm, stimmt, fhem sagt mir, dass ich noch die Version vom 11.12.2016 nutze...

Latest Revision: 13045

File              Rev   Last Change

fhem.pl           12966 2017-01-05 20:26:04Z rudolfkoenig
96_allowed.pm     11984 2016-08-19 12:47:50Z rudolfkoenig
98_autocreate.pm  11984 2016-08-19 12:47:50Z rudolfkoenig
95_Dashboard.pm   12251 2016-10-03 09:45:43Z talkabout
98_DOIF.pm        12961 2017-01-04 22:23:57Z Damian
98_dummy.pm       12700 2016-12-02 16:49:42Z rudolfkoenig
10_EQ3BT.pm       12744 2016-12-11 14:51:28Z dominikkarall
91_eventTypes.pm  11984 2016-08-19 12:47:50Z rudolfkoenig
01_FHEMWEB.pm     12984 2017-01-06 13:58:42Z rudolfkoenig
92_FileLog.pm     13027 2017-01-09 16:28:24Z rudolfkoenig
95_FLOORPLAN.pm   11443 2016-05-15 14:17:21Z ulimaass
91_notify.pm      11984 2016-08-19 12:47:50Z rudolfkoenig
99_SUNRISE_EL.pm  12485 2016-11-01 15:18:51Z rudolfkoenig
98_telnet.pm      11984 2016-08-19 12:47:50Z rudolfkoenig
99_Utils.pm       11984 2016-08-19 12:47:50Z rudolfkoenig
98_version.pm     11987 2016-08-19 17:13:41Z markusbloch

Blocking.pm       12648 2016-11-24 12:15:25Z rudolfkoenig
DevIo.pm          12716 2016-12-05 09:11:31Z rudolfkoenig
HttpUtils.pm      12740 2016-12-11 12:57:36Z rudolfkoenig
myUtilsTemplate.pm  7570 2015-01-14 18:31:44Z rudolfkoenig
RTypes.pm         10476 2016-01-12 21:03:33Z borisneubert
SetExtensions.pm  12935 2017-01-02 19:51:46Z rudolfkoenig
TcpServerUtils.pm 11908 2016-08-06 15:09:55Z rudolfkoenig


....Ich habe gerade ein update und anschließend shutdown restart gemacht...mache ich irgendwas falsch?  ???
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 12 Januar 2017, 18:29:29
Ja, die Version oben ist noch nicht im SVN sondern nur hier zum Testen ;)
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Tomatenjoghurt am 12 Januar 2017, 18:31:36
Argh, man sollte sich auch mal die gesamten Posts angucken... ;)
Danke; Ich lads gleich mal runter :)

EDIT:
Up'n'running seit 10 Minuten. hab das timeout auf 20 gesetzt...mal schauen, was die Nacht bringt.

EDIT2:
Das Update und der Time-Out hat marginale Verbesserungen gebracht...statt 250 Fehler in einer Nacht sind es jetzt nur noch 140. Evtl versuche ich es heute einmal mit einem timeout von 30, rein spaßeshalber...
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: cotecmania am 13 Januar 2017, 09:58:15
Seit gestern 1.1.5 aktiv und folgende Meldungen staendig im LOG :

2017.01.13 00:11:54 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/10_EQ3BT.pm line 485.
2017.01.13 00:12:11 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/10_EQ3BT.pm line 485.
2017.01.13 00:18:25 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/10_EQ3BT.pm line 485.
2017.01.13 00:24:50 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/10_EQ3BT.pm line 485.


Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 13 Januar 2017, 19:14:53
Poste bitte mal von diesem Device die "list <name>" Ausgabe.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: cotecmania am 15 Januar 2017, 10:48:53
Zitat von: dominik am 13 Januar 2017, 19:14:53
Poste bitte mal von diesem Device die "list <name>" Ausgabe.

Fehlermeldung taucht nicht mehr auf, keine Ahnung was da war ....
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Darkentik am 25 Januar 2017, 10:01:09
Zitat von: Tomatenjoghurt am 06 Januar 2017, 22:37:19
@dominik: Ich habe mich jetzt ein wenig eingehender mit DOIF beschäftigt und bin echt begeistert, wie mächtig das Modul ist. Als fhem-Anfänger ist das echt überwältigend, welche Welten sich da einem auftun :)
Ich glaube HEATING_CONTROL kann da wirklich gegen einpacken  :D

Ein ähnliches Problem habe ich auch noch...ich kann sagen, dass es nicht an der Entfernung liegen kann. Ein Thermostat (Luftline 6-7 Meter) durch 2 Wände wird genauso oft falsch angesteuert, wie ein Thermostat, das sich im gleichen Raum (Luftlinie 2m) befindet. Beide Thermostate sind mit dem PI gepaired und getrustet...

Hi @Tomatenjoghurt,

ich bin auch seit 2 Wochen jetzt ca. Neuling in der Smarthome Welt und probiere mich in fhem aus.
Da ich jetzt dank dominik meine BT Thermostate am Laufen habe, wollte ich mal schauen wie ich jetzt noch aus der Ferne und nicht mit der Smartphone App die Wochenpläne etc. steuern kann.
Dominik hatte mir schon den Hinweis mit DOIF gegeben und über Google bin ich erstmals auf den Thread hier gestolpert. Ich war vorher in dem Smalltalk Thread, der hier schon eingangs von dominik erwähnt wurde.

Die Wiki Seite von DOIF (https://wiki.fhem.de/wiki/DOIF) und auch die CommandReference (https://fhem.de/commandref_DE.html#DOIF) sind ja auch gut geschrieben, nur frage ich mich gerade wie ich an die Befehle komme mit denen ich die EQ3 Thermostate steuern kann?
Syntax:
define <name> DOIF (<Bedingung>) (<Befehle>) DOELSEIF (<Bedingung>) (<Befehle>) DOELSEIF ... DOELSE (<Befehle>)
Das ist ja wie "if then else".
Ich tue mich gerade schwer einen Anfang zu finden. Hast du vielleicht ein kurzes Beispiel wie man sowas hier in DOIF macht?
In einem anderen Thread (hab den gerade nicht gefunden) habe ich eine große Liste gesehen mit hex-Werten, die so ein Thermostat spricht aber da bin ich raus als Neuling.  :o
Ich bin für jeden Anhaltspunkt dankbar. Hauptsache ich komme Schritt für Schritt weiter.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Tomatenjoghurt am 26 Januar 2017, 10:03:58
Moin Darkentik,

ist zwar etwas Thread-High-Jacking, aber egal.
Ein Beispiel wie es für mich im Schlafzimmer recht gut funktioniert:

define di_schlafzimmer DOIF
## Nachtabsenkung
([Anwesend] eq "1" and ([06:10|12345] or [09:00|12345] or [10:00|06] or [18:00]))
(set Schlafzimmer.Heizung desiredTemperature 17.0)
## Morgens uns Nachmittags normal
DOELSEIF ([Anwesend] eq "1" and ([05:35|12345] or [08:30|12345] or [09:00|06] or [15:00]))
(set Schlafzimmer.Heizung desiredTemperature 20.0)
## nicht anwesend
DOELSEIF ([Anwesend] eq "0")
(set Schlafzimmer.Heizung desiredTemperature 16.0)

Schlafzimmer.Heizung ist dann das Thermostat wie von dir definiert (siehe dazu ersten Beitrag von dominik).

Ich habe allerdings das Problem, wenn das z.B. (set Schlafzimmer.Heizung desiredTemperature 20.0) (warum auch immer) fehlschlägt, bleibt die alte Temperatur erhalten. Das ist dann ein wenig ärgerlich, wenn man z.B. morgens aufsteht und es ist noch kalt...ich habe dazu schon versucht mit den DOIFS zu spielen, aber bisher kam mir noch nicht der Geistesblitz.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Darkentik am 27 Januar 2017, 14:57:47
Zitat von: Tomatenjoghurt am 26 Januar 2017, 10:03:58
Moin Darkentik,

ist zwar etwas Thread-High-Jacking, aber egal.
Ein Beispiel wie es für mich im Schlafzimmer recht gut funktioniert:

define di_schlafzimmer DOIF
## Nachtabsenkung
([Anwesend] eq "1" and ([06:10|12345] or [09:00|12345] or [10:00|06] or [18:00]))
(set Schlafzimmer.Heizung desiredTemperature 17.0)
## Morgens uns Nachmittags normal
DOELSEIF ([Anwesend] eq "1" and ([05:35|12345] or [08:30|12345] or [09:00|06] or [15:00]))
(set Schlafzimmer.Heizung desiredTemperature 20.0)
## nicht anwesend
DOELSEIF ([Anwesend] eq "0")
(set Schlafzimmer.Heizung desiredTemperature 16.0)

Schlafzimmer.Heizung ist dann das Thermostat wie von dir definiert (siehe dazu ersten Beitrag von dominik).

Ich habe allerdings das Problem, wenn das z.B. (set Schlafzimmer.Heizung desiredTemperature 20.0) (warum auch immer) fehlschlägt, bleibt die alte Temperatur erhalten. Das ist dann ein wenig ärgerlich, wenn man z.B. morgens aufsteht und es ist noch kalt...ich habe dazu schon versucht mit den DOIFS zu spielen, aber bisher kam mir noch nicht der Geistesblitz.

Hi Tomatenjoghurt,
danke erstmal für deine Infos, ich hoffe, dass das hier zum Thema passt, ansonsten müssen die Beiträge und unsere Konversation in den Offtopic Thread zu den Bluetooth Thermostaten rüberwandern.
Wenn ich mit DOIF arbeite bedeutet, dass dann aber die BT Thermostate im manuellen Modus zu fahren, da ich ja die desired Temperaturen steuere oder funktioniert das auch im automatik-Mode mit gespeicherten Wochenplan???
Ich denke das stört sich gegenseitig oder?


DOIF:
Diese Angaben "06:10|12345" bedeuten doch jeden Mo,Di,Mi,Do und Fr 6:10 oder?
Das erinnert mich ein wenig an Cronjobs unter Linux.
*EDIT*
Habs selber gefunden *an Kopf greif*
https://fhem.de/commandref_DE.html#DOIF_Wochentagsteuerung

Danke nochmal!
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Tomatenjoghurt am 29 Januar 2017, 11:52:26
Hi Darkentik,

korrekt - genauso funktionierts. Charmant ist auch mit Zeiträumen zu arbeiten - also quasi:

## Nachtabsenkung
([Anwesend] eq "1") and ([00:00-05:44|01234] or [00:00-08:29|56] or [22:30-23:59|01234] or [23:45-23:59|56]))
(set Bad.Heizung desiredTemperature 17.0)

Damit lässt sich die Anwesenheit recht praktisch steuern.

Theoretisch kannst du die Thermostate auch im "automatic" Betrieb laufen lassen, dann werden fhem und das Thermostat sich aber gegnseitig überschreiben. Sprich, wer zu letzt die Temperatur einstellt, gewinnt und überschreibt die vorher eingestellte Temperatur.

Grüße,
Tomatenjoghurt
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Darkentik am 06 Februar 2017, 19:21:52
Schönen guten Abend!
Wie verhält sich das denn mit folgendem Szenario?
- BT Thermostat läuft im manuellen Modus
- fhem hat DOIF Pläne für Wochentage etc.
- Meine Freundin und ich wollen spontan auch mal die Temperatur erhöhen oder verringern

Das funktioniert doch nicht, weil fhem ja seinen Plan hat und bei Änderungen meinerseits seine Werte wieder überträgt oder?

Idee:
Ich bräuchte dann ein Webportal wo ich Parameter zum Einstellen/Ändern der DOIF´s von fhem festlegen kann.
Das würde dann doch funktionieren, nicht?

VG
Darkentik
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: EnderPhilipp am 06 Februar 2017, 20:36:27
Funktioniert das Modul eigentlich auch auf einer Synology ????

Mfg
Philipp ;D
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Harst am 07 Februar 2017, 01:40:11
@Darkentik

Die geänderte Temperatur bleibt bis zum nächsten schaltpunkt bestehen.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Darkentik am 07 Februar 2017, 17:27:20
Ok, also wie vermutet.
Dann müsste man sich eine Website mit Linux Shell Scripten schreiben, die die DOIFs ändern.
Danke erstma.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: beSmart am 07 Februar 2017, 21:50:54
Hallo.

Das Modul ist ja für EQ3 Bluetooth Thermostate. Hat schon jemand versucht Thermostate vom Typ "Comet Blue" damit zu steuern?


Gruß

Dirk
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Darkentik am 07 Februar 2017, 21:58:46
Zitat von: beSmart am 07 Februar 2017, 21:50:54
Hallo.
Das Modul ist ja für EQ3 Bluetooth Thermostate. Hat schon jemand versucht Thermostate vom Typ "Comet Blue" damit zu steuern?

Gruß
Dirk

Hi Dirk,
du besitzt diese Thermostate wohl?
Was ich so auf die Schnelle im Netz gefunden habe an Bewertungen sieht ja noch schlechter aus als die BT Thermostate von equiva. :(
Wie sind deine Erfahrungen?
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: beSmart am 08 Februar 2017, 20:08:34
Moin.


Ja, ich habe ein Thermostat: Kann da aber nicht wirklich viel dazu sagen. Habe es geschenkt bekommen und auf ein Heizkörperventil im Keller geschraubt. Dort regelt es die Temperatur genauso gut oder schlecht wie ein einfacher Thermostat.( läuft bei mir im Handbetrieb) Die App dazu habe ich nicht getestet, da ich es albern finde, mit dem Smartphone durchs Haus zu laufen und die Heizung zu regeln.
Allerdings mit Fhem und dem Thermostat....... das könnte sinnvoll sein....... Auf jeden Fall ist mein Basteltrieb geweckt....


Gruß


Dirk
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Flipper92 am 21 Februar 2017, 09:10:50
Hallo zusammen,
Ich hab es nun auch geschaft die Thermostate einzubinden (bei Pi3 ist die verzögerung für FHEM wichtig, zumindest bei mir, da sonnst das BT nicht an geht.)

Ich hab eine Frage zum Modul:
"consumption" ist bei meinem schlechten Englisch der verbrauch, um welchen Verbrauch handelt es sich da?
Um den Heizenergieverbrauch (wenn ja, wie berechnet?) oder um den Batterieverbrauch (Anzahl der Motorläufe?)

Gruß Flipper

EDIT:
oder ein sonstiger wert :-) Aber dann wäre eine Einheit Interessant um zu wissen, was das ist. oder wie man dies erweitern kann.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Darkentik am 21 Februar 2017, 09:14:53
Zitat von: Flipper92 am 21 Februar 2017, 09:10:50
Hallo zusammen,
Ich hab es nun auch geschaft die Thermostate einzubinden (bei Pi3 ist die verzögerung für FHEM wichtig, zumindest bei mir, da sonnst das BT nicht an geht.)

Ich hab eine Frage zum Modul:
"consumption" ist bei meinem schlechten Englisch der verbrauch, um welchen Verbrauch handelt es sich da?
Um den Heizenergieverbrauch (wenn ja, wie berechnet?) oder um den Batterieverbrauch (Anzahl der Motorläufe?)

Gruß Flipper

Guten Morgen,
war das nciht der Durchfluss des Wassers? Oder verwechsle ich das jetzt?

VG
Darkentik
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Flipper92 am 21 Februar 2017, 11:23:18
Habs gerade im anderen Bericht gelesen

Zitat von: dominik am 01 November 2016, 20:40:34
Erklärung zum Reading "consumption": Damit soll der Verbrauch grob berechnet werden. Es wird alle ca. 3 Minuten die valvePosition aktualisiert und dann gemittelt und mit der Zeit seit dem letzten Update multipliziert.

# v1.0.7 - 20161101
# - FEATURE: new reading consumption
#            calculation based on valvePosition and time (unit = %h)
[...]

Aber dann ist das ja nur der Wert "%-Öffnung" mal "Stunde".
Also z.B. 12 Stunden bei 25% Öffnung = 3 "consumption"
Hab ich das richtig verstanden?

Ich überlege gerade wie man daraus dann den richtigen Verbrauch bestimmen kann.
Ich rede nachher kurz mit meinem Ingenieur, mal schauen ob er ein Vorschlag hat, wie man den wert dann weiter aufarbeiten kann.

EDIT:
Hab gerade mit meinem Arbeitskollegen gesprochen.
Alleine durch die %*h kann man eigentlich keine Leistung bestimmen.
Dann eher durch Raum-, Außen-, Vorlauf- und Rücklauf-Temperatur.
Oder mit einem Massenstrom + Temperaturen.
Wie viel Wasser durch 10% geöffnetes Ventiel geht, kann man leider nicht so bestimmen.

Ein Heizkörper funktioniert leider etwas anders als eine Lampe, bei der man durch die "An-Zeit" bestimmen kann, wie viel Leistung nun raus ist.

Deswegen wäre der Wert als "consumption" etwas falsch betitelt und wäre sinnvoller als "ontime" oder "opentime" zu bezeichnen. (Dann kann man sehen, das z.B. im Januar das Ventil fast immer offen ist und im März es schon seltener wird.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 26 Februar 2017, 12:09:18
@Flipper92, genau, den richtigen Verbrauch bekommt man mit den Werten leider nicht. Der hängt nämlich auch von Heizkörpergröße ab. Dennoch wollte ich für mich wissen, wie oft der Heizkörper das Ventil öffnet bei angenommen konstanter Vorlauftemperatur. So habe ich zumindest einen Vergleich.

Den Wert umzubenennen kann durchaus Sinn machen. Vielleicht "valveOpenTime".

@Darkentik, dazu habe ich das Reading "lastChangeBy" eingeführt. Es funktioniert in der aktuellen Version noch nicht, da folgt noch ein Update. Dann kannst du wenn "lastChangeBy"=Thermostat ist anders im DOIF reagieren. Z.B. das DOIF Änderungen erst wieder zulassen wenn [...:lastChangeBy:sec] > 7200, also nach 2h wird der Wert überschrieben.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Flipper92 am 20 März 2017, 14:14:54
Hey,
Ich hab da noch ne Frage zu dem Dongel Auswahl.
Da ich mit Überlastung des BT-Geräts zu kämpfen habe (Geräte blockieren sich immer), wollte ich nun ein paar Sticks mehr anschließen und die Devices Manuel zuweißen um die Last zu verteilen.

Ich hab schon gesehen, das EQ3BT sich immer das passende Device aussucht.
Nun meine Frage:
- Wie viel Devices maximal versucht das Modul zu verwenden?
- Kann man das automatische Umschalten verhindern und Manuel hinterlegen?

Edit:
Eventuell wäre es auch Sinvoll, das Intervall manuell einstellen zu können. Hintergrund: Vor allem im Sommer muss ich nicht den Stand alle 10 min wissen, da reicht es auch all Stunde oder alle 3 Stunden zu Prüfen ob keiner am Rad gedreht hat.

Danke für die Antwort.
Gruß Flipper
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: CoolTux am 28 September 2017, 20:59:08
Hallo Dominik,

Anbei ein Patch welcher es ermöglicht über eine passwortlose SSH Verbindung (Zertifikat) auf einem entfernten Rechner einen BT Dongle an zu sprechen und über diesen ein Thermostat zu steuern.
Damit kann man Satelliten Raspberry Pi's aufbauen ohne auf jeden FHEM für FHEM2FHEM zu installieren. Das Attribut sshHost muss dafür gesetzt sein. IP oder FQDN mit und ohne Vorangestellten user@
Getestet wurde es bereits von einem User. Bei Fragen einfach fragen.


Grüße
Leon


Nachtrag: Patch entfernt da noch nicht ganz sauber. Bitte schaue ein paar Seiten weiter.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Gasmast3r am 29 September 2017, 15:40:12
Nutz das überhaupt noch jemand ???

Wie viele halt ihr in Benutzung??
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Flipper92 am 04 Oktober 2017, 10:46:52
Also ich nutze es.
Kenne für meine Thermostatköpfe keine Alternative.

Ich hatte die Köpfe nun über dem Sommer an dem einen Pi und ich glaub es sollte doch klappen. Alternativ werde ich den Patch testen, weiß aber noch nicht wann ich dazu komme.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Gasmast3r am 04 Oktober 2017, 18:59:07
Hy habe 13 Thermostate angeschlossen und bräuchte noch 2.
Obwohl ich doch recht gute empfangsverteilung habe reicht das nicht 100%, hab noch 2 Bluetooth Dongle bestellt und versuche die ZeroPi's zur Koexistenz mit Lepresends zu bewegen.

Na mal abwarten.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Kawaci am 05 Oktober 2017, 08:29:39
ich nutze 7 stück und eigentlich keine Probleme mit dem eingebauten und einen externen!

andere frage hat diesen Fehler auch jemand im log?
2017.10.04 23:20:18 1: BlockingInformParent (BlockingStart): Can't connect to localhost:37405: IO::Socket::INET: connect: Connection refused
2017.10.04 23:20:18 1: BlockingInformParent (EQ3BT_processGatttoolResult): Can't connect to localhost:37405: IO::Socket::INET: connect: Connection refused
2017.10.04 23:20:33 1: BlockingInformParent (BlockingStart): Can't connect to localhost:37405: IO::Socket::INET: connect: Connection refused
2017.10.04 23:20:33 1: BlockingInformParent (EQ3BT_processGatttoolResult): Can't connect to localhost:37405: IO::Socket::INET: connect: Connection refused
2017.10.04 23:20:33 1: BlockingInformParent (BlockingStart): Can't connect to localhost:37405: IO::Socket::INET: connect: Connection refused
2017.10.04 23:20:33 1: BlockingInformParent (EQ3BT_processGatttoolResult): Can't connect to localhost:37405: IO::Socket::INET: connect: Connection refused
2017.10.04 23:20:48 1: BlockingInformParent (BlockingStart): Can't connect to localhost:37405: IO::Socket::INET: connect: Connection refused
2017.10.04
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Gasmast3r am 05 Oktober 2017, 08:41:21
Zitat von: Kawaci am 05 Oktober 2017, 08:29:39
ich nutze 7 stück und eigentlich keine Probleme mit dem eingebauten und einen externen!

andere frage hat diesen Fehler auch jemand im log?
2017.10.04 23:20:18 1: BlockingInformParent (BlockingStart): Can't connect to localhost:37405: IO::Socket::INET: connect: Connection refused
2017.10.04 23:20:18 1: BlockingInformParent (EQ3BT_processGatttoolResult): Can't connect to localhost:37405: IO::Socket::INET: connect: Connection refused
2017.10.04 23:20:33 1: BlockingInformParent (BlockingStart): Can't connect to localhost:37405: IO::Socket::INET: connect: Connection refused
2017.10.04 23:20:33 1: BlockingInformParent (EQ3BT_processGatttoolResult): Can't connect to localhost:37405: IO::Socket::INET: connect: Connection refused
2017.10.04 23:20:33 1: BlockingInformParent (BlockingStart): Can't connect to localhost:37405: IO::Socket::INET: connect: Connection refused
2017.10.04 23:20:33 1: BlockingInformParent (EQ3BT_processGatttoolResult): Can't connect to localhost:37405: IO::Socket::INET: connect: Connection refused
2017.10.04 23:20:48 1: BlockingInformParent (BlockingStart): Can't connect to localhost:37405: IO::Socket::INET: connect: Connection refused
2017.10.04

Ja hatte so was auch, wie regelst du die Thermostate einzeln oder per Strukture ?
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Kawaci am 05 Oktober 2017, 08:43:27
beides eigentlich habs in ner structure und in jeden rauch noch einzeln
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: CoolTux am 05 Oktober 2017, 08:51:05
Zitat von: Kawaci am 05 Oktober 2017, 08:29:39
ich nutze 7 stück und eigentlich keine Probleme mit dem eingebauten und einen externen!

andere frage hat diesen Fehler auch jemand im log?
2017.10.04 23:20:18 1: BlockingInformParent (BlockingStart): Can't connect to localhost:37405: IO::Socket::INET: connect: Connection refused
2017.10.04 23:20:18 1: BlockingInformParent (EQ3BT_processGatttoolResult): Can't connect to localhost:37405: IO::Socket::INET: connect: Connection refused
2017.10.04 23:20:33 1: BlockingInformParent (BlockingStart): Can't connect to localhost:37405: IO::Socket::INET: connect: Connection refused
2017.10.04 23:20:33 1: BlockingInformParent (EQ3BT_processGatttoolResult): Can't connect to localhost:37405: IO::Socket::INET: connect: Connection refused
2017.10.04 23:20:33 1: BlockingInformParent (BlockingStart): Can't connect to localhost:37405: IO::Socket::INET: connect: Connection refused
2017.10.04 23:20:33 1: BlockingInformParent (EQ3BT_processGatttoolResult): Can't connect to localhost:37405: IO::Socket::INET: connect: Connection refused
2017.10.04 23:20:48 1: BlockingInformParent (BlockingStart): Can't connect to localhost:37405: IO::Socket::INET: connect: Connection refused
2017.10.04


Ist dieser Fehler neu bei Dir? So seit 2-3 Tagen?
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Gasmast3r am 05 Oktober 2017, 08:51:22
Zitat von: Kawaci am 05 Oktober 2017, 08:43:27
beides eigentlich habs in ner structure und in jeden rauch noch einzeln
Dann setze mal in der Strukture das attr async_delay auf 30 das hat bei mir geholfen, denke mal sonst versucht er alle auf einmal abzuarbeiten und dann stören sich alle gegenseitig (Tip von CoolTux)
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Kawaci am 05 Oktober 2017, 08:53:44
ok mal gespannt hat zwar jetzt ein jahr so funktioniert aber naja mal schauen!
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: CoolTux am 05 Oktober 2017, 09:21:19
Zu den BlockingCall Meldungen gibt es nun einen Thread hier

https://forum.fhem.de/index.php/topic,77556.0.html
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 05 Oktober 2017, 11:11:16
Hallo zusammen,

sorry, dass ich mich erst jetzt melde. Wegen Umzug ins Ausland ist gerade wenig Zeit.

@CoolTux, danke für den Patch. Ist der final getestet? Wenn ja, mach ich nur mehr einen kurzen Check bei mir und spiele den dann ins Repository.

Gruß
Dominik
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: CoolTux am 05 Oktober 2017, 11:17:37
Hallo Dominik,

Getestet ist er und läuft auch, dennoch habe ich gesehen das ich noch ein zwei Sachen einbauen muß. Also bitte erstmal noch nicht ins SVN übernehmen.
Dennoch kann man ihn bereits verwenden.
Komme aktuell nur gerade nicht zum richten, denke aber bis Mitte des Monats habe ich da was handfestes.



Grüße
Leon
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 05 Oktober 2017, 11:19:13
Ok, ich werde dann wahrscheinlich erst Ende des Monats dazu kommen es zu integrieren.

Gib mir dann einfach Bescheid, danke!

Gruß
Dominik
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: CoolTux am 05 Oktober 2017, 11:27:28
Mach ich sehr gerne. In der Ruhe liegt die Kraft.



Grüße
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: g-dave am 16 Oktober 2017, 23:06:39
Hallo CoolTux,

habe deinen Patch eingespielt

aber so recht will es nicht funktionieren.

auf dem PI 1 mit FHEM ein neues Thermostat definiert
define eq3_r2_thermostat EQ3BT 00:1A:22:XX:XX:XX 10.0.2.1

kann mich von dem pi1 mittels ssh pi@10.0.2.1 auch ohne Passwort anmelden

noch einen Tipp?

im FHEM Log fällt dieser Fehler auf
017.10.16 23:08:28 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/10_EQ3BT.pm line 519. 

Vielen Dank im Voraus!

Gruß
Dave
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: CoolTux am 17 Oktober 2017, 05:07:52
Hallo Dave,

Kannst Du Dich auch als User fhem ohne Passwort auf dem 10.0.2.1 anmelden?
Wenn ja dann mach das define Mal bitte ohne die IP, also mit der MAC als letztes. Und setze danach das Attribut sshHost. Vielleicht geht es ja so rum?

Ich schaue mir das noch mal an
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Gasmast3r am 17 Oktober 2017, 05:17:13
Hy also das mit der line 519 taucht auch bei mir auf wenn ich das per sshHost regle.
Denke auch das er keine FHEM ssh Rechte hat.

Gesendet von meinem SM-G950F mit Tapatalk

Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: g-dave am 17 Oktober 2017, 06:44:10
Moin,

das mit dem fhem user war auch meine Vermutung, war aber schon spät gestern und die perl Meldung im log, hat mich animiert zu schreiben ;).
Ich check das heute Abend.
Vielen dank schon einmal für die schnelle Rückmeldung! :)
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Gasmast3r am 17 Oktober 2017, 06:48:02
Zitat von: g-dave am 17 Oktober 2017, 06:44:10
Moin,

das mit dem fhem user war auch meine Vermutung, war aber schon spät gestern und die perl Meldung im log, hat mich animiert zu schreiben ;).
Ich check das heute Abend.
Vielen dank schon einmal für die schnelle Rückmeldung! :)
Hy hier kannst dir das noch mal alles anschauen, dadurch Endstand auch die Erweiterung von CoolTux.

https://r.tapatalk.com/shareLink?url=https%3A%2F%2Fforum%2Efhem%2Ede%2Findex%2Ephp%3Ftopic%3D77159%2E0&share_tid=77159&share_fid=75100&share_type=t

Heizung per FHEM2FHEM steuern ??

Gesendet von meinem SM-G950F mit Tapatalk

Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: CoolTux am 17 Oktober 2017, 08:54:36
Da ich nun eine andere Baustelle gerade erstmal fertig habe, werde ich mir nun das SSH Problem noch einmal anschauen  ;D
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: CoolTux am 17 Oktober 2017, 09:45:04
So bitte einmal das Modul hier testen.
Bitte nicht vergessen das alte zu sichern und dieses hier um zu bennen, also das _new weg nehmen.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: g-dave am 17 Oktober 2017, 19:23:59
Hi Cooltux,

vorab DANKE es scheint jetzt wenn auch etwas holprig zu laufen ;).
Tatsächlich aber nur mit deiner BETA 4.

mit der BETA 8 habe ich im FHEM log gatttool Fehlereinträge

another gatttool process is running. waiting...

Lustigerweise, trotz des nicht laufenden FHEM Dienst, sind diese zwei Prozesse am "flattern"

Ps aux | grep gatttool ->

fhem      1414  0.0  0.0   1912   400 pts/0    S    14:36   0:00 sh -c ssh *IPdesPi2* 'ps ax| grep -E "gatttool -b 00:1A:22:0A:13:EB" | grep -v grep'
fhem      1415  0.0  0.4   7040  4168 pts/0    R    14:36   0:00 ssh *IPdesPi2* ps ax| grep -E "gatttool -b 00:1A:22:0A:13:EB" | grep -v grep


killen kann ich diese nicht, da es immer eine andere PID ist (halt am flattern)

Neustart des Systems hat den loop unterbrochen jedoch läuft es derzeit bei mir nur mit der BETA4

Kurze Abriss!
- beide PIs haben jetzt einen FHEM user.
- Mein FHEM pi kann sich auf dem anderen pi ohne pw anmelden
   SSH config file - kannte ich noch nicht (wieder was dazugelernt) nutze ich es aber noch nicht.
- /bin/bash - in der passwd für fhem

Laut FHEM Log scheinen aber auch in der BETA 4 noch der ein oder andere Eintrag

EQ3BT (eq3_r2_thermostat): ssh *IPdesPi2* 'gatttool -b 00:1A:22:0A:13:EB -i hci0 --char-write-req --handle=0x0411 --value=4127 2>&1'
EQ3BT (eq3_r2_thermostat): gatttool result: connect: Device or resource busy (16)

Cmd: >{EQ3BT_processGatttoolResult('eq3_r2_thermostat|00:1A:22:0A:13:EB|error|setDesiredTemperature|0x0411|4127|setDesiredTemperature failed')}<
EQ3BT (eq3_r2_thermostat): gatttool return string: eq3_r2_thermostat|00:1A:22:0A:13:EB|error|setDesiredTemperature|0x0411|4127|setDesiredTemperature failed


Werde es noch etwas beobachten, und versuchen zu optimieren. Evtl. hat Gasmast3r ja ähnliche Erkenntnisse mit der BETA8?!

Gruß
Dave
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: CoolTux am 17 Oktober 2017, 19:27:16
Ich schaue es mir nachher noch mal an. Eventuell habe ich mich da an der RegEx vertan.
Leider kann ich selber nicht testen, aber Deine Fehlerbeschreibung ist schon mal gut.

Der User fhem braucht kein /bin/bash das würde ich wieder ändern nach /bin/false
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Gasmast3r am 17 Oktober 2017, 19:39:07
Zitat von: g-dave am 17 Oktober 2017, 19:23:59
Hi Cooltux,

vorab DANKE es scheint jetzt wenn auch etwas holprig zu laufen ;).
Tatsächlich aber nur mit deiner BETA 4.

mit der BETA 8 habe ich im FHEM log gatttool Fehlereinträge

another gatttool process is running. waiting...

Lustigerweise, trotz des nicht laufenden FHEM Dienst, sind diese zwei Prozesse am "flattern"

Ps aux | grep gatttool ->

fhem      1414  0.0  0.0   1912   400 pts/0    S    14:36   0:00 sh -c ssh *IPdesPi2* 'ps ax| grep -E "gatttool -b 00:1A:22:0A:13:EB" | grep -v grep'
fhem      1415  0.0  0.4   7040  4168 pts/0    R    14:36   0:00 ssh *IPdesPi2* ps ax| grep -E "gatttool -b 00:1A:22:0A:13:EB" | grep -v grep


killen kann ich diese nicht, da es immer eine andere PID ist (halt am flattern)

Neustart des Systems hat den loop unterbrochen jedoch läuft es derzeit bei mir nur mit der BETA4

Kurze Abriss!
- beide PIs haben jetzt einen FHEM user.
- Mein FHEM pi kann sich auf dem anderen pi ohne pw anmelden
   SSH config file - kannte ich noch nicht (wieder was dazugelernt) nutze ich es aber noch nicht.
- /bin/bash - in der passwd für fhem

Laut FHEM Log scheinen aber auch in der BETA 4 noch der ein oder andere Eintrag

EQ3BT (eq3_r2_thermostat): ssh *IPdesPi2* 'gatttool -b 00:1A:22:0A:13:EB -i hci0 --char-write-req --handle=0x0411 --value=4127 2>&1'
EQ3BT (eq3_r2_thermostat): gatttool result: connect: Device or resource busy (16)

Cmd: >{EQ3BT_processGatttoolResult('eq3_r2_thermostat|00:1A:22:0A:13:EB|error|setDesiredTemperature|0x0411|4127|setDesiredTemperature failed')}<
EQ3BT (eq3_r2_thermostat): gatttool return string: eq3_r2_thermostat|00:1A:22:0A:13:EB|error|setDesiredTemperature|0x0411|4127|setDesiredTemperature failed


Werde es noch etwas beobachten, und versuchen zu optimieren. Evtl. hat Gasmast3r ja ähnliche Erkenntnisse mit der BETA8?!

Gruß
Dave
Hy ich hb im FHEM Log nur

2017.10.17 18:49:26 1: Timeout for EQ3BT_execGatttool reached, terminated process 17095
2 Thermostate über 2 Pi per sshHost(https://uploads.tapatalk-cdn.com/20171017/eaec10a8fd62f4eb77b756c554932c35.jpg)

Gesendet von meinem SM-G950F mit Tapatalk

Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: CoolTux am 17 Oktober 2017, 20:11:08
Ja er erkennt nicht das kein Prozess läuft und schließt die Schleife nicht ab. Irgendwann landet er dann im Timeout
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: CoolTux am 17 Oktober 2017, 20:53:37
bitte einmal testen. Danke
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: g-dave am 17 Oktober 2017, 21:34:21
Zitat von: CoolTux am 17 Oktober 2017, 20:53:37
bitte einmal testen. Danke
Cool! Komme ich aber erst morgen zu.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Gasmast3r am 17 Oktober 2017, 22:59:02
Zitat von: g-dave am 17 Oktober 2017, 21:34:21
Cool! Komme ich aber erst morgen zu.
Jepp spiele es morgen mal ein

Gesendet von meinem SM-G950F mit Tapatalk

Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: g-dave am 18 Oktober 2017, 08:05:49
Moin,
hatte es heute Morgen schnell ausprobiert - gleiches Verhalten.


2017.10.18 04:43:57 5: EQ3BT (eq3_r2_thermostat): another gatttool process is running. waiting...
2017.10.18 04:44:04 5: EQ3BT (eq3_r2_thermostat): another gatttool process is running. waiting...
2017.10.18 04:44:05 5: EQ3BT (eq3_r2_thermostat): another gatttool process is running. waiting...
2017.10.18 04:44:06 5: EQ3BT (eq3_r2_thermostat): another gatttool process is running. waiting...
2017.10.18 04:44:12 5: EQ3BT (eq3_r2_thermostat): another gatttool process is running. waiting...
2017.10.18 04:44:13 5: EQ3BT (eq3_r2_thermostat): another gatttool process is running. waiting...
2017.10.18 04:44:14 5: EQ3BT (eq3_r2_thermostat): another gatttool process is running. waiting...
2017.10.18 04:44:20 5: EQ3BT (eq3_r2_thermostat): another gatttool process is running. waiting...
2017.10.18 04:44:21 5: EQ3BT (eq3_r2_thermostat): another gatttool process is running. waiting...
2017.10.18 04:44:21 5: EQ3BT (eq3_r2_thermostat): another gatttool process is running. waiting...
^C
pi@pi1:/opt/fhem/FHEM $ sudo ps aux | grep gatttool
fhem     26020  0.2  0.0   1912   376 pts/0    S    04:44   0:00 sh -c ssh 192.168.170.64 'ps ax| grep -E "gatttool -b 00:1A:22:0A:13:EB" | grep -v grep'
fhem     26021  5.2  0.4   7040  4288 pts/0    S    04:44   0:00 ssh 192.168.170.64 ps ax| grep -E "gatttool -b 00:1A:22:0A:13:EB" | grep -v grep
fhem     26022  0.2  0.0   1912   396 pts/0    S    04:44   0:00 sh -c ssh 192.168.170.64 'ps ax| grep -E "gatttool -b 00:1A:22:0A:13:EB" | grep -v grep'
fhem     26023  4.5  0.4   7040  4280 pts/0    S    04:44   0:00 ssh 192.168.170.64 ps ax| grep -E "gatttool -b 00:1A:22:0A:13:EB" | grep -v grep
fhem     26024  0.3  0.0   1912   376 pts/0    S    04:44   0:00 sh -c ssh 192.168.170.64 'ps ax| grep -E "gatttool -b 00:1A:22:0A:13:EB" | grep -v grep'
fhem     26025  7.0  0.4   7040  4292 pts/0    S    04:44   0:00 ssh 192.168.170.64 ps ax| grep -E "gatttool -b 00:1A:22:0A:13:EB" | grep -v grep
pi       26027  0.0  0.1   4296  1848 pts/0    S+   04:44   0:00 grep --color=auto gatttool
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Gasmast3r am 18 Oktober 2017, 08:08:00
Hy hast denn noch was anderes laufen ??
Wie steuerst du die Thermostate? DOIF Notify??


Gesendet von meinem SM-G950F mit Tapatalk

Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: CoolTux am 18 Oktober 2017, 08:36:22
Zitat von: g-dave am 18 Oktober 2017, 08:05:49
Moin,
hatte es heute Morgen schnell ausprobiert - gleiches Verhalten.


2017.10.18 04:43:57 5: EQ3BT (eq3_r2_thermostat): another gatttool process is running. waiting...
2017.10.18 04:44:04 5: EQ3BT (eq3_r2_thermostat): another gatttool process is running. waiting...
2017.10.18 04:44:05 5: EQ3BT (eq3_r2_thermostat): another gatttool process is running. waiting...
2017.10.18 04:44:06 5: EQ3BT (eq3_r2_thermostat): another gatttool process is running. waiting...
2017.10.18 04:44:12 5: EQ3BT (eq3_r2_thermostat): another gatttool process is running. waiting...
2017.10.18 04:44:13 5: EQ3BT (eq3_r2_thermostat): another gatttool process is running. waiting...
2017.10.18 04:44:14 5: EQ3BT (eq3_r2_thermostat): another gatttool process is running. waiting...
2017.10.18 04:44:20 5: EQ3BT (eq3_r2_thermostat): another gatttool process is running. waiting...
2017.10.18 04:44:21 5: EQ3BT (eq3_r2_thermostat): another gatttool process is running. waiting...
2017.10.18 04:44:21 5: EQ3BT (eq3_r2_thermostat): another gatttool process is running. waiting...
^C
pi@pi1:/opt/fhem/FHEM $ sudo ps aux | grep gatttool
fhem     26020  0.2  0.0   1912   376 pts/0    S    04:44   0:00 sh -c ssh 192.168.170.64 'ps ax| grep -E "gatttool -b 00:1A:22:0A:13:EB" | grep -v grep'
fhem     26021  5.2  0.4   7040  4288 pts/0    S    04:44   0:00 ssh 192.168.170.64 ps ax| grep -E "gatttool -b 00:1A:22:0A:13:EB" | grep -v grep
fhem     26022  0.2  0.0   1912   396 pts/0    S    04:44   0:00 sh -c ssh 192.168.170.64 'ps ax| grep -E "gatttool -b 00:1A:22:0A:13:EB" | grep -v grep'
fhem     26023  4.5  0.4   7040  4280 pts/0    S    04:44   0:00 ssh 192.168.170.64 ps ax| grep -E "gatttool -b 00:1A:22:0A:13:EB" | grep -v grep
fhem     26024  0.3  0.0   1912   376 pts/0    S    04:44   0:00 sh -c ssh 192.168.170.64 'ps ax| grep -E "gatttool -b 00:1A:22:0A:13:EB" | grep -v grep'
fhem     26025  7.0  0.4   7040  4292 pts/0    S    04:44   0:00 ssh 192.168.170.64 ps ax| grep -E "gatttool -b 00:1A:22:0A:13:EB" | grep -v grep
pi       26027  0.0  0.1   4296  1848 pts/0    S+   04:44   0:00 grep --color=auto gatttool


Nur mal als Idee. Du shceint auf dem Zielsystem für den User den Du für das ssh verwendest eine Shell vergeben zu haben. Nimm das mal bitte raus. Also /bin/false statt dessen eintragen.
Ist aber nur so eine Idee.
Und fang bitte erstmal klein an. Nicht gleich alle Thermostate auf ssh umstellen, teste erstmal nur mit einem.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Gasmast3r am 20 Oktober 2017, 07:27:49
Hy so mal kleine Meldung von mir,ich bekomme wenn ich ein Thermostat per sshHost ansprechen möchte, immer nur Gettool timeout, eine Steuerung ist nicht gegeben, dazu wird der sshHost Pi auf 100% Auslastung getrieben.
Log Einträge habe ich zur besseren Übersicht wieder geleert.

Gesendet von meinem SM-G950F mit Tapatalk

Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: CoolTux am 20 Oktober 2017, 07:31:43
Gut das Du die geleert hast. Aber so leer das Du sie nicht Posten kannst sind sie hoffentlich nicht.  ;D
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Gasmast3r am 20 Oktober 2017, 13:22:19
Naja die Log Einträge von FHEM.
Das habe ich noch

2017.10.18 16:15:22 1: Timeout for EQ3BT_execGatttool reached, terminated process 31928 2017.10.18 16:20:40 1: Timeout for EQ3BT_execGatttool reached, terminated process 32117

Auf dem entsprechenden  Pi müsste ich mal schauen was der noch an Infos hat, muss aber noch mal schauen wie ich die zu Tage fördere.


Gesendet von meinem SM-G950F mit Tapatalk

Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dirkcx am 20 Oktober 2017, 19:43:08
Ich test das Modul gerade zum ersten mal und es funktioniert super. Tolle Arbeit! Vielen Dank
Das log zeigt, dass das Device ziemlich oft abgefragt wird; Abstand von < 1 Minute.
Das kostet doch sicher extrem viel Batteriekapazität im Thermostat.
Kann man die Abfragehäufigkeit irgendwie ändern?

Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: g-dave am 22 Oktober 2017, 10:48:21
Zitat von: CoolTux am 18 Oktober 2017, 08:36:22
Nur mal als Idee. Du shceint auf dem Zielsystem für den User den Du für das ssh verwendest eine Shell vergeben zu haben. Nimm das mal bitte raus. Also /bin/false statt dessen eintragen.
Ist aber nur so eine Idee.
Und fang bitte erstmal klein an. Nicht gleich alle Thermostate auf ssh umstellen, teste erstmal nur mit einem.

Moin sorry für die späte Rückmeldung!

Ja auf dem Zielsystem war noch eine Shell, hab ich jetzt auf /bin/false gesetzt.
Mit der neusten Beta bekomme ich aber dieses Verhalten siehe Log unten.

Logo nur ein Thermostat bin ja nicht verrückt ;) ist tatsächlich nur ein remote Thermostat und eins ist über den lokalen BT Stick angebunden.



2017.10.22 10:40:48 5: Cmd: >{EQ3BT_processGatttoolResult('eq3_r2_thermostat|00:1A:22:0A:13:EB|error|updateStatus|0x0411|03|no gatttool binary found. Please check if bluez-package is properly installed')}<
2017.10.22 10:40:48 5: EQ3BT (eq3_r2_thermostat): gatttool return string: eq3_r2_thermostat|00:1A:22:0A:13:EB|error|updateStatus|0x0411|03|no gatttool binary found. Please check if bluez-package is properly installed
2017.10.22 10:40:48 4: EQ3BT (eq3_r2_thermostat): updateStatus failed (0x0411, 03, no gatttool binary found. Please check if bluez-package is properly installed)
2017.10.22 10:40:48 4: Connection accepted from telnetForBlockingFn_1508661568_127.0.0.1_33352
2017.10.22 10:40:48 5: Cmd: >{BlockingStart('20')}<
2017.10.22 10:40:48 5: Cmd: >{EQ3BT_processGatttoolResult('eq3_r2_thermostat|00:1A:22:0A:13:EB|error|updateSystemInformation|0x0411|00|no gatttool binary found. Please check if bluez-package is properly installed')}<
2017.10.22 10:40:48 5: EQ3BT (eq3_r2_thermostat): gatttool return string: eq3_r2_thermostat|00:1A:22:0A:13:EB|error|updateSystemInformation|0x0411|00|no gatttool binary found. Please check if bluez-package is properly installed
2017.10.22 10:40:48 4: EQ3BT (eq3_r2_thermostat): updateSystemInformation failed (0x0411, 00, no gatttool binary found. Please check if bluez-package is properly installed)
2017.10.22 10:40:48 5: Starting notify loop for eq3_r2_thermostat, 1 event(s), first is bluetoothDevice: hci
2017.10.22 10:40:48 5: End notify loop for eq3_r2_thermostat
2017.10.22 10:40:52 4: BlockingCall (EQ3BT_execGatttool): created child (22881), uses telnetForBlockingFn_1508661568 to connect back
2017.10.22 10:40:53 4: BlockingCall (EQ3BT_execGatttool): created child (22884), uses telnetForBlockingFn_1508661568 to connect back
2017.10.22 10:40:54 4: BlockingCall (EQ3BT_execGatttool): created child (22887), uses telnetForBlockingFn_1508661568 to connect back
2017.10.22 10:40:55 4: Connection accepted from telnetForBlockingFn_1508661568_127.0.0.1_33360
2017.10.22 10:40:55 5: Cmd: >{BlockingStart('21')}<
2017.10.22 10:40:55 5: Cmd: >{EQ3BT_processGatttoolResult('eq3_r2_thermostat|00:1A:22:0A:13:EB|error|setDesiredTemperature|0x0411|4112|no gatttool binary found. Please check if bluez-package is properly installed')}<
2017.10.22 10:40:55 5: EQ3BT (eq3_r2_thermostat): gatttool return string: eq3_r2_thermostat|00:1A:22:0A:13:EB|error|setDesiredTemperature|0x0411|4112|no gatttool binary found. Please check if bluez-package is properly installed
2017.10.22 10:40:55 4: EQ3BT (eq3_r2_thermostat): setDesiredTemperature failed (0x0411, 4112, no gatttool binary found. Please check if bluez-package is properly installed)
2017.10.22 10:40:55 4: Connection accepted from telnetForBlockingFn_1508661568_127.0.0.1_33362
2017.10.22 10:40:55 5: Cmd: >{BlockingStart('22')}<
2017.10.22 10:40:55 5: Cmd: >{EQ3BT_processGatttoolResult('eq3_r2_thermostat|00:1A:22:0A:13:EB|error|updateSystemInformation|0x0411|00|no gatttool binary found. Please check if bluez-package is properly installed')}<
2017.10.22 10:40:55 5: EQ3BT (eq3_r2_thermostat): gatttool return string: eq3_r2_thermostat|00:1A:22:0A:13:EB|error|updateSystemInformation|0x0411|00|no gatttool binary found. Please check if bluez-package is properly installed
2017.10.22 10:40:55 4: EQ3BT (eq3_r2_thermostat): updateSystemInformation failed (0x0411, 00, no gatttool binary found. Please check if bluez-package is properly installed)
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: g-dave am 22 Oktober 2017, 12:23:15
Hab jetzt noch einmal etwas rumprobiert. Bei mir läuft es definitiv nur mit der beta 4 und wenn auf dem Remotesystem eine Shell aktiviert ist!
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: CoolTux am 22 Oktober 2017, 15:15:36
Ok. Vielen Dank. Ich schaue es mir in Ruhe an was das sein kann.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Tomatenjoghurt am 23 Oktober 2017, 09:15:01
Zitat von: Gasmast3r am 20 Oktober 2017, 13:22:19
Naja die Log Einträge von FHEM.
Das habe ich noch

2017.10.18 16:15:22 1: Timeout for EQ3BT_execGatttool reached, terminated process 31928 2017.10.18 16:20:40 1: Timeout for EQ3BT_execGatttool reached, terminated process 32117

Auf dem entsprechenden  Pi müsste ich mal schauen was der noch an Infos hat, muss aber noch mal schauen wie ich die zu Tage fördere.


Gesendet von meinem SM-G950F mit Tapatalk

Den Fehler bekomme ich auch recht häufig. Kann man im Gatttool den TimeOut irgendwie etwas höher stellen?
Ich vermute, wenn er bei mir in die 20 Re-Trys läuft, läuft das Gatttool irgendwann in den TimeOut. Und das wird dann dort im Log ausgegeben...
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: CoolTux am 23 Oktober 2017, 10:43:48
Verwendest Du auch die SSH Version?
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Tomatenjoghurt am 23 Oktober 2017, 11:31:42
Zitat von: CoolTux am 23 Oktober 2017, 10:43:48
Verwendest Du auch die SSH Version?
Nein, bisher noch nicht. Ich bin noch am überlegen ob ich mir noch weitere PIs anschaffe und in den Räumen verteile - mein Problem ist, dass die Temperaturen auf den Thermostaten generell nicht 100% zuverlässig gesetzt werden.
Ich sag mal so 80% funktioniert das Setzen der Temperatur korrekt. Und dabei kann es nicht an der Distanz liegen, da das eine Thermostat (Wohnzimmer) 3m Luftlinie, ohne Gegenstände dazwischen, entfernt liegt und die Temperatur dennoch oftmals nicht gesetzt wird.(setDesiredTemperature...failed 20 times bzw auslesen klappt eben auch nicht immer)
Ich hatte dann auch schon mal mit den Retries gespielt und diese auf bis zu 100 erhöht - dann laufe ich aber in o.b. Fehler, was am Ende aufs gleiche hinaus läuft - die Temperatur wird nicht gesetzt. Und das ist ja aber Sinn und Zweck der Übung...
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: CoolTux am 23 Oktober 2017, 13:59:27
Kann das bitte einmal jemand testen? Danke
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: g-dave am 23 Oktober 2017, 20:26:32
Zitat von: CoolTux am 23 Oktober 2017, 13:59:27
Kann das bitte einmal jemand testen? Danke

Hi hab es gerade getestet, sah vom Log erst nicht gut aus .... another gatttool process is running ..... Aber nach zwei Minuten scheint es sich beruhigt zu haben ;).


2017.10.23 20:21:45 4: BlockingCall (EQ3BT_execGatttool): created child (17896), uses telnetForBlockingFn_1508782657 to connect back
2017.10.23 20:21:45 5: Starting notify loop for eq3_r2_thermostat, 1 event(s), first is desiredTemperature 13.0
2017.10.23 20:21:45 5: End notify loop for eq3_r2_thermostat
2017.10.23 20:21:45 4: WEB: /fhem?cmd.seteq3_r2_thermostat%3Dset%20eq3_r2_thermostat%20desiredTemperature%2013.0&XHR=1&fwcsrf=csrf_128158048303296&fw_id=220 / RL:20 / text/plain; charset=UTF-8 / Content-Encoding: gzip
/
2017.10.23 20:21:46 5: EQ3BT (eq3_r2_thermostat): ssh fhem2 'gatttool -b 00:1A:22:0A:13:EB -i hci0 --char-write-req --handle=0x0411 --value=411A 2>&1'
2017.10.23 20:21:51 4: EQ3BT (eq3_r2_thermostat): gatttool result: Characteristic value was written successfully




Werde es noch etwas beobachten. Also erstmal nur einen von zwei Daumen hoch :P


noch ein Test zeigt einige Versuche bevor die Temperatur gesetzt werden konnte.

2017.10.23 20:27:27 4: BlockingCall (EQ3BT_execGatttool): created child (17969), uses telnetForBlockingFn_1508782657 to connect back
2017.10.23 20:27:28 5: EQ3BT (eq3_r2_thermostat): ssh fhem2 'gatttool -b 00:1A:22:0A:13:EB -i hci0 --char-write-req --handle=0x0411 --value=4118 2>&1'
2017.10.23 20:27:29 4: EQ3BT (eq3_r2_thermostat): gatttool result: connect: Device or resource busy (16)
2017.10.23 20:27:29 4: Connection accepted from telnetForBlockingFn_1508782657_127.0.0.1_36988
2017.10.23 20:27:29 5: Cmd: >{BlockingStart('33')}<
2017.10.23 20:27:29 5: Cmd: >{EQ3BT_processGatttoolResult('eq3_r2_thermostat|00:1A:22:0A:13:EB|error|setDesiredTemperature|0x0411|4118|setDesiredTemperature failed')}<
2017.10.23 20:27:29 5: EQ3BT (eq3_r2_thermostat): gatttool return string: eq3_r2_thermostat|00:1A:22:0A:13:EB|error|setDesiredTemperature|0x0411|4118|setDesiredTemperature failed
2017.10.23 20:27:29 4: EQ3BT (eq3_r2_thermostat): setDesiredTemperature failed (0x0411, 4118, setDesiredTemperature failed)
2017.10.23 20:27:35 4: BlockingCall (EQ3BT_execGatttool): created child (17978), uses telnetForBlockingFn_1508782657 to connect back
2017.10.23 20:27:36 5: EQ3BT (eq3_r2_thermostat): ssh fhem2 'gatttool -b 00:1A:22:0A:13:EB -i hci0 --char-write-req --handle=0x0411 --value=4118 2>&1'
2017.10.23 20:27:37 4: EQ3BT (eq3_r2_thermostat): gatttool result: connect: Device or resource busy (16)
2017.10.23 20:27:37 4: Connection accepted from telnetForBlockingFn_1508782657_127.0.0.1_36994
2017.10.23 20:27:37 5: Cmd: >{BlockingStart('34')}<
2017.10.23 20:27:37 5: Cmd: >{EQ3BT_processGatttoolResult('eq3_r2_thermostat|00:1A:22:0A:13:EB|error|setDesiredTemperature|0x0411|4118|setDesiredTemperature failed')}<
2017.10.23 20:27:37 5: EQ3BT (eq3_r2_thermostat): gatttool return string: eq3_r2_thermostat|00:1A:22:0A:13:EB|error|setDesiredTemperature|0x0411|4118|setDesiredTemperature failed
2017.10.23 20:27:37 4: EQ3BT (eq3_r2_thermostat): setDesiredTemperature failed (0x0411, 4118, setDesiredTemperature failed)
2017.10.23 20:27:42 4: BlockingCall (EQ3BT_execGatttool): created child (17987), uses telnetForBlockingFn_1508782657 to connect back
2017.10.23 20:27:44 5: EQ3BT (eq3_r2_thermostat): ssh fhem2 'gatttool -b 00:1A:22:0A:13:EB -i hci0 --char-write-req --handle=0x0411 --value=4118 2>&1'
2017.10.23 20:27:45 4: EQ3BT (eq3_r2_thermostat): gatttool result: connect: Device or resource busy (16)
2017.10.23 20:27:45 4: Connection accepted from telnetForBlockingFn_1508782657_127.0.0.1_37000
2017.10.23 20:27:45 5: Cmd: >{BlockingStart('35')}<
2017.10.23 20:27:45 5: Cmd: >{EQ3BT_processGatttoolResult('eq3_r2_thermostat|00:1A:22:0A:13:EB|error|setDesiredTemperature|0x0411|4118|setDesiredTemperature failed')}<
2017.10.23 20:27:45 5: EQ3BT (eq3_r2_thermostat): gatttool return string: eq3_r2_thermostat|00:1A:22:0A:13:EB|error|setDesiredTemperature|0x0411|4118|setDesiredTemperature failed
2017.10.23 20:27:45 4: EQ3BT (eq3_r2_thermostat): setDesiredTemperature failed (0x0411, 4118, setDesiredTemperature failed)
2017.10.23 20:27:51 4: BlockingCall (EQ3BT_execGatttool): created child (17996), uses telnetForBlockingFn_1508782657 to connect back
2017.10.23 20:27:52 5: EQ3BT (eq3_r2_thermostat): ssh fhem2 'gatttool -b 00:1A:22:0A:13:EB -i hci0 --char-write-req --handle=0x0411 --value=4118 2>&1'
2017.10.23 20:27:57 4: EQ3BT (eq3_r2_thermostat): gatttool result: Characteristic value was written successfully
2017.10.23 20:27:57 4: Connection accepted from telnetForBlockingFn_1508782657_127.0.0.1_37006
2017.10.23 20:27:57 5: Cmd: >{BlockingStart('36')}<
2017.10.23 20:27:57 5: Cmd: >{EQ3BT_processGatttoolResult('eq3_r2_thermostat|00:1A:22:0A:13:EB|ok|setDesiredTemperature|0x0411|4118')}<
2017.10.23 20:27:57 5: EQ3BT (eq3_r2_thermostat): gatttool return string: eq3_r2_thermostat|00:1A:22:0A:13:EB|ok|setDesiredTemperature|0x0411|4118
2017.10.23 20:27:57 5: Starting notify loop for eq3_r2_thermostat, 1 event(s), first is lastChangeBy: FHEM
2017.10.23 20:27:57 5: End notify loop for eq3_r2_thermostat
2017.10.23 20:27:57 5: Starting notify loop for eq3_r2_thermostat, 1 event(s), first is desiredTemperature: 12.0
2017.10.23 20:27:57 5: End notify loop for eq3_r2_thermostat

Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Gasmast3r am 24 Oktober 2017, 19:10:18
Hy hab es auch mal eingespielt

im FHEM LOG keine einträge

auf dem Kiost35 pi
pi@Kiosk35:~ $ sudo ps aux | grep gatttool
pi        6749  0.0  0.5   4576  2612 ?        Ss   18:01   0:00 bash -c gatttool -b 00:1A:22:09:1A:74 -i hci0 --char-write-req --handle=0x0411 --value=03110A181201 --listen 2>&1
pi        6750  0.0  0.5   4280  2600 ?        S    18:01   0:00 gatttool -b 00:1A:22:09:1A:74 -i hci0 --char-write-req --handle=0x0411 --value=03110A181201 --listen
pi        6821  0.0  0.5   4576  2592 ?        Ss   18:05   0:00 bash -c gatttool -b 00:1A:22:09:1A:74 -i hci0 --char-write-req --handle=0x0411 --value=03110A181205 --listen 2>&1
pi        6822  0.0  0.5   4280  2532 ?        S    18:05   0:00 gatttool -b 00:1A:22:09:1A:74 -i hci0 --char-write-req --handle=0x0411 --value=03110A181205 --listen
pi        6857  0.0  0.5   4576  2552 ?        Ss   18:08   0:00 bash -c gatttool -b 00:1A:22:09:1A:74 -i hci0 --char-write-req --handle=0x0411 --value=03110A181208 --listen 2>&1
pi        6858  0.0  0.5   4280  2520 ?        S    18:08   0:00 gatttool -b 00:1A:22:09:1A:74 -i hci0 --char-write-req --handle=0x0411 --value=03110A181208 --listen
pi        6893  0.0  0.5   4576  2552 ?        Ss   18:11   0:00 bash -c gatttool -b 00:1A:22:09:1A:74 -i hci0 --char-write-req --handle=0x0411 --value=03110A18120B --listen 2>&1
pi        6894  0.0  0.5   4280  2524 ?        S    18:11   0:00 gatttool -b 00:1A:22:09:1A:74 -i hci0 --char-write-req --handle=0x0411 --value=03110A18120B --listen
pi        6928  0.0  0.5   4576  2608 ?        Ss   18:14   0:00 bash -c gatttool -b 00:1A:22:09:1A:74 -i hci0 --char-write-req --handle=0x0411 --value=03110A18120E --listen 2>&1
pi        6929  0.0  0.5   4280  2512 ?        S    18:14   0:00 gatttool -b 00:1A:22:09:1A:74 -i hci0 --char-write-req --handle=0x0411 --value=03110A18120E --listen
pi        7253  0.0  0.5   4576  2552 ?        Ss   18:18   0:00 bash -c gatttool -b 00:1A:22:09:1A:74 -i hci0 --char-write-req --handle=0x0411 --value=03110A181212 --listen 2>&1
pi        7254  0.0  0.5   4280  2668 ?        S    18:18   0:00 gatttool -b 00:1A:22:09:1A:74 -i hci0 --char-write-req --handle=0x0411 --value=03110A181212 --listen
pi        7500  0.0  0.5   4576  2608 ?        Ss   18:22   0:00 bash -c gatttool -b 00:1A:22:09:1A:74 -i hci0 --char-write-req --handle=0x0411 --value=03110A181216 --listen 2>&1
pi        7501  0.0  0.5   4280  2664 ?        S    18:22   0:00 gatttool -b 00:1A:22:09:1A:74 -i hci0 --char-write-req --handle=0x0411 --value=03110A181216 --listen
pi        7536  0.0  0.5   4576  2612 ?        Ss   18:24   0:00 bash -c gatttool -b 00:1A:22:09:1A:74 -i hci0 --char-write-req --handle=0x0411 --value=03110A181218 --listen 2>&1
pi        7537  0.0  0.5   4280  2600 ?        S    18:24   0:00 gatttool -b 00:1A:22:09:1A:74 -i hci0 --char-write-req --handle=0x0411 --value=03110A181218 --listen
pi        7873  0.0  0.5   4576  2600 ?        Ss   18:28   0:00 bash -c gatttool -b 00:1A:22:09:1A:74 -i hci0 --char-write-req --handle=0x0411 --value=03110A18121C --listen 2>&1
pi        7874  0.0  0.5   4280  2636 ?        S    18:28   0:00 gatttool -b 00:1A:22:09:1A:74 -i hci0 --char-write-req --handle=0x0411 --value=03110A18121C --listen
pi        7908  0.0  0.5   4576  2612 ?        Ss   18:31   0:00 bash -c gatttool -b 00:1A:22:09:1A:74 -i hci0 --char-write-req --handle=0x0411 --value=03110A18121F --listen 2>&1
pi        7909  0.0  0.5   4280  2508 ?        S    18:31   0:00 gatttool -b 00:1A:22:09:1A:74 -i hci0 --char-write-req --handle=0x0411 --value=03110A18121F --listen
pi        7944  0.0  0.5   4576  2552 ?        Ss   18:35   0:00 bash -c gatttool -b 00:1A:22:09:1A:74 -i hci0 --char-write-req --handle=0x0411 --value=03110A181223 --listen 2>&1
pi        7945  0.0  0.5   4280  2604 ?        S    18:35   0:00 gatttool -b 00:1A:22:09:1A:74 -i hci0 --char-write-req --handle=0x0411 --value=03110A181223 --listen
pi        7980  0.0  0.5   4576  2608 ?        Ss   18:38   0:00 bash -c gatttool -b 00:1A:22:09:1A:74 -i hci0 --char-write-req --handle=0x0411 --value=03110A181226 --listen 2>&1
pi        7981  0.0  0.5   4280  2604 ?        S    18:38   0:00 gatttool -b 00:1A:22:09:1A:74 -i hci0 --char-write-req --handle=0x0411 --value=03110A181226 --listen
pi        8016  0.0  0.5   4576  2556 ?        Ss   18:41   0:00 bash -c gatttool -b 00:1A:22:09:1A:74 -i hci0 --char-write-req --handle=0x0411 --value=03110A181229 --listen 2>&1
pi        8017  0.0  0.5   4280  2572 ?        S    18:41   0:00 gatttool -b 00:1A:22:09:1A:74 -i hci0 --char-write-req --handle=0x0411 --value=03110A181229 --listen
pi        8087  0.0  0.5   4576  2600 ?        Ss   18:44   0:00 bash -c gatttool -b 00:1A:22:09:1A:74 -i hci0 --char-write-req --handle=0x0411 --value=03110A18122C --listen 2>&1
pi        8088  0.0  0.5   4280  2520 ?        S    18:44   0:00 gatttool -b 00:1A:22:09:1A:74 -i hci0 --char-write-req --handle=0x0411 --value=03110A18122C --listen
pi        8124  0.0  0.5   4576  2608 ?        Ss   18:48   0:00 bash -c gatttool -b 00:1A:22:09:1A:74 -i hci0 --char-write-req --handle=0x0411 --value=03110A181230 --listen 2>&1
pi        8125  0.0  0.5   4280  2540 ?        S    18:48   0:00 gatttool -b 00:1A:22:09:1A:74 -i hci0 --char-write-req --handle=0x0411 --value=03110A181230 --listen
pi        8159  0.0  0.5   4576  2560 ?        Ss   18:51   0:00 bash -c gatttool -b 00:1A:22:09:1A:74 -i hci0 --char-write-req --handle=0x0411 --value=03110A181233 --listen 2>&1
pi        8160  0.0  0.5   4280  2512 ?        S    18:51   0:00 gatttool -b 00:1A:22:09:1A:74 -i hci0 --char-write-req --handle=0x0411 --value=03110A181233 --listen
pi        8231  0.0  0.5   4576  2608 ?        Ss   18:55   0:00 bash -c gatttool -b 00:1A:22:09:1A:74 -i hci0 --char-write-req --handle=0x0411 --value=03110A181237 --listen 2>&1
pi        8232  0.0  0.5   4280  2484 ?        S    18:55   0:00 gatttool -b 00:1A:22:09:1A:74 -i hci0 --char-write-req --handle=0x0411 --value=03110A181237 --listen
pi        8266  0.0  0.5   4576  2664 ?        Ss   18:58   0:00 bash -c gatttool -b 00:1A:22:09:1A:74 -i hci0 --char-write-req --handle=0x0411 --value=03110A18123A --listen 2>&1
pi        8267  0.0  0.5   4280  2468 ?        S    18:58   0:00 gatttool -b 00:1A:22:09:1A:74 -i hci0 --char-write-req --handle=0x0411 --value=03110A18123A --listen
pi        8339  0.0  0.5   4576  2548 ?        Ss   19:02   0:00 bash -c gatttool -b 00:1A:22:09:1A:74 -i hci0 --char-write-req --handle=0x0411 --value=03110A181302 --listen 2>&1
pi        8340  0.0  0.5   4280  2464 ?        S    19:02   0:00 gatttool -b 00:1A:22:09:1A:74 -i hci0 --char-write-req --handle=0x0411 --value=03110A181302 --listen
pi        8429  0.0  0.5   4576  2560 ?        Ss   19:05   0:00 bash -c gatttool -b 00:1A:22:09:1A:74 -i hci0 --char-write-req --handle=0x0411 --value=03110A181305 --listen 2>&1
pi        8430  0.0  0.5   4280  2600 ?        S    19:05   0:00 gatttool -b 00:1A:22:09:1A:74 -i hci0 --char-write-req --handle=0x0411 --value=03110A181305 --listen
pi        8465  0.0  0.4   4364  2128 pts/0    S+   19:05   0:00 grep --color=auto gatttool


ZEROCAM114
pi@ZEROCAM114:~ $ sudo ps aux | grep gatttool
pi        7548  0.0  0.6   4572  2552 ?        Ss   18:19   0:00 bash -c gatttool -b 00:1A:22:09:0F:5D -i hci1 --char-write-req --handle=0x0411 --value=03110A181213 --listen 2>&1
pi        7549  0.0  0.6   4280  2580 ?        S    18:19   0:00 gatttool -b 00:1A:22:09:0F:5D -i hci1 --char-write-req --handle=0x0411 --value=03110A181213 --listen
pi        7632  0.0  0.6   4572  2552 ?        Ss   18:22   0:00 bash -c gatttool -b 00:1A:22:09:0F:5D -i hci1 --char-write-req --handle=0x0411 --value=03110A181216 --listen 2>&1
pi        7633  0.0  0.6   4280  2484 ?        S    18:22   0:00 gatttool -b 00:1A:22:09:0F:5D -i hci1 --char-write-req --handle=0x0411 --value=03110A181216 --listen
pi        7704  0.0  0.6   4572  2544 ?        Ss   18:25   0:00 bash -c gatttool -b 00:1A:22:09:0F:5D -i hci0 --char-write-req --handle=0x0411 --value=03110A181219 --listen 2>&1
pi        7705  0.0  0.6   4280  2516 ?        S    18:25   0:00 gatttool -b 00:1A:22:09:0F:5D -i hci0 --char-write-req --handle=0x0411 --value=03110A181219 --listen
pi        7741  0.0  0.6   4572  2604 ?        Ss   18:28   0:00 bash -c gatttool -b 00:1A:22:09:0F:5D -i hci0 --char-write-req --handle=0x0411 --value=03110A18121C --listen 2>&1
pi        7742  0.0  0.6   4280  2516 ?        S    18:28   0:00 gatttool -b 00:1A:22:09:0F:5D -i hci0 --char-write-req --handle=0x0411 --value=03110A18121C --listen
pi        7777  0.0  0.6   4572  2552 ?        Ss   18:31   0:00 bash -c gatttool -b 00:1A:22:09:0F:5D -i hci0 --char-write-req --handle=0x0411 --value=03110A18121F --listen 2>&1
pi        7778  0.0  0.6   4280  2420 ?        S    18:31   0:00 gatttool -b 00:1A:22:09:0F:5D -i hci0 --char-write-req --handle=0x0411 --value=03110A18121F --listen
pi        7815  0.0  0.6   4572  2548 ?        Ss   18:34   0:00 bash -c gatttool -b 00:1A:22:09:0F:5D -i hci0 --char-write-req --handle=0x0411 --value=03110A181222 --listen 2>&1
pi        7816  0.0  0.7   4280  2676 ?        S    18:34   0:00 gatttool -b 00:1A:22:09:0F:5D -i hci0 --char-write-req --handle=0x0411 --value=03110A181222 --listen
pi        7852  0.0  0.6   4572  2552 ?        Ss   18:37   0:00 bash -c gatttool -b 00:1A:22:09:0F:5D -i hci0 --char-write-req --handle=0x0411 --value=03110A181225 --listen 2>&1
pi        7853  0.0  0.6   4280  2524 ?        S    18:37   0:00 gatttool -b 00:1A:22:09:0F:5D -i hci0 --char-write-req --handle=0x0411 --value=03110A181225 --listen
pi        7889  0.0  0.6   4572  2552 ?        Ss   18:40   0:00 bash -c gatttool -b 00:1A:22:09:0F:5D -i hci0 --char-write-req --handle=0x0411 --value=03110A181228 --listen 2>&1
pi        7890  0.0  0.6   4280  2616 ?        S    18:40   0:00 gatttool -b 00:1A:22:09:0F:5D -i hci0 --char-write-req --handle=0x0411 --value=03110A181228 --listen
pi        7926  0.0  0.6   4572  2604 ?        Ss   18:42   0:00 bash -c gatttool -b 00:1A:22:09:0F:5D -i hci0 --char-write-req --handle=0x0411 --value=03110A18122A --listen 2>&1
pi        7927  0.0  0.6   4280  2484 ?        S    18:42   0:00 gatttool -b 00:1A:22:09:0F:5D -i hci0 --char-write-req --handle=0x0411 --value=03110A18122A --listen
pi        7963  0.0  0.6   4572  2600 ?        Ss   18:45   0:00 bash -c gatttool -b 00:1A:22:09:0F:5D -i hci0 --char-write-req --handle=0x0411 --value=03110A18122D --listen 2>&1
pi        7964  0.0  0.6   4280  2592 ?        S    18:45   0:00 gatttool -b 00:1A:22:09:0F:5D -i hci0 --char-write-req --handle=0x0411 --value=03110A18122D --listen
pi        8000  0.0  0.6   4572  2544 ?        Ss   18:48   0:00 bash -c gatttool -b 00:1A:22:09:0F:5D -i hci0 --char-write-req --handle=0x0411 --value=03110A181230 --listen 2>&1
pi        8001  0.0  0.6   4280  2488 ?        S    18:48   0:00 gatttool -b 00:1A:22:09:0F:5D -i hci0 --char-write-req --handle=0x0411 --value=03110A181230 --listen
pi        8038  0.0  0.6   4572  2600 ?        Ss   18:52   0:00 bash -c gatttool -b 00:1A:22:09:0F:5D -i hci0 --char-write-req --handle=0x0411 --value=03110A181234 --listen 2>&1
pi        8039  0.0  0.6   4280  2484 ?        S    18:52   0:00 gatttool -b 00:1A:22:09:0F:5D -i hci0 --char-write-req --handle=0x0411 --value=03110A181234 --listen
pi        8075  0.0  0.6   4572  2524 ?        Ss   18:55   0:00 bash -c gatttool -b 00:1A:22:09:0F:5D -i hci0 --char-write-req --handle=0x0411 --value=03110A181237 --listen 2>&1
pi        8076  0.0  0.6   4280  2424 ?        S    18:55   0:00 gatttool -b 00:1A:22:09:0F:5D -i hci0 --char-write-req --handle=0x0411 --value=03110A181237 --listen
pi        8113  0.0  0.6   4572  2548 ?        Ss   18:58   0:00 bash -c gatttool -b 00:1A:22:09:0F:5D -i hci0 --char-write-req --handle=0x0411 --value=03110A18123A --listen 2>&1
pi        8114  0.0  0.6   4280  2644 ?        S    18:58   0:00 gatttool -b 00:1A:22:09:0F:5D -i hci0 --char-write-req --handle=0x0411 --value=03110A18123A --listen
pi        8222  0.0  0.6   4572  2544 ?        Ss   19:01   0:00 bash -c gatttool -b 00:1A:22:09:0F:5D -i hci0 --char-write-req --handle=0x0411 --value=03110A181301 --listen 2>&1
pi        8223  0.0  0.6   4280  2644 ?        S    19:01   0:00 gatttool -b 00:1A:22:09:0F:5D -i hci0 --char-write-req --handle=0x0411 --value=03110A181301 --listen
pi        8259  0.0  0.6   4572  2544 ?        Ss   19:04   0:00 bash -c gatttool -b 00:1A:22:09:0F:5D -i hci0 --char-write-req --handle=0x0411 --value=03110A181304 --listen 2>&1
pi        8260  0.0  0.6   4280  2480 ?        S    19:04   0:00 gatttool -b 00:1A:22:09:0F:5D -i hci0 --char-write-req --handle=0x0411 --value=03110A181304 --listen
pi        8297  0.0  0.6   4572  2544 ?        Ss   19:07   0:00 bash -c gatttool -b 00:1A:22:09:0F:5D -i hci0 --char-write-req --handle=0x0411 --value=03110A181307 --listen 2>&1
pi        8298  0.0  0.6   4280  2644 ?        S    19:07   0:00 gatttool -b 00:1A:22:09:0F:5D -i hci0 --char-write-req --handle=0x0411 --value=03110A181307 --listen
pi        8334  0.0  0.5   4364  2048 pts/0    S+   19:09   0:00 grep --color=auto gatttool
pi@ZEROCAM114:~ $
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: CoolTux am 24 Oktober 2017, 19:13:28
Ah das ist dieser listen Zusatz, der sollte eigentlich nur 5s oder so warten und sich dann beenden. Muss ich mir mal genauer anschauen.
Ist halt doof wenn man so ein Teil nicht hat.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Gasmast3r am 24 Oktober 2017, 19:17:39
Zitat von: CoolTux am 24 Oktober 2017, 19:13:28
Ah das ist dieser listen Zusatz, der sollte eigentlich nur 5s oder so warten und sich dann beenden. Muss ich mir mal genauer anschauen.
Ist halt doof wenn man so ein Teil nicht hat.
Müssten mal alle die das Tool haben wollen mal ne Spende zusammen sammeln wa

Gesendet von meinem SM-G950F mit Tapatalk

Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: CoolTux am 24 Oktober 2017, 19:21:43
Zu mindest könnte man dann auch testen. Aber im Moment seit ihr ja glaube nur zwei, ob sich das lohnt? Eventuell hat ja einer einen über.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Gasmast3r am 24 Oktober 2017, 19:27:14
Ich müsste noch 2 kaufen um alle Heizkörper damit auszurüsten.
Aber die sind im Keller
Naja kostet bei Amazon derzeit 19€ was nicht die Welt ist

Gesendet von meinem SM-G950F mit Tapatalk

Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: g-dave am 26 Oktober 2017, 22:53:55
Zitat von: CoolTux am 24 Oktober 2017, 19:21:43
Zu mindest könnte man dann auch testen. Aber im Moment seit ihr ja glaube nur zwei, ob sich das lohnt? Eventuell hat ja einer einen über.
Hi,

tatsächlich habe ich gerade erst damit angefangen also auch erst 2 Stück am Start :(.
Werfe aber gerne was in den Hut!
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Gasmast3r am 26 Oktober 2017, 23:00:49
Zitat von: g-dave am 26 Oktober 2017, 22:53:55
Hi,

tatsächlich habe ich gerade erst damit angefangen also auch erst 2 Stück am Start :(.
Werfe aber gerne was in den Hut!
Ich bin bei 13 Stück 2 fehlen noch ;)

@ CoolTux würdest den danach behalten wollen???
Überlege sonst 1 zu bestellen dir den zur Verfügung zu stellen, und danach dann am Bestimmungsort zu betreiben.

Gesendet von meinem SM-G950F mit Tapatalk

Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: CoolTux am 27 Oktober 2017, 05:05:52
Guten Morgen,

Ich brauche den nur für das Modul. Wenn das läuft bekommst ihn wieder.


Grüße
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: CoolTux am 27 Oktober 2017, 07:14:54
Mir ist beim spazieren gehen gerade eine Idee gekommen.

Bitte einmal die Version hier testen.

Achtet darauf bevor ihr irgendwas schaltet das alle gatttool Prozesse auf dem SSH Host weg sind. Dann schaltet ihr einmal die Temperatur und nach max 2 Minuten sollte kein gatttool Prozess mit --listen am Ende mehr auf dem SSH Host zu sehen sein.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: g-dave am 27 Oktober 2017, 08:37:04
Zitat von: CoolTux am 27 Oktober 2017, 07:14:54
Mir ist beim spazieren gehen gerade eine Idee gekommen.

Bitte einmal die Version hier testen.

Achtet darauf bevor ihr irgendwas schaltet das alle gatttool Prozesse auf dem SSH Host weg sind. Dann schaltet ihr einmal die Temperatur und nach max 2 Minuten sollte kein gatttool Prozess mit --listen am Ende mehr auf dem SSH Host zu sehen sein.
Um welche Uhrzeiten spazierst du denn? ;-D ich muss immer nur abends, oder am Wochenende ;).

Werde es heute Abend/am Wochenende testen!

Greetings
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: CoolTux am 27 Oktober 2017, 08:38:49
Habe meinen Regenschirm und Rucksack aus geführt. hihi
Auf dem Weg zur Arbeit
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Gasmast3r am 27 Oktober 2017, 13:40:28
das bekomme ich nach ca 3 Std. Laufzeit


pi@ZEROCAM114:~ $ sudo ps aux | grep gatttool
pi        6626  0.0  0.6   4572  2548 ?        Ss   11:02   0:00 bash -c gatttool -b 00:1A:22:09:0F:5D -i hci1 --char-write-req --handle=0x0411 --value=03110A1B0B02 --listen 2>&1
pi        6627  0.0  0.6   4280  2608 ?        S    11:02   0:00 gatttool -b 00:1A:22:09:0F:5D -i hci1 --char-write-req --handle=0x0411 --value=03110A1B0B02 --listen
pi        6750  0.0  0.6   4572  2548 ?        Ss   11:05   0:00 bash -c gatttool -b 00:1A:22:09:0F:5D -i hci1 --char-write-req --handle=0x0411 --value=03110A1B0B05 --listen 2>&1
pi        6751  0.0  0.6   4280  2604 ?        S    11:05   0:00 gatttool -b 00:1A:22:09:0F:5D -i hci1 --char-write-req --handle=0x0411 --value=03110A1B0B05 --listen
pi        7041  0.0  0.6   4572  2592 ?        Ss   11:09   0:00 bash -c gatttool -b 00:1A:22:09:0F:5D -i hci1 --char-write-req --handle=0x0411 --value=03110A1B0B09 --listen 2>&1
pi        7042  0.0  0.6   4280  2496 ?        S    11:09   0:00 gatttool -b 00:1A:22:09:0F:5D -i hci1 --char-write-req --handle=0x0411 --value=03110A1B0B09 --listen
pi        7113  0.0  0.6   4572  2584 ?        Ss   11:13   0:00 bash -c gatttool -b 00:1A:22:09:0F:5D -i hci0 --char-write-req --handle=0x0411 --value=03110A1B0B0D --listen 2>&1
pi        7114  0.0  0.6   4280  2492 ?        S    11:13   0:00 gatttool -b 00:1A:22:09:0F:5D -i hci0 --char-write-req --handle=0x0411 --value=03110A1B0B0D --listen
pi        7473  0.0  0.6   4572  2544 ?        Ss   11:16   0:00 bash -c gatttool -b 00:1A:22:09:0F:5D -i hci0 --char-write-req --handle=0x0411 --value=03110A1B0B10 --listen 2>&1
pi        7474  0.0  0.6   4280  2516 ?        S    11:16   0:00 gatttool -b 00:1A:22:09:0F:5D -i hci0 --char-write-req --handle=0x0411 --value=03110A1B0B10 --listen
pi        7524  0.0  0.6   4572  2552 ?        Ss   11:19   0:00 bash -c gatttool -b 00:1A:22:09:0F:5D -i hci0 --char-write-req --handle=0x0411 --value=03110A1B0B13 --listen 2>&1
pi        7525  0.0  0.6   4280  2496 ?        S    11:19   0:00 gatttool -b 00:1A:22:09:0F:5D -i hci0 --char-write-req --handle=0x0411 --value=03110A1B0B13 --listen
pi        7615  0.0  0.6   4572  2552 ?        Ss   11:22   0:00 bash -c gatttool -b 00:1A:22:09:0F:5D -i hci0 --char-write-req --handle=0x0411 --value=03110A1B0B16 --listen 2>&1
pi        7616  0.0  0.6   4280  2588 ?        S    11:22   0:00 gatttool -b 00:1A:22:09:0F:5D -i hci0 --char-write-req --handle=0x0411 --value=03110A1B0B16 --listen
pi        7688  0.0  0.6   4572  2552 ?        Ss   11:26   0:00 bash -c gatttool -b 00:1A:22:09:0F:5D -i hci1 --char-write-req --handle=0x0411 --value=03110A1B0B1A --listen 2>&1
pi        7689  0.0  0.6   4280  2524 ?        S    11:26   0:00 gatttool -b 00:1A:22:09:0F:5D -i hci1 --char-write-req --handle=0x0411 --value=03110A1B0B1A --listen
pi        7724  0.0  0.6   4572  2544 ?        Ss   11:29   0:00 bash -c gatttool -b 00:1A:22:09:0F:5D -i hci1 --char-write-req --handle=0x0411 --value=03110A1B0B1D --listen 2>&1
pi        7725  0.0  0.6   4280  2496 ?        S    11:29   0:00 gatttool -b 00:1A:22:09:0F:5D -i hci1 --char-write-req --handle=0x0411 --value=03110A1B0B1D --listen
pi        7846  0.0  0.6   4572  2552 ?        Ss   11:33   0:00 bash -c gatttool -b 00:1A:22:09:0F:5D -i hci1 --char-write-req --handle=0x0411 --value=03110A1B0B21 --listen 2>&1
pi        7847  0.0  0.6   4280  2588 ?        S    11:33   0:00 gatttool -b 00:1A:22:09:0F:5D -i hci1 --char-write-req --handle=0x0411 --value=03110A1B0B21 --listen
pi        7942  0.0  0.6   4572  2656 ?        Ss   11:36   0:00 bash -c gatttool -b 00:1A:22:09:0F:5D -i hci1 --char-write-req --handle=0x0411 --value=03110A1B0B24 --listen 2>&1
pi        7943  0.0  0.6   4280  2652 ?        S    11:36   0:00 gatttool -b 00:1A:22:09:0F:5D -i hci1 --char-write-req --handle=0x0411 --value=03110A1B0B24 --listen
pi        7977  0.0  0.6   4572  2552 ?        Ss   11:38   0:00 bash -c gatttool -b 00:1A:22:09:0F:5D -i hci1 --char-write-req --handle=0x0411 --value=00 --listen 2>&1
pi        7978  0.0  0.6   4280  2492 ?        S    11:38   0:00 gatttool -b 00:1A:22:09:0F:5D -i hci1 --char-write-req --handle=0x0411 --value=00 --listen
pi        8244  0.0  0.6   4572  2544 ?        Ss   11:39   0:00 bash -c gatttool -b 00:1A:22:09:0F:5D -i hci0 --char-write-req --handle=0x0411 --value=03110A1B0B27 --listen 2>&1
pi        8245  0.0  0.6   4280  2496 ?        S    11:39   0:00 gatttool -b 00:1A:22:09:0F:5D -i hci0 --char-write-req --handle=0x0411 --value=03110A1B0B27 --listen
pi        8281  0.0  0.6   4572  2548 ?        Ss   11:42   0:00 bash -c gatttool -b 00:1A:22:09:0F:5D -i hci0 --char-write-req --handle=0x0411 --value=03110A1B0B2A --listen 2>&1
pi        8282  0.0  0.6   4280  2592 ?        S    11:42   0:00 gatttool -b 00:1A:22:09:0F:5D -i hci0 --char-write-req --handle=0x0411 --value=03110A1B0B2A --listen
pi        8319  0.0  0.6   4572  2600 ?        Ss   11:45   0:00 bash -c gatttool -b 00:1A:22:09:0F:5D -i hci0 --char-write-req --handle=0x0411 --value=03110A1B0B2D --listen 2>&1
pi        8320  0.0  0.6   4280  2560 ?        S    11:45   0:00 gatttool -b 00:1A:22:09:0F:5D -i hci0 --char-write-req --handle=0x0411 --value=03110A1B0B2D --listen
pi        8410  0.0  0.6   4572  2548 ?        Ss   11:48   0:00 bash -c gatttool -b 00:1A:22:09:0F:5D -i hci0 --char-write-req --handle=0x0411 --value=03110A1B0B30 --listen 2>&1
pi        8411  0.0  0.6   4280  2436 ?        S    11:48   0:00 gatttool -b 00:1A:22:09:0F:5D -i hci0 --char-write-req --handle=0x0411 --value=03110A1B0B30 --listen
pi        8448  0.0  0.6   4572  2656 ?        Ss   11:51   0:00 bash -c gatttool -b 00:1A:22:09:0F:5D -i hci0 --char-write-req --handle=0x0411 --value=03110A1B0B33 --listen 2>&1
pi        8449  0.0  0.6   4280  2436 ?        S    11:51   0:00 gatttool -b 00:1A:22:09:0F:5D -i hci0 --char-write-req --handle=0x0411 --value=03110A1B0B33 --listen
pi        8485  0.0  0.6   4572  2584 ?        Ss   11:54   0:00 bash -c gatttool -b 00:1A:22:09:0F:5D -i hci0 --char-write-req --handle=0x0411 --value=03110A1B0B36 --listen 2>&1
pi        8486  0.0  0.6   4280  2492 ?        S    11:54   0:00 gatttool -b 00:1A:22:09:0F:5D -i hci0 --char-write-req --handle=0x0411 --value=03110A1B0B36 --listen
pi        8522  0.0  0.6   4572  2584 ?        Ss   11:58   0:00 bash -c gatttool -b 00:1A:22:09:0F:5D -i hci0 --char-write-req --handle=0x0411 --value=03110A1B0B3A --listen 2>&1
pi        8523  0.0  0.6   4280  2516 ?        S    11:58   0:00 gatttool -b 00:1A:22:09:0F:5D -i hci0 --char-write-req --handle=0x0411 --value=03110A1B0B3A --listen
pi        8559  0.0  0.6   4576  2604 ?        Ss   12:01   0:00 bash -c gatttool -b 00:1A:22:09:0F:5D -i hci0 --char-write-req --handle=0x0411 --value=03110A1B0C01 --listen 2>&1
pi        8560  0.0  0.6   4280  2516 ?        S    12:01   0:00 gatttool -b 00:1A:22:09:0F:5D -i hci0 --char-write-req --handle=0x0411 --value=03110A1B0C01 --listen
pi        8597  0.0  0.6   4576  2552 ?        Ss   12:05   0:00 bash -c gatttool -b 00:1A:22:09:0F:5D -i hci0 --char-write-req --handle=0x0411 --value=03110A1B0C04 --listen 2>&1
pi        8598  0.0  0.6   4280  2464 ?        S    12:05   0:00 gatttool -b 00:1A:22:09:0F:5D -i hci0 --char-write-req --handle=0x0411 --value=03110A1B0C04 --listen
pi        8634  0.0  0.6   4576  2596 ?        Ss   12:08   0:00 bash -c gatttool -b 00:1A:22:09:0F:5D -i hci0 --char-write-req --handle=0x0411 --value=03110A1B0C08 --listen 2>&1
pi        8635  0.0  0.6   4280  2560 ?        S    12:08   0:00 gatttool -b 00:1A:22:09:0F:5D -i hci0 --char-write-req --handle=0x0411 --value=03110A1B0C08 --listen
pi        8672  0.0  0.6   4576  2604 ?        Ss   12:11   0:00 bash -c gatttool -b 00:1A:22:09:0F:5D -i hci0 --char-write-req --handle=0x0411 --value=03110A1B0C0B --listen 2>&1
pi        8673  0.0  0.6   4280  2588 ?        S    12:11   0:00 gatttool -b 00:1A:22:09:0F:5D -i hci0 --char-write-req --handle=0x0411 --value=03110A1B0C0B --listen
pi        8708  0.0  0.6   4576  2556 ?        Ss   12:14   0:00 bash -c gatttool -b 00:1A:22:09:0F:5D -i hci0 --char-write-req --handle=0x0411 --value=03110A1B0C0E --listen 2>&1
pi        8709  0.0  0.6   4280  2616 ?        S    12:14   0:00 gatttool -b 00:1A:22:09:0F:5D -i hci0 --char-write-req --handle=0x0411 --value=03110A1B0C0E --listen
pi        8760  0.0  0.6   4576  2552 ?        Ss   12:17   0:00 bash -c gatttool -b 00:1A:22:09:0F:5D -i hci0 --char-write-req --handle=0x0411 --value=03110A1B0C11 --listen 2>&1
pi        8761  0.0  0.6   4280  2616 ?        S    12:17   0:00 gatttool -b 00:1A:22:09:0F:5D -i hci0 --char-write-req --handle=0x0411 --value=03110A1B0C11 --listen
pi        8796  0.0  0.6   4576  2564 ?        Ss   12:20   0:00 bash -c gatttool -b 00:1A:22:09:0F:5D -i hci0 --char-write-req --handle=0x0411 --value=03110A1B0C14 --listen 2>&1
pi        8797  0.0  0.6   4280  2588 ?        S    12:20   0:00 gatttool -b 00:1A:22:09:0F:5D -i hci0 --char-write-req --handle=0x0411 --value=03110A1B0C14 --listen
pi        8833  0.0  0.6   4576  2556 ?        Ss   12:23   0:00 bash -c gatttool -b 00:1A:22:09:0F:5D -i hci0 --char-write-req --handle=0x0411 --value=03110A1B0C17 --listen 2>&1
pi        8834  0.0  0.6   4280  2516 ?        S    12:23   0:00 gatttool -b 00:1A:22:09:0F:5D -i hci0 --char-write-req --handle=0x0411 --value=03110A1B0C17 --listen
pi        8886  0.0  0.6   4576  2548 ?        Ss   12:26   0:00 bash -c gatttool -b 00:1A:22:09:0F:5D -i hci0 --char-write-req --handle=0x0411 --value=03110A1B0C1A --listen 2>&1
pi        8887  0.0  0.6   4280  2464 ?        S    12:26   0:00 gatttool -b 00:1A:22:09:0F:5D -i hci0 --char-write-req --handle=0x0411 --value=03110A1B0C1A --listen
pi        8952  0.0  0.6   4576  2604 ?        Ss   12:29   0:00 bash -c gatttool -b 00:1A:22:09:0F:5D -i hci0 --char-write-req --handle=0x0411 --value=03110A1B0C1D --listen 2>&1
pi        8953  0.0  0.6   4280  2464 ?        S    12:29   0:00 gatttool -b 00:1A:22:09:0F:5D -i hci0 --char-write-req --handle=0x0411 --value=03110A1B0C1D --listen
pi        8990  0.0  0.6   4576  2556 ?        Ss   12:32   0:00 bash -c gatttool -b 00:1A:22:09:0F:5D -i hci0 --char-write-req --handle=0x0411 --value=03110A1B0C20 --listen 2>&1
pi        8991  0.0  0.6   4280  2588 ?        S    12:32   0:00 gatttool -b 00:1A:22:09:0F:5D -i hci0 --char-write-req --handle=0x0411 --value=03110A1B0C20 --listen
pi        9027  0.0  0.6   4576  2556 ?        Ss   12:35   0:00 bash -c gatttool -b 00:1A:22:09:0F:5D -i hci0 --char-write-req --handle=0x0411 --value=03110A1B0C23 --listen 2>&1
pi        9028  0.0  0.6   4280  2604 ?        S    12:35   0:00 gatttool -b 00:1A:22:09:0F:5D -i hci0 --char-write-req --handle=0x0411 --value=03110A1B0C23 --listen
pi        9064  0.0  0.6   4576  2552 ?        Ss   12:38   0:00 bash -c gatttool -b 00:1A:22:09:0F:5D -i hci0 --char-write-req --handle=0x0411 --value=03110A1B0C26 --listen 2>&1
pi        9065  0.0  0.6   4280  2560 ?        S    12:38   0:00 gatttool -b 00:1A:22:09:0F:5D -i hci0 --char-write-req --handle=0x0411 --value=03110A1B0C26 --listen
pi        9101  0.0  0.6   4576  2548 ?        Ss   12:41   0:00 bash -c gatttool -b 00:1A:22:09:0F:5D -i hci0 --char-write-req --handle=0x0411 --value=03110A1B0C29 --listen 2>&1
pi        9102  0.0  0.6   4280  2588 ?        S    12:41   0:00 gatttool -b 00:1A:22:09:0F:5D -i hci0 --char-write-req --handle=0x0411 --value=03110A1B0C29 --listen
pi        9138  0.0  0.6   4576  2556 ?        Ss   12:44   0:00 bash -c gatttool -b 00:1A:22:09:0F:5D -i hci0 --char-write-req --handle=0x0411 --value=03110A1B0C2C --listen 2>&1
pi        9139  0.0  0.6   4280  2516 ?        S    12:44   0:00 gatttool -b 00:1A:22:09:0F:5D -i hci0 --char-write-req --handle=0x0411 --value=03110A1B0C2C --listen
pi        9175  0.0  0.6   4576  2548 ?        Ss   12:47   0:00 bash -c gatttool -b 00:1A:22:09:0F:5D -i hci0 --char-write-req --handle=0x0411 --value=03110A1B0C2F --listen 2>&1
pi        9176  0.0  0.6   4280  2464 ?        S    12:47   0:00 gatttool -b 00:1A:22:09:0F:5D -i hci0 --char-write-req --handle=0x0411 --value=03110A1B0C2F --listen
pi        9211  0.0  0.7   4576  2660 ?        Ss   12:50   0:00 bash -c gatttool -b 00:1A:22:09:0F:5D -i hci0 --char-write-req --handle=0x0411 --value=03110A1B0C32 --listen 2>&1
pi        9212  0.0  0.6   4280  2560 ?        S    12:50   0:00 gatttool -b 00:1A:22:09:0F:5D -i hci0 --char-write-req --handle=0x0411 --value=03110A1B0C32 --listen
pi        9249  0.0  0.6   4576  2556 ?        Ss   12:53   0:00 bash -c gatttool -b 00:1A:22:09:0F:5D -i hci0 --char-write-req --handle=0x0411 --value=03110A1B0C35 --listen 2>&1
pi        9250  0.0  0.6   4280  2652 ?        S    12:53   0:00 gatttool -b 00:1A:22:09:0F:5D -i hci0 --char-write-req --handle=0x0411 --value=03110A1B0C35 --listen
pi        9286  0.0  0.6   4576  2556 ?        Ss   12:56   0:00 bash -c gatttool -b 00:1A:22:09:0F:5D -i hci0 --char-write-req --handle=0x0411 --value=03110A1B0C38 --listen 2>&1
pi        9287  0.0  0.6   4280  2616 ?        S    12:56   0:00 gatttool -b 00:1A:22:09:0F:5D -i hci0 --char-write-req --handle=0x0411 --value=03110A1B0C38 --listen
pi        9323  0.0  0.6   4576  2596 ?        Ss   12:59   0:00 bash -c gatttool -b 00:1A:22:09:0F:5D -i hci0 --char-write-req --handle=0x0411 --value=03110A1B0C3B --listen 2>&1
pi        9324  0.0  0.6   4280  2592 ?        S    12:59   0:00 gatttool -b 00:1A:22:09:0F:5D -i hci0 --char-write-req --handle=0x0411 --value=03110A1B0C3B --listen
pi        9362  0.0  0.6   4576  2604 ?        Ss   13:02   0:00 bash -c gatttool -b 00:1A:22:09:0F:5D -i hci0 --char-write-req --handle=0x0411 --value=03110A1B0D02 --listen 2>&1
pi        9363  0.0  0.6   4280  2588 ?        S    13:02   0:00 gatttool -b 00:1A:22:09:0F:5D -i hci0 --char-write-req --handle=0x0411 --value=03110A1B0D02 --listen
pi        9398  0.0  0.6   4576  2556 ?        Ss   13:05   0:00 bash -c gatttool -b 00:1A:22:09:0F:5D -i hci0 --char-write-req --handle=0x0411 --value=03110A1B0D05 --listen 2>&1
pi        9399  0.0  0.6   4280  2652 ?        S    13:05   0:00 gatttool -b 00:1A:22:09:0F:5D -i hci0 --char-write-req --handle=0x0411 --value=03110A1B0D05 --listen
pi        9436  0.0  0.6   4576  2556 ?        Ss   13:08   0:00 bash -c gatttool -b 00:1A:22:09:0F:5D -i hci0 --char-write-req --handle=0x0411 --value=03110A1B0D08 --listen 2>&1
pi        9437  0.0  0.6   4280  2592 ?        S    13:08   0:00 gatttool -b 00:1A:22:09:0F:5D -i hci0 --char-write-req --handle=0x0411 --value=03110A1B0D08 --listen
pi        9472  0.0  0.6   4576  2604 ?        Ss   13:11   0:00 bash -c gatttool -b 00:1A:22:09:0F:5D -i hci0 --char-write-req --handle=0x0411 --value=03110A1B0D0B --listen 2>&1
pi        9473  0.0  0.6   4280  2516 ?        S    13:11   0:00 gatttool -b 00:1A:22:09:0F:5D -i hci0 --char-write-req --handle=0x0411 --value=03110A1B0D0B --listen
pi        9509  0.0  0.6   4576  2604 ?        Ss   13:14   0:00 bash -c gatttool -b 00:1A:22:09:0F:5D -i hci0 --char-write-req --handle=0x0411 --value=03110A1B0D0E --listen 2>&1
pi        9510  0.0  0.6   4280  2560 ?        S    13:14   0:00 gatttool -b 00:1A:22:09:0F:5D -i hci0 --char-write-req --handle=0x0411 --value=03110A1B0D0E --listen
pi        9546  0.0  0.6   4576  2588 ?        Ss   13:16   0:00 bash -c gatttool -b 00:1A:22:09:0F:5D -i hci0 --char-write-req --handle=0x0411 --value=03110A1B0D10 --listen 2>&1
pi        9547  0.0  0.6   4280  2516 ?        S    13:16   0:00 gatttool -b 00:1A:22:09:0F:5D -i hci0 --char-write-req --handle=0x0411 --value=03110A1B0D10 --listen
pi        9597  0.0  0.7   4576  2660 ?        Ss   13:20   0:00 bash -c gatttool -b 00:1A:22:09:0F:5D -i hci0 --char-write-req --handle=0x0411 --value=03110A1B0D14 --listen 2>&1
pi        9598  0.0  0.6   4280  2648 ?        S    13:20   0:00 gatttool -b 00:1A:22:09:0F:5D -i hci0 --char-write-req --handle=0x0411 --value=03110A1B0D14 --listen
pi        9634  0.0  0.6   4576  2556 ?        Ss   13:23   0:00 bash -c gatttool -b 00:1A:22:09:0F:5D -i hci0 --char-write-req --handle=0x0411 --value=03110A1B0D17 --listen 2>&1
pi        9635  0.0  0.6   4280  2548 ?        S    13:23   0:00 gatttool -b 00:1A:22:09:0F:5D -i hci0 --char-write-req --handle=0x0411 --value=03110A1B0D17 --listen
pi        9671  0.0  0.6   4576  2552 ?        Ss   13:26   0:00 bash -c gatttool -b 00:1A:22:09:0F:5D -i hci0 --char-write-req --handle=0x0411 --value=03110A1B0D1A --listen 2>&1
pi        9672  0.0  0.6   4280  2588 ?        S    13:26   0:00 gatttool -b 00:1A:22:09:0F:5D -i hci0 --char-write-req --handle=0x0411 --value=03110A1B0D1A --listen
pi        9708  0.0  0.6   4576  2556 ?        Ss   13:29   0:00 bash -c gatttool -b 00:1A:22:09:0F:5D -i hci0 --char-write-req --handle=0x0411 --value=03110A1B0D1D --listen 2>&1
pi        9709  0.0  0.6   4280  2492 ?        S    13:29   0:00 gatttool -b 00:1A:22:09:0F:5D -i hci0 --char-write-req --handle=0x0411 --value=03110A1B0D1D --listen
pi        9746  0.0  0.6   4576  2556 ?        Ss   13:32   0:00 bash -c gatttool -b 00:1A:22:09:0F:5D -i hci0 --char-write-req --handle=0x0411 --value=03110A1B0D20 --listen 2>&1
pi        9747  0.0  0.6   4280  2608 ?        S    13:32   0:00 gatttool -b 00:1A:22:09:0F:5D -i hci0 --char-write-req --handle=0x0411 --value=03110A1B0D20 --listen
pi        9784  0.0  0.6   4576  2556 ?        Ss   13:35   0:00 bash -c gatttool -b 00:1A:22:09:0F:5D -i hci0 --char-write-req --handle=0x0411 --value=03110A1B0D23 --listen 2>&1
pi        9785  0.0  0.6   4280  2592 ?        S    13:35   0:00 gatttool -b 00:1A:22:09:0F:5D -i hci0 --char-write-req --handle=0x0411 --value=03110A1B0D23 --listen
pi        9875  0.0  0.6   4576  2556 ?        Ss   13:38   0:00 bash -c gatttool -b 00:1A:22:09:0F:5D -i hci0 --char-write-req --handle=0x0411 --value=03110A1B0D26 --listen 2>&1
pi        9876  0.0  0.6   4280  2496 ?        S    13:38   0:00 gatttool -b 00:1A:22:09:0F:5D -i hci0 --char-write-req --handle=0x0411 --value=03110A1B0D26 --listen
pi        9910  2.0  0.5   4364  2056 pts/0    S+   13:38   0:00 grep --color=auto gatttool
pi@ZEROCAM114:~ $
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: CoolTux am 27 Oktober 2017, 13:44:05
Der scheint den Abbruch Befehl nicht sauber mit zu geben. Da muss ich noch mal in Ruhe testen.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Gasmast3r am 27 Oktober 2017, 13:54:02
Zitat von: CoolTux am 27 Oktober 2017, 13:44:05
Der scheint den Abbruch Befehl nicht sauber mit zu geben. Da muss ich noch mal in Ruhe testen.
Ich muss mal schauen was meine Finanzen sagen zwecks Thermostat Bestellung.

Gesendet von meinem SM-G950F mit Tapatalk

Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: CoolTux am 27 Oktober 2017, 13:56:04
Mach in Ruhe. Das mit dem --listen und dem timeout Befehl bekomme ich auch so bestimmt getestet.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: CoolTux am 27 Oktober 2017, 14:01:46
Möglich das ich den Fehler gerade gefunden habe. Ich hoffe es
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: CoolTux am 27 Oktober 2017, 14:08:08
So jetzt aber. Selbes vorgehen, alle gatttool Prozesse killen und dann das Modul starten
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Gasmast3r am 27 Oktober 2017, 21:00:34
Hy ja scheint zu klappen bis jetzt keine negativen Einträge

Gesendet von meinem SM-G950F mit Tapatalk

Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: CoolTux am 27 Oktober 2017, 21:15:04
Bitte übers WE testen, wenn es sauber bleibt schreibe ich den Code vernünftig.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Gasmast3r am 27 Oktober 2017, 21:19:51
Zitat von: CoolTux am 27 Oktober 2017, 21:15:04
Bitte übers WE testen, wenn es sauber bleibt schreibe ich den Code vernünftig.
Werde es beobachten

Gesendet von meinem SM-G950F mit Tapatalk

Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: g-dave am 28 Oktober 2017, 11:27:41
Zitat von: CoolTux am 27 Oktober 2017, 14:08:08
So jetzt aber. Selbes vorgehen, alle gatttool Prozesse killen und dann das Modul starten

Moin zusammen,
sieht bei mir auch gut aus! :)

habe im FHEM log nur ein zwei mal einen "timeout 15 gatttool....." Eintrag gesehen -> siehe log unten...

Aber der DesiredTemperature-Wert wird am Thermostat gesetzt und es bleiben keine gatttool Prozesse auf dem remote pi hängen  8), somit raucht auch die CPU nicht mehr auf Volllast ;).
Astrein!

Werde aber auch übers WE beobachten.


2017.10.28 11:12:24 5: EQ3BT (eq3_r2_thermostat): ssh fhem2 'gatttool -b 00:1A:22:0A:13:EB -i hci0 --char-write-req --handle=0x0411 --value=4120 2>&1'
2017.10.28 11:12:24 5: EQ3BT (eq3_r2_thermostat): ssh fhem2 'timeout 15 gatttool -b 00:1A:22:0A:13:EB -i hci0 --char-write-req --handle=0x0411 --value=03110A1C0B0C --listen 2>&1'
2017.10.28 11:12:27 4: EQ3BT (eq3_r2_thermostat): gatttool result: connect: Device or resource busy (16)
2017.10.28 11:12:27 4: Connection accepted from telnetForBlockingFn_1509181876_127.0.0.1_50976
2017.10.28 11:12:27 5: Cmd: >{BlockingStart('6')}<
2017.10.28 11:12:27 5: Cmd: >{EQ3BT_processGatttoolResult('eq3_r2_thermostat|00:1A:22:0A:13:EB|error|updateStatus|0x0411|03110A1C0B0C|updateStatus failed')}<
2017.10.28 11:12:27 5: EQ3BT (eq3_r2_thermostat): gatttool return string: eq3_r2_thermostat|00:1A:22:0A:13:EB|error|updateStatus|0x0411|03110A1C0B0C|updateStatus failed
2017.10.28 11:12:27 4: EQ3BT (eq3_r2_thermostat): updateStatus failed (0x0411, 03110A1C0B0C, updateStatus failed)
2017.10.28 11:12:31 4: EQ3BT (eq3_r2_thermostat): gatttool result: Characteristic value was written successfully
2017.10.28 11:12:31 4: Connection accepted from telnetForBlockingFn_1509181876_127.0.0.1_50978
2017.10.28 11:12:31 5: Cmd: >{BlockingStart('7')}<
2017.10.28 11:12:31 5: Cmd: >{EQ3BT_processGatttoolResult('eq3_r2_thermostat|00:1A:22:0A:13:EB|ok|setDesiredTemperature|0x0411|4120')}<
2017.10.28 11:12:31 5: EQ3BT (eq3_r2_thermostat): gatttool return string: eq3_r2_thermostat|00:1A:22:0A:13:EB|ok|setDesiredTemperature|0x0411|4120
2017.10.28 11:12:31 5: Starting notify loop for eq3_r2_thermostat, 1 event(s), first is lastChangeBy: FHEM
2017.10.28 11:12:31 5: End notify loop for eq3_r2_thermostat
2017.10.28 11:12:31 5: Starting notify loop for eq3_r2_thermostat, 1 event(s), first is desiredTemperature: 16.0
2017.10.28 11:12:31 5: End notify loop for eq3_r2_thermostat


Greetings
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Gasmast3r am 28 Oktober 2017, 12:28:06
Hy
so hab bis jetzt immer noch keine Probleme.
Nun habe das mal auf 3 Pi´s mit bis zu 3 Thermostate erweitert.

Werde das mal beobachten, also mal der stresstest. 
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: CoolTux am 28 Oktober 2017, 14:06:27
Nicht gleich übermütig werden. Ich muss noch die abort Time wieder runter setzen. Sonst läuft der BlockingCall eventuell zu lange.

Aber schön zu hören das es läuft.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Gasmast3r am 30 Oktober 2017, 12:44:09
Hy
So meine Konstellation sauber läuft seit letzem Beitrag immer noch super keine Einträge im FHEM Log.
Die Pi´s machen ihre primär aufgaben ohne das sshHost mir die dinger an ihre grenzen bringt.


Also ich würde mal behaupten das kann man so verkaufen.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: CoolTux am 30 Oktober 2017, 12:49:19
Sehr schön. Ein zwei Sachen müssen wir aber noch Rückgängig machen. Ich gehe nicht davon aus das dies zu Problemen führt. Melde mich dann noch mal am Abend.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: CoolTux am 31 Oktober 2017, 08:25:59
Bitte testen, es wurden zwei Sachen wieder zurück gedreht so wie sie ursprünglich mal waren. Hatten nichts mit dem Fehler zu tun
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Gasmast3r am 31 Oktober 2017, 08:34:24
Zitat von: CoolTux am 31 Oktober 2017, 08:25:59
Bitte testen, es wurden zwei Sachen wieder zurück gedreht so wie sie ursprünglich mal waren. Hatten nichts mit dem Fehler zu tun
Spiele es heute Nachmittag mal ein

Gesendet von meinem SM-G950F mit Tapatalk

Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: CoolTux am 31 Oktober 2017, 08:46:42
Vielen Dank.

Wenn das dann klappt sind wir durch. Dann versuche ich nur noch den Code sauberer zu schreiben.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Gasmast3r am 31 Oktober 2017, 18:00:50

pi@Kiosk35:~ $ sudo ps aux | grep gatttool
pi       23464  0.1  0.5   4572  2548 ?        Ss   17:59   0:00 bash -c timeout 15 gatttool -b 00:1A:22:09:0F:34 -i hci0 --char-write-req --handle=0x0411 --value=43 --listen 2>&1
pi       23465  0.0  0.3   3720  1584 ?        S    17:59   0:00 timeout 15 gatttool -b 00:1A:22:09:0F:34 -i hci0 --char-write-req --handle=0x0411 --value=43 --listen
pi       23466  0.1  0.5   4280  2496 ?        S    17:59   0:00 gatttool -b 00:1A:22:09:0F:34 -i hci0 --char-write-req --handle=0x0411 --value=43 --listen
pi       23470  0.0  0.3   4364  1808 pts/0    S+   17:59   0:00 grep --color=auto gatttool
pi@Kiosk35:~ $ sudo ps aux | grep gatttool
pi       23484  0.0  0.4   4364  1916 pts/0    S+   18:00   0:00 grep --color=auto gatttool
pi@Kiosk35:~ $ sudo ps aux | grep gatttool
pi       23493  0.0  0.4   4364  1916 pts/0    S+   18:00   0:00 grep --color=auto gatttool
pi@Kiosk35:~ $



denke mal das ist ok
unter FHEM keine LOG eiträge
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: CoolTux am 02 November 2017, 09:38:29
Da bis jetzt keine Beschwerden kamen gehe ich davon aus das es nun passt.
Daher hier nun der fertige Patch
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Gasmast3r am 02 November 2017, 10:44:40
sorry das ich doof fragen muss aber wie geht das mit patch?

habe bei google nicht wirklich was gefunden
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: CoolTux am 02 November 2017, 10:46:31
Zitat von: Gasmast3r am 02 November 2017, 10:44:40
sorry das ich doof fragen muss aber wie geht das mit patch?

habe bei google nicht wirklich was gefunden

Du hast doch das pm, brauchst also den patch nicht.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Gasmast3r am 02 November 2017, 10:48:35
also habe ich so gesehen die Finale Version ?

dachte müsste den Patch einspielen
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: CoolTux am 02 November 2017, 11:00:25
Nein musst Du nicht. Du hast die Finale Version. Alles schick.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: g-dave am 03 November 2017, 12:19:20
Cool cool und vielen Dank :)!
Wird deine Ergänzung in das offizielle Paket mit aufgenommen?
Frage nur bezüglich eventueller Update-Prozeduren ;).
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: CoolTux am 03 November 2017, 12:22:54
Dominik hatte es soweit ich das verstanden habe vor. Habe ihn auch per PN benachrichtigt. Aber er ist aktuell wohl recht gut privat ausgelastet. Also etwas Geduld bitte.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Gasmast3r am 03 November 2017, 12:46:01
kleine frage kann man auch die sshHost Erweiterung so schreiben das er nur auf bestimmte Bluetooth Device zugreift ??
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: CoolTux am 03 November 2017, 12:48:20
Ist natürlich schon längst    ;D
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Gasmast3r am 03 November 2017, 12:56:38
Ok und wie
habe ein pi der lepresenced (hci1)und sshHost(hci0) arbeiten machen soll
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: g-dave am 03 November 2017, 12:58:37
Zitat von: CoolTux am 03 November 2017, 12:22:54
Dominik hatte es soweit ich das verstanden habe vor. Habe ihn auch per PN benachrichtigt. Aber er ist aktuell wohl recht gut privat ausgelastet. Also etwas Geduld bitte.
Top!
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: CoolTux am 03 November 2017, 12:59:46
Zitat von: Gasmast3r am 03 November 2017, 12:56:38
Ok und wie
habe ein pi der lepresenced (hci1)und sshHost(hci0) arbeiten machen soll

Ganz einfach so wie du es vorher auch gemacht hast. Gibt doch ein Attribut dafür soweit ich das gesehen habe.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Gasmast3r am 03 November 2017, 13:06:17
nein das modul fragt alle hci devices ab, wäre auch nicht so schlimm könnte das anders lösen.

nur wenn es gehen würde wäre natürlich cool
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: CoolTux am 03 November 2017, 13:09:39
Ach so. Ok dann muß ich mal schauen
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: CoolTux am 03 November 2017, 13:12:41
stimmt hast Recht. Da müsste dann der Dominik bitte noch mal ran wenn das gewünscht ist.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: 00hawk am 09 November 2017, 21:57:00
Hallo zusammen,

dieses Plugin hat endlich mein Haus ein wenig smarter gemacht und ich genieße es jeden Tag. Ich bin ein ziemlicher Frischling was den Pi und FHEM angeht, aber konnte alles dank diverser Anleitungen gut integrieren.

Jetzt kommt aber meine große Frage: Hat jemand schon die Thermostate mittels Homebridge-FHEM in Apples HomeKit bekommen?

Ich glaube ich habe es schon soweit verstanden, dass die Devices nicht das ansprechende Homebridge-"Format" haben. Wenn ich das so weiterdenke, müsste man eine Art Dummy erstellt, der das Thermostat für Homebridge verständlich macht oder? Hier komme ich allerdings nicht weiter. Ich habe leider keinerlei Vorstellung, wie ich hier vorgehen müsste.

Vielleicht kann mir ja jemand helfen. Danke schon mal!
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 18 November 2017, 20:50:17
Hallo zusammen,

@Cooltux, danke für den Patch. Habe diesen gerade ins SVN eingespielt.

Gruß
Dominik
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: crasher91 am 21 November 2017, 20:33:22
Hallo,

erstmal danke für das Modul. Gepaart mit VPN ist es Weltklasse von unterwegs mal einzuheizen :)

Eine Frage dazu noch: Bedient man das Thermostat manuell kann man es entweder auf "Aus" oder "Ein" stellen. Mit FHEM und der App lediglich auf 5°C und 29,5 °C.
Ist es gleichbedeutend mit "Aus" und "Ein" oder nicht? Heizt er bei 5°C noch ein?

Danke schon vorab.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Gasmast3r am 21 November 2017, 20:43:32
Zitat von: crasher91 am 21 November 2017, 20:33:22
Hallo,

erstmal danke für das Modul. Gepaart mit VPN ist es Weltklasse von unterwegs mal einzuheizen :)

Eine Frage dazu noch: Bedient man das Thermostat manuell kann man es entweder auf "Aus" oder "Ein" stellen. Mit FHEM und der App lediglich auf 5°C und 29,5 °C.
Ist es gleichbedeutend mit "Aus" und "Ein" oder nicht? Heizt er bei 5°C noch ein?

Danke schon vorab.
Hy 4.5°C ist auf dem Thermostat off

Gesendet von meinem SM-G950F mit Tapatalk

Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: crasher91 am 22 November 2017, 18:50:50
Zitat von: Gasmast3r am 21 November 2017, 20:43:32
Hy 4.5°C ist auf dem Thermostat off

Gesendet von meinem SM-G950F mit Tapatalk
Alles klar..aber wie stelle ich die 4,5° ein? Über die App komme ich max. auf 5°C runter. Bei FHEM auf 4,5°C. Der Temperaturverlauf über Zeit lässt sich ja im FHEM nicht einstellen, sondern lediglich über die Handy App.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Gasmast3r am 22 November 2017, 18:57:47
Zitat von: crasher91 am 22 November 2017, 18:50:50
Alles klar..aber wie stelle ich die 4,5° ein? Über die App komme ich max. auf 5°C runter. Bei FHEM auf 4,5°C. Der Temperaturverlauf über Zeit lässt sich ja im FHEM nicht einstellen, sondern lediglich über die Handy App.
Hy mit der app gehts auch nicht.
Habe mir ein Doif geschrieben was ist wenn temp X Drausen bei Anwesenheit oder temp über x°
Dann meine gewünschten temperaturwerte per app eingestellt und auf manuell
Zb
Temp über 12°C Thermostate off(desired temp 4,5)
Temp unter 12°C abwesend Thermostate eco
Temp unter 12°C abwesend Thermostate Comfort

Gesendet von meinem SM-G950F mit Tapatalk

Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: diver am 29 November 2017, 20:05:45
Hallo,

Danke fürs Modul. Funktioniert. Habe einen RasPi 3und nutze das onboard Bluetooth.
Einige Geräte erreiche ich jedoch nur sporadisch.
Macht es Sinn einen Bluetooth Dongle zu probieren um die Reichweite zu erhöhen?
Was ich nicht kapiere ist, ob es auch an der Reichweite der Thermostate liegt und ein Superdupper Bluetooth Dongle dann nichts bringt. USB Kabelverlängwrung scheidet aus.

Danke und Gruß Andre
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Gasmast3r am 29 November 2017, 20:09:09
Hy ja ne verlängerung bringt was dadurch kann es auch besser positionieren.
Es besteht noch die möglichkeit, das auf ein anderen Raspberry zu erweitern.


Gesendet von meinem SM-G950F mit Tapatalk

Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: CoolTux am 29 November 2017, 20:09:36
Die neuste Version sollte ssh Unterstützung haben. Du kannst also kleine Satelliten bauen.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Tomatenjoghurt am 29 November 2017, 22:01:18
Zitat von: diver am 29 November 2017, 20:05:45
Hallo,

Danke fürs Modul. Funktioniert. Habe einen RasPi 3und nutze das onboard Bluetooth.
Einige Geräte erreiche ich jedoch nur sporadisch.
Macht es Sinn einen Bluetooth Dongle zu probieren um die Reichweite zu erhöhen?
Was ich nicht kapiere ist, ob es auch an der Reichweite der Thermostate liegt und ein Superdupper Bluetooth Dongle dann nichts bringt. USB Kabelverlängwrung scheidet aus.

Danke und Gruß Andre

Das gleiche Problem hatte ich ja auch. Und da ich die Geräte so in 75% aller Fälle auch erfolgreich erreicht hatte und es bei einigen Geräten definitiv nicht an der Reichweite liegen konnte, hatte ich mich ein wenig in das Modul eingelesen.
Im Endeffekt hab ich lediglich die Anzahl der re-trys hochgeschraubt. Ich hatte bei 4 Thermostaten sonst in einer Nacht ~500 Fehlernachrichten, seitdem ich das geändert hatte, sind es 2. Die Idee hatte ich ja bereits schon einmal, jedoch ist mir dann das gattool immer in ein timeout gelaufen. Das scheint mit der neusten Version des Moduls allerdings nicht mehr zu passieren. Ich nutze jetzt seit knapp einer Woche das Modul mit 200 re-trys und bin super zufrieden.
Evtl wäre es sinnvoll ein Parameter aufzunehmen, was die Anzahl der re-trys variabel verstellen lässt; bei einigen läuft es ja anscheinend auch mit 20 re-trys bereits sehr stabil. Liegt vlt auch an der hardware...? Keine Ahnung.

Ich hänge meine Version vom Modul mal an...müsstest du dann in deiner fhem Installation in den Ordner fhem/FHEM/ (da wo auch alle anderen Modul-Dateien liegen...) kopieren. Am besten die original-Datei vorher nochmal sichern.

Viele Grüße!



Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: retikulum am 30 November 2017, 16:18:21
Moinsen.

Ist eher eine allgemeine Frage, allerdings geht es bei mir konkret um das EQ3BT-Modul:

Ich habe nun mehrere Bluetooth-Thermostate in verschiedenen Räumen. Bspw. 3 Stück im Wohnzimmer.
Nun möchte ich aber nicht jedes Thermostat einzeln schalten, sondern alle 3 gleichzeitig. Kann man hier die set-Befehle zusammenfassen und in einen Slider packen?
Das Reading der gesetzten Temperaturen und Zustände darf hierbei auch nur von einem Thermostat kommen, da ja sowieso alles gleich geschaltet wird...

Ich stehe gerade aufm Schlauch :D

Merci schonmal.

Edit: Structure-Modul? Aber hier gibts ja keine Readings... oder wie bekomme ich die da rein?
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Kawaci am 30 November 2017, 16:28:31
hey! Ich habe 3 dieser im Obergeschoss und 4 im unter Geschoss, habe diese mit Heizung OG und ug mit structure zusammen gefasst! ich kann alles schalten aber der status im slider wird nicht übertragen habe schon alles was ich gefunden habe versucht! aber ansteuern funktioniert!
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: retikulum am 30 November 2017, 17:01:58
Hab es hinbekommen. Ich weiß nicht, ob das die schönste Variante ist, aber es funktioniert :-D
Evtl. noch nen Zeilenumbruch rein. Ich bin aber zu blöd dafür...

define wohnzimmer.heizung structure room wohnzimmer.heizung.mitte wohnzimmer.heizung.couch wohnzimmer.heizung.schreibtisch
define wohnzimmer.heizung.readings notify wohnzimmer.heizung.mitte:desiredTemperature.* {my $reading=(ReadingsVal("wohnzimmer.heizung.mitte","desiredTemperature",0));;fhem ("setreading wohnzimmer.heizung desiredTemperature $reading")}


Und, wie oben in meinem Beitrag bereits beschrieben, das Reading kommt nur von einem Device (wohnzimmer.heizung.mitte). Sonst müsste man ja irgendwie nen Durchschnitt berechnen oder sowas.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: CoolTux am 30 November 2017, 17:20:21
Such Mal nach Set Magic. Damit kannst Dein Notify verkürzen und bleibst ausschließlich bei FHEM Befehlen ohne in Perl zu wechseln.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: retikulum am 30 November 2017, 17:25:47
Alles klar, schau ich mir mal an.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: CoolTux am 30 November 2017, 21:41:22

define wohnzimmer.heizung.readings notify wohnzimmer.heizung.mitte:desiredTemperature.* setreading wohnzimmer.heizung desiredTemperature [wohnzimmer.heizung.mitte:desiredTemperature]


Geht auch so
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: retikulum am 01 Dezember 2017, 12:51:38
Super, danke!  8)
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Kawaci am 01 Dezember 2017, 13:08:59
hallo hab frage zu Satelliten!
@CoolTux
ZitatDie neuste Version sollte ssh Unterstützung haben. Du kannst also kleine Satelliten bauen.

wo finde ich ein quelle für diese Satelliten bzw wie funktioniert das??
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Gasmast3r am 01 Dezember 2017, 13:14:42
https://forum.fhem.de/index.php?topic=77159.0
Da entstand das Modul

Gesendet von meinem SM-G950F mit Tapatalk

Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: mfgpcm am 01 Dezember 2017, 19:20:34
Vielen Dank erstmal für das Modul, es hat mich überhaupt erst dazu gebracht, FHEM zu installieren.

Wenn ich das richtig verstehe aktualisiert das Modul alle 60 bzw. 20 Sekunden seinen Status bzw. die System Informationen und baut jedes mal eine Bluetooth Verbindung auf.
Gibt es bereits Erfahrungen, wie sehr das auf die Batterie des Thermostats geht?
Könnte man die Update-Intervalle vielleicht konfigurierbar machen?

Vielen Dank & viele Grüße,
Peter
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Tomatenjoghurt am 02 Dezember 2017, 11:44:34
Zitat von: mfgpcm am 01 Dezember 2017, 19:20:34
Vielen Dank erstmal für das Modul, es hat mich überhaupt erst dazu gebracht, FHEM zu installieren.

Wenn ich das richtig verstehe aktualisiert das Modul alle 60 bzw. 20 Sekunden seinen Status bzw. die System Informationen und baut jedes mal eine Bluetooth Verbindung auf.
Gibt es bereits Erfahrungen, wie sehr das auf die Batterie des Thermostats geht?
Könnte man die Update-Intervalle vielleicht konfigurierbar machen?

Vielen Dank & viele Grüße,
Peter

Ich hatte mein erstes Thermostat letztes Jahr im November gekauft und musste vor einigen Wochen die Batterien wechseln. Also halten die Batterie so ca. 1 Jahr. Kommt natürlich auch darauf an, wie oft am Tag die Temperatur verstellt wird und der Stellmotor sich bewegen muss.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: RaspiRaider am 03 Dezember 2017, 21:40:58
Hallo an alle,

erst mal vielen Dank an alle Entwickler für dieses geniale Modul!!!
Ich habe Schwierigkeiten, einen großen Raum mit 2 EQ3-Thermostaten stabil zu beheizen.
Auch mit der Einstellung "Temp-Offset" komme ich nicht ans Ziel.
Ist es möglich, vom meinem ESP-basierten Temp-Sensor die gemessene Raumtemperatur
mit dem Modul PID20 zu verarbeiten und nur noch das Stellsignal zu schicken?
...so ähnlich wie es in der Raw-definition steht: setstate <Device> valvePosition <Value>
Ich würde gerne das errechnete Stellsignal in eine structure packen und es dann zu den Thermostaten
senden.

Viele Grüße aus der Oberlausitz
Heiko
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: CoolTux am 04 Dezember 2017, 06:47:48
Ich glaube nicht das man die Ventilstellung als Befehl senden kann. Lasse mich da aber gerne eines besseren belehren. Soweit mir bekannt kann man immer nur die desired-temp zur Steuerung senden und halt eben auto und manu
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: costa2 am 05 Dezember 2017, 14:02:09
Was ist denn "boost on (off)"?
Macht der Befehl denn das Ventil nicht auf und zu?

Volker
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: CoolTux am 05 Dezember 2017, 14:04:30
Ja boost macht das Ventil auf. Aber im Grunde ist es das selbe als wenn ich desired-temp 100 senden würde  ;D
Kleiner Unterschied bei Boost kann man, zu mindest bei den normalen HM Thermostaten die Dauer und die max Ventilöffnung per Registereintrag vorgeben.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: costa2 am 05 Dezember 2017, 14:13:27
Okay.
Über ein Doif könnte man demnach einen externen Temperatursensor oder einen Thermostaten zur Regelung benutzen?
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: CoolTux am 05 Dezember 2017, 14:20:00
Zitat von: costa2 am 05 Dezember 2017, 14:13:27
Okay.
Über ein Doif könnte man demnach ein externes Thermometer zur Regelung benutzen?

Es gebe sicherlich diesbezüglich Möglichkeiten. Ich würde es über eine Art Näherung versuchen. Aber da kenne ich mich nicht mit aus.
Idee. Je weiter die gewünschte Temperatur von der extern gemessenen abweicht desto höher (max 5 Grad zur intern gemessenen) die desired-temp.
Nun kann man sich ran tasten, je weniger unterschied (desired-temp zu externer temp) desto mehr nährt sich die desired-temp der intern gemessenen temp an. Bis am ende Du deine gewünschte und gemessene externe Temp erreicht hast. Muss ja mit der internen gemessenen nicht stimmen, hautpsache das ventil schließt
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: costa2 am 05 Dezember 2017, 14:26:32
So habe ich es auch gemacht.
Es entsteht aber leider ein Wärmestau wenn zum Beispiel ein Vorhang vor dem Ventil ist.
Deshalb werde ich versuchen die Regelung über ein externes Gerät zu verwirklichen.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: retikulum am 06 Dezember 2017, 14:23:11
Dann gib Rückmeldung, wenn du es geschafft hast  :)
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: McElch am 20 Dezember 2017, 15:16:35
Hallo! Erstmal Riesendank für das Modul! Läuft bei mir schon etliche Monate, die Steuerung klappt wunderbar!

Allerdings ist mein log seit einiger Zeit proppevoll mit folgender Fehlermeldung:
2017.12.20 14:06:03 1: PERL WARNING: Use of uninitialized value in array element at ./FHEM/10_EQ3BT.pm line 492.
2017.12.20 14:06:03 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/10_EQ3BT.pm line 492.


Kann leider nicht sagen seit wann, es läuft alles zu gut, deswegen schaue ich da selten rein.
Die Einträge kommen mehrmals pro Minute, deswegen ist das log echt nur noch zäh benutzbar.

Irgendwelche Fehlfunktionen habe ich nicht. Die Thermostate sind über lightscene komplett automatisiert und regeln je nach Anwesenheit und Tageszeit völlig automatisch. Auch habe ich noch eine Gruppe angelegt, um alle Thermostate mit einem Slider auf einmal einzustellen, falls das mal nötig sein sollte. Klappt alles, nur die Fehlermeldung hätte ich gern weg.

Hat jemand eine Idee? THX in advance! :)
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: g-dave am 22 Dezember 2017, 21:18:34
Hallo an die EQ3 SSH interessierten,

da ich mein FHEM gerade auf eine Proxmox VM migriere, ist mir folgendes aufgefallen: Das FHEM integrierte Backup beinhaltet den /opt/fhem/.ssh Ordner nicht. Sicherlich keine allzu große Sache, aber sollte man im echten "Desaster-Fall" einen restore machen und mehrere Satelliten haben, könnte es "müßig" sein sich alles wieder zu konfigurieren.
also auch den .ssh Ordner mal ein Backup spendieren ;)

Gruß
Dave
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Gasmast3r am 25 Dezember 2017, 17:23:57
Hy habe neuerdings diese einträge im log

) or string at ./FHEM/10_EQ3BT.pm line 527. 2017.12.25 15:58:32 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/10_EQ3BT.pm line 527. 2017.12.25 16:01:55 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/10_EQ3BT.pm line 527. 2017.12.25 16:02:07 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/10_EQ3BT.pm line 527. 2017.12.25 16:02:15 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/10_EQ3BT.pm line 527. 2017.12.25 16:02:25 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/10_EQ3BT.pm line 527. 2017.12.25 16:02:40 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/10_EQ3BT.pm line 527. 2017.12.25 16:05:37 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/10_EQ3BT.pm line 527. 2017.12.25 16:05:45 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/10_EQ3BT.pm line 527. 2017.12.25 16:06:38 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/10_EQ3BT.pm line 527. 2017.12.25 16:06:45 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/10_EQ3BT.pm line 527. 2017.12.25 16:06:52 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/10_EQ3BT.pm line 527. 2017.12.25 16:06:59 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/10_EQ3BT.pm line 527. 2017.12.25 16:07:07 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/10_EQ3BT.pm line 527.

Schreibe per tapatalk deswegen nicht über code eingegeben

Habe nur auf doe neue version geupdatet

Gesendet von meinem SM-G950F mit Tapatalk

Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dauergast am 27 Dezember 2017, 12:31:37
Zitat von: 00hawk am 09 November 2017, 21:57:00
[...]
Jetzt kommt aber meine große Frage: Hat jemand schon die Thermostate mittels Homebridge-FHEM in Apples HomeKit bekommen?
[...]

Vielleicht hilft es 00hawk noch, ansonsten eventuell für Leute interessant, die per Google hierauf stoßen:

Die Einbindung der EQ3BT Thermostate in Homekit ist relativ simpel. Zuerst das Thermostat in den entsprechenden Homekit "Raum" aufnehmen. Dann passendes genericDeviceType setzen mit
attr NAME-DES-BT-THERMOSTATS genericDeviceType thermostat
Dann homebridgeMapping auf passende Werte setzen mit
attr NAME-DES-BT-THERMOSTATS homebridgeMapping TargetTemperature=desiredTemperature::desiredTemperature,minValue=4.5,maxValue=29.5,minStep=0.5,nocache=1

Funktioniert so bei mir wunderbar!  :)

P.S.: Vielen Dank an dieser Stelle an Dominik für das tolle EQ3BT FHEM Modul! Super Arbeit!
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: cqwer am 06 Januar 2018, 15:43:51
Zitat von: Gasmast3r am 25 Dezember 2017, 17:23:57
Hy habe neuerdings diese einträge im log

) or string at ./FHEM/10_EQ3BT.pm line 527. 2017.12.25 15:58:32 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/10_EQ3BT.pm line 527. 2017.12.25 16:01:55 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/10_EQ3BT.pm line 527. 2017.12.25 16:02:07 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/10_EQ3BT.pm line 527. 2017.12.25 16:02:15 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/10_EQ3BT.pm line 527. 2017.12.25 16:02:25 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/10_EQ3BT.pm line 527. 2017.12.25 16:02:40 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/10_EQ3BT.pm line 527. 2017.12.25 16:05:37 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/10_EQ3BT.pm line 527. 2017.12.25 16:05:45 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/10_EQ3BT.pm line 527. 2017.12.25 16:06:38 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/10_EQ3BT.pm line 527. 2017.12.25 16:06:45 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/10_EQ3BT.pm line 527. 2017.12.25 16:06:52 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/10_EQ3BT.pm line 527. 2017.12.25 16:06:59 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/10_EQ3BT.pm line 527. 2017.12.25 16:07:07 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/10_EQ3BT.pm line 527.


Hallo zusammen :)
Ich habe gerade meine erste FHEM einrichtung hier am laufen, aber ebenfalls das oben genannte Problem.
Ich habe vier Thermostate an meinem Raspberry pi angeschlossen, eins davon ist vermutlich zu weit entfernt, deshalb geht das nur recht schlecht. die anderen drei arbeiten zuverlässig.
Die Fehlermeldung hier kam aber auch schon bevor ich das vierte installiert habe. Gibt es hierfür eine Lösung? Mit der Suchfunktion habe ich außer dem zitierten Beitrag nichts ähnliches gefunden.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 08 Januar 2018, 21:05:42
Kannst du bitte mit verbose 5 ein Log posten? Der Fehler sieht so aus, als ob kein Bluetooth Device mehr gefunden werden konnte. Gib in so einem Fall mal "hcitool dev" in der Linux Konsole ein und poste die Ausgabe.

Für alle die Google Home über ghome-fhem (https://github.com/yanniks/ghome-fhem) nutzen, hier das nötige homebridgeMapping für das Thermostat:
CurrentTemperature=desiredTemperature
TargetTemperature=desiredTemperature::desiredTemperature,minValue=4.5,maxValue=29.5,minStep=0.5,nocache=1
ValvePosition=valvePosition
CurrentRelativeHumidity=0
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: cqwer am 13 Januar 2018, 22:28:22
(blöde authentifizierung, jetzt darf ich nochmal tippen weil ich die vergessen habe  >:( )

Ich habe das Problem gefunden, die schlafzimmerwand blockt komplett den Bluetoothverkehr. Auch mit dem Smartphone hab ich außerhalb vom Schlafzimmer keine Verbindung zum Thermostat.
Habe mir jetzt mit einem langen USB kabel und bluetoothdongle direkt an der Wand beholfen, so gibts keine Fehlermeldungen mehr
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: InTeNsO am 15 Januar 2018, 19:47:28
Ist das normal das "valvePosition" entweder 0 oder 100 ist? Bisher konnte ich noch keine Zahl dazwischen sehen.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: g-dave am 15 Januar 2018, 21:50:17
Zitat von: InTeNsO am 15 Januar 2018, 19:47:28
Ist das normal das "valvePosition" entweder 0 oder 100 ist? Bisher konnte ich noch keine Zahl dazwischen sehen.
Hi,

gerade mal in einen gplot geladen, die valvePosition ändert sich bei mir auch auf andere Werte unterhalb von 100.
Sehe ich aber auch eher am Nachmittag, in meiner "morgendlichen kurzen Super-Heizperiode" is auch nur der Wert 100 zu sehen ;).
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: CoolTux am 17 Januar 2018, 21:00:23
Der Markus (drcyber) war so lieb und hat mir eines seiner 4 zu verkaufenden Thermostate gespendet. Somit kann ich aktiv an der Weiterentwicklung mitwirken.
Vielen Dank noch mal an Markus. Er hat somit also noch 3 zu verkaufen. Wer will einfach bei ihm melden.



Grüße
Leon
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Gasmast3r am 18 Januar 2018, 05:24:39
Hy hatte gestern mal geschafft zu schauen, also ich habe werte bei valvePosition

(valvePosition

24

2018-01-18 05:19:46

)

Das mit dem Ssh funktioniert nicht sauber, nach 1-2 tagen ist der SSh pi mit getttool Prozessen überlaufen das nur noch ein Hard reset hilft.

Egal ob der nur für SSh oder auch zusätzlich für andere sachen da ist.

Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: CoolTux am 18 Januar 2018, 05:41:18
Das mit dem ssh schaue ich mir an.
Bin eh dabei ein Modul für anderes BT Thermostat zu entwickeln, da kann ich mir die Logik in Ruhe von vorne anschauen.


Grüße
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Gasmast3r am 18 Januar 2018, 12:31:05
Das wäre super.
Hab zwar nun ein I386 Pc mit 3 Bluetooth sticks aber 1-2 Thermostate wollen nicht so gut klappen.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: g-dave am 18 Januar 2018, 13:23:03
Zitat von: Gasmast3r am 18 Januar 2018, 12:31:05
Das wäre super.
Hab zwar nun ein I386 Pc mit 3 Bluetooth sticks aber 1-2 Thermostate wollen nicht so gut klappen.
<lustig>
Wohl eher ein x86 PC :-D.
Würde mich Wunder wenn ein i386 schon USB unterstützt ;).
</lustig>
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Gasmast3r am 18 Januar 2018, 13:31:16
Zitat von: g-dave am 18 Januar 2018, 13:23:03
<lustig>
Wohl eher ein x86 PC :-D.
Würde mich Wunder wenn ein i386 schon USB unterstützt ;).
</lustig>
[emoji29]
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: CoolTux am 27 Januar 2018, 22:06:14
Zitat von: Gasmast3r am 18 Januar 2018, 05:24:39
Hy hatte gestern mal geschafft zu schauen, also ich habe werte bei valvePosition

(valvePosition

24

2018-01-18 05:19:46

)

Das mit dem Ssh funktioniert nicht sauber, nach 1-2 tagen ist der SSh pi mit getttool Prozessen überlaufen das nur noch ein Hard reset hilft.

Egal ob der nur für SSh oder auch zusätzlich für andere sachen da ist.

Ich habe einen Logikfehler in der SSH Implementierung gefunden. Bitte einmal angehängte Version testen
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Gasmast3r am 27 Januar 2018, 22:20:02
Jupp teste ich und gebe die tage Report
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: CoolTux am 27 Januar 2018, 22:21:45
Mach aber bitte Mal ein reload und kein Neustart. Sichere die aktuelle Datei bitte weg. Bin nicht zum testen der Änderung gekommen. Kann sein das ich ein Syntaxfehler oder so drin habe. Kann man nie ausschließen.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Gasmast3r am 27 Januar 2018, 22:23:59
Das sowieso, kenne ich ja noch vom anfang ;)
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: g-dave am 27 Januar 2018, 23:26:16
Kann mich erst einmal nicht mehr beim Testen beteiligen, aufgrund einer drastischen Hardware-Minimierung im ganzen Haus, musste auch der Satelliten-Pi weichen, 10 Meter USB-Verlängerung erledigt den job jetzt ;).
Dennoch danke für das bugfixing!!!

Gruß
Dave
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Gasmast3r am 27 Januar 2018, 23:54:35

sh: 1: Syntax error: Unterminated quoted string
sh: 1: Syntax error: Unterminated quoted string
sh: 1: Syntax error: Unterminated quoted string
sh: 1: Syntax error: Unterminated quoted string
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: CoolTux am 28 Januar 2018, 00:56:22
Na da muss ich wohl noch mal ganz genau schauen. Danke Dir
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: IT-Fuzzi am 07 Februar 2018, 19:29:58
Hallo,

zunächst einmal vielen Dank für dieses super Modul und die ganze Arbeit damit!!! Das war für mich der Grund zum Einstieg in FHEM und seitdem bin ich süchtig ;D
Ein, zwei Fragen bzw. Anregungen hätte ich jedoch.

Mir ist aufgefallen, dass durch
Set <thermostat> updateStatus
ein weiterer "Updateprozess" gestartet wird, der ebenfalls alle 3 min neu ausgelöst wird. Eventuell dadurch, dass hier die gleiche Methode verwendet wird wie beim automatischen Update bzw. diese sich am Ende wieder selbst aufruft?! Meiner Meinung wäre das noch ein kleiner Fehler im Modul.
Hier setzt auch direkt eine weitere Frage an. Wäre es möglich diesen Timer direkt im FHEM zu ändern bzw. komplett zu deaktivieren, wohl wissend dass dann der anzeigte Status in FHEM von der Realität abweichen kann? Derzeit sind im Modul ja ~ 3 min eingestellt, bzw. wenn ich das richtig lese 140 Sek + rand(60)?

HomebridgeMapping funktioniert bei mir auch super, jedoch kann ich die Temperatur auf meinem iOS Device lediglich in ganzen Schritten ändern nicht 0,5 Schritten. Ist das normal?
TargetTemperature=desiredTemperature::desiredTemperature,minValue=10,maxValue=25,minStep=0.5,nocache=1

Viele Grüße und Dank nochmal  :) :) :)
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dauergast am 13 Februar 2018, 13:05:05
Zitat von: IT-Fuzzi am 07 Februar 2018, 19:29:58
[...]
HomebridgeMapping funktioniert bei mir auch super, jedoch kann ich die Temperatur auf meinem iOS Device lediglich in ganzen Schritten ändern nicht 0,5 Schritten. Ist das normal?
TargetTemperature=desiredTemperature::desiredTemperature,minValue=10,maxValue=25,minStep=0.5,nocache=1

Viele Grüße und Dank nochmal  :) :) :)

Nein, das ist nicht normal! Bei mir funktioniert es in 0,5 Schritten, so wie durch den Parameter "minStep=0.5" festgelegt.
Vielleicht liegt es bei Dir daran, dass Du eine falsche Temperatur-Range (10°C - 25°C) vorgibst. Die richtigen und zumindest bei mir funktionierenden Werte sind:
TargetTemperature=desiredTemperature::desiredTemperature,minValue=4.5,maxValue=29.5,minStep=0.5,nocache=1
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 20 Februar 2018, 03:52:05
Moin!  ;)
Super Modul funktiniert 1A bisher  8)

Ich hatte ursprünglich gar nicht geschaut, ob es eines gibt in FHEM und hätte es hier mit realisiert: https://github.com/Heckie75/eQ-3-radiator-thermostat (https://github.com/Heckie75/eQ-3-radiator-thermostat)

Dort hatte ich gesehen, kann man auch die Sperre nutzen damit das Ventil nur noch auf die extene Steuerung reagiert.
Könnte man das ggf. hier noch einbauen? Ein stück was von "childlock" steht ja schon im Code :-) Habe es mal probiert mittels "set ThermostatName childlock on" tat sich nix *g*

Lock:
https://github.com/Heckie75/eQ-3-radiator-thermostat/blob/master/eq-3-radiator-thermostat-api.md#lock-thermostat
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 20 Februar 2018, 15:21:23
Mhh ich hab gerade irgendwie das Problem, dass trotz Neustart des sshHosts und der FHEM Einheit bekomme ich nur noch Fehler in

errorCount-setDesiredTemperature
errorCount-updateStatus
errorCount-updateSystemInformation


Und es wird auch nicht mehr übernommen was am Thermostat eingestellt wird oder aber übernommen was ich in FHEM einstelle.

O_o generell empfang eich aber am sshHost das Thermostat weiterhin mit bluetoothctl  - muss ich nun doch mal pairen? ^^

Wenn ich mir den Status vom FHEM Service ansehe sehe ich das hier:

           ├─8239 sh -c timeout 15 ssh ZeroW 'gatttool -b 00:1A:22:0C:18:D4 -i hci0 --char-write-req --handle=0x0411 --value=031202140F21 --listen 2>&1'
           ├─8240 timeout 15 ssh ZeroW gatttool -b 00:1A:22:0C:18:D4 -i hci0 --char-write-req --handle=0x0411 --value=031202140F21 --listen 2>&1
           ├─8241 ssh ZeroW gatttool -b 00:1A:22:0C:18:D4 -i hci0 --char-write-req --handle=0x0411 --value=031202140F21 --listen 2>&1


Ist es richtig, dass er 3 parallel auf macht? Oder liegt da schon das Problem? (Das ist der Zustand nach Neustart beider Geräte - Pi3 mit FHEM und Pi ZeroW als sshHost)
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: CoolTux am 20 Februar 2018, 15:39:28
Ging es denn mit SSH schon mal?
Es gibt noch einen Bug in der SSH Umsetzung. Dieser sollte sich aber eher selten und anders zeigen. Leider komme ich aktuell nicht dazu den zu beseitigen.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 20 Februar 2018, 15:42:29
Ja ich habe es gestern nur mit SSH eingerichtet.

Anders ist für mich nicht machbar Option, da am Pi3 schon ein FlicButton dran ist :-D Und der Device damit zu ist.
Lief auch gut. Heute morgen war aber einmal irgendwie ein Auflauf von gatttools offen. Daher Reboot der beiden Instanzen.

Noch die Logeinträge:
Zitat2018.02.20 12:40:23 5: EQ3BT (Wohnzimmer_Thermostat): ssh ZeroW 'gatttool -b XX:XX:XX:XX:XX:XX -i hci0 --char-write-req --handle=0x0411 --value=4128 2>&1'
2018.02.20 12:40:23 4: EQ3BT (Wohnzimmer_Thermostat): gatttool result: connect: Device or resource busy (16)
2018.02.20 12:40:23 5: EQ3BT (Wohnzimmer_Thermostat): gatttool return string: Wohnzimmer_Thermostat|00:1A:22:0C:18:D4|error|setDesiredTemperature|0x0411|4128|setDesiredTemperature failed
2018.02.20 12:40:23 4: EQ3BT (Wohnzimmer_Thermostat): setDesiredTemperature failed (0x0411, 4128, setDesiredTemperature failed)
2018.02.20 12:40:27 5: EQ3BT (Wohnzimmer_Thermostat): timeout 15 ssh ZeroW 'gatttool -b XX:XX:XX:XX:XX:XX -i hci0 --char-write-req --handle=0x0411 --value=031202140C28 --listen 2>&1'
2018.02.20 12:40:30 5: EQ3BT (Wohnzimmer_Thermostat): another gatttool process is running. waiting...
2018.02.20 12:40:31 5: EQ3BT (Wohnzimmer_Thermostat): another gatttool process is running. waiting...
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 20 Februar 2018, 19:20:16
Ich vermute gerade folgendes:

Ich starte auf dem Raspi3, dass die Haupteinheit in meinem Aufbau ist, nach dem Start einen FlicServer - dieser verwendet den internen Bluetooth Stack so, dass dieser nicht mehr für anderes zur Verfügung steht.
Dieser Start dauert aber und ich könnte mir vorstellen, dass hier das Problem liegt und FHEM da zwischen prescht mit dem Versuch das Interface zu nutzen für das Thermostat.

Denn der FlicButton geht gerade auch nicht sauber :-D *EDIT* Korrigiere, dass lag an was anderem.

Tja was auch immer ich tu:

- device neu angelegt
- alles mehrfach neu gestartet (auch das Thermostat)

Es will nun irgendwie gar nicht mehr.

EDIT  :) ;) So also es läuft wieder... mal sehen ob dieses mal Stabil ^^ ansonsten kommt morgen noch ein weiteres Pi3  zum testen.


Das hier wäre der Befehl zum Locken/Deaktiveren der Tasten am Thermostat:
gatttool -b XX:XX:XX:XX:XX:XX -i hci0 --char-write-req --handle=0x0411 --value=8001

Und das hier zum Unocken/Aktivieren:
gatttool -b XX:XX:XX:XX:XX:XX -i hci0 --char-write-req --handle=0x0411 --value=8000


Wenn ich nun wüsste wo ich den einsetzen muss im Modul wäre er drin *g* (Kindersicherung wäre fein).

Interessanterweise öffnet er aber sobald mal eine Aktion nicht klappt einfach mal immer wieder noch eine Instanz von gatttool - soll das so sein? Hatte nun heute morgen richtig viele und jetzt eben 9 Stück.
Block sich das nicht gegenseitig? Macht es hier nicht Sinn, da eh nur eine Instanz auf einem BT-Stack arbeiten kann die Dinge nacheinander ab zu arbeiten, also erst wenn ein failed oder sonstiges zurück kam daraufhin einen neuen Versuch zu unternehmen?
Zitatgatttool result: connect: Device or resource busy (16)

Kaum haue ich da mit sudo killall gatttool rein kommt:
Zitatgatttool result: Characteristic value was written successfully

Wäre es  ggf. auch sinnvoll den Errorcount für jede Aktion wieder zu nullen wenn die Aktion erfolgreich war? :-) Dann könnte man noch einbauen, dass das Device auf ERROR geht wenn wirklich mal sagen wir 40 Fehler in einem Counter aufgelaufen sind, dann würde der User das mitbekommen (Batterie leer, Empfang nicht mehr gegeben oder oder).


Zitat von: IT-Fuzzi am 07 Februar 2018, 19:29:58
Wäre es möglich diesen Timer direkt im FHEM zu ändern bzw. komplett zu deaktivieren, wohl wissend dass dann der anzeigte Status in FHEM von der Realität abweichen kann? Derzeit sind im Modul ja ~ 3 min eingestellt, bzw. wenn ich das richtig lese 140 Sek + rand(60)?

Ich sehe das ähnlich, da es hier keine IST Temperatur gibt und geben wird. Kann man ein dauerhaftes Updaten beschränken auf alle 30 Minuten oder jede Stunde (oder alle 2) oder auf einen in FHEM gesetzten Wert (für den Batteriestand sinnvoll denke ich).
Das würde zum einen die Steuerung einfacher machen, die sich aktuell selber blockiert durch die Updates mittels gatttool die parallel passieren.

Und ich hätte noch diese Log-Meldung:
PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/10_EQ3BT.pm line 492.


:-) Generell bitte nicht falsch verstehen ich finde es mega, dass dieses Modul exisitert. Vielen Dank für jede Minute der Arbeit die hinein floss!
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 21 Februar 2018, 11:33:00
 ;) Also weil ich jetzt einfach ganz dreißt einen CronJob angelegt habe der alle 5 Minuten jegliche gatttool instanzen killt läuft es echt gut :-D

Da haben wir noch Arbeit zu leisten, dass das Modul nicht jede Menge instanzen startet (tut es auch ohne Fehler als Ursache).
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: CoolTux am 21 Februar 2018, 12:43:42
Zitat von: Master_Nick am 21 Februar 2018, 11:33:00
;) Also weil ich jetzt einfach ganz dreißt einen CronJob angelegt habe der alle 5 Minuten jegliche gatttool instanzen killt läuft es echt gut :-D

Da haben wir noch Arbeit zu leisten, dass das Modul nicht jede Menge instanzen startet (tut es auch ohne Fehler als Ursache).

Diese Zombis kommen nur bei ssh. Ich kenne kenne den Fehler und weiß was geändert werden muss. Ich komme nur einfach aktuell nicht dazu. Leider  :'(
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 21 Februar 2018, 12:45:52
Dann teile doch mal dein Wissen, dann schau ich mal, ob ich es machen könnte oder ob es uber ist :-D 8)
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: CoolTux am 21 Februar 2018, 13:12:05
Im Grunde gibt es die Probleme mur wenn --listen verwendet wird. Im zuge dessen kommt der Befehl timeout zum tragen.
Beim zusammensetzen ist mir aber ein Fehler unterlaufen. Das timeout wird momentan als erster Befehl genommen, das ist aber falsch

timeout 15 ssh bla bla

Damit killt er ja die ssh Verbindung nach 15s, richtig wäre

ssh 'timeout 15 'gatttool bla bla

Damit das gatttool nach 15s gekillt wird.

if( $sshHost ne 'none' ) {
            $cmd = "ssh $sshHost 'gatttool -b $mac -i $hciDevice --char-write-req --handle=$handle --value=$value";
        } else {
            $cmd = "gatttool -b $mac -i $hciDevice --char-write-req --handle=$handle --value=$value";
        }
       
        if(defined($listen) && $listen eq "listen") {
            $cmd = "timeout ".AttrVal($name, "timeout", 15)." ".$cmd." --listen";
        }



Der Befehl muß also anders zusammen gesetzt werden.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 21 Februar 2018, 13:31:07
Das klingt easy. :-)

Ich versuche mich
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 22 Februar 2018, 13:48:28
Wollte mich nachher mit befassen, kann es sein, dass die "ps -A" Geschichte für gatttool über SSH gar nicht ausgeführt wird?

Habe nun aktuell 2 Thermostate in Betrieb - eines wird partout nicht ausgelesen.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: CoolTux am 22 Februar 2018, 14:07:21
welche ps -A, da sollte kein ps -A sein.
Oder meinst
qx(ps ax| grep -E \'gatttool

Ja das funktioniert nicht bei ssh, also nicht wie es im Modul gemacht wurde. Man müsste das alles mal sauber umschreiben.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 22 Februar 2018, 14:11:39
Genau das meinte ich.

Ja wäre ja über ssh machbar mit einem pidof gatttool und dann nix tun solange das ergebnis true (also etwas zurück kommt) ist.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: CoolTux am 22 Februar 2018, 14:36:34

while($wait) {
       
            my $grepGatttool;
            $grepGatttool = qx(ps ax| grep -E \'gatttool -i $hci -b $mac\' | grep -v grep) if($sshHost eq 'none');
            $grepGatttool = qx(ssh $sshHost 'ps ax| grep -E "gatttool -i $hci -b $mac" | grep -v grep') if($sshHost ne 'none');

            if(not $grepGatttool =~ /^\s*$/) {
                Log3 $name, 3, "($name) - ExecGatttool_Run: another gatttool process is running. waiting...";
                sleep(1);
            } else {
                $wait = 0;
            }
        }


Finde ich persönlich am saubersten
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 22 Februar 2018, 14:42:58
Hehe  ;) da baut er mal eben ne Zeile Code... (*testing*)
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 22 Februar 2018, 15:00:02
Was war denn dein Gedanke was $hci beinhaltet?
Den gibt es so in dem Moment an der Stelle wohl noch nicht.
Weiter unten gibt es $hciDevice (der ist aber nicht global wie es scheint)

So Modul "lädt" immerhin nach diversen Versuchen wo es nicht lud wieder:

sub EQ3BT_execGatttool($) {
#   ZUSATZ
    my ($hash) = @_;
    EQ3BT_updateHciDevicelist($hash);
#   ORIGINAL
    my ($string) = @_;
    my ($name, $mac, $workType, $handle, $value, $listen) = split("\\|", $string);
my $hciDevice = "hci".$hash->{helper}{hcidevices}[$hash->{helper}{currenthcidevice}];
    my $wait = 1;
    my $hash = $main::defs{$name};
   
    my $gatttool = qx(which gatttool);
    chomp $gatttool;
   
    if(-x $gatttool) {
        my $gtResult;
        my $cmd;
        my $sshHost     = AttrVal($name,"sshHost","none");
       
while($wait) {
       
            my $grepGatttool;
            $grepGatttool = qx(ps ax| grep -E \'gatttool -i $hciDevice -b $mac\' | grep -v grep) if($sshHost eq 'none');
            $grepGatttool = qx(ssh $sshHost 'ps ax| grep -E "gatttool -i $hcidevices -b $mac" | grep -v grep') if($sshHost ne 'none');

            if(not $grepGatttool =~ /^\s*$/) {
                Log3 $name, 3, "($name) - ExecGatttool_Run: another gatttool process is running. waiting...";
                sleep(1);
            } else {
                $wait = 0;
            }
        }



Er meckert nun aber an:
Zitat
(bluetoothctl:26942): GLib-CRITICAL **: Source ID 20 was not found when attempting to remove it

(bluetoothctl:26944): GLib-CRITICAL **: Source ID 21 was not found when attempting to remove it
Can't use string ("Arbeitszimmer_Thermostat|00:1A:2"...) as a HASH ref while "strict refs" in use at ./FHEM/10_EQ3BT.pm line 200.
Can't use string ("Wohnzimmer_Thermostat|00:1A:22:0"...) as a HASH ref while "strict refs" in use at ./FHEM/10_EQ3BT.pm line 200.

Denke mal der inhalt von $hciDevice ist nicht was du in $hci haben wolltest - ich tippe auf "hci"/"hci0" etc.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: CoolTux am 22 Februar 2018, 15:57:24

sub EQ3BT_execGatttool($) {
    my ($string) = @_;
    my ($name, $mac, $workType, $handle, $value, $listen) = split("\\|", $string);
    my $hash = $main::defs{$name};
   
    my $gatttool = qx(which gatttool);
    chomp $gatttool;
   
    if(-x $gatttool) {
        my $gtResult;
        my $cmd;
        my $wait = 1;
        my $sshHost     = AttrVal($name,"sshHost","none");

        while($wait) {
       
            my $grepGatttool;
            $grepGatttool = qx(ps ax| grep -E \'gatttool -b $mac\' | grep -v grep) if($sshHost eq 'none');
            $grepGatttool = qx(ssh $sshHost 'ps ax| grep -E "gatttool -b $mac" | grep -v grep') if($sshHost ne 'none');

            if(not $grepGatttool =~ /^\s*$/) {
                Log3 $name, 3, "($name) - ExecGatttool_Run: another gatttool process is running. waiting...";
                sleep(1);
            } else {
                $wait = 0;
            }
        }
     ............
...................


Das hci ist erstmal unwichtig. Hauptsache er erkennt das ein gatttool Proßess läuft
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 22 Februar 2018, 17:07:15
Sieht sehr sexy aus!
Und läuft bisher sauber durch


Ein gatttool pro Thermostat - das ist aber auch dem geschuldet, dass ich den andern Umbau noch machen muss ^^

Ich schaue mal, ob ich das "childlock" und ggf noch einiges andere eingebaut bekomme.
Und würde es dann einmal hier anfügen
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 23 Februar 2018, 01:24:54
 :) ;) ;D

Ich denke ich habe das mit dem Timeout hinbekommen und dein ps -ax läuft auch wunderbar bisher.
Mal schauen ob sich noch was auftut über Nacht.  8)

Ist es eigentlich gewollt, dass EQ3BT_killGatttool leer ist?
sub EQ3BT_killGatttool($) {

}


Um weiter bauen zu können muss ich mal etwas verstehen  :D
Ich schaue mir die genrell Vorgehensweise an und will z.b. einbauen, dass beim schalten von ecoMode dieser auch an geht bei mir (Reading 1) ebenso beim Comfort.

Was ist im folgenden das "(hex($value) - 0x4500);"?

sub EQ3BT_setBoostSuccessful {
    my ($hash, $handle, $value) = @_;
    my $val = (hex($value) - 0x4500);
    readingsSingleUpdate($hash, "boost", $val, 1);
    return undef;
}




Der Einfachkeit halber hier die gesamte geänderte sub EQ3BT_execGatttool:

sub EQ3BT_execGatttool($) {
    my ($string) = @_;
    my ($name, $mac, $workType, $handle, $value, $listen) = split("\\|", $string);
    my $hash = $main::defs{$name};
   
    my $gatttool = qx(which gatttool);
    chomp $gatttool;
   
    if(-x $gatttool) {
        my $gtResult;
        my $cmd;
my $sshcmd;
my $sshcmd2;
        my $wait = 1;
        my $sshHost     = AttrVal($name,"sshHost","none");

        while($wait) {
       
            my $grepGatttool;
            $grepGatttool = qx(ps ax| grep -E \'gatttool -b $mac\' | grep -v grep) if($sshHost eq 'none');
            $grepGatttool = qx(ssh $sshHost 'ps ax| grep -E "gatttool -b $mac" | grep -v grep') if($sshHost ne 'none');

            if(not $grepGatttool =~ /^\s*$/) {
                Log3 $name, 3, "($name) - ExecGatttool_Run: another gatttool process is running. waiting...";
                sleep(1);
            } else {
                $wait = 0;
            }
        }

        if($value eq "03") {
            my ($sec, $min, $hour, $mday, $mon, $year, $wday, $yday, $isdst) = localtime(time);
            my $currentDate = sprintf("%02X%02X%02X%02X%02X", $year+1900-2000, $mon+1, $mday, $hour, $min);
            $value .= $currentDate;
        }

        my $hciDevice = "hci".$hash->{helper}{hcidevices}[$hash->{helper}{currenthcidevice}];
        $sshcmd = "ssh $sshHost";
        #my $cmd = "gatttool -b $mac -i $hciDevice --char-write-req --handle=$handle --value=$value";
        if( $sshHost ne 'none' ) {
            $cmd = "".$sshcmd." 'gatttool -b $mac -i $hciDevice --char-write-req --handle=$handle --value=$value";
            $sshcmd2 = "'gatttool -b $mac -i $hciDevice --char-write-req --handle=$handle --value=$value";
        } else {
            $cmd = "gatttool -b $mac -i $hciDevice --char-write-req --handle=$handle --value=$value";
        }
       
        if(defined($listen) && $listen eq "listen" && $sshHost ne 'none') {
            $cmd = "".$sshcmd." timeout ".AttrVal($name, "timeout", 15)." ".$sshcmd2." --listen";
        } else {
    $cmd = "timeout ".AttrVal($name, "timeout", 15)." ".$cmd." --listen";
}

        #redirect stderr to stdout
        if( $sshHost ne 'none' ) {
            $cmd .= " 2>&1'";
        } else {
            $cmd .= " 2>&1";
        }

        Log3 $name, 5, "EQ3BT ($name): $cmd";
        $gtResult = qx($cmd);
        chomp $gtResult;
        my @gtResultArr = split("\n", $gtResult);
        Log3 $name, 4, "EQ3BT ($name): gatttool result: ".join(",", @gtResultArr);
        if(defined($gtResultArr[0]) && $gtResultArr[0] eq "Characteristic value was written successfully") {
            #read notification
            if(defined($gtResultArr[1]) && $gtResultArr[1] =~ /Notification handle = 0x0421 value: (.*)/) {
                return "$name|$mac|ok|$workType|$handle|$value|$1";
            } else {
                if(defined($listen) && $listen eq "listen") {
                    return "$name|$mac|error|$workType|$handle|$value|notification missing";
                } else {
                    return "$name|$mac|ok|$workType|$handle|$value";
                }
            }
        } else {
            return "$name|$mac|error|$workType|$handle|$value|$workType failed";
        }
    } else {
        return "$name|$mac|error|$workType|$handle|$value|no gatttool binary found. Please check if bluez-package is properly installed";
    }
}


Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: CoolTux am 23 Februar 2018, 07:59:23
Guten Morgen,

Bitte nicht falsch verstehen, Dein Code ist sicherlich funktional. Ich versuche nur auch immer etwas Übersicht rein zu bringen. Auf Basis Deines Codes habe ich in 2 Minuten eine bessere Übersicht gezaubert.
Leider ungetestet. Wenn es ok für Dich ist, würdest Du ihn bitte testen? Ich selbst kann gerade nicht, da ich ein anderes BT Thermostat aktuell dran habe zum entwickeln.
Vielen Dank für Deine super Vorarbeit.




sub EQ3BT_execGatttool($) {
    my ($string) = @_;
    my ($name, $mac, $workType, $handle, $value, $listen) = split("\\|", $string);
   
    my $hash            = $main::defs{$name};
   
    my $gatttool        = qx(which gatttool);
    chomp $gatttool;
   
    if(-x $gatttool) {
        my $gtResult;
        my $cmd;
        my $wait        = 1;
        my $sshHost     = AttrVal($name,"sshHost","none");
        my $hciDevice   = "hci".$hash->{helper}{hcidevices}[$hash->{helper}{currenthcidevice}];
       
       
        while($wait) {
       
            my $grepGatttool;
            $grepGatttool   = qx(ps ax| grep -E \'gatttool -i $hciDevice -b $mac\' | grep -v grep) if($sshHost eq 'none');
            $grepGatttool   = qx(ssh $sshHost 'ps ax| grep -E "gatttool -i $hciDevice -b $mac" | grep -v grep') if($sshHost ne 'none');

            if(not $grepGatttool =~ /^\s*$/) {
                Log3 $name, 3, "XiaomiBTLESens ($name) - ExecGatttool_Run: another gatttool process is running. waiting...";
                sleep(1);
            } else {
                $wait = 0;
            }
        }

        if($value eq "03") {
            my ($sec, $min, $hour, $mday, $mon, $year, $wday, $yday, $isdst) = localtime(time);
            my $currentDate = sprintf("%02X%02X%02X%02X%02X", $year+1900-2000, $mon+1, $mday, $hour, $min);
            $value .= $currentDate;
        }
       
        $cmd    = "ssh $sshHost '" if($sshHost ne 'none');
        $cmd    .= "timeout 15 " if(defined($listen) && $listen eq "listen");
        $cmd    .= "gatttool -i $hci -b $mac ";
        $cmd    .= "--char-write-req -a $handle -n $value";
        $cmd    .= " --listen" if($listen);
        $cmd    .= " 2>&1 /dev/null";
        $cmd    .= "'" if($sshHost ne 'none');

        Log3 $name, 5, "EQ3BT ($name): $cmd";
        $gtResult = qx($cmd);
        chomp $gtResult;
        my @gtResultArr = split("\n", $gtResult);
        Log3 $name, 4, "EQ3BT ($name): gatttool result: ".join(",", @gtResultArr);
        if(defined($gtResultArr[0]) && $gtResultArr[0] eq "Characteristic value was written successfully") {
            #read notification
            if(defined($gtResultArr[1]) && $gtResultArr[1] =~ /Notification handle = 0x0421 value: (.*)/) {
                return "$name|$mac|ok|$workType|$handle|$value|$1";
            } else {
                if(defined($listen) && $listen eq "listen") {
                    return "$name|$mac|error|$workType|$handle|$value|notification missing";
                } else {
                    return "$name|$mac|ok|$workType|$handle|$value";
                }
            }
        } else {
            return "$name|$mac|error|$workType|$handle|$value|$workType failed";
        }
    } else {
        return "$name|$mac|error|$workType|$handle|$value|no gatttool binary found. Please check if bluez-package is properly installed";
    }
}


Einen kleinen Schöhnheitsfehler gibt es allerdings noch. Der Test ob gatttool installiert und ausführbar ist funktioniert nicht auf dem SSH Host. Man kann es zwar so machen das er auch auf dem SSH Host den which macht, aber der eigentliche Test ob ausführbar -x $gatttool geht dann leider nicht mehr.




Was die leeren Funktionen an geht, von denen es so einige gibt müssten wir mal den Markus fragen was genau er da machen wollte. Wenn wir das ganze jetzt so ändern sollte es kein hängendes gatttool geben, da der BlockingKill Prozess (aus dem Modul Blocking.pm) das für uns machen sollte.



Die ganzen Successful Routinen scheinen nicht implementiert zu sein.

my $val = (hex($value) - 0x4500);


Das korrekte val ergibt sich aus dem hex von $value minus 0x4500.
Was und wieso kann ich nicht sagen.




Grüße
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 23 Februar 2018, 13:59:20
 ;) :D Alles gut!  8)
Ich bin Softwaretester kein Entwickler. Daher ist mein Code eher das, was er machen soll, statt wartbar oder sinnvoll strukturiert :-D
Finde ich es super, wenn du was verbesserst. War auch mein erstes mal in einem FHEM Modul *g*.
Ich werde es morgen testen.

Ich habe aktuell noch festgestellt, dass wohl für ein Thermostat das alles super klappt und ich habe gatttoool bisher immer nur mit timeout 15 für dieses Thermostat gesehen. Für das andere Thermostat sehe ich es häufig ohne timeout 15. Ich glaube da sind aber auch unterschiedliche Routinen/Sub dran. Die dann eigentlich auf EQ3BT_killGatttool aufbauen (was nix macht).

Ich glaube hier hattest du noch etwas in der Zwischenablage oder? :-D
Log3 $name, 3, "XiaomiBTLESens ($name)

ZitatEinen kleinen Schöhnheitsfehler gibt es allerdings noch. Der Test ob gatttool installiert und ausführbar ist funktioniert nicht auf dem SSH Host. Man kann es zwar so machen das er auch auf dem SSH Host den which macht, aber der eigentliche Test ob ausführbar -x $gatttool geht dann leider nicht mehr.
Ich denke Preconditions kann man voraussetzen - sie müssen nur klar mitgeteilt werden. Dann ist so ein Test nicht nötig.


ZitatDas korrekte val ergibt sich aus dem hex von $value minus 0x4500.
Was und wieso kann ich nicht sagen.
0x4500 ist ja auch wieder HEX^^ ?
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 24 Februar 2018, 12:11:08
Hallo zusammen,
danke CoolTux, dass du hier mitentwickelst!

Den Childlock / Kindersicherung kann ich kurzfristig am Wochenende einbauen, das sollte kein Problem sein - ist auch bei mir gerade sehr nützlich :D

Gruß
Dominik
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: CoolTux am 24 Februar 2018, 12:32:20
Hallo Dominik,

Naja so viel mache ich gar nicht, Deine User machen eigentlich das meiste. Bin aktuell etwas eingespannt  :D
Denke aber mal wir sollten mal schauen das wir die ssh Implementierung sauber hin bekommen. Ich hoffe das mein bisschen Code dazu bei trägt.



Grüße
Leon
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 24 Februar 2018, 14:30:51
SO ich teste gerade: Läuft 8)  :) :) :)
Musste mal mein Wohnzimmerthermostat einmal auf Bluetooth aus/an schalten das gab irgendwie nix mehr von sich.... wahrscheinlich war es ein wenig viel hin her verbinden disconnecten :-D

Habe mal aus $hci $hciDevice gemacht  ;D Das gibt es immer noch nicht  8)  ;)
Und aus XiaomiBTLESens --> EQ3BT

$cmd    .= "gatttool -i $hci -b $mac "; --> $cmd    .= "gatttool -i $hciDevice -b $mac ";



Mal ne ganz doofe Frage  ::)
Gibt es irgendwie eine Sammlung an Herangehensweisen für Heitzungssteuerung abhängig von Thermometern also 2 verschiedene Devices.
Stelle mir das so vor, dass das Thermometern sagt es ist 18 °C. Das EQ3 steht meinetwegen schon auf 20, Raum bleibt aber weiter kühl und es ist kein Fenster auf (optionales einbringen noch eines weiteren Devices) dann soll er die Heizung höher schalten in mittels einer Art Watch Dog erneut prüfen und ggf nachregeln oder wieder auf die "normale" soll Temperatur am Thermostat gehen.

Oder würdet ihr sagen eigentlich braucht man das bei denen gar nicht ^^ (wäre ja langweilig).
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 24 Februar 2018, 16:00:17
Kindersicherung / Childlock gerade implementiert und eingecheckt. Ist also morgen per Update verfügbar.

Gruß
Dominik
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 24 Februar 2018, 16:06:43
Klasse!  Danke 8)
Hast du die Änderungen von CoolTux auch mit rein genommen? :)
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 24 Februar 2018, 16:44:12
Nein, sind die schon final? Wenn ja, dann bitte um kurze Info welche Anpassung ich reinnehmen soll. Danke.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: CoolTux am 24 Februar 2018, 16:45:14
Muss erst noch getestet werden. Bitte noch nicht.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 24 Februar 2018, 19:11:14
Okay :-) Stimmt auch wieder - war auch eher die Frage für mich, ob ich dann morgen schauen muss das ich es wieder zusammen bastel mit den Änderungen.
Was genau soll denn wie getestet haben - da kann ich ja aktiv werden.

Ein Thermostat läuft wie ein Traum das andere hat irgendwie öfter mal  Probleme einen den Notify String zu senden oder er wird nicht empfangen - das gatttool lebt dann ungewöhnlich lange - länger als 15 Sekunden. Dies blockiert dann jede Handlung auf dem einen Thermostat.

Generell gibt es aber keinerlei Vermehrung der gatttool Instanzen mehr.

Zitat2018.02.24 18:48:02 3: EQ3BT (Wohnzimmer_Thermostat) - ExecGatttool_Run: another gatttool process is running. waiting...
2018.02.24 18:48:03 3: EQ3BT (Wohnzimmer_Thermostat) - ExecGatttool_Run: another gatttool process is running. waiting...
2018.02.24 18:48:04 3: EQ3BT (Wohnzimmer_Thermostat) - ExecGatttool_Run: another gatttool process is running. waiting...
2018.02.24 18:48:04 3: EQ3BT (Wohnzimmer_Thermostat) - ExecGatttool_Run: another gatttool process is running. waiting...
2018.02.24 18:48:04 3: EQ3BT (Wohnzimmer_Thermostat) - ExecGatttool_Run: another gatttool process is running. waiting...
2018.02.24 18:48:05 3: EQ3BT (Wohnzimmer_Thermostat) - ExecGatttool_Run: another gatttool process is running. waiting...
2018.02.24 18:48:06 3: EQ3BT (Wohnzimmer_Thermostat) - ExecGatttool_Run: another gatttool process is running. waiting...
2018.02.24 18:48:06 3: EQ3BT (Wohnzimmer_Thermostat) - ExecGatttool_Run: another gatttool process is running. waiting...
2018.02.24 18:48:07 3: EQ3BT (Wohnzimmer_Thermostat) - ExecGatttool_Run: another gatttool process is running. waiting...
2018.02.24 18:48:07 3: EQ3BT (Wohnzimmer_Thermostat) - ExecGatttool_Run: another gatttool process is running. waiting...
2018.02.24 18:48:07 3: EQ3BT (Wohnzimmer_Thermostat) - ExecGatttool_Run: another gatttool process is running. waiting...
2018.02.24 18:48:08 3: EQ3BT (Wohnzimmer_Thermostat) - ExecGatttool_Run: another gatttool process is running. waiting...
2018.02.24 18:48:09 3: EQ3BT (Wohnzimmer_Thermostat) - ExecGatttool_Run: another gatttool process is running. waiting...
2018.02.24 18:48:09 3: EQ3BT (Wohnzimmer_Thermostat) - ExecGatttool_Run: another gatttool process is running. waiting...
2018.02.24 18:48:10 3: EQ3BT (Wohnzimmer_Thermostat) - ExecGatttool_Run: another gatttool process is running. waiting...
2018.02.24 18:48:10 3: EQ3BT (Wohnzimmer_Thermostat) - ExecGatttool_Run: another gatttool process is running. waiting...
2018.02.24 18:48:10 3: EQ3BT (Wohnzimmer_Thermostat) - ExecGatttool_Run: another gatttool process is running. waiting...
2018.02.24 18:48:12 3: EQ3BT (Wohnzimmer_Thermostat) - ExecGatttool_Run: another gatttool process is running. waiting...
2018.02.24 18:48:12 3: EQ3BT (Wohnzimmer_Thermostat) - ExecGatttool_Run: another gatttool process is running. waiting...
2018.02.24 18:48:12 3: EQ3BT (Wohnzimmer_Thermostat) - ExecGatttool_Run: another gatttool process is running. waiting...
2018.02.24 18:48:13 3: EQ3BT (Wohnzimmer_Thermostat) - ExecGatttool_Run: another gatttool process is running. waiting...
2018.02.24 18:48:14 3: EQ3BT (Wohnzimmer_Thermostat) - ExecGatttool_Run: another gatttool process is running. waiting...
2018.02.24 18:48:14 3: EQ3BT (Wohnzimmer_Thermostat) - ExecGatttool_Run: another gatttool process is running. waiting...
2018.02.24 18:48:15 3: EQ3BT (Wohnzimmer_Thermostat) - ExecGatttool_Run: another gatttool process is running. waiting...
2018.02.24 18:48:15 3: EQ3BT (Wohnzimmer_Thermostat) - ExecGatttool_Run: another gatttool process is running. waiting...
2018.02.24 18:48:15 3: EQ3BT (Wohnzimmer_Thermostat) - ExecGatttool_Run: another gatttool process is running. waiting...
2018.02.24 18:48:17 3: EQ3BT (Wohnzimmer_Thermostat) - ExecGatttool_Run: another gatttool process is running. waiting...
2018.02.24 18:48:17 3: EQ3BT (Wohnzimmer_Thermostat) - ExecGatttool_Run: another gatttool process is running. waiting...
2018.02.24 18:48:17 3: EQ3BT (Wohnzimmer_Thermostat) - ExecGatttool_Run: another gatttool process is running. waiting...
2018.02.24 18:48:18 3: EQ3BT (Wohnzimmer_Thermostat) - ExecGatttool_Run: another gatttool process is running. waiting...
2018.02.24 18:48:19 3: EQ3BT (Wohnzimmer_Thermostat) - ExecGatttool_Run: another gatttool process is running. waiting...
2018.02.24 18:48:19 3: EQ3BT (Wohnzimmer_Thermostat) - ExecGatttool_Run: another gatttool process is running. waiting...
2018.02.24 18:48:20 3: EQ3BT (Wohnzimmer_Thermostat) - ExecGatttool_Run: another gatttool process is running. waiting...
2018.02.24 18:48:20 3: EQ3BT (Wohnzimmer_Thermostat) - ExecGatttool_Run: another gatttool process is running. waiting...
2018.02.24 18:48:20 3: EQ3BT (Wohnzimmer_Thermostat) - ExecGatttool_Run: another gatttool process is running. waiting...
2018.02.24 18:48:22 3: EQ3BT (Wohnzimmer_Thermostat) - ExecGatttool_Run: another gatttool process is running. waiting...
2018.02.24 18:48:22 3: EQ3BT (Wohnzimmer_Thermostat) - ExecGatttool_Run: another gatttool process is running. waiting...
2018.02.24 18:48:22 3: EQ3BT (Wohnzimmer_Thermostat) - ExecGatttool_Run: another gatttool process is running. waiting...
2018.02.24 18:48:26 3: EQ3BT (Wohnzimmer_Thermostat) - ExecGatttool_Run: another gatttool process is running. waiting...
2018.02.24 18:48:27 3: EQ3BT (Wohnzimmer_Thermostat) - ExecGatttool_Run: another gatttool process is running. waiting...
2018.02.24 18:48:27 3: EQ3BT (Wohnzimmer_Thermostat) - ExecGatttool_Run: another gatttool process is running. waiting...
2018.02.24 18:48:29 3: EQ3BT (Wohnzimmer_Thermostat) - ExecGatttool_Run: another gatttool process is running. waiting...
2018.02.24 18:48:29 3: EQ3BT (Wohnzimmer_Thermostat) - ExecGatttool_Run: another gatttool process is running. waiting...
2018.02.24 18:48:29 3: EQ3BT (Wohnzimmer_Thermostat) - ExecGatttool_Run: another gatttool process is running. waiting...
2018.02.24 18:48:33 3: EQ3BT (Wohnzimmer_Thermostat) - ExecGatttool_Run: another gatttool process is running. waiting...
2018.02.24 18:48:33 3: EQ3BT (Wohnzimmer_Thermostat) - ExecGatttool_Run: another gatttool process is running. waiting...
2018.02.24 18:48:33 3: EQ3BT (Wohnzimmer_Thermostat) - ExecGatttool_Run: another gatttool process is running. waiting...
2018.02.24 18:48:37 3: EQ3BT (Wohnzimmer_Thermostat) - ExecGatttool_Run: another gatttool process is running. waiting...
2018.02.24 18:48:37 3: EQ3BT (Wohnzimmer_Thermostat) - ExecGatttool_Run: another gatttool process is running. waiting...
2018.02.24 18:48:37 3: EQ3BT (Wohnzimmer_Thermostat) - ExecGatttool_Run: another gatttool process is running. waiting...
2018.02.24 18:48:38 3: EQ3BT (Wohnzimmer_Thermostat) - ExecGatttool_Run: another gatttool process is running. waiting...
2018.02.24 18:48:39 3: EQ3BT (Wohnzimmer_Thermostat) - ExecGatttool_Run: another gatttool process is running. waiting...
2018.02.24 18:48:39 3: EQ3BT (Wohnzimmer_Thermostat) - ExecGatttool_Run: another gatttool process is running. waiting...
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: CoolTux am 24 Februar 2018, 19:33:29
Bekommst Du die Probleme beim schalten oder nur bei der abfrage? Stell mal verbose auf 5 bei dem Thermostat und schalte mal was.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 24 Februar 2018, 19:36:01
;-) Hehe war noch am anreichern mit Information dabei:

Also der langläufer ist das hier (stammt nun vom dem Pi das der SSH Host ist):

pi@TouchPi3:~ $ sudo ps -ax | grep -E gatttool -b
7005:16915 ?        Ss     0:00 bash -c gatttool -i hci0 -b XX:XX:XX:XX:XX:XX--char-write-req -a 0x0411 -n 4126 --listen 2>&1 /dev/null
7137:16916 ?        S      0:00 gatttool -i hci0 -b XX:XX:XX:XX:XX:XX--char-write-req -a 0x0411 -n 4126 --listen /dev/null
7869:25137 pts/0    S+     0:00 grep --color=auto -E gatttool -b


Aus meiner Sicht ist es ein Statusupdate das sich ohne Timeout aber mit listen auf den Weg macht. Letzte Stelle 6 ist ja Samstag.
Das obere also die "ExecGatttool_Run: another gatttool process is running. waiting..." kommt wenn der Langläufer da ist und ich was schalten will - exakt.
Nur der Langläufer dürfte ja ohne Timeout gar nicht unterwegs sein - so wie ich das verstehe.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: CoolTux am 24 Februar 2018, 19:46:05
Deswegen brauche ich ein verbose 5
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 24 Februar 2018, 19:57:12
Kein Thema hatte es den ganzen Tag auf verbose 5. ;D

Hab es mal als Datei gemacht wegen der Menge..... man sieht ziemlich gut wann es los geht.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: CoolTux am 24 Februar 2018, 20:24:19
Hier ist was schief gelaufen beim Wohnzimmer
2018.02.24 18:35:13 5: EQ3BT (Wohnzimmer_Thermostat): ssh TouchPi3 'gatttool -i hci0 -b XX:XX:XX:XX:XX:XX --char-write-req -a 0x0411 -n 4501 --listen 2>&1 /dev/null'

er startet ohne timeout aber dafür mit ssh und --listen. Kein wunder das der hängen bleibt.
Gibst du bitte mal ein list beider Thermostate
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 24 Februar 2018, 20:56:26
Jo :-) sagte ich ja warum auch immer geht einer ohne Timeout los.

Wohnzimmer:

Internals:
   CFGFN     
   DEF        XX:XX:XX:XX:XX:XX TouchPi3
   MAC        XX:XX:XX:XX:XX:XX
   NAME       Wohnzimmer_Thermostat
   NR         141
   STATE      Gewünschte Temperatur: 17.0 Fenster auf/zu: 0 Eco: 0 Boost: 1
   TYPE       EQ3BT
   VERSION    2.0.3
   READINGS:
     2018-02-24 15:33:17   battery         ok
     2018-02-24 20:52:58   bluetoothDevice hci0
     2018-02-24 19:22:18   boost           1
     2018-02-24 19:01:51   consumption     8.345
     2018-02-24 19:01:51   consumptionToday 8.345
     2018-02-24 16:48:00   desiredTemperature 17.0
     2018-02-24 15:33:17   ecoMode         0
     2018-02-24 20:52:57   errorCount-updateStatus 16
     2018-02-24 19:07:47   firmware        110
     2018-02-24 19:22:18   lastChangeBy    FHEM
     2018-02-24 15:33:17   mode            Manual
     2018-02-24 19:22:11   valvePosition   0
     2018-02-24 15:33:16   windowOpen      0
   helper:
     currenthcidevice 0
     handlesetBoost 0x0411
     handlesetDesiredTemperature 0x0411
     handleupdateStatus 0x0411
     handleupdateSystemInformation 0x0411
     listensetBoost
     listensetDesiredTemperature setDesiredTemperature failed
     listenupdateStatus updateStatus failed
     listenupdateSystemInformation 01 6e 00 00 7f 75 81 61 67 65 65 60 67 64 93
     retryCounterHci0 7
     retryCountersetBoost 0
     retryCountersetDesiredTemperature 1
     retryCounterupdateStatus 7
     retryCounterupdateSystemInformation 0
     retryUpdateStatusCounter 0
     valuesetBoost 4501
     valuesetDesiredTemperature 4126
     valueupdateStatus 031202181435
     valueupdateSystemInformation 00
     RUNNING_PID:
       abortFn    EQ3BT_updateStatusFailed
       arg        Wohnzimmer_Thermostat|XX:XX:XX:XX:XX:XX|updateStatus|0x0411|03|listen
       bc_pid     560
       finishFn   EQ3BT_processGatttoolResult
       fn         EQ3BT_execGatttool
       pid        23859
       telnet     telnetForBlockingFn_1519495619_127.0.0.1_46504
       timeout    300
       abortArg:
     hcidevices:
       0
Attributes:
   group      Heizung
   icon       sani_heating
   room       Messungen,Wohnzimmer
   sshHost    TouchPi3
   stateFormat Gewünschte Temperatur: desiredTemperature Fenster auf/zu: windowOpen Eco: ecoMode Boost: boost



Arbeitszimmer:
Internals:
   CFGFN     
   DEF        XX:XX:XX:XX:XX:XX TouchPi3
   MAC        XX:XX:XX:XX:XX:XX
   NAME       Arbeitszimmer_Thermostat
   NR         140
   STATE      Gewünschte Temperatur: 20.0 Fenster auf/zu: 0 Eco: 0 Boost: 0
   TYPE       EQ3BT
   VERSION    2.0.3
   READINGS:
     2018-02-24 15:08:25   battery         ok
     2018-02-24 19:06:58   bluetoothDevice hci0
     2018-02-24 20:28:27   boost           0
     2018-02-24 20:28:27   consumption     25.307
     2018-02-24 20:28:27   consumptionToday 25.307
     2018-02-24 20:19:50   desiredTemperature 20.0
     2018-02-24 15:08:25   ecoMode         0
     2018-02-24 19:07:34   firmware        110
     2018-02-24 20:28:27   lastChangeBy    Thermostat
     2018-02-24 15:08:25   mode            Manual
     2018-02-24 20:55:11   valvePosition   0
     2018-02-24 15:08:25   windowOpen      0
   helper:
     currenthcidevice 0
     handlesetBoost 0x0411
     handlesetDesiredTemperature 0x0411
     handleupdateStatus 0x0411
     handleupdateSystemInformation 0x0411
     listensetBoost
     listensetDesiredTemperature
     listenupdateStatus 02 01 29 00 04 28
     listenupdateSystemInformation 01 6e 00 00 7f 75 81 61 67 65 60 67 60 68 92
     retryCounterHci0 2
     retryCountersetBoost 0
     retryCountersetDesiredTemperature 0
     retryCounterupdateStatus 0
     retryCounterupdateSystemInformation 0
     valuesetBoost 4501
     valuesetDesiredTemperature 4128
     valueupdateStatus 031202181436
     valueupdateSystemInformation 00
     hcidevices:
       0
Attributes:
   group      Heizung
   icon       sani_heating
   room       Arbeitszimmer,Messungen
   sshHost    TouchPi3
   stateFormat Gewünschte Temperatur: desiredTemperature Fenster auf/zu: windowOpen Eco: ecoMode Boost: boost

Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: CoolTux am 24 Februar 2018, 21:05:08
Ich muß da noch mal schauen im Code. Mache ich aber erst morgen.
Ist das Timeout für den BlockingCall echt 5min, das ist viel zu viel. 90 bis 120s sollten locker reichen.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 25 Februar 2018, 19:58:03
Wundervoll Childlock läuft sauber!  8) ;D Danke sehr! @dominik

Ich habe jetzt einfach wieder den Sub "EQ3BT_execGatttool($)" von CoolTux eingebaut mit den Änderungen von mir bei Log3 und $hci.

Soweit wundervoll - klar die Geschichte mit dem Langläufer iss noch :-)
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 28 Februar 2018, 19:26:43
Bei mir kam es nun insgesamt 2 mal vor, dass ein Thermostat einfach gar nicht mehr ausgelesen werden konnte.
Die Lösung ist hier nicht das Thermostat zurücksetzen, sondern einfach mal:

sudo bluetoothctl
power off
power on


Zu machen.

Es scheint als bräuchte man das "sudo" nicht mal.
Ich denke ich baue mir das irgendwie noch ein ab einem gewissen Errorlevel. Kann aber auch möglich sein, dass das nur durch mein killall gatttool kommt was ich ab und an machen muss um den Langläufer zu killen.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Gasmast3r am 28 Februar 2018, 19:47:12
Hy wenn mir deine datei sendest kann ich auch mit testen habe hier einige thermostate und ssh Pi's laufen
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 28 Februar 2018, 22:56:20
Ich bin mir nun nicht ganz sicher, ob ich gemeint bin.

Aber hier ist das was an Änderungen von CoolTux kam mit meinen Anpassungen und dem neusten von dominik vereint in einer Datei.

Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Gasmast3r am 28 Februar 2018, 23:20:16
Zitat von: Master_Nick am 28 Februar 2018, 22:56:20
Ich bin mir nun nicht ganz sicher, ob ich gemeint bin.

Aber hier ist das was an Änderungen von CoolTux kam mit meinen Anpassungen und dem neusten von dominik vereint in einer Datei.
Jupp du warst gemeint, spiele es morgen mal ein und berichte.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 28 Februar 2018, 23:46:36
Ich habe gerade wieder einen Langläufer und versuchte ihn ein wenig zu analysieren.

Habe dabei was für mich seltsames festgestellt.

pi@TouchPi3:~ $ sudo ps -ax | grep -E gatttool -b
6886: 2243 ?        Ss     0:00 bash -c gatttool -i hci0 -b XX:XX:XX:XX:XX:EC--char-write-req -a 0x0411 -n 4122 --listen 2>&1 /dev/null
7018: 2244 ?        S      0:00 gatttool -i hci0 -b XX:XX:XX:XX:XX:EC --char-write-req -a 0x0411 -n 4122 --listen /dev/null
7874:18941 ?        Ss     0:00 bash -c timeout 15 gatttool -i hci0 -b XX:XX:XX:XX:XX:DE --char-write-req -a 0x0411 -n 0312021C1729 --listen 2>&1 /dev/null
8025:18942 ?        S      0:00 timeout 15 gatttool -i hci0 -b XX:XX:XX:XX:XX:D4 --char-write-req -a 0x0411 -n 0312021C1729 --listen /dev/null
8163:18943 ?        S      0:00 gatttool -i hci0 -b XX:XX:XX:XX:XX:D4 --char-write-req -a 0x0411 -n 0312021C1729 --listen /dev/null
8329:18968 pts/0    S+     0:00 grep --color=auto -E gatttool -b


Hier sind gerade 2 Thermostate angesprochen eines völlig korrekt mittels timeout (Thermostat D4) davor und dann wieder das noch ungeklärte (wahrscheinlich einfach eine Stelle die noch nicht abgefangen wird für ssh) und das ist das THermostat mit EC.

Schaue ich nun mit pidof gatttool mal was so läuft sagt es mir:
pi@TouchPi3:~ $ sudo pidof gatttool
2244


Wie kann das sein? Der Prozess ist ja da und blockiert ja auch das Thermostat aber er ist nicht mehr aktiv erkennbar? Raff ich nicht :-D

Kann diesen Geister-Process daher auch nicht wie mein Gedanke war vorerst mittels grep und kill automatisch killen lassen... weil er nicht existent ist für Kill.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: CoolTux am 01 März 2018, 05:15:10
Zitat von: Master_Nick am 28 Februar 2018, 23:46:36
Ich habe gerade wieder einen Langläufer und versuchte ihn ein wenig zu analysieren.

Habe dabei was für mich seltsames festgestellt.

pi@TouchPi3:~ $ sudo ps -ax | grep -E gatttool -b
6886: 2243 ?        Ss     0:00 bash -c gatttool -i hci0 -b XX:XX:XX:XX:XX:EC--char-write-req -a 0x0411 -n 4122 --listen 2>&1 /dev/null
7018: 2244 ?        S      0:00 gatttool -i hci0 -b XX:XX:XX:XX:XX:EC --char-write-req -a 0x0411 -n 4122 --listen /dev/null
7874:18941 ?        Ss     0:00 bash -c timeout 15 gatttool -i hci0 -b XX:XX:XX:XX:XX:DE --char-write-req -a 0x0411 -n 0312021C1729 --listen 2>&1 /dev/null
8025:18942 ?        S      0:00 timeout 15 gatttool -i hci0 -b XX:XX:XX:XX:XX:D4 --char-write-req -a 0x0411 -n 0312021C1729 --listen /dev/null
8163:18943 ?        S      0:00 gatttool -i hci0 -b XX:XX:XX:XX:XX:D4 --char-write-req -a 0x0411 -n 0312021C1729 --listen /dev/null
8329:18968 pts/0    S+     0:00 grep --color=auto -E gatttool -b


Hier sind gerade 2 Thermostate angesprochen eines völlig korrekt mittels timeout (Thermostat D4) davor und dann wieder das noch ungeklärte (wahrscheinlich einfach eine Stelle die noch nicht abgefangen wird für ssh) und das ist das THermostat mit EC.

Schaue ich nun mit pidof gatttool mal was so läuft sagt es mir:
pi@TouchPi3:~ $ sudo pidof gatttool
2244


Wie kann das sein? Der Prozess ist ja da und blockiert ja auch das Thermostat aber er ist nicht mehr aktiv erkennbar? Raff ich nicht :-D

Kann diesen Geister-Process daher auch nicht wie mein Gedanke war vorerst mittels grep und kill automatisch killen lassen... weil er nicht existent ist für Kill.

Das was geht wird normal abgefragt und das andere was hängt wird per ssh angesprochen?
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 01 März 2018, 17:20:40
Hi CoolTux,

es gibt bei mir keinerlei lokal (normal) abgefragte Thermostate ALLE arbeiten über SSH.
Alle haben den gleichen sshHost eingetragen (TouchPi3).

Somit das was hängt wird auch über ssh aber eben ohne timeout (warum auch immer bin dem code noch nicht gefolgt im modul).
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Gasmast3r am 02 März 2018, 09:03:31
Hy hab die version nun 24 std am laufen und nur timeout for EQ3BT_execGetttool einträge im log bei verbose 1,soll das so sein ???
Habe aber nur 2 thermostate die errorCount einträge habe von mehr wie 20, alle anderen sind bei 0-6.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: CoolTux am 02 März 2018, 10:33:01
Zitat von: Gasmast3r am 02 März 2018, 09:03:31
Hy hab die version nun 24 std am laufen und nur timeout for EQ3BT_execGetttool einträge im log bei verbose 1,soll das so sein ???
Habe aber nur 2 thermostate die errorCount einträge habe von mehr wie 20, alle anderen sind bei 0-6.

Diese timeout for EQ3BT_execGetttool  Einträge kommen vom Blocking.pm Modul und können gesteuert werden in dem man loglevel als INTERNAL hinterlegt. Dann kann man den Loglevel vom Blocking.pm Modul steuern.
Sind die Thermostate besonders weit weg oder warum klappt das nicht?
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Gasmast3r am 02 März 2018, 10:35:28
hy  weit weck ist relativ  ;D

hatte jetzt ne weile alles ohne ssh am laufen, wollte mich am testen nur beteiligen um mehr als eine test Instanz zu haben 

Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: CoolTux am 02 März 2018, 10:52:22
Zitat von: Master_Nick am 01 März 2018, 17:20:40
Hi CoolTux,

es gibt bei mir keinerlei lokal (normal) abgefragte Thermostate ALLE arbeiten über SSH.
Alle haben den gleichen sshHost eingetragen (TouchPi3).

Somit das was hängt wird auch über ssh aber eben ohne timeout (warum auch immer bin dem code noch nicht gefolgt im modul).

Möglich das ich was gefunden haben. Ich habe mal debug Meldungen eingebaut. Hoffe das mein svn die Datei korrekt geupdatet hat.
Bitte mal angehängte pm probieren und im Log schauen. Wenn wieder ein Prozess ohne timeout gestartet wird mal schauen was im Log zu "listen Debug, listen:" steht.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 02 März 2018, 15:29:39
Danke - ich teste ab sofort :-)
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 02 März 2018, 18:41:15
Hihi  8)  ;)

Hab dann mal aus $hci wieder $hciDevice gemacht ;-)
Hab dann doch noch 3 Stunden gebraucht um zu zu kommen.

Soweit lüppt es gerade - ich werde berichten. Vielen Dank schon mal für die Investition.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: CoolTux am 03 März 2018, 10:37:14
Habe mal auf die schnelle was ein gebaut.


loglevel Support für BlockingCall
Zusätzliche Logausgabe zum finden des timeout Problemes
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: CoolTux am 03 März 2018, 10:53:57
Habe meinen nun auch wieder an geschraubt und kann mit testen.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: CoolTux am 03 März 2018, 12:13:21
Meine Vermutungen haben sich bestätigt. Der timeout Befehl war zu lang und das und das BlockingCall Timeout zu kurz. Ich habe den timepout Befehl auf 10s gesetzt und den BlockingCall Timeout von 60s auf 90s
So läuft es bei mir erstmal sauber. Keine hängenbleibenden ssh gattttools mehr. Langzeittest muß nun mehr Aufschluß zeigen.



Angehängt die neuste Version.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Gasmast3r am 03 März 2018, 12:15:00
Zitat von: CoolTux am 03 März 2018, 12:13:21
Meine Vermutungen haben sich bestätigt. Der timeout Befehl war zu lang und das und das BlockingCall Timeout zu kurz. Ich habe den timepout Befehl auf 10s gesetzt und den BlockingCall Timeout von 60s auf 90s
So läuft es bei mir erstmal sauber. Keine hängenbleibenden ssh gattttools mehr. Langzeittest muß nun mehr Aufschluß zeigen.



Angehängt die neuste Version.
Lade ich gleich mal in mein sys
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: CoolTux am 03 März 2018, 12:17:03
Warte mal noch. Habe gerade noch einen anderen Fehler gefunden.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Gasmast3r am 03 März 2018, 12:17:46
Zitat von: CoolTux am 03 März 2018, 12:17:03
Warte mal noch. Habe gerade noch einen anderen Fehler gefunden.
So schnell bin ich auch nicht.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: CoolTux am 03 März 2018, 12:35:10
Ich denke ich habe einen kleinen Bug gefunden. Es kann natürlich auch ein gewisser Sinn dahinter gesteckt haben, aber wenn habe ich ihn im Code nicht finden können.


sub EQ3BT_retryGatttool {
    my ($hash, $workType) = @_;
    $hash->{helper}{RUNNING_PID} = BlockingCall("EQ3BT_execGatttool", $hash->{NAME}."|".$hash->{MAC}."|$workType|".$hash->{helper}{"handle$workType"}."|".$hash->{helper}{"value$workType"}."|".$hash->{helper}{"listen$workType"}, "EQ3BT_processGatttoolResult", 60, "EQ3BT_killGatttool", $hash);
    return undef;
}


Das $hash->{helper}{"listen$workType"} ergibt für mich keinen Sinn. In jeder anderen Funktion wird der String listen übergeben, nur hier werden Fehlermeldungen übergeben, daher hat der timeout nicht zugeschlagen aber das --listen weil ich da nur auf defined($listen) gescheckt habe.
Weiter unten in der Auswertung der gatttool Ergebnisse wird dann wieder eq 'listen' geprüft. Macht also alles keinen Sinn und ich habe das nun geändert in


sub EQ3BT_retryGatttool {
    my ($hash, $workType) = @_;
    $hash->{helper}{RUNNING_PID} = BlockingCall("EQ3BT_execGatttool", $hash->{NAME}."|".$hash->{MAC}."|$workType|".$hash->{helper}{"handle$workType"}."|".$hash->{helper}{"value$workType"}."|listen", "EQ3BT_processGatttoolResult", 60, "EQ3BT_killGatttool", $hash);
    return undef;
}
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Gasmast3r am 03 März 2018, 12:49:17

2018.03.03 12:47:09 1: EQ3BT (EZ2) - listen Debug, listen: listen
2018.03.03 12:47:09 1: EQ3BT (EZ2): timeout 10 gatttool -i hci0 -b 00:1a:22:05:22:1c --char-write-req -a 0x0411 -n 031203030C2F --listen 2>&1 /dev/null
2018.03.03 12:47:12 1: EQ3BT (ZU) - listen Debug, listen: listen
2018.03.03 12:47:12 1: EQ3BT (ZU): ssh pi@192.168.178.46 'timeout 10 gatttool -i hci0 -b 00:1A:22:05:F8:8F --char-write-req -a 0x0411 -n 031203030C2F --listen 2>&1 /dev/null'
2018.03.03 12:47:16 1: EQ3BT (ZO1) - listen Debug, listen: listen
2018.03.03 12:47:16 1: EQ3BT (ZO1): timeout 10 gatttool -i hci0 -b 00:1A:22:05:F8:18 --char-write-req -a 0x0411 -n 031203030C2F --listen 2>&1 /dev/null
2018.03.03 12:47:22 1: EQ3BT (WCO) - listen Debug, listen: listen
2018.03.03 12:47:22 1: EQ3BT (WCO): timeout 10 gatttool -i hci2 -b 00:1A:22:05:27:E5 --char-write-req -a 0x0411 -n 031203030C2F --listen 2>&1 /dev/null
2018.03.03 12:47:52 1: EQ3BT (EZ1) - listen Debug, listen: listen
2018.03.03 12:47:52 1: EQ3BT (EZ1): timeout 10 gatttool -i hci2 -b 00:1A:22:09:0F:19 --char-write-req -a 0x0411 -n 031203030C2F --listen 2>&1 /dev/null
2018.03.03 12:48:00 1: PERL WARNING: Use of uninitialized value $listen in concatenation (.) or string at ./FHEM/10_EQ3BT.pm line 545.
2018.03.03 12:48:00 1: EQ3BT (ZU) - listen Debug, listen:
2018.03.03 12:48:00 1: EQ3BT (ZU): ssh pi@192.168.178.46 'gatttool -i hci0 -b 00:1A:22:05:F8:8F --char-write-req -a 0x0411 -n 4126 2>&1 /dev/null'
2018.03.03 12:48:05 1: EQ3BT (EZ1) - listen Debug, listen: listen
2018.03.03 12:48:05 1: EQ3BT (EZ1): timeout 10 gatttool -i hci2 -b 00:1A:22:09:0F:19 --char-write-req -a 0x0411 -n 031203030C30 --listen 2>&1 /dev/null
2018.03.03 12:48:06 1: EQ3BT (KU) - listen Debug, listen: listen
2018.03.03 12:48:06 1: EQ3BT (KU): timeout 10 gatttool -i hci0 -b 00:1A:22:09:0F:34 --char-write-req -a 0x0411 -n 031203030C30 --listen 2>&1 /dev/null
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: CoolTux am 03 März 2018, 12:49:38
Ich will ja nicht zu früh schreien. Aber bei mir läuft es nun sauber durch.
Ich muss zugeben ich bin schon etwas neidisch wie der liebe Dominik die Fehlerbehandlung abfängt. Da kann ich sicherlich noch was für meine Module mitnehmen.
DANKE!



Grüße
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: CoolTux am 03 März 2018, 12:50:24
Zitat von: Gasmast3r am 03 März 2018, 12:49:17

2018.03.03 12:47:09 1: EQ3BT (EZ2) - listen Debug, listen: listen
2018.03.03 12:47:09 1: EQ3BT (EZ2): timeout 10 gatttool -i hci0 -b 00:1a:22:05:22:1c --char-write-req -a 0x0411 -n 031203030C2F --listen 2>&1 /dev/null
2018.03.03 12:47:12 1: EQ3BT (ZU) - listen Debug, listen: listen
2018.03.03 12:47:12 1: EQ3BT (ZU): ssh pi@192.168.178.46 'timeout 10 gatttool -i hci0 -b 00:1A:22:05:F8:8F --char-write-req -a 0x0411 -n 031203030C2F --listen 2>&1 /dev/null'
2018.03.03 12:47:16 1: EQ3BT (ZO1) - listen Debug, listen: listen
2018.03.03 12:47:16 1: EQ3BT (ZO1): timeout 10 gatttool -i hci0 -b 00:1A:22:05:F8:18 --char-write-req -a 0x0411 -n 031203030C2F --listen 2>&1 /dev/null
2018.03.03 12:47:22 1: EQ3BT (WCO) - listen Debug, listen: listen
2018.03.03 12:47:22 1: EQ3BT (WCO): timeout 10 gatttool -i hci2 -b 00:1A:22:05:27:E5 --char-write-req -a 0x0411 -n 031203030C2F --listen 2>&1 /dev/null
2018.03.03 12:47:52 1: EQ3BT (EZ1) - listen Debug, listen: listen
2018.03.03 12:47:52 1: EQ3BT (EZ1): timeout 10 gatttool -i hci2 -b 00:1A:22:09:0F:19 --char-write-req -a 0x0411 -n 031203030C2F --listen 2>&1 /dev/null
2018.03.03 12:48:00 1: PERL WARNING: Use of uninitialized value $listen in concatenation (.) or string at ./FHEM/10_EQ3BT.pm line 545.
2018.03.03 12:48:00 1: EQ3BT (ZU) - listen Debug, listen:
2018.03.03 12:48:00 1: EQ3BT (ZU): ssh pi@192.168.178.46 'gatttool -i hci0 -b 00:1A:22:05:F8:8F --char-write-req -a 0x0411 -n 4126 2>&1 /dev/null'
2018.03.03 12:48:05 1: EQ3BT (EZ1) - listen Debug, listen: listen
2018.03.03 12:48:05 1: EQ3BT (EZ1): timeout 10 gatttool -i hci2 -b 00:1A:22:09:0F:19 --char-write-req -a 0x0411 -n 031203030C30 --listen 2>&1 /dev/null
2018.03.03 12:48:06 1: EQ3BT (KU) - listen Debug, listen: listen
2018.03.03 12:48:06 1: EQ3BT (KU): timeout 10 gatttool -i hci0 -b 00:1A:22:09:0F:34 --char-write-req -a 0x0411 -n 031203030C30 --listen 2>&1 /dev/null



????????????????????
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Gasmast3r am 03 März 2018, 12:51:47
das was ich per ssh dran habe schalten auch innerhalb weniger sec. frage was haben die log einträge zu bedeuten
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: CoolTux am 03 März 2018, 12:54:26
Das alles super funktioniert und Du einmal einen Schaltvorgang gemacht hast  ;D

Das sind Debugmeldungen keine Fehlermeldungen an sich. Sind in der jetzt kommenden Version draußen.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Gasmast3r am 03 März 2018, 12:56:17
ok das ja gut

kann man das auch abstellen oder in ein extra log schreiben ???
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: CoolTux am 03 März 2018, 12:58:27
Ich habe ja geschrieben das diese Meldungen in der nächsten kommenden Version weg sind. Im Moment brauche ich sie noch falls doch noch ein Fehlerbild erscheint. Lass bitte einfach laufen. Heute Abend lade ich eine aktuelle ohne die Ausgaben hoch.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Gasmast3r am 03 März 2018, 13:01:04
ok

habe nun auch den 2 ssh pi wieder eingerichtet bin dann ja mal gespannt
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: CoolTux am 03 März 2018, 13:05:38
Ich bin da sehr guter Hoffnung. Bei mir ist der Thermostat trotz ssh an der maximalen Reichweitegrenze. Er braucht manchmal bis zu 7-8 Anläufe er er Daten bekommt oder einen Schaltbefehl los wird. Und dennoch wird gatttool immer sauber beendet.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: CoolTux am 03 März 2018, 15:24:14
Beim einrichten in mein System ist mir gerade aufgefallen das sich die set Namen und Readings Namen leider nicht annähernd an die der normalen Homematic Thermostate hält.
Da ich diverse Frontend Styles (Readings Group) verwende und auch Structure zum schalten, wäre es schon schön wenn man hier eine Einheitlichkeit rein bekommen würde.
Was sagen die anderen Anwender dazu?
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Gasmast3r am 03 März 2018, 15:29:41
wie ihr es baut, komme soweit klar steuere meine Heizung per Außentemperatur / Anwesenheit mehr nicht, mehr gibt mein Wissensstand nicht her ;)
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 03 März 2018, 17:35:55
Hey klasse! Danke sehr  8) :)
Hab es direkt eingebunden bei mir. Langzeittest läuft damit direkt, da mein System dauerhaft läuft und 5 Thermostate bedient.

Bin gespannt.

Um dir eine Antwort zu geben - wahrscheinlich wäre ein Standardisierung gut, da sich dann ja automatisch eine gewisse Kompatibilität zu anderen Anwendungsfeldern/Steuerungen ergibt denke ich.

Soweit habe ich eine Zeitliche Schaltung der Heizkörper und generell eine Abhängigkeit von der Anwesenheit realisiert. Bisher ergab sich einfach keine Notwendigkeit noch Abhängigkeiten zu den in den Räumen verteilten Thermometern zu schaffen.


In welcher Regelmäßigkeit wird eigentlich der Status der Geräte erfragt? Vom Gefühl her würde ich sagen alle 10 Minuten (oder häufiger) - ist das nicht für einen reinen Standby Betrieb ohne erfolgte Schaltung sehr häufig? Es wird ja bei jeder Schaltung eh der Rückgabestring ausgewertet.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: CoolTux am 03 März 2018, 17:47:27
Zitat von: Master_Nick am 03 März 2018, 17:35:55
In welcher Regelmäßigkeit wird eigentlich der Status der Geräte erfragt? Vom Gefühl her würde ich sagen alle 10 Minuten (oder häufiger) - ist das nicht für einen reinen Standby Betrieb ohne erfolgte Schaltung sehr häufig? Es wird ja bei jeder Schaltung eh der Rückgabestring ausgewertet.

Alle 140s + Zufallswert zwischen 0 und 60.
Habe das Kompatibilitätsproblem nun anders gelöst. Da der Thermostat eh im Verbund mit 2 normalen Thermostaten und ein Wandthermostat arbeitet ist es egal. Den Rest habe ich mit 2 userReadings gelöst.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 03 März 2018, 17:58:26
 :o Ist das nicht vieeeeel zu häufig?

Ich meine wir nutzen das ja nicht um Änderungen zu Erfassen am Gerät - die sind bei mir komplett gelockt.

Ich glaube es wäre sehr schön dieses Intervall über ein Attribut über steuern oder steuern zu können.
140 Sekunden ist ja alle 2,33 Minuten. Damit fährt man bestimmt nicht lange mit einem Satz Batterien oder?  ;D 8)
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: CoolTux am 03 März 2018, 17:59:28
Kann ich Dir sagen wenn meine leer sind  ;D
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 03 März 2018, 18:00:44
 ;) Wie lange hast es denn schon bei dir so?
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: CoolTux am 03 März 2018, 18:01:59
Ein Tag und sind noch ok  ;D
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 03 März 2018, 18:11:14
Meine sind jetzt seit dem 21.02 in Betrieb.

Effektiv wäre es ja nur im Modul die Zeit durch eine Variable ersetzen und dann diese über ein attr setzen.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: CoolTux am 03 März 2018, 18:22:01
So hier gibt es nun die aktuelle Version von mir. Ausserdem für Dominik ein Patchfile.


Grüße
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 03 März 2018, 18:26:29
Vielen Dank!  8)

Patchfile braucht aber auch nur er? :-) Also zum einchecken wahrscheinlich oder?  :)
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: CoolTux am 03 März 2018, 18:27:59
Zitat von: Master_Nick am 03 März 2018, 18:26:29
Vielen Dank!  8)

Patchfile braucht aber auch nur er? :-) Also zum einchecken wahrscheinlich oder?  :)

Wenn ein User noch das originale Modul aus dem FHEM Update verwendet kann er auch patchen. Kann aber auch die Moduldatei nehmen.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 03 März 2018, 18:28:24
Ah okay :-)

Eingepflanzt.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: mele am 04 März 2018, 10:46:58
Hallo,

ich versuche mein EQ3BT zum Laufen zu bekommen, habe aber immer nur Error.

Ich habe sogar aus lauter Verzweiflung den Rpi3 neu aufgesetzt.

sudo hcitool lescan bringt unter anderem:
00:1A:xx:xx:xx:xx CC-RT-BLE

Ich habe dann das auf Seite 1 genannte
gatttool -b 00:1A:... --char-write-req --handle=0x0411 --value=00 --listen
ausprobiert.

Ergebnis:
connect error: Connection refused (111)

Hat jemand eine Idee?

Vielen Dank vorab!

Manuel
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: mele am 04 März 2018, 11:03:16
Hier noch ein wenig Log mit verbose 5:

ssh: Could not resolve hostname 00:1a:22:0c:79:cf: Name or service not known
2018.03.04 10:57:11 3: EQ3BT (WC_Heizung): updateStatus, 0x0411, 031203040A39 failed 20 times.
2018.03.04 10:57:11 4: EQ3BT (WC_Heizung): updateStatus failed (0x0411, 031203040A39, updateStatus failed)
2018.03.04 10:57:11 5: EQ3BT (WC_Heizung): gatttool return string: WC_Heizung|MACADDRESS|error|updateStatus|0x0411|031203040A39|updateStatus failed
2018.03.04 10:57:11 4: EQ3BT (WC_Heizung): gatttool result:
ssh: Could not resolve hostname 00:1a:22:0c:79:cf: Name or service not known
2018.03.04 10:57:11 4: EQ3BT (WC_Heizung): ssh 00:1A:22:0C:79:CF 'timeout 10 gatttool -i hci -b MACADDRESS --char-write-req -a 0x0411 -n 031203040A39 --listen 2>&1 /dev/null'
ssh: Could not resolve hostname 00:1a:22:0c:79:cf: Name or service not known
2018.03.04 10:57:11 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/10_EQ3BT.pm line 522.
ssh: Could not resolve hostname 00:1a:22:0c:79:cf: Name or service not known
2018.03.04 10:57:09 3: EQ3BT (WC_Heizung): setDesiredTemperature, 0x0411, 4109 failed 20 times.
2018.03.04 10:57:09 4: EQ3BT (WC_Heizung): setDesiredTemperature failed (0x0411, 4109, setDesiredTemperature failed)
2018.03.04 10:57:09 5: EQ3BT (WC_Heizung): gatttool return string: WC_Heizung|MACADDRESS|error|setDesiredTemperature|0x0411|4109|setDesiredTemperature failed
2018.03.04 10:57:09 4: EQ3BT (WC_Heizung): gatttool result:
ssh: Could not resolve hostname 00:1a:22:0c:79:cf: Name or service not known
2018.03.04 10:57:09 4: EQ3BT (WC_Heizung): ssh 00:1A:22:0C:79:CF 'timeout 10 gatttool -i hci -b MACADDRESS --char-write-req -a 0x0411 -n 4109 --listen 2>&1 /dev/null'
ssh: Could not resolve hostname 00:1a:22:0c:79:cf: Name or service not known


Gruß
Manuel
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Gasmast3r am 04 März 2018, 11:09:22
Zitat von: mele am 04 März 2018, 11:03:16
Hier noch ein wenig Log mit verbose 5:

ssh: Could not resolve hostname 00:1a:22:0c:79:cf: Name or service not known
2018.03.04 10:57:11 3: EQ3BT (WC_Heizung): updateStatus, 0x0411, 031203040A39 failed 20 times.
2018.03.04 10:57:11 4: EQ3BT (WC_Heizung): updateStatus failed (0x0411, 031203040A39, updateStatus failed)
2018.03.04 10:57:11 5: EQ3BT (WC_Heizung): gatttool return string: WC_Heizung|MACADDRESS|error|updateStatus|0x0411|031203040A39|updateStatus failed
2018.03.04 10:57:11 4: EQ3BT (WC_Heizung): gatttool result:
ssh: Could not resolve hostname 00:1a:22:0c:79:cf: Name or service not known
2018.03.04 10:57:11 4: EQ3BT (WC_Heizung): ssh 00:1A:22:0C:79:CF 'timeout 10 gatttool -i hci -b MACADDRESS --char-write-req -a 0x0411 -n 031203040A39 --listen 2>&1 /dev/null'
ssh: Could not resolve hostname 00:1a:22:0c:79:cf: Name or service not known
2018.03.04 10:57:11 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/10_EQ3BT.pm line 522.
ssh: Could not resolve hostname 00:1a:22:0c:79:cf: Name or service not known
2018.03.04 10:57:09 3: EQ3BT (WC_Heizung): setDesiredTemperature, 0x0411, 4109 failed 20 times.
2018.03.04 10:57:09 4: EQ3BT (WC_Heizung): setDesiredTemperature failed (0x0411, 4109, setDesiredTemperature failed)
2018.03.04 10:57:09 5: EQ3BT (WC_Heizung): gatttool return string: WC_Heizung|MACADDRESS|error|setDesiredTemperature|0x0411|4109|setDesiredTemperature failed
2018.03.04 10:57:09 4: EQ3BT (WC_Heizung): gatttool result:
ssh: Could not resolve hostname 00:1a:22:0c:79:cf: Name or service not known
2018.03.04 10:57:09 4: EQ3BT (WC_Heizung): ssh 00:1A:22:0C:79:CF 'timeout 10 gatttool -i hci -b MACADDRESS --char-write-req -a 0x0411 -n 4109 --listen 2>&1 /dev/null'
ssh: Could not resolve hostname 00:1a:22:0c:79:cf: Name or service not known


Gruß
Manuel
Ssh ???
Define name EQ3BT mac Adresse der Thermostate
Für ssh must di noch die verbindung extra konfigurieren.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: CoolTux am 04 März 2018, 11:09:39
ssh: Could not resolve hostname 00:1a:22:0c:79:cf: Name or service not known


Noch besser kann eine Fehlermeldung nicht aussehen. Das ist kein Modul oder FHEM Problem.

Definiere das Device korrekt und entferne das ssh Attribut.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: mele am 04 März 2018, 11:23:02
Danke, mein define war Falsch.

Ich bin mir allerdings nicht bewusst, den ssh-host eingetragen zu haben.

Richtiger define lautet nun:

define WC_Heizung EQ3BT 00:1A:xx:xx:xx:xx


Eine Frage habe ich interesserhalber:

Wenn mein Nachbar auch FHEM hätte und einen hciscan macht, dann könnte er doch auch den Thermostaten steuern, richtig.

Kann man da noch etwas mehr Sicherheit reinbringen?
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: CoolTux am 04 März 2018, 11:47:03
Nur wenn du auf eine andere Technik um steigst. Homematic Funk zum Beispiel oder KNX Bussystem.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 04 März 2018, 13:24:02
Ich denke bei der Reichweite muss man sich da keine Gedanken machen.
Und man würde Manipulationen ja sehen (komische Temperaturen).

Hier läuft bisher alles einwandfrei wie es sein soll! :-)
Keine Blocker keine Langläufer - ganz großes Kino! Vielen Dank!
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: CoolTux am 04 März 2018, 13:29:20
So soll es sein. Wir werden es die Woche noch laufen lassen und dann hauen wir Dominik mal an ob er Lust hat das zu übernehmen.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: CoolTux am 08 März 2018, 08:18:53
Wie schaut es aus? Läuft das Modul nun stabil?



Grüße
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 08 März 2018, 16:58:55
Jawohl!  8) ;D Aller feinste Stabilität!  :) :) :) :) :)

Kann von keinerlei Problemen berichten - hätte mich Sonntag geäußert (Woche halt  ;D ;D).

Alles gut - vielen Dank nochmal!
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Gasmast3r am 08 März 2018, 17:04:32
H  soweit auvh keine probleme.systeme laufen stabil soweit ich das testen konnte.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: CoolTux am 09 März 2018, 10:07:39
Sehr schön. Dann gebe ich Dominik mal bescheid das er bitte den Patch ein spielt.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: su.puk am 11 März 2018, 12:24:57
Hallo zusammen,

ich bin total begeistert von eurer Arbeit, ich bin in FHEM recht neu und habe derzeit 3 der Thermostate die Über Bluetooth bis auf einen ( sicher zu weit entfernt) super funktionieren.

Im Moment teste ich gerade Fhem im Docker, hab da wie viele auch Probleme mit Bluetooth.

Nun versuche ich die Thermostate auf ssHost umzustellen.
Da Fhem aber unter Root im Docker läuft, müsste ich einen User dem Host mit übergeben.
Jetzt suche ich die ganze zeit schon, bin mir aber nicht sicher ob pi@sshhost funktioniert (oder ich bin  :o Blind  :o!)

Wo ich mir auch nicht 100% sicher bin, gehört die IP/Hostname in das Attribut sshHost oder hinter die MAC in das define?


Im Moment habe ich es im Attribut. Bekomme aber im Log folgende Meldung:

EQ3BT (shz_term_stat): gatttool return string: shz_term_stat|00:1A:22:0C:1C:1D|error|updateStatus|0x0411|03|no gatttool binary found. Please check if bluez-package is properly installed


Führe ich aber in der Konsole (im Docker) folgendes aus:



ssh pi@sshHost 'gatttool -b 00:1A:22:06:BE:6B --char-write-req --char-write-req --handle=0x0411 --value="4128E"'



Erhalte ich ein "success" und die Verbindung wird getrennt, sowie die Temperatur wurde am eq3bt richtig gesetzt.

Ich hoffe euch reicht die Info um mir weiter helfen zu können und einen Hinweis geben könnt wo ich den Fehler habe.

Grüße
Roland

PS: Ich bin kurz davor den Docker für Fhem zu kicken, auch wenn ich es grundsätzlich nicht schlecht halte...
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: CoolTux am 11 März 2018, 12:29:38
User@Host geht. Denke aber bitte daran das passwortloses anmelden möglich sein muss. Also mit Keyfile arbeiten.
Du musst natürlich auf dem entfernten Host gatttool installieren. Der Befehl wird ja schließlich dann auf dem ssh Host ausgeführt.
Ich halte im privaten Umfeld dieses ganze Docker für Unsinn. Ist aber meine persönliche Meinung.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: su.puk am 11 März 2018, 12:44:20
Hallo  CoolTux,

das Gattool ist auf dem Remote installiert und funktioniert auch.
Nein, ich benötige kein Passwort um mich anzumelden auf dem RemoteSystem, ich habe die Keys hinterlegt und es auch ohne PW getestet in der Konsole...

Stimmt der Eintrag (im Attr. ssHost ) pi@192.168.55.170 ?
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: CoolTux am 11 März 2018, 13:00:09
Ja
pi@192.168.55.170
Da du schon super getestet hast sollte das passen.

Hast du auf dem FHEM Server bluez-package auch installiert.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: su.puk am 11 März 2018, 13:28:24
Hallo  CoolTux,

danke für deine sehr schnellen reaktionszeiten an einem Sonntag!

Meinst du damit:
Zitat
"Hast du auf dem FHEM Server bluez-package auch installiert."
dass das bei mir im Docker installiert sein muss oder auf dem Client der die Dongel dran hat?

Ich war der Meinung, wenn das Gattool auf dem remote System funktioniert würde das ausreichen...

Den Docker würde ich gerne verwenden, dass man einfaches Backup hat und auf dem Host nur ein Grundsystem benötigt und auch ein Umzug sehr einfach bleibt...
Da ich mich mit Docker aber auch nur rudimentär auskenne werde ich es  lieber erstmal mit Fhem lassen, weil ich mir sicher nur Probleme einhandle.
Hätte ich die Installation gestern normal begonnen würde mein neuer Fhem Server sicher schon vernünftig laufen.

Mein erster hatte ich auf einem R.PI1 Laufen und mag es nun auf einen R.PI3 umstellen und dann auch sshHost einsetzen weil in der neuen Wohnung die Entfernungen deutlich größer sind als bisher..

Gruß
Roland

Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: CoolTux am 11 März 2018, 13:31:16
Hallo Roland,

Du müsstest bluez bitte auch lokal auf dem Server installieren. Grund dafür ist das man den Test ob gatttool vorhanden und ausführbar ist leider Code mäßig nicht so toll hinbekommt. Es ist also eine Art schummel im Moment. Wollte aber Dominiks Code nicht eigenmächtig ganz kaputt machen.


Grüße
Leon
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: su.puk am 11 März 2018, 14:11:08
Hallo  CoolTux,

danke für die Lösung ;-)!

Das war`s, ich habe bluez und bluez-tools nach installiert und siehe da es läuft sofort...

Jetzt muss ich es nur noch in das Image einbauen für den Neustart.

Aber dennoch werde ich überlegen Fhem doch ohne Docker laufen zu lassen, da ich noch weitere Projekte mit Bluetooth realisieren möchte und nicht weiß ob ich das auch zum laufen bekomme. (zb. Anwesenheitskontrolle)

Aber jetzt schon mal vielen Dank für die Lösung!

Gruß
Roland
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Gasmast3r am 11 März 2018, 14:18:50
Zitat von: su.puk am 11 März 2018, 14:11:08
Hallo  CoolTux,

danke für die Lösung ;-)!

Das war`s, ich habe bluez und bluez-tools nach installiert und siehe da es läuft sofort...

Jetzt muss ich es nur noch in das Image einbauen für den Neustart.

Aber dennoch werde ich überlegen Fhem doch ohne Docker laufen zu lassen, da ich noch weitere Projekte mit Bluetooth realisieren möchte und nicht weiß ob ich das auch zum laufen bekomme. (zb. Anwesenheitskontrolle)

Aber jetzt schon mal vielen Dank für die Lösung!

Gruß
Roland
Hy Roland Anwesenheit per Bluetooth würde ich auf einen getrenten pi laufenlassen da sich sonst alles gegenseitig blockiert.
Habe 2 Zero's als cam inkl Anwesenheit am laufen sobald ich aber die Thermostate per ssh dazunehme spinnt die Anwesenheitserkennung rum.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: CoolTux am 11 März 2018, 14:53:35
Zitat von: Gasmast3r am 11 März 2018, 14:18:50
Hy Roland Anwesenheit per Bluetooth würde ich auf einen getrenten pi laufenlassen da sich sonst alles gegenseitig blockiert.
Habe 2 Zero's als cam inkl Anwesenheit am laufen sobald ich aber die Thermostate per ssh dazunehme spinnt die Anwesenheitserkennung rum.

Dem kann ich nur bedingt zustimmen. Ich hatte lepresenced normal am laufen und die Anwesenheit spinnte. Mit einer aktuellen lepresenced Version und installierten hcidump kann ich beides laufen lassen.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: su.puk am 20 März 2018, 18:12:36
So wollte mich mal zurück melden,

also das mit dem Docker hab ich erstmal auf Eis gelegt mit Fhem, die Maria DB läuft auf einem anderen Server im Docker....
Ich habe nun einen RPI3 als Fhem Server mit onboard Bluetooth und einem Dongel  und einen RPI1 mit einem weiteren Dongel als sshHost im Wohnzimmer, grundsätzlich funktioniert es (meistens).

Ich bekomme zb. keine valvePosition, ist das richtig oder hab ich da ein Fehler?   
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Gasmast3r am 21 März 2018, 11:13:35
Hallo, also ich bekomme die werte dauert aber stellenweise bis zur Aktualisierung.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 21 März 2018, 12:15:59
Also generell sehe ich die auch ab und an - habe aber nie drauf geachtet und großteils sind bei mir die Teile eh zu, also bei 0, weil gerade keine Heizleistung erforderlich ist.
Ansonsten muss ich aber auch sagen..... ist mir persönlich die Position der Ventile schnuppe :-D Steuern kann man diese ja eh nicht direkt.

Wichtig finde ich bei dem Ganzen die Möglichkeit zu regeln und das funktioniert wunderbar. Wobei man schauen muss, dass die Reichweite passt. Aber falls diese mal nicht passt (merkt man an den ErrorCountern und nicht gesetzten Temperaturen) ein Raspberry Pi ZeroW (WLAN und BT) und mittels SSH Host die Reichweite einfach erweitern.

Was ich bisher sagen kann:

- ECO wird nicht übertragen ob 1 oder 0 (ist aber auch nicht so wahnsinnig wichtig)
- Boost funktioniert wunderbar
- Childlock funktioniert wunderbar
- Regelung der Temperatur funktioniert wunderbar (Ich habe alle mittels SSH Host dran)

Wünschenswert für die Zukunft aus meiner persönlichen Sicht (nach Prio):
- Window Open per Befehl aktivieren (wenn überhaupt machbar)
- Einstellbares Abfrageintervall (die aktuelle Frequenz ist denke ich {ohne Erfahrung} sehr batterielastig
- ECO 1 oder 0 Anzeige

Aber sonst wüsste ich nix und bin sehr gespannt auf die Abrechnung nächstes Jahr. Vorher haben einige Heizkörper bei uns einen regelmäßigen BurnIn Test veranstaltet. Und es war meist erschlagend warm, wenn man rein kam, so dass direkt gelüftet wurde.

PS: @dominik ist die letzte Version mit der korrektur für SSH von CoolTux eigentlich eingecheckt worden :-) ?
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: su.puk am 21 März 2018, 15:43:12
So habe heute morgen alles noch mal neu gestartet und hatte plötzlich fast alle Werte. Bis auf Windows Open sind mir die anderen nicht so wichtig. Das Ventil zeige ich paralell in einem Plot mit der Temperatur an und der desitedTemp. Brauchen tue ich es eigentlich nicht aber interesant find ich das schon....

Was ich vorhin noch bemerkt habe, mein pi1 hat speicherprobleme, das muss ich aber noch analysieren. Kann mich per ssh nicht mehr anmelden im Moment.

Danke schon mal für eure Infos

Roland

Sorry wegen der Fehler ich tippe nicht gerne am Handy...
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: su.puk am 21 März 2018, 16:51:06
Noch eine Frage,

ist es sinnvoll am sshHost mehrere Dongel anzuschließen (wenn das überhaupt unterstützt wird) oder besser pro host einen Dongel?
Weil irgendwie dauert es als ewig bis das Thermostat im Wohnzimmer (2m weit entfernt) reagiert und am FhemPi der 2 andere Thermostate steuert läuft das besser und da habe ich 2 Bluetoothdevices aktiv.

Gruß
Roland

Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 21 März 2018, 18:08:24
Es werden alle verfügbaren BT Interfaces genutzt soweit ich das erkenne.

Ab und an ist es mal was gutes BT aus und an zu machen wenn man zuviel gewollt hat :-D
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Gasmast3r am 28 März 2018, 16:10:56
Hy seit dem Update per FHEM habe ich folgende Einträge


PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/10_EQ3BT.pm line 528.

Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 28 April 2018, 01:01:37
Mahlzeit - weiß jemand, ob das Modul schon in der Änderungsversion von CoolTux ins Repo kam?
Dominik hatte ja seither nix geschrieben - ich hatte jetzt mehrere Tage Abstürze während meiner Abwesenheit weil anscheind das Update die Moduldatei wieder in den "Alt" Zustand brachte - sehr unschön.

Die Version von CoolTux habe ich ja nun über lange Zeit validiert.

Hab jetzt aktuell definitiv wieder die alte Version... massiv über ssh gatttool ohne timeout (an die tausende).

EDIT: Schlimmer Version war richtig..... ich glaub der Umbau war nochmal anders geworden und ich kann keine Timeouts mehr sehen weil es nun innerhalb von FHEM gefrühstückt wurde.
Jedenfalls hatte ich aber vorhion masssssssiiiv gatttools am laufen.

Ich beobachte nochmal neu...
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: cotecmania am 24 Juli 2018, 16:34:56
Hallo,

seit kurzem funktioniert mein Device nicht mehr :

pi@RaspyPI3:~ $ sudo hcitool lescan
LE Scan ...
00:1F:FF:41:52:28 PR BT D373
00:1A:22:07:4A:DB (unknown)
00:1A:22:07:4A:DB CC-RT-BLE
00:1A:22:07:4A:DB (unknown)
pi@RaspyPI3:~ $ gatttool -b 00:1A:22:07:4A:DB -i hci0 --char-write-req --handle=0x0411 --value=00 --listen
connect error: Connection refused (111)


fhem Error : 2018.07.24 00:40:40 3: EQ3BT (HK_WC_EG): updateStatus, 0x0411, 031207180028 failed 20 times.
2018.07.24 00:51:45 3: EQ3BT (HK_WC_EG): updateStatus, 0x0411, 031207180033 failed 20 times.
2018.07.24 01:02:52 3: EQ3BT (HK_WC_EG): updateStatus, 0x0411, 031207180102 failed 20 times.
2018.07.24 01:14:48 3: EQ3BT (HK_WC_EG): updateStatus, 0x0411, 03120718010E failed 20 times.
2018.07.24 01:26:08 3: EQ3BT (HK_WC_EG): updateStatus, 0x0411, 031207180119 failed 20 times


list
Internals:
   DEF        00:1A:22:07:4A:DB
   MAC        00:1A:22:07:4A:DB
   NAME       HK_WC_EG
   NR         853
   STATE      initialized
   TYPE       EQ3BT
   VERSION    2.0.4
   READINGS:
     2018-03-30 22:40:13   battery         ok
     2018-07-24 16:31:47   bluetoothDevice hci0
     2017-03-09 10:21:48   boost           0
     2018-03-06 09:50:54   childlock       0
     2018-04-22 08:00:55   consumption     153744.172
     2018-07-02 00:03:36   consumptionToday 0.000
     2018-07-02 00:00:38   consumptionYesterday 0
     2018-07-01 22:00:07   desiredTemperature 15.0
     2017-03-09 10:21:48   ecoMode         0
     2016-12-12 13:30:08   error           
     2018-07-23 22:18:59   errorCount-setDesiredTemperature 24
     2018-07-24 16:24:36   errorCount-updateStatus 7125
     2018-07-24 15:28:28   errorCount-updateSystemInformation 252
     2018-07-02 20:48:24   firmware        110
     2018-07-01 22:00:07   lastChangeBy    FHEM
     2018-04-22 08:05:51   mode            Manual
     2018-07-02 21:14:34   valvePosition   0
     2017-03-09 10:21:48   windowOpen      0
   helper:
     currenthcidevice 0
     handlesetDesiredTemperature 0x0411
     handleupdateStatus 0x0411
     handleupdateSystemInformation 0x0411
     listensetDesiredTemperature setDesiredTemperature failed
     listenupdateStatus updateStatus failed
     listenupdateSystemInformation updateSystemInformation failed
     retryCounterHci0 4
     retryCountersetDesiredTemperature 0
     retryCounterupdateStatus 12
     retryCounterupdateSystemInformation 0
     valuesetDesiredTemperature 411E
     valueupdateStatus 031207181020
     valueupdateSystemInformation 00
     RUNNING_PID:
       abortFn    EQ3BT_updateStatusFailed
       arg        HK_WC_EG|00:1A:22:07:4A:DB|updateStatus|0x0411|03|listen
       bc_pid     43141
       finishFn   EQ3BT_processGatttoolResult
       fn         EQ3BT_execGatttool
       pid        7625
       telnet     telnetPort_127.0.0.1_41240
       timeout    300
       abortArg:
     hcidevices:
       0
Attributes:
   alias      WC-EG
   room       Heizung


Hat sich da über updates was geändert ?

Gruss
Joe
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 30 Juli 2018, 11:58:21
 :D Moin,

ich kann von keiner Veränderung sprechen - habe gerade extra alles geupdatet. Funktioniert weiterhin alles prima.

An FHEM und dem Modul kann es also nicht liegen.

Hast du eventuell an deinem System was geändert?
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 11 September 2018, 14:13:59
Ich habe gerade eben mal gemerkt, dass man die Thermostate gar nicht auf 30° fahren konnte mittels normaler Steuerung.

Im Thermostat selbst gilt 30° als on also als dauerhaft offen.
Ich habe mir das nun so gebaut, dass das normal im Modul machbar ist über den Slider und die Grenze von 29.5° auf 30° gehoben. Merkte es, da es auf die 30° über MQTT nicht reagierte.

Warum das nun so war keine Ahnung hat sich aber bestimmt jemand was bei gedacht gehabt - ich wollte es anders haben und hab es mir angepasst. Falls jemand das auch haben will - ist angehängt:

Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: costa2 am 18 September 2018, 17:55:02
Zitat von: Gasmast3r am 28 März 2018, 16:10:56
Hy seit dem Update per FHEM habe ich folgende Einträge


PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/10_EQ3BT.pm line 528.


Ich ebenfalls.
Gibt es schon eine Lösung?
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 18 September 2018, 19:52:13
Also ich hab den Fehler nicht.

Gerade extra ins Log geschaut. Mach mal shutdown restart und schau nochmal nach ansonsten mach mal shutdown und stoppe den Service komplett sudo service fhem stop und dann starte ihn erneut sudo service fhem start.
(Nicht ärgern ich weiß ja nicht wie vertraut du mit Linux bist daher schreib ich es einfach direkt hin.)
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: costa2 am 18 September 2018, 22:05:04
Das bringt nichts.
Ich habe sogar das System rebootet, der Fehler bleibt, es werden auch die Readings nicht aktualisiert.
Die Thermostaten sind tot.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 18 September 2018, 22:09:43
Dann nimm doch mal die Modulversion aus meiner Datei (sichere deine vorher).

Bei mir läuft alles wunderbar - die 5 Thermostate sind seit Kauf mit dem Modul am laufen und auch in NodeRed eingebunden mittels MQTT.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: costa2 am 21 September 2018, 17:59:46
Hat auch nichts gebracht.
Ich habe die Warnung nun im Modul mit "no warnings 'uninitialized';" deaktiviert, sonst explodiert das Logfile.
Auswirkungen auf die Funktion des Moduls hat der Fehler scheinbar nicht.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 25 September 2018, 13:30:11
Hast du ggf. dein OS nicht aktuell? Perl etc...
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Gasmast3r am 04 Oktober 2018, 06:27:48
Hy habe die Fehlermeldung seit die Heizung wieder regelmäßig läuft.
PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/10_EQ3BT.pm line 522.

System ist Aktuell.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: CoolTux am 04 Oktober 2018, 08:22:31
Ich habe einige Verbesserungen eingebaut. Im ssh Modus gab es einen Fehler und ich habe noch ein Loglevel für BlockingCall eingebaut.
Bitte testet es einmal. Gerade die Leute welche SSH verwenden. Danke

Wenn alles soweit funktioniert werde ich Dominik einen Patch zukommen lassen.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Gasmast3r am 04 Oktober 2018, 08:23:47
Werde ich gleich mal einspielen und berichten

Gesendet mit Tapatalk

Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Gasmast3r am 04 Oktober 2018, 09:07:51
Hy habe es eingespielt ein Reload gemacht und die Heizung gestellt, bis jetzt keine Fehler entdeckt
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: CoolTux am 04 Oktober 2018, 09:09:55
Freut mich. Bitte berichte mal Ende der Woche noch mal was der Langzeitlauf bringt.
Verwendest Du noch SSH?
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Gasmast3r am 04 Oktober 2018, 09:11:42
Hy ja werde berichten.
Ja nutze es für 3 Thermostate über 3 Pi's

Gesendet mit Tapatalk

Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 04 Oktober 2018, 09:48:39
Klasse danke @CoolTux!  8)

Ich hab 6 von den Teilen alle über SSH drin. Update gleich mal und dann schauen wir mal ne Woche.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Gasmast3r am 07 Oktober 2018, 13:28:55
Hy habe bis jetzt keine Fehler mehr im Log, schaltet auch alles wie es soll.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 07 Oktober 2018, 13:35:20
 :D Kann ich bestätigen - läuft alles sauber ohne Meldungen.  8)
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: CoolTux am 07 Oktober 2018, 14:41:19
Dann werde ich mal versuchen Dominik zu erreichen
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 07 Oktober 2018, 20:55:10
Danke CoolTux für die Weiterentwicklung!

Ich habe deine Version gerade ins SVN eingecheckt :)
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: IT-Fuzzi am 26 November 2018, 07:58:05
Super Modul - vielen Dank!

Leider nutze ich seit kurzem die aktuellste Firmware (1.2.0) auf den Thermostaten, sowie die aktuellste Version des Moduls (v2.0.4). Seitdem habe ich das Problem, dass es mir scheinbar beim "Update Status" die Systemzeit auf den Thermostaten zerschießt, dort steht dann z.B. "23.07.2038" und die Uhrzeit passt ebenfalls nicht mehr. Was dann zur Folge hat, dass der Wochenplan auf den Thermostaten natürlich überhaupt nicht mehr passt. Ich bin mir nicht ganz sicher ob das Problem die aktuelle Firmware/FHEM-Modul ist, ich glaube ich hatte das Problem schon mit der alten - da es zu dem Zeitpunkt aber noch recht warm draußen war ist es mir nicht so aufgefallen, dass das Thermostat falsch ging.

Wenn ich mir die Changelogs des Moduls durchlese, dann scheint so etwas ganz am Anfang auch bereits schon mal vorgekommen zu sein (v1.0.3 & v1.0.5)?!

Hat sonst noch jemand das Problem? Oder ein ähnliches Problem das von einer anderen Fehlerquelle kam?
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 26 November 2018, 12:40:17
Moin,

gibt es eigentlich einen Grund dafür, dass die Thermostate ein fiktives Zukunftsdatum gesendet bekommen?
Es wäre doch bestimmt ein einfaches wirklich das aktuelle zu nutzen. Bei mir ist irgendwie bei allen das Jahr 2038 oder ähnlich.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: IT-Fuzzi am 07 Dezember 2018, 19:08:55
Also ich nutze seit einigen Tagen wieder die alte Version den Moduls (von letzter Heizsaison v2.0.3 - 20171218), und seither habe ich keine Problem mehr mit sich verstellenden Thermostaten bzgl. Datum/Uhrzeit.

Viele Grüße  ;)
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: costa2 am 11 Dezember 2018, 16:57:25
Heute habe ich ein Fhem Update gemacht, der Fehler ist wieder da.

PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/10_EQ3BT.pm line 525.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: CoolTux am 12 Dezember 2018, 09:20:44
zeig mal bitte ein list vom Device
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: costa2 am 12 Dezember 2018, 14:19:16
Internals:
   DEF        00:1A:22:0D:6E:19 raspi2
   MAC        00:1A:22:0D:6E:19
   NAME       bad_heizung
   NR         951
   STATE      initialized
   TYPE       EQ3BT
   VERSION    2.0.5
   loglevel   4
   Helper:
     DBLOG:
       bluetoothDevice:
         logdb:
           TIME       1544596034.72041
           VALUE      hci
       consumption:
         logdb:
           TIME       1544606374.44275
           VALUE      -114.509
       consumptionToday:
         logdb:
           TIME       1544606374.49359
           VALUE      286.574
       consumptionYesterday:
         logdb:
           TIME       1544569362.02102
           VALUE      621.029
       desiredTemperature:
         logdb:
           TIME       1544606219.80229
           VALUE      13.0
       firmware:
         logdb:
           TIME       1544618310.38436
           VALUE      110
       lastChangeBy:
         logdb:
           TIME       1544606219.72965
           VALUE      FHEM
       state:
         logdb:
           TIME       1544606215.72874
           VALUE      desiredTemperature 13
       valvePosition:
         logdb:
           TIME       1544620504.8222
           VALUE      0
   READINGS:
     2018-09-21 17:34:40   battery         ok
     2018-12-12 07:27:14   bluetoothDevice hci
     2018-09-21 17:34:40   boost           0
     2018-09-21 17:34:40   childlock       0
     2018-12-12 10:19:34   consumption     -114.509
     2018-12-12 10:19:34   consumptionToday 286.574
     2018-12-12 00:02:42   consumptionYesterday 621.029
     2018-12-12 10:16:59   desiredTemperature 13.0
     2018-09-21 17:34:40   ecoMode         0
     2018-09-22 12:42:48   errorCount-setDesiredTemperature 0
     2018-12-10 14:31:57   errorCount-updateStatus 2
     2018-12-10 14:34:51   errorCount-updateSystemInformation 1
     2018-12-12 13:38:30   firmware        110
     2018-12-12 10:16:59   lastChangeBy    FHEM
     2018-11-03 09:16:08   mode            Automatic
     2018-12-12 14:15:04   valvePosition   0
     2018-11-26 10:02:12   windowOpen      0
   helper:
     currenthcidevice 0
     handlesetDesiredTemperature 0x0411
     handleupdateStatus 0x0411
     handleupdateSystemInformation 0x0411
     listensetDesiredTemperature
     listenupdateStatus 02 01 08 00 04 1a
     listenupdateSystemInformation 01 6e 00 00 7f 75 81 61 66 61 63 65 60 63 a7
     retryCounterHci0 4
     retryCountersetDesiredTemperature 0
     retryCounterupdateStatus 0
     retryCounterupdateSystemInformation 0
     valuesetDesiredTemperature 411A
     valueupdateStatus 03120C0C0E0E
     valueupdateSystemInformation 00
     hcidevices:
Attributes:
   room       Heizung
   sshHost    pi@raspi2


Allerdings weiß ich gar nicht, ob alle Thermostaten den Fehler verursachen, oder nur Einer.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: CoolTux am 12 Dezember 2018, 14:51:40

valueupdateSystemInformation 00
     hcidevices:
Attributes:


Bei mir steht unter hcidevices: noch eine 0
Das würde dann auch passen mit der Aussage
PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/10_EQ3BT.pm line 525.
Bei Dir steht kein Wert und deswegen kann der Code in Zeile 525 auch keine Wertezuweisung machen. Warum das so ist vermag ich aber nicht zu sagen.

my $hciDevice = "hci".$hash->{helper}{hcidevices}[$hash->{helper}{currenthcidevice}];


Was ist wenn Du in der Detailansicht des Devices auf DEF klickst und dann gleich auf modify. Dann kurz warten und noch mal ein list machen.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: costa2 am 12 Dezember 2018, 15:07:07
Ein modify hat nichts geändert.

Internals:
   DEF        00:1A:22:0D:6E:19 raspi2
   MAC        00:1A:22:0D:6E:19
   NAME       bad_heizung
   NR         951
   STATE      initialized
   TYPE       EQ3BT
   VERSION    2.0.5
   loglevel   4
   Helper:
     DBLOG:
       bluetoothDevice:
         logdb:
           TIME       1544623559.21003
           VALUE      hci
       firmware:
         logdb:
           TIME       1544623258.41555
           VALUE      110
       valvePosition:
         logdb:
           TIME       1544623492.73014
           VALUE      0
   READINGS:
     2018-09-21 17:34:40   battery         ok
     2018-12-12 15:05:59   bluetoothDevice hci
     2018-09-21 17:34:40   boost           0
     2018-09-21 17:34:40   childlock       0
     2018-12-12 10:19:34   consumption     -114.509
     2018-12-12 10:19:34   consumptionToday 286.574
     2018-12-12 00:02:42   consumptionYesterday 621.029
     2018-12-12 10:16:59   desiredTemperature 13.0
     2018-09-21 17:34:40   ecoMode         0
     2018-09-22 12:42:48   errorCount-setDesiredTemperature 0
     2018-12-10 14:31:57   errorCount-updateStatus 2
     2018-12-10 14:34:51   errorCount-updateSystemInformation 1
     2018-12-12 15:00:58   firmware        110
     2018-12-12 10:16:59   lastChangeBy    FHEM
     2018-11-03 09:16:08   mode            Automatic
     2018-12-12 15:04:52   valvePosition   0
     2018-11-26 10:02:12   windowOpen      0
   helper:
     currenthcidevice 0
     handleupdateStatus 0x0411
     handleupdateSystemInformation 0x0411
     listenupdateStatus 02 01 08 00 04 1a
     listenupdateSystemInformation no gatttool binary found. Please check if bluez-package is properly installed
     retryCounterHci0 1
     retryCounterupdateStatus 0
     retryCounterupdateSystemInformation 1
     valueupdateStatus 03120C0C0F04
     valueupdateSystemInformation 00
     hcidevices:
Attributes:
   room       Heizung
   sshHost    raspi2


Ein anderer Thermostat:

Internals:
   DEF        00:1A:22:0D:61:55 raspi2
   MAC        00:1A:22:0D:61:55
   NAME       sz_heizung
   NR         933
   STATE      initialized
   TYPE       EQ3BT
   VERSION    2.0.5
   loglevel   4
   Helper:
     DBLOG:
       firmware:
         logdb:
           TIME       1544623258.35811
           VALUE      110
       valvePosition:
         logdb:
           TIME       1544623633.92648
           VALUE      0
   READINGS:
     2018-09-21 17:41:51   battery         ok
     2018-12-12 15:00:20   bluetoothDevice hci
     2018-09-21 17:41:51   boost           0
     2018-09-21 17:41:50   childlock       0
     2018-12-12 03:00:35   consumption     785.547
     2018-12-12 03:00:35   consumptionToday 2.334
     2018-12-12 00:01:56   consumptionYesterday 40.26
     2018-12-12 08:59:09   desiredTemperature 8.0
     2018-09-21 17:41:50   ecoMode         0
     2018-12-10 14:34:17   errorCount-updateStatus 1
     2018-12-10 14:34:45   errorCount-updateSystemInformation 1
     2018-12-12 15:00:58   firmware        110
     2018-12-12 08:59:09   lastChangeBy    Thermostat
     2018-09-21 17:41:51   mode            Manual
     2018-12-12 15:07:13   valvePosition   0
     2018-12-12 08:59:09   windowOpen      0
   helper:
     currenthcidevice 0
     handleupdateStatus 0x0411
     handleupdateSystemInformation 0x0411
     listenupdateStatus 02 01 09 00 04 10
     listenupdateSystemInformation 01 6e 00 00 7f 75 81 61 66 61 60 62 61 69 a7
     retryCounterupdateStatus 0
     retryCounterupdateSystemInformation 0
     valueupdateStatus 03120C0C0F06
     valueupdateSystemInformation 00
     hcidevices:
Attributes:
   room       Heizung
   sshHost    pi@raspi2
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: CoolTux am 12 Dezember 2018, 15:16:54
Hast mal meinen Tip versucht?
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: costa2 am 12 Dezember 2018, 15:20:42
Was ist wenn Du in der Detailansicht des Devices auf DEF klickst und dann gleich auf modify. Dann kurz warten und noch mal ein list machen.

Das?

Ja, hat nichts geändert.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: CoolTux am 12 Dezember 2018, 15:24:55
Ja das meinte ich.
Ich kann auch auf dem Holzweg sein. Eventuell kann ein Dritter noch mal bei sich schauen.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: costa2 am 12 Dezember 2018, 15:29:45
Es sieht bei allen Thermostaten gleich aus.

valueupdateSystemInformation 00
     hcidevices:
Attributes:
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: CoolTux am 12 Dezember 2018, 15:43:34
Kommt die Meldung ständig oder nur einmal nach einem Neustart?
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: costa2 am 12 Dezember 2018, 16:00:53
Ständig.

2018.12.12 16:05:39 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/10_EQ3BT.pm line 525.
2018.12.12 16:05:39 1: stacktrace:
2018.12.12 16:05:39 1:     main::__ANON__                      called by ./FHEM/10_EQ3BT.pm (525)
2018.12.12 16:05:39 1:     main::EQ3BT_execGatttool            called by FHEM/Blocking.pm (194)
2018.12.12 16:05:39 1:     main::BlockingStart                 called by FHEM/Blocking.pm (107)
2018.12.12 16:05:39 1:     main::BlockingCall                  called by ./FHEM/10_EQ3BT.pm (343)
2018.12.12 16:05:39 1:     main::EQ3BT_updateSystemInformation called by fhem.pl (3146)
2018.12.12 16:05:39 1:     main::HandleTimeout                 called by fhem.pl (649)
2018.12.12 16:05:39 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/10_EQ3BT.pm line 525.
2018.12.12 16:05:39 1: stacktrace:
2018.12.12 16:05:39 1:     main::__ANON__                      called by ./FHEM/10_EQ3BT.pm (525)
2018.12.12 16:05:39 1:     main::EQ3BT_execGatttool            called by FHEM/Blocking.pm (194)
2018.12.12 16:05:39 1:     main::BlockingStart                 called by FHEM/Blocking.pm (107)
2018.12.12 16:05:39 1:     main::BlockingCall                  called by ./FHEM/10_EQ3BT.pm (343)
2018.12.12 16:05:39 1:     main::EQ3BT_updateSystemInformation called by fhem.pl (3146)
2018.12.12 16:05:39 1:     main::HandleTimeout                 called by fhem.pl (649)
2018.12.12 16:05:39 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/10_EQ3BT.pm line 525.
2018.12.12 16:05:39 1: stacktrace:
2018.12.12 16:05:39 1:     main::__ANON__                      called by ./FHEM/10_EQ3BT.pm (525)
2018.12.12 16:05:39 1:     main::EQ3BT_execGatttool            called by FHEM/Blocking.pm (194)
2018.12.12 16:05:39 1:     main::BlockingStart                 called by FHEM/Blocking.pm (107)
2018.12.12 16:05:39 1:     main::BlockingCall                  called by ./FHEM/10_EQ3BT.pm (343)
2018.12.12 16:05:39 1:     main::EQ3BT_updateSystemInformation called by fhem.pl (3146)
2018.12.12 16:05:39 1:     main::HandleTimeout                 called by fhem.pl (649)
2018.12.12 16:06:16 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/10_EQ3BT.pm line 525.
2018.12.12 16:06:16 1: stacktrace:
2018.12.12 16:06:16 1:     main::__ANON__                      called by ./FHEM/10_EQ3BT.pm (525)
2018.12.12 16:06:16 1:     main::EQ3BT_execGatttool            called by FHEM/Blocking.pm (194)
2018.12.12 16:06:16 1:     main::BlockingStart                 called by FHEM/Blocking.pm (107)
2018.12.12 16:06:16 1:     main::BlockingCall                  called by ./FHEM/10_EQ3BT.pm (368)
2018.12.12 16:06:16 1:     main::EQ3BT_updateStatus            called by fhem.pl (3146)
2018.12.12 16:06:16 1:     main::HandleTimeout                 called by fhem.pl (649)
2018.12.12 16:06:16 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/10_EQ3BT.pm line 525.
2018.12.12 16:06:16 1: stacktrace:
2018.12.12 16:06:16 1:     main::__ANON__                      called by ./FHEM/10_EQ3BT.pm (525)
2018.12.12 16:06:16 1:     main::EQ3BT_execGatttool            called by FHEM/Blocking.pm (194)
2018.12.12 16:06:16 1:     main::BlockingStart                 called by FHEM/Blocking.pm (107)
2018.12.12 16:06:16 1:     main::BlockingCall                  called by ./FHEM/10_EQ3BT.pm (368)
2018.12.12 16:06:16 1:     main::EQ3BT_updateStatus            called by fhem.pl (3146)
2018.12.12 16:06:16 1:     main::HandleTimeout                 called by fhem.pl (649)
2018.12.12 16:06:16 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/10_EQ3BT.pm line 525.
2018.12.12 16:06:16 1: stacktrace:
2018.12.12 16:06:16 1:     main::__ANON__                      called by ./FHEM/10_EQ3BT.pm (525)
2018.12.12 16:06:16 1:     main::EQ3BT_execGatttool            called by FHEM/Blocking.pm (194)
2018.12.12 16:06:16 1:     main::BlockingStart                 called by FHEM/Blocking.pm (107)
2018.12.12 16:06:16 1:     main::BlockingCall                  called by ./FHEM/10_EQ3BT.pm (368)
2018.12.12 16:06:16 1:     main::EQ3BT_updateStatus            called by fhem.pl (3146)
2018.12.12 16:06:16 1:     main::HandleTimeout                 called by fhem.pl (649)
2018.12.12 16:07:11 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/10_EQ3BT.pm line 525.
2018.12.12 16:07:11 1: stacktrace:
2018.12.12 16:07:11 1:     main::__ANON__                      called by ./FHEM/10_EQ3BT.pm (525)
2018.12.12 16:07:11 1:     main::EQ3BT_execGatttool            called by FHEM/Blocking.pm (194)
2018.12.12 16:07:11 1:     main::BlockingStart                 called by FHEM/Blocking.pm (107)
2018.12.12 16:07:11 1:     main::BlockingCall                  called by ./FHEM/10_EQ3BT.pm (396)
2018.12.12 16:07:11 1:     main::EQ3BT_setDesiredTemperature   called by ./FHEM/10_EQ3BT.pm (280)
2018.12.12 16:07:11 1:     main::EQ3BT_Set                     called by fhem.pl (3598)
2018.12.12 16:07:11 1:     main::CallFn                        called by fhem.pl (1810)
2018.12.12 16:07:11 1:     main::DoSet                         called by fhem.pl (1843)
2018.12.12 16:07:11 1:     main::CommandSet                    called by fhem.pl (1217)
2018.12.12 16:07:11 1:     main::AnalyzeCommand                called by fhem.pl (1063)
2018.12.12 16:07:11 1:     main::AnalyzeCommandChain           called by ./FHEM/01_FHEMWEB.pm (2588)
2018.12.12 16:07:11 1:     main::FW_fC                         called by ./FHEM/01_FHEMWEB.pm (863)
2018.12.12 16:07:11 1:     main::FW_answerCall                 called by ./FHEM/01_FHEMWEB.pm (535)
2018.12.12 16:07:11 1:     main::FW_Read                       called by fhem.pl (3603)
2018.12.12 16:07:11 1:     main::CallFn                        called by fhem.pl (726)
2018.12.12 16:07:16 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/10_EQ3BT.pm line 525.
2018.12.12 16:07:16 1: stacktrace:
2018.12.12 16:07:16 1:     main::__ANON__                      called by ./FHEM/10_EQ3BT.pm (525)
2018.12.12 16:07:16 1:     main::EQ3BT_execGatttool            called by FHEM/Blocking.pm (194)
2018.12.12 16:07:16 1:     main::BlockingStart                 called by FHEM/Blocking.pm (107)
2018.12.12 16:07:16 1:     main::BlockingCall                  called by ./FHEM/10_EQ3BT.pm (396)
2018.12.12 16:07:16 1:     main::EQ3BT_setDesiredTemperature   called by ./FHEM/10_EQ3BT.pm (280)
2018.12.12 16:07:16 1:     main::EQ3BT_Set                     called by fhem.pl (3598)
2018.12.12 16:07:16 1:     main::CallFn                        called by fhem.pl (1810)
2018.12.12 16:07:16 1:     main::DoSet                         called by fhem.pl (1843)
2018.12.12 16:07:16 1:     main::CommandSet                    called by fhem.pl (1217)
2018.12.12 16:07:16 1:     main::AnalyzeCommand                called by fhem.pl (1063)
2018.12.12 16:07:16 1:     main::AnalyzeCommandChain           called by ./FHEM/01_FHEMWEB.pm (2588)
2018.12.12 16:07:16 1:     main::FW_fC                         called by ./FHEM/01_FHEMWEB.pm (863)
2018.12.12 16:07:16 1:     main::FW_answerCall                 called by ./FHEM/01_FHEMWEB.pm (535)
2018.12.12 16:07:16 1:     main::FW_Read                       called by fhem.pl (3603)
2018.12.12 16:07:16 1:     main::CallFn                        called by fhem.pl (726)
2018.12.12 16:08:59 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/10_EQ3BT.pm line 525.
2018.12.12 16:08:59 1: stacktrace:
2018.12.12 16:08:59 1:     main::__ANON__                      called by ./FHEM/10_EQ3BT.pm (525)
2018.12.12 16:08:59 1:     main::EQ3BT_execGatttool            called by FHEM/Blocking.pm (194)
2018.12.12 16:08:59 1:     main::BlockingStart                 called by FHEM/Blocking.pm (107)
2018.12.12 16:08:59 1:     main::BlockingCall                  called by ./FHEM/10_EQ3BT.pm (368)
2018.12.12 16:08:59 1:     main::EQ3BT_updateStatus            called by fhem.pl (3146)
2018.12.12 16:08:59 1:     main::HandleTimeout                 called by fhem.pl (649)
2018.12.12 16:09:14 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/10_EQ3BT.pm line 525.
2018.12.12 16:09:14 1: stacktrace:
2018.12.12 16:09:14 1:     main::__ANON__                      called by ./FHEM/10_EQ3BT.pm (525)
2018.12.12 16:09:14 1:     main::EQ3BT_execGatttool            called by FHEM/Blocking.pm (194)
2018.12.12 16:09:14 1:     main::BlockingStart                 called by FHEM/Blocking.pm (107)
2018.12.12 16:09:14 1:     main::BlockingCall                  called by ./FHEM/10_EQ3BT.pm (368)
2018.12.12 16:09:14 1:     main::EQ3BT_updateStatus            called by fhem.pl (3146)
2018.12.12 16:09:14 1:     main::HandleTimeout                 called by fhem.pl (649)
2018.12.12 16:09:50 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/10_EQ3BT.pm line 525.
2018.12.12 16:09:50 1: stacktrace:
2018.12.12 16:09:50 1:     main::__ANON__                      called by ./FHEM/10_EQ3BT.pm (525)
2018.12.12 16:09:50 1:     main::EQ3BT_execGatttool            called by FHEM/Blocking.pm (194)
2018.12.12 16:09:50 1:     main::BlockingStart                 called by FHEM/Blocking.pm (107)
2018.12.12 16:09:50 1:     main::BlockingCall                  called by ./FHEM/10_EQ3BT.pm (368)
2018.12.12 16:09:50 1:     main::EQ3BT_updateStatus            called by fhem.pl (3146)
2018.12.12 16:09:50 1:     main::HandleTimeout                 called by fhem.pl (649)


Aber es wird immer schlimmer.
Nach dem Modify des Devices nun das:

2018.12.12 15:56:02 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/10_EQ3BT.pm line 672.
2018.12.12 15:56:02 3: eval: {EQ3BT_processGatttoolResult('bad_heizung|00:1A:22:0D:6E:19|error|updateStatus|0x0411|03|no gatttool binary found. Please check if bluez-package is properly installed')}
2018.12.12 15:56:02 1: stacktrace:
2018.12.12 15:56:02 1:     main::__ANON__                      called by ./FHEM/10_EQ3BT.pm (672)
2018.12.12 15:56:02 1:     main::EQ3BT_processGatttoolResult   called by (eval 5744) (1)
2018.12.12 15:56:02 1:     (eval)                              called by fhem.pl (1116)
2018.12.12 15:56:02 1:     main::AnalyzePerlCommand            called by fhem.pl (1141)
2018.12.12 15:56:02 1:     main::AnalyzeCommand                called by fhem.pl (1063)
2018.12.12 15:56:02 1:     main::AnalyzeCommandChain           called by ./FHEM/98_telnet.pm (255)
2018.12.12 15:56:02 1:     main::telnet_Read                   called by fhem.pl (3603)
2018.12.12 15:56:02 1:     main::CallFn                        called by fhem.pl (726)


Der Thermostat reagiert nun auch nicht mehr.

Edit.
Durch das modify hat er das "pi@" in  "attr bad_heizung sshHost pi@raspi2" in der Config verloren, nun reagiert der Thermostat wieder.
Die Fehlermeldung im Log ist weiterhin vorhanden.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: costa2 am 13 Dezember 2018, 15:07:43
Nun habe ich im Modul "#use warnings;" erst einmal deaktiviert, jeden Tag 1MB an Perl Warnungen im Logfile ist mir etwas zu viel.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: IT-Fuzzi am 31 Dezember 2018, 10:28:37
Hallo,

Zitat von: Master_Nick am 26 November 2018, 12:40:17
Moin,

gibt es eigentlich einen Grund dafür, dass die Thermostate ein fiktives Zukunftsdatum gesendet bekommen?
Es wäre doch bestimmt ein einfaches wirklich das aktuelle zu nutzen. Bei mir ist irgendwie bei allen das Jahr 2038 oder ähnlich.

Meiner Meinung nach ist das derzeit ein Fehler. Das Zusammensetzen von $value müsste vor dem Zusammensetzen von $cmd passieren, ansonsten wird es nicht berücksichtigt, Codezeilen (536-551). Gibt es einen Grund wieso die Sekunden nicht synchronisiert werden?


        $cmd .= "ssh $sshHost '" if($sshHost ne 'none');
        $cmd .= "timeout " . AttrVal($name, "timeout", 15) . " " if($listen);
        $cmd .= "gatttool -i $hciDevice -b $mac ";
        $cmd .= "--char-write-req -a $handle -n $value";
        $cmd .= " --listen" if($listen);
        $cmd .= " 2>&1 /dev/null";
        $cmd .= "'" if($sshHost ne 'none');           
       

        if($value eq "03") {
            my ($sec, $min, $hour, $mday, $mon, $year, $wday, $yday, $isdst) = localtime(time);
            my $currentDate = sprintf("%02X%02X%02X%02X%02X", $year+1900-2000, $mon+1, $mday, $hour, $min);
            $value .= $currentDate;
        }


Viele Grüße
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: CoolTux am 31 Dezember 2018, 10:51:17
Ich habe mir das im Code gerade eben angeschaut. Es stimmt. Die Reihenfolge der Codeblocks ist Fehlerhaft und muss umgedreht werden.
Aus

        $cmd .= "ssh $sshHost '" if($sshHost ne 'none');
        $cmd .= "timeout " . AttrVal($name, "timeout", 15) . " " if($listen);
        $cmd .= "gatttool -i $hciDevice -b $mac ";
        $cmd .= "--char-write-req -a $handle -n $value";
        $cmd .= " --listen" if($listen);
        $cmd .= " 2>&1 /dev/null";
        $cmd .= "'" if($sshHost ne 'none');
       
       
       

        if($value eq "03") {
            my ($sec, $min, $hour, $mday, $mon, $year, $wday, $yday, $isdst) = localtime(time);
            my $currentDate = sprintf("%02X%02X%02X%02X%02X", $year+1900-2000, $mon+1, $mday, $hour, $min);
            $value .= $currentDate;
        }


Muss

        if($value eq "03") {
            my ($sec, $min, $hour, $mday, $mon, $year, $wday, $yday, $isdst) = localtime(time);
            my $currentDate = sprintf("%02X%02X%02X%02X%02X", $year+1900-2000, $mon+1, $mday, $hour, $min);
            $value .= $currentDate;
        }


        $cmd .= "ssh $sshHost '" if($sshHost ne 'none');
        $cmd .= "timeout " . AttrVal($name, "timeout", 15) . " " if($listen);
        $cmd .= "gatttool -i $hciDevice -b $mac ";
        $cmd .= "--char-write-req -a $handle -n $value";
        $cmd .= " --listen" if($listen);
        $cmd .= " 2>&1 /dev/null";
        $cmd .= "'" if($sshHost ne 'none');


werden.

Super aufgepasst IT-Fuzzi. Vielen Dank Dir.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 01 Januar 2019, 15:23:15
Frohes Neues  ;D

Ich denke mal Sekunden sind raus, da man am Gerät auch keine Sekunden einstellen kann.
Das Kann Tag, Monat, Jahr, Stunden und Minuten.

Aber dann schau ich das mal bei Gelegenheit an um es auf das korrekte Datum zu bringen.
Bei der Gelegenheit werde ich dann auch die Maximalwerte auf 30 setzen.
Die Thmerostate haben Off bei 4.5 und On bei 30. Das Modul geht nur bis 29 - etwas sinnlos :-)


*EDIT ah da war CoolTux schneller :-D
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Gasmast3r am 09 Januar 2019, 17:40:40
hallo habe neuerdings folgende log Einträge


bash: Zeile 1: 27474 Ungültiger Maschinenbefehl   timeout 15 gatttool -i hci0 -b 00:1A:22:05:F8:8F --char-write-req -a 0x0411 -n 03 --listen /dev/null 2>&1
bash: Zeile 1: 27562 Ungültiger Maschinenbefehl   timeout 15 gatttool -i hci0 -b 00:1A:22:05:F8:8F --char-write-req -a 0x0411 -n 4109 --listen /dev/null 2>&1
bash: Zeile 1: 27590 Ungültiger Maschinenbefehl   timeout 15 gatttool -i hci0 -b 00:1A:22:05:F8:8F --char-write-req -a 0x0411 -n 03 --listen /dev/null 2>&1
bash: Zeile 1: 27650 Ungültiger Maschinenbefehl   timeout 15 gatttool -i hci0 -b 00:1A:22:05:F8:8F --char-write-req -a 0x0411 -n 4109 --listen /dev/null 2>&1
bash: Zeile 1: 27706 Ungültiger Maschinenbefehl   timeout 15 gatttool -i hci0 -b 00:1A:22:05:F8:8F --char-write-req -a 0x0411 -n 03 --listen /dev/null 2>&1
bash: Zeile 1: 27767 Ungültiger Maschinenbefehl   timeout 15 gatttool -i hci0 -b 00:1A:22:05:F8:8F --char-write-req -a 0x0411 -n 4109 --listen /dev/null 2>&1
bash: Zeile 1: 27823 Ungültiger Maschinenbefehl   timeout 15 gatttool -i hci0 -b 00:1A:22:05:F8:8F --char-write-req -a 0x0411 -n 03 --listen /dev/null 2>&1
bash: Zeile 1: 27881 Ungültiger Maschinenbefehl   timeout 15 gatttool -i hci0 -b 00:1A:22:05:F8:8F --char-write-req -a 0x0411 -n 4109 --listen /dev/null 2>&1
bash: Zeile 1: 27939 Ungültiger Maschinenbefehl   timeout 15 gatttool -i hci0 -b 00:1A:22:05:F8:8F --char-write-req -a 0x0411 -n 03 --listen /dev/null 2>&1


habe nur ein Thermostat Per SSH am laufen und genau das was diese log Einträge erzeugt.

Per SSH kann ich mich auf den passenden Pi ohne PW anmelden, also schlisse ich das eine Fehler aus.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 09 Januar 2019, 18:23:06
Mh bei mir ist nichts derlei vorhanden bei 7 EQ3 in Nutzung mittels SSH Host.
Sicher, dass nicht was in die Brüche ging? Würde den Weg nochmal prüfen.

Ggf reboot.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Gasmast3r am 09 Januar 2019, 18:24:38
Werde ich morgen noch mal testen derzeit ist SSH abgestellt morgen schaue ich mal was sich getan hat.

Gesendet von meinem SNE-LX1 mit Tapatalk

Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 22 Januar 2019, 22:18:24
Habe gerade das Modul aktualisiert, damit nun wieder die richtige Zeit auf den Thermostaten gesetzt wird.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 23 Januar 2019, 00:58:25
Ich hatte den Fix getestet und es war direkt wieder korrekt :-)

Kann man aus den 29° maximum bitte 30° machen? :-)
Nur dann sind die Thermostate wirklich auf on und wir haben ja auch 4.5 als off :-)
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: cotecmania am 27 Januar 2019, 10:15:27
Hallo,

habe aktuell folgende Fehlermeldungen im Log.
2019.01.27 00:31:53 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/10_EQ3BT.pm line 528.
2019.01.27 00:34:52 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/10_EQ3BT.pm line 528.
2019.01.27 00:38:15 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/10_EQ3BT.pm line 528.
2019.01.27 00:41:09 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/10_EQ3BT.pm line 528.
2019.01.27 00:44:21 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/10_EQ3BT.pm line 528.


Was kann das sein ?
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 28 Januar 2019, 10:41:28
Als erstes empfehle ich bei sowas einen sauberen restart von FHEM "shutdown restart" und schauen ob es weiterhin so ist.

Oftmals geht es dann schon flöten (gleiche Meldung bei mir).
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: CoolTux am 28 Januar 2019, 10:44:55
Zitat von: cotecmania am 27 Januar 2019, 10:15:27
Hallo,

habe aktuell folgende Fehlermeldungen im Log.
2019.01.27 00:31:53 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/10_EQ3BT.pm line 528.
2019.01.27 00:34:52 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/10_EQ3BT.pm line 528.
2019.01.27 00:38:15 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/10_EQ3BT.pm line 528.
2019.01.27 00:41:09 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/10_EQ3BT.pm line 528.
2019.01.27 00:44:21 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/10_EQ3BT.pm line 528.


Was kann das sein ?

Zeig Mal bitte ein list vom device
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: cotecmania am 28 Januar 2019, 21:20:47
Japp. Restart. Dann wars weg ...
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 28 Januar 2019, 21:22:27
 ;) Gib dem CoolTux bitte dennoch sein List


Eventuell findet er ja was und kann was verbessern.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: rudeboy am 13 Februar 2019, 11:16:15
Hallo zusammen,

habe jetzt auch zwei EQ3 Thermostate bei mir zuhause verbaut.
Lief auch alles recht gut nach dem Einrichten. Nur ist mir aufgefallen, dass FHEM nach ca. 5 bis 10 min. die Verbindung zu den Thermostaten verliert und folgende Meldungen im Log auftauchen:

EQ3BT (wz.hk.mitte): updateStatus, 0x0411, 0313020D0A32 failed 20 times.
EQ3BT (wz.hk.rechts): updateStatus, 0x0411, 0313020D0A32 failed 20 times.
EQ3BT (wz.hk.rechts): updateSystemInformation, 0x0411, 00 failed 20 times.
EQ3BT (wz.hk.mitte): updateSystemInformation, 0x0411, 00 failed 20 times.
EQ3BT (wz.hk.rechts): updateStatus, 0x0411, 0313020D0A34 failed 20 times.
EQ3BT (wz.hk.mitte): updateStatus, 0x0411, 0313020D0A36 failed 20 times.
EQ3BT (wz.hk.rechts): updateStatus, 0x0411, 0313020D0A37 failed 20 times. ...


mach ich dann auf der shell ein
sudo hciconfig hci0 down
sudo hciconfig hci0 up

läuft alles wieder 5 bis 10 min. bis die Fehlermeldungen wieder im Log auftauchen.
Probleme wegen Entfernung kann ich hier fast ausschließen, da es ja für ca. 10 min. funktioniert...
Benutze das interne Bluetooth Modul vom Raspberry.

Hatte/hat jemand von Euch auch dieses Problem bzw. kennt einer eine Lösung?

Vielen Dank im Voraus
Rudy
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Gasmast3r am 13 Februar 2019, 11:36:54
Hast du noch was anderes am Bluetooth laufen??
Ich habe mittlerweile 13 Thermostate mit 3 Sticks ohne Probleme.

Gesendet von meinem SNE-LX1 mit Tapatalk

Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: rudeboy am 13 Februar 2019, 11:59:58
Zitat von: Gasmast3r am 13 Februar 2019, 11:36:54
Hast du noch was anderes am Bluetooth laufen??
Ich habe mittlerweile 13 Thermostate mit 3 Sticks ohne Probleme.

Gesendet von meinem SNE-LX1 mit Tapatalk

Nö, nur die Thermostate hängen an Bluetooth, alles andere ist per WLAN oder Funk an FHEM angebunden.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Gasmast3r am 13 Februar 2019, 12:03:32
[emoji848] Es soll vorkommen das die interne Bluetooth Einheit nicht sauber arbeitet, würde es mal mit nem Stick testen.

Gesendet von meinem SNE-LX1 mit Tapatalk

Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: rudeboy am 13 Februar 2019, 12:21:07
Zitat von: Gasmast3r am 13 Februar 2019, 12:03:32
[emoji848] Es soll vorkommen das die interne Bluetooth Einheit nicht sauber arbeitet, würde es mal mit nem Stick testen.

Gesendet von meinem SNE-LX1 mit Tapatalk

Hätte hier noch einen 2.1 BT-Stick rumliegen...
Weiß jemand ob der mit den EQ3 funktioniert?
Dann würde ich es heute Abend mal testen...
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Gasmast3r am 13 Februar 2019, 12:23:50
Ich meine nicht da die Bluetooth LE brauchen

Gesendet von meinem SNE-LX1 mit Tapatalk

Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: rudeboy am 13 Februar 2019, 19:14:29
Abend zusammen,

BT-Stick gekauft, angeschlossen und erkannt... 1 zu 1 das gleiche Resultat.
Hat noch jemand einer ne Idee / Anregungen, bin für jede Hilfe dankbar!

Gruß
Rudy
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: CoolTux am 13 Februar 2019, 19:16:30
Hast du das interne BT deaktiviert? Bist Du Dir sicher daß er den USB BT Stick genommen hat und nicht wieder den internen?
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: NEA am 13 Februar 2019, 19:23:17
Zitat von: rudeboy am 13 Februar 2019, 11:16:15
Hallo zusammen,

habe jetzt auch zwei EQ3 Thermostate bei mir zuhause verbaut.
Lief auch alles recht gut nach dem Einrichten. Nur ist mir aufgefallen, dass FHEM nach ca. 5 bis 10 min. die Verbindung zu den Thermostaten verliert und folgende Meldungen im Log auftauchen:

EQ3BT (wz.hk.mitte): updateStatus, 0x0411, 0313020D0A32 failed 20 times.
EQ3BT (wz.hk.rechts): updateStatus, 0x0411, 0313020D0A32 failed 20 times.
EQ3BT (wz.hk.rechts): updateSystemInformation, 0x0411, 00 failed 20 times.
EQ3BT (wz.hk.mitte): updateSystemInformation, 0x0411, 00 failed 20 times.
EQ3BT (wz.hk.rechts): updateStatus, 0x0411, 0313020D0A34 failed 20 times.
EQ3BT (wz.hk.mitte): updateStatus, 0x0411, 0313020D0A36 failed 20 times.
EQ3BT (wz.hk.rechts): updateStatus, 0x0411, 0313020D0A37 failed 20 times. ...


mach ich dann auf der shell ein
sudo hciconfig hci0 down
sudo hciconfig hci0 up

läuft alles wieder 5 bis 10 min. bis die Fehlermeldungen wieder im Log auftauchen.
Probleme wegen Entfernung kann ich hier fast ausschließen, da es ja für ca. 10 min. funktioniert...
Benutze das interne Bluetooth Modul vom Raspberry.

Hatte/hat jemand von Euch auch dieses Problem bzw. kennt einer eine Lösung?

Vielen Dank im Voraus
Rudy

irgendetwas scheint mit dem Bluetooth faul zu sein - entweder Linux oder FHEM, mir fehlt aber leider das Hintergrundwissen, um dem Ganzen wirklich auf den Grund gehen zu können. Ich habe ein ähnliches Problem mit den Xiaomi Pflanzen-Sensoren - Problematik im entsprechend Post https://forum.fhem.de/index.php/topic,82572.msg903661.html#msg903661 (https://forum.fhem.de/index.php/topic,82572.msg903661.html#msg903661) beschrieben. Im Moment habe ich das Problem dadurch gelöst, dass ich über Crontab das bluetooth alle 2 Minuten aus- und wieder anschalte. Ist natürlich 'ne Krücke, aber im Moment funktioniert das.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: rudeboy am 13 Februar 2019, 20:09:49
Zitat von: CoolTux am 13 Februar 2019, 19:16:30
Hast du das interne BT deaktiviert? Bist Du Dir sicher daß er den USB BT Stick genommen hat und nicht wieder den internen?
Moin,

Ziemlich sicher, hab in der config.txt dtoverlay=pi3-disable-bt hinzugefügt.

jetzt wird mir auch nur noch der Stick angezeigt...

Zitat von: NEA am 13 Februar 2019, 19:23:17
irgendetwas scheint mit dem Bluetooth faul zu sein - entweder Linux oder FHEM, mir fehlt aber leider das Hintergrundwissen, um dem Ganzen wirklich auf den Grund gehen zu können. Ich habe ein ähnliches Problem mit den Xiaomi Pflanzen-Sensoren - Problematik im entsprechend Post https://forum.fhem.de/index.php/topic,82572.msg903661.html#msg903661 (https://forum.fhem.de/index.php/topic,82572.msg903661.html#msg903661) beschrieben. Im Moment habe ich das Problem dadurch gelöst, dass ich über Crontab das bluetooth alle 2 Minuten aus- und wieder anschalte. Ist natürlich 'ne Krücke, aber im Moment funktioniert das.

die Idee hatte ich auch schon... wollte aber erst mal versuchen das Problem so zu lösen...
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: rudeboy am 13 Februar 2019, 21:20:31
@NEA um das alles mal erstmal abzukürzen, wie sieht denn Dein Crontab Eintrag aus?

Vielen Dank schon mal!
Gruß
Rudy
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: NEA am 13 Februar 2019, 21:50:59
Zitat von: rudeboy am 13 Februar 2019, 21:20:31
@NEA um das alles mal erstmal abzukürzen, wie sieht denn Dein Crontab Eintrag aus?

*/2 * * * *     root    hciconfig hci0 down && hciconfig hci0 up
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: rudeboy am 15 Februar 2019, 08:40:29
Moin miteinander,

nachdem mir das alles keine Ruhe gelassen hat, hier mal ein neuer Zwischenstand.
Hab mir jetzt nochmal einen weiteren BT-Stick besorgt, wurde auch wieder ohne Probleme erkannt,
Interne Bluetooth Verbindung hab ich mal aktiv gelassen, nach ca. 5 min. hat sich das interne BT scheinbar wieder aufgehängt, jetzt hat der neue BT-Stick übernommen
bluetoothDevice       hci1
lief dann ohne Fehlermeldungen ca. 5 Stunden durch und hat auch alle Befehle ausgeführt...
Nun habe ich den Crontab Eintrag von NEA noch hinzugefügt
*/3 * * * *     root    hciconfig hci0 down && hciconfig hci0 up
dann einen reboot und siehe da, jetzt wechselt er lustig zwischen hci0 und hci1, es kommen keine Fehler, er übernimmt die Befehle alles super!
Danke an alle Helfer und danke  für das Modul!!!

Gruß
Rudy
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: retikulum am 15 Februar 2019, 13:57:00
Hi.
Ich hab neuerdings, seit dem Upgrade auf Buster, Connection-Probleme mit den Thermostaten.
Keine Bluetooth-Probleme an sich. Es wurde nix an den Positionen der Geräte verändert, ist eigentlich seit 2 Wintern jetzt problemlos gelaufen.
Mit der App keine Probleme. Habe auch mal bei 2 Thermostaten ein Firmwareupdate durchgeführt (glaub ich, gab keine Bestätigung).
Ebenso lese ich die Pflanzen-Sensoren per Bluetooth aus, ebenso keine Probleme, auch die Sensoren die weiter weg sind lassen sich problemlos abrufen.
Per bluetoothctl sind die Thermostate sichtbar. Wenn ich connecten möchte:
[CHG] Device 00:1A:22:0B:8C:33 Connected: yes
Failed to connect: org.bluez.Error.Failed
[CHG] Device 00:1A:22:0B:8C:33 Connected: no

Also die Connection immer "yes" und dann gleich "no".

Fhem Log-Einträge:
2019.02.15 13:06:17 3: EQ3BT (wohnzimmer.heizung.mitte): updateStatus, 0x0411, 0313020F0D06 failed 20 times.
2019.02.15 13:06:20 3: EQ3BT (wohnzimmer.heizung.couch): updateStatus, 0x0411, 0313020F0D06 failed 20 times.
2019.02.15 13:06:29 3: EQ3BT (wohnzimmer.heizung.schreibtisch): updateStatus, 0x0411, 0313020F0D06 failed 20 times.
2019.02.15 13:13:09 3: EQ3BT (wohnzimmer.heizung.mitte): updateStatus, 0x0411, 0313020F0D0D failed 20 times.
2019.02.15 13:13:36 3: EQ3BT (wohnzimmer.heizung.couch): updateStatus, 0x0411, 0313020F0D0D failed 20 times.

Blueoothctl Info:
Device 00:1A:22:0B:8C:33 (public)
        Name: CC-RT-BLE
        Alias: CC-RT-BLE
        Paired: yes
        Trusted: yes
        Blocked: no
        Connected: no
        LegacyPairing: no
        UUID: Generic Access Profile    (00001800-0000-1000-8000-00805f9b34fb)
        UUID: Generic Attribute Profile (00001801-0000-1000-8000-00805f9b34fb)
        UUID: Device Information        (0000180a-0000-1000-8000-00805f9b34fb)
        UUID: Vendor specific           (3e135142-654f-9090-134a-a6ff5bb77046)
        UUID: Vendor specific           (9e5d1e47-5c13-43a0-8635-82ad38a1386f)
        ManufacturerData Key: 0x0000
        ManufacturerData Value:
  00 00 00 00 00 00 00 00 00                       .........


Was ich heute Abend noch testen werden: Die Thermostate mal in den Pairing-Modus schicken und dann nochmals versuchen.

Sonst Ideen?
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: retikulum am 25 Februar 2019, 09:25:47
Gelöst. Mit einem apt upgrade vorige Woche wurde u.a. eine neue bluez-Version installiert. Seitdem funktioniert die Kommunikation wieder.
Scheinbar war da etwas noch nicht ganz kompatibel mit Buster.  ::)
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: NEA am 25 Februar 2019, 10:40:02
Zitat von: retikulum am 25 Februar 2019, 09:25:47
Gelöst. Mit einem apt upgrade vorige Woche wurde u.a. eine neue bluez-Version installiert. Seitdem funktioniert die Kommunikation wieder.
Scheinbar war da etwas noch nicht ganz kompatibel mit Buster.  ::)

äh - darf man fragen, wie Du zu der Erkenntnis gekommen bist? Auf meiner Raspbian-Installation ist version 5.43 installiert und gemäß der Anleitung zum manuellen upgrade https://scribles.net/updating-bluez-on-raspberry-pi-5-43-to-5-48/ war diese Version schon im Februar 2018 "aktuell". Ein Upgrade von bluez wird mir zumindest nicht angeboten, ein Update muss also entsprechend der verlinkten Anleitung manuell durchgeführt werden - die aktuelle Version ist 5.50. Ich habe das Update gerade mal durchgeführt und kann bestätigen, dass die Anleitung so funktioniert. In der Anleitung nur die rot hinterlegten Teile entsprechend abändern von "...5.48..." in "...5.50....".
Meinen Cronjob habe ich jetzt mal deaktiviert, mal sehen ob es jetzt wieder besser läuft.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: retikulum am 26 Februar 2019, 15:49:22
äh - darf man fragen, wie Du zu der Erkenntnis gekommen bist?

Welche Erkenntnis? Dass ein Bluez-Update eingetrudelt ist? Äh, ich hab Augen im Kopf und kann lesen? Krass, oder?

Ich bin, wie ein Post weiter oben erwähnt, auf Buster umgestiegen. Dort liegt die 5.50 im Repository.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: mele am 04 Juni 2019, 07:13:04
Guten Morgen,

ich habe seit einiger Zeit ebenfalls folgendes Problem im Log, was immer wieder, auch nach shutdown restart oder reboot auftaucht:


PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/10_EQ3BT.pm line 528.


Was man so liest liegt das ggfs. daran, dass bei der Verwendung über ssh keine Ziffer bei "hci" steht. Gibt es hier schon eine Lösung oder einen Workaround, ohne meinerseits in das Modul einzugreifen?

List vom Device:

Internals:
   DEF        00:1A:22:0C:79:CF
   FUUID      5cd7373d-f33f-b7d8-9b50-d7aaab6b96e50b43
   MAC        00:1A:22:0C:79:CF
   NAME       WC_Heizung
   NR         963
   STATE      initialized
   TYPE       EQ3BT
   VERSION    2.0.5
   loglevel   4
   Helper:
     DBLOG:
       bluetoothDevice:
         NUC_DbLog:
           TIME       1559600420.89983
           VALUE      hci
       consumption:
         NUC_DbLog:
           TIME       1559357300.09938
           VALUE      879.846
       consumptionToday:
         NUC_DbLog:
           TIME       1559599455.91326
           VALUE      0.000
       consumptionYesterday:
         NUC_DbLog:
           TIME       1559599230.91238
           VALUE      0
       desiredTemperature:
         NUC_DbLog:
           TIME       1559564047.85078
           VALUE      20.0
       errorCount-updateStatus:
         NUC_DbLog:
           TIME       1559410665.3596
           VALUE      161
       errorCount-updateSystemInformation:
         NUC_DbLog:
           TIME       1559405624.18957
           VALUE      11
       firmware:
         NUC_DbLog:
           TIME       1559624211.22189
           VALUE      110
       lastChangeBy:
         NUC_DbLog:
           TIME       1559564070.78066
           VALUE      FHEM
       state:
         NUC_DbLog:
           TIME       1559564039.48723
           VALUE      desiredTemperature 20.0
       valvePosition:
         NUC_DbLog:
           TIME       1559624911.02358
           VALUE      0
   READINGS:
     2019-05-28 14:31:25   battery         ok
     2019-06-04 00:20:20   bluetoothDevice hci
     2019-05-12 03:24:09   boost           0
     2019-05-12 03:24:09   childlock       0
     2019-06-01 04:48:20   consumption     879.846
     2019-06-04 00:04:15   consumptionToday 0.000
     2019-06-04 00:00:30   consumptionYesterday 0
     2019-06-03 14:14:07   desiredTemperature 20.0
     2019-05-12 03:24:09   ecoMode         0
     2019-06-01 19:37:45   errorCount-updateStatus 161
     2019-06-01 18:13:44   errorCount-updateSystemInformation 11
     2019-06-04 06:56:51   firmware        110
     2019-06-03 14:14:30   lastChangeBy    FHEM
     2019-05-28 16:02:20   mode            Manual
     2019-06-04 07:08:31   valvePosition   0
     2019-05-12 03:24:09   windowOpen      0
   helper:
     currenthcidevice 0
     handlesetDesiredTemperature 0x0411
     handlesetMode 0x0411
     handleupdateStatus 0x0411
     handleupdateSystemInformation 0x0411
     listensetDesiredTemperature
     listensetMode 02 01 09 00 04 28
     listenupdateStatus 02 01 09 00 04 28
     listenupdateSystemInformation 01 6e 00 00 7f 75 81 62 61 65 66 64 65 69 94
     retryCounterHci0 2
     retryCountersetDesiredTemperature 0
     retryCountersetMode 0
     retryCounterupdateStatus 0
     retryCounterupdateSystemInformation 0
     valuesetDesiredTemperature 4128
     valuesetMode 4040
     valueupdateStatus 031306040708
     valueupdateSystemInformation 00
     RUNNING_PID:
       abortFn    EQ3BT_updateStatusFailed
       arg        WC_Heizung|00:1A:22:0C:79:CF|updateStatus|0x0411|03|listen
       bc_pid     46447
       finishFn   EQ3BT_processGatttoolResult
       fn         EQ3BT_execGatttool
       pid        17622
       telnet     telnetPort_127.0.0.1_59962
       timeout    300
       abortArg:
     hcidevices:
Attributes:
   room       Heizung
   sshHost    fhem@192.168.178.156


Vielen Dank und Gruß,

Manuel
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: CoolTux am 04 Juni 2019, 07:37:06
Hallo Manuel

Kannst Du bitte folgenden Code in Zeile 528 einfügen. Das was jetzt in 528 steht einfach ein runter verschieben


Log(1,'EQ3BT_DEBUG!!! Num hcidevices: ' . scalar( @{ $hash->{helper}{hcidevices} } );


Danach FHEM neu starten. Leider konnte ich den Code nicht testen, kann also sein das FHEM eventuell crashed. Aber bleib ganz entspannt. Wenn das passiert die Zeile einfach auskommentieren und FHEM wieder neustarten.
Wenn FHEM gestartet ist und die Meldung wieder kommt mit der Warnung dann schaue bitte nach einer Ausgabe EQ3BT_DEBUG!!!


Grüße
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: mele am 04 Juni 2019, 14:41:39
Zitat von: CoolTux am 04 Juni 2019, 07:37:06
Hallo Manuel

Kannst Du bitte folgenden Code in Zeile 528 einfügen. Das was jetzt in 528 steht einfach ein runter verschieben


[...]


Danach FHEM neu starten.
Wenn FHEM gestartet ist und die Meldung wieder kommt mit der Warnung dann schaue bitte nach einer Ausgabe EQ3BT_DEBUG!!!


Erst einmal danke für die Antwort.

Ich habe Folgendes ergänzt in 10_EQ3BT vor Zeile 528 ergänzt, wobei ich am Ende noch die letzte runde Klammer hinzugefügt habe:

Log(1,'EQ3BT_DEBUG!!! Num hcidevices: ' . scalar( @{ $hash->{helper}{hcidevices} } ));


Folgendes kam dabei rum:


2019.06.04 14:39:07 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/10_EQ3BT.pm line 529.
2019.06.04 14:39:07 1: EQ3BT_DEBUG!!! Num hcidevices: 0
2019.06.04 14:36:17 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/10_EQ3BT.pm line 529.
2019.06.04 14:36:17 1: EQ3BT_DEBUG!!! Num hcidevices: 0


Bei mir läuft das Ganze vom NUC aus über einen Raspi 2 zum EQ3BT. Setzen der Temp usw. funktioniert.

Gruß
Manuel
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: CoolTux am 04 Juni 2019, 14:54:12
Dachte ich mit. Da steht kein Eintrag im Array. Mal schauen ob sich da was machen lässt.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: CoolTux am 04 Juni 2019, 15:00:05
Kannst Du diese Zeile eine Zeile unter der anderen Debugzeile einfügen bitte.
Und dann neustart bitte.

Log(1,'EQ3BT_DEBUG!!! Current hcidevice: ' . $hash->{helper}{currenthcidevice} );
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: mele am 04 Juni 2019, 18:53:59
Zitat von: CoolTux am 04 Juni 2019, 15:00:05
Kannst Du diese Zeile eine Zeile unter der anderen Debugzeile einfügen bitte.
Und dann neustart bitte.
[...]

2019.06.04 18:53:30 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/10_EQ3BT.pm line 530.
2019.06.04 18:53:30 1: EQ3BT_DEBUG!!! Current hcidevice: 0
2019.06.04 18:53:30 1: EQ3BT_DEBUG!!! Num hcidevices: 0
2019.06.04 18:52:50 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/10_EQ3BT.pm line 530.
2019.06.04 18:52:50 1: EQ3BT_DEBUG!!! Current hcidevice: 0
2019.06.04 18:52:50 1: EQ3BT_DEBUG!!! Num hcidevices: 0
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: CoolTux am 04 Juni 2019, 18:57:30
OK. Das bringt Licht ins Dunkel. Kannst Du bitte noch ein list vom Device geben?
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: mele am 04 Juni 2019, 19:04:09
Zitat von: CoolTux am 04 Juni 2019, 18:57:30
OK. Das bringt Licht ins Dunkel. Kannst Du bitte noch ein list vom Device geben?

Internals:
   DEF        00:1A:22:0C:79:CF
   FUUID      5cd7373d-f33f-b7d8-9b50-d7aaab6b96e50b43
   MAC        00:1A:22:0C:79:CF
   NAME       WC_Heizung
   NR         961
   STATE      initialized
   TYPE       EQ3BT
   VERSION    2.0.5
   loglevel   4
   Helper:
     DBLOG:
       firmware:
         NUC_DbLog:
           TIME       1559667187.85098
           VALUE      110
       valvePosition:
         NUC_DbLog:
           TIME       1559667628.07061
           VALUE      0
   READINGS:
     2019-06-04 09:02:12   battery         ok
     2019-06-04 18:52:28   bluetoothDevice hci
     2019-06-04 09:02:12   boost           0
     2019-06-04 09:02:12   childlock       0
     2019-06-04 09:02:11   consumption     0.000
     2019-06-04 09:02:12   consumptionToday 0.000
     2019-06-04 09:02:12   desiredTemperature 4.5
     2019-06-04 09:02:12   ecoMode         0
     2019-06-04 18:53:07   firmware        110
     2019-06-04 09:02:12   lastChangeBy    Thermostat
     2019-06-04 09:02:12   mode            Manual
     2019-06-04 19:00:28   valvePosition   0
     2019-06-04 09:02:12   windowOpen      0
   helper:
     currenthcidevice 0
     handleupdateStatus 0x0411
     handleupdateSystemInformation 0x0411
     listenupdateStatus 02 01 09 00 04 09
     listenupdateSystemInformation 01 6e 00 00 7f 75 81 62 61 65 66 64 65 69 94
     retryCounterupdateStatus 0
     retryCounterupdateSystemInformation 0
     valueupdateStatus 031306041300
     valueupdateSystemInformation 00
     hcidevices:
Attributes:
   room       Heizung
   sshHost    fhem@192.168.178.156
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Brot am 06 Juni 2019, 10:20:53
Hey-ho...

Ich wollte mal dazwischengrätschen und anmerken, dass ich exakt dasselbe Problem wie mele habe; auch Zeile 528 in der 10_EQ3BT.pm. Mir haut es quasi das Log geradezu unermüdlich mit diesen
PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/10_EQ3BT.pm line 528.
zu.

Irgenwie scheint es auch, als würden die Eqiva-Geräte so ziemlich genau einen Befehl mitmachen und dann kann man FHEM neu staten, wenn man wieder einen absetzen will. Während die readings wohl weiterhin funktionieren...

Ich hab' denn bluez mal manuell auf v5.50 aktualisiert, bringt aber keine Besserung.

Darüber hinaus fruchtet der Workaround-Ansatz mit
sudo hciconfig hci0 down
sudo hciconfig hci0 up

ebenso wenig.

Ich bin übrigens auf Stretch.

Kann ich was helfen?

Gruss,
Marie LePain
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: CoolTux am 06 Juni 2019, 10:57:28
Ich gehe aktuell da in aus das ihr beide über ssh die Verbindung aufbaut. Korrekt?
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: mele am 06 Juni 2019, 11:01:06
Zitat von: CoolTux am 06 Juni 2019, 10:57:28
Ich gehe aktuell da in aus das ihr beide über ssh die Verbindung aufbaut. Korrekt?

Bei mir ja!
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Brot am 06 Juni 2019, 11:51:40
Zitat von: CoolTux am 06 Juni 2019, 10:57:28
Ich gehe aktuell da in aus das ihr beide über ssh die Verbindung aufbaut. Korrekt?

Zum Pi, auf dem FHEM läuft, ja. Äh..?
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: mele am 06 Juni 2019, 12:38:03
Zitat von: Brot am 06 Juni 2019, 11:51:40
Zum Pi, auf dem FHEM läuft, ja. Äh..?

Hast Du nur einen Pi oder hast Du einen Pi als Hauptsystem und einen Pi als Satelliten, der die Daten des Heizkörperthermostaten via bluetooth ausliest und das dann an den Pi mit dem Hauptsystem weitergeleitet?
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Brot am 06 Juni 2019, 13:10:14
Zitat von: mele am 06 Juni 2019, 12:38:03
Hast Du nur einen Pi oder hast Du einen Pi als Hauptsystem und einen Pi als Satelliten, der die Daten des Heizkörperthermostaten via bluetooth ausliest und das dann an den Pi mit dem Hauptsystem weitergeleitet?

Glücklicher Weise gerade nur einen (wäre mir die Sache nicht aufgefallen, hätte ich jetzt wahrscheinlich schon Nr. 2 eingerichtet gehabt).  ;) Die anderen verrichten Aufgaben wie "OctoPrint", "PiHole", "PiVPN" und dergleichen. Dieser eine Pi ist clean und ausschließlich für FHEM und dessen Bedürfnisse gedacht.

Hast Du etwa mehrere? Meinst da interferiert etwas?
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: mele am 06 Juni 2019, 13:55:01
Zitat von: Brot am 06 Juni 2019, 13:10:14
Dieser eine Pi ist clean und ausschließlich für FHEM und dessen Bedürfnisse gedacht.

Hast Du etwa mehrere? Meinst da interferiert etwas?

Ja, ich habe mehrere, die verschiedene Dienste für FHEM tun. Dann ist unser Problem nicht das gleiche. Als userattr hast Du dann auch kein sshHost, oder?

Schick mal ein list von Deinem Thermostat.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Brot am 06 Juni 2019, 14:23:09
Nachdem sich mir mal gar nicht erschließen wollte, weshalb das nicht mehr will, habe ich die 10_EQ3BT.pm durch deren Version 2.0.3 ausgetauscht. Danach funktionierte wieder alles normal - ohne Fehlermeldungen im log.
Letztendlich bin ich dann wieder über ein "update" an die aktuelle Version 2.0.6 heran gegangen: Interessanter Weise werden dieses Mal nun auch hier keine Fehler mehr im log angezeigt  und die Themostate funktionieren weiterhin.

Danke für die Hilfe!

-B.R.O.T.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: mele am 21 Juni 2019, 08:22:07
Zitat von: CoolTux am 04 Juni 2019, 18:57:30
OK. Das bringt Licht ins Dunkel. Kannst Du bitte noch ein list vom Device geben?

Hallo CoolTux,

gibt es was Neues hinsichtlich der Fehlermeldung bei ssh-clients?

Herzlichen Dank und Gruß

Manuel
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: CoolTux am 21 Juni 2019, 08:28:21
Hallo Manuel,

leider aktuell noch nicht. Bin etwas eingespannt mit der Zeit. Sonst hätte ich für Dominik schon einen Patch fertig gemacht.


Grüße
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: CoolTux am 01 Juli 2019, 12:04:17
Zitat von: mele am 21 Juni 2019, 08:22:07
Hallo CoolTux,

gibt es was Neues hinsichtlich der Fehlermeldung bei ssh-clients?

Herzlichen Dank und Gruß

Manuel

Sorry aber habe aktuell wenig Zeit. Daher hier erstmal eine weitere Antwort.
Kann bitte jemand mit dem Problem einmal schauen ob er auf dem Zielsystem, also dem System welches im Attribut sshHost angegeben ist folgendes als User (pi, oder was auch immer) ausführen kann?
hcitool dev
Einfach in der Konsole.


Wenn das geht bitte auf dem FHEM Server als User (fhem oder pi) ein
ssh USER@SERVER 'hcitool dev'
ausführen. Es sollte das selbe Ergebnis wie oben bei raus kommen.


Grüße
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Gasmast3r am 01 Juli 2019, 12:31:00
Hy ich bekomme jeweils die gleiche ausgabe

Gesendet mit Tapatalk

Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: CoolTux am 01 Juli 2019, 12:39:11
Zitat von: Gasmast3r am 01 Juli 2019, 12:31:00
Hy ich bekomme jeweils die gleiche ausgabe

Gesendet mit Tapatalk

Du hast aber auch nicht das Problem mit der Meldung im Log oder?
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Gasmast3r am 01 Juli 2019, 12:54:40
Ja und nein wenn ich ein System Neustarten müßte habe ich das Problem dann muss ich FHEM neu starten dann ist es wieder weck.

Gesendet mit Tapatalk

Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: CoolTux am 01 Juli 2019, 13:02:43
Es hat also nicht direkt etwas mit FHEM zu tun. Bei einem einfachen FHEM Neustart kommt die Meldung nicht, aber wenn Du das ganze System startest dann schon?
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Gasmast3r am 01 Juli 2019, 13:06:52
Ich habe 2 zero's als Kamera laufen und ein pi Als Octoprint die sind alle SSHhost, wenn ich einer der Systeme Neustarten muss, bekomme ich den Fehler, dann muss ich FHEM Neustarten damit der Fehler nicht mehr auftritt bis wieder einer der 3 SSHhost neugestartet werden muss.


Gesendet mit Tapatalk

Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: CoolTux am 01 Juli 2019, 13:13:10
Ah jetzt verstehe ich. Daran habe ich so noch gar nicht gedacht.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: CoolTux am 01 Juli 2019, 13:20:56
Ok ich denke ich habe es. Weiß also wieso der Fehler kommt.

Beim Start von FHEM wird eine Verbindung zum entfernten System aufgebaut und die Device Liste mittels hcitool dev eingelesen.
Wenn nun aber der entfernte Host kurz nicht da ist und das abrufen der aktuellen Daten fehl schlägt, wird automatisch ein neu einlesen der Device Liste versucht. Was fehl schlägt da das entfernte System nicht da ist. Und so mir ist dann die Liste (das Array) leer. Das muss man versuchen logisch ab zu fangen.
Dominik hat es wohl nicht gemacht da er davon aus ging das das Lokale System logischer Weise immer da ist wenn FHEM auch da ist.

Ich habe aktuell nicht wirklich Zeit mir das so genau an zu schauen. Wäre lieb wenn Dominik da was bauen würde. Alternativ kann ich im Herbst versuchen noch mal zu schauen.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Gasmast3r am 01 Juli 2019, 13:26:34
Mich persönlich stört es nicht, ich weiß ja was los ist

Gesendet mit Tapatalk

Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: CoolTux am 01 Juli 2019, 14:20:12
Ich schaue mir das Thema doch gerade genauer an und baue Abfragen ein. Lässt mir keine Ruhe.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: CoolTux am 01 Juli 2019, 14:52:57
Kann bitte jemand mit dem Problem, oder jemand der das Problem provozieren kann die angehängte Version testen?. Danke.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: mele am 01 Juli 2019, 17:22:31
Zitat von: CoolTux am 01 Juli 2019, 14:52:57
Kann bitte jemand mit dem Problem, oder jemand der das Problem provozieren kann die angehängte Version testen?. Danke.

Hey, erstmal vielen Dank, dass Du Dich doch kümmerst.

Habe das Modul getauscht. Als Reading für bluetoothDevice erscheint jetzt hci0 anstelle hci.

Setzen der desiredTemp geht durch.

Im Log habe ich folgendes gefunden:

2019.07.01 17:12:57 2: EQ3BT - Update Status: No BT device found on system
2019.07.01 17:12:55 2: EQ3BT - Update Status: No BT device found on system
2019.07.01 17:12:14 2: EQ3BT - Update System Information: No BT device found on system
2019.07.01 17:12:14 2: EQ3BT - Update System Information: No BT device found on system


Dann habe ich den entfernten Pi neu gestartet, Verhalten wie erstmal erwartet:


ssh: connect to host 192.168.178.156 port 22: No route to host


Nach dem Neustart ging auch wieder das Setzten einer desiredTemp. Bisher ohne Fehler.

Der Vollständigkeit halber hier noch ein List vom Device:

Internals:
   DEF        00:1A:22:0C:79:CF
   FUUID      5cd7373d-f33f-b7d8-9b50-d7aaab6b96e50b43
   MAC        00:1A:22:0C:79:CF
   NAME       WC_Heizung
   NR         946
   STATE      initialized
   TYPE       EQ3BT
   VERSION    2.0.6devel CoolTux
   loglevel   4
   Helper:
     DBLOG:
       bluetoothDevice:
         NUC_DbLog:
           TIME       1561993975.7676
           VALUE      hci0
       desiredTemperature:
         NUC_DbLog:
           TIME       1561994420.63549
           VALUE      4.5
       lastChangeBy:
         NUC_DbLog:
           TIME       1561994420.63094
           VALUE      FHEM
       state:
         NUC_DbLog:
           TIME       1561994389.8681
           VALUE      desiredTemperature 4.5
       valvePosition:
         NUC_DbLog:
           TIME       1561994420.61622
           VALUE      0
   READINGS:
     2019-06-04 09:02:12   battery         ok
     2019-07-01 17:12:55   bluetoothDevice hci0
     2019-06-04 09:02:12   boost           0
     2019-06-04 09:02:12   childlock       0
     2019-06-04 09:02:11   consumption     0.000
     2019-07-01 00:03:25   consumptionToday 0.000
     2019-07-01 00:00:09   consumptionYesterday 0
     2019-07-01 17:20:20   desiredTemperature 4.5
     2019-06-04 09:02:12   ecoMode         0
     2019-07-01 16:33:22   firmware        110
     2019-07-01 17:20:20   lastChangeBy    FHEM
     2019-06-04 09:02:12   mode            Manual
     2019-07-01 17:20:20   valvePosition   0
     2019-06-04 09:02:12   windowOpen      0
   helper:
     currenthcidevice 0
     handlesetDesiredTemperature 0x0411
     handleupdateStatus 0x0411
     listensetDesiredTemperature 02 01 09 00 04 09
     listenupdateStatus 02 01 09 00 04 1c
     retryCounterHci0 4
     retryCountersetDesiredTemperature 0
     retryCounterupdateStatus 0
     valuesetDesiredTemperature 4109
     valueupdateStatus 031307011113
     hcidevices:
       0
Attributes:
   room       Heizung
   sshHost    fhem@192.168.178.156


Erstmal vielen Dank. Ich werde es beobachten!

Gruß
Manuel
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: CoolTux am 01 Juli 2019, 17:31:49
Dieses No BT device in System found ist entscheidend. Dann sollte im Reading "bluetoothDevice" auch sowas in der Art stehen. Darauf kann man triggern.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: mele am 01 Juli 2019, 17:40:22
Zitat von: CoolTux am 01 Juli 2019, 17:31:49
Dieses No BT device in System found ist entscheidend. Dann sollte im Reading "bluetoothDevice" auch sowas in der Art stehen. Darauf kann man triggern.

Davon war aber nichts zu sehen, nur der Wechsel von hci auf hci0, siehe angehängter Screenshot aus DBLog.

Hab nochmal Temp gewechselt, kein Fehler.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: CoolTux am 01 Juli 2019, 17:56:52
Interessant. Na beobachte mal und dann schauen wir.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: CoolTux am 07 Juli 2019, 20:11:26
Konnten zufällig noch mehr wie einer den neuen Patch testen?
Gibt es ein Zwischenergebnis?
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: mele am 07 Juli 2019, 20:51:18
Bis jetzt keine Fehler mehr hier!
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: CoolTux am 07 Juli 2019, 20:53:05
Gut lassen wir es die Woche noch laufen und dann werde ich Dominik einen Patch an bieten.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 21 Juli 2019, 00:43:05
Mahlzeit ich hab gerade ein wenig Spam im Log.
Frage vorab - nutzt das Modul Dbus? Hab da nämlich gerade eine Suche nach der Herkunft von:

dbus[325]: arguments to dbus_connection_get_object_path_data() were incorrect, assertion "connection != NULL" failed in file ../../../dbus/dbus-connection.c line 5905.
This is normally a bug in some application using the D-Bus library.

  D-Bus not built with -rdynamic so unable to print a backtrace
Aborted (core dumped)



Ansonsten im Log aktuell eine Vielzahl von:
Zitat2019.07.21 00:32:25 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/10_EQ3BT.pm line 528.

Zeile 528 ->         my $hciDevice = "hci".$hash->{helper}{hcidevices}[$hash->{helper}{currenthcidevice}];

Bereich:

    #if(-x $gatttool) {
    if(defined($gatttool) and ($gatttool)) {
        my $gtResult;
        my $cmd;
        my $hciDevice = "hci".$hash->{helper}{hcidevices}[$hash->{helper}{currenthcidevice}];

        while($wait) {
            my $grepGatttool = qx(ps ax| grep -E \'gatttool -b $mac\' | grep -v grep);
            if(not $grepGatttool =~ /^\s*$/) {
                #another gattool is running
                Log3 $name, 5, "EQ3BT ($name): another gatttool process is running. waiting...";
                sleep(1);
            } else {
                $wait = 0;
            }
        }




Auch ab und an aber deutlich weniger ->
Zitat2019.07.21 00:31:21 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/10_EQ3BT.pm line 670

Zeile 670 -> readingsSingleUpdate($hash, "bluetoothDevice", "hci".$hash->{helper}{hcidevices}[$hash->{helper}{currenthcidevice}], 1);



Bereich:
                $hash->{helper}{currenthcidevice} += 1;
                my $maxHciDevices = @{ $hash->{helper}{hcidevices} } - 1;
                if($hash->{helper}{currenthcidevice} > $maxHciDevices) {
                    $hash->{helper}{currenthcidevice} = 0;
                }
                #update reading
                readingsSingleUpdate($hash, "bluetoothDevice", "hci".$hash->{helper}{hcidevices}[$hash->{helper}{currenthcidevice}], 1);
            }
            InternalTimer(gettimeofday()+3+int(rand(5)), "EQ3BT_".$workType."Retry", $hash, 0);
        }
    }

    return undef;
}
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: CoolTux am 21 Juli 2019, 00:53:09
Zitat von: CoolTux am 01 Juli 2019, 14:52:57
Kann bitte jemand mit dem Problem, oder jemand der das Problem provozieren kann die angehängte Version testen?. Danke.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 21 Juli 2019, 01:02:25
 ;D huch! Sorry! :-D

*EDIT* 100% besser - Danke! Das fixed beides bisher (528 und 670).
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 24 Juli 2019, 09:45:20
Ich habe nun auch mal eine Änderung eingepflegt.

# v2.0.7 - 20190724
# - CHANGE: max desiredTemperature from 29.5 to 30 (which makes on available on the eq3) by Master_Nick


(Hilfe und Beschreibungen und Co alle angepasst - und hoffe keine übersehen zu haben  :) )

Das bewirkt, dass man die Ventile auf wirklich "OFFEN" fahren kann. Ich hatte dafür schon einige Anwendungsfälle als der Heizungsmonteur da war - so musste ich die nicht mehr abbauen um ganz zu öffnen (ja wahrscheinlich nur ein hauch oder evtl nix - auf programmierseite aber "etwas") Sollte soweit keinen stören. :-)

Grundlage der Version ist die  vom 01.07.2019 - 14:52 hier geposted von CoolTux.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 15 Dezember 2019, 14:38:02
Mahlzeit :-)

Hat noch jemand dies hier:

PERL WARNING: Argument "on" isn't numeric in numeric lt (<) at ./FHEM/10_EQ3BT.pm line 287.


Oder befeuer ich da durch MQTT ausversehen mit einem falschen retained ;-)
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 23 September 2020, 21:41:26
Hallo zusammen,

der Winter kommt bald wieder und ich hatte in letzter Zeit an einem Python Binding für FHEM gearbeitet. Ich habe nun testweise auch das EQ3BT Modul in Python umgesetzt.
Unterschied:
- Schedules werden ausgelesen
- Offline Anzeige wenn 30 Minuten nicht erreichbar
- Auslese von comfort/ecoTempearture (Firmware 120)
- Auslese von windowOpen Konfiguration (Firmware 120)
- Senden via Bluetooth läuft viel stabiler und schneller als mit gatttool (zumindest bei mir mit 3 Thermostaten so, eure Erfahrung wäre interessant)

Wer testen will, kann das also gerne machen, hier die Anleitung dazu:
https://github.com/dominikkarall/fhem_pythonbinding
Installation aus dem Readme ausführen und dann
define eq3 PythonModule eq3bt 00:11:....

Feedback willkommen :)
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 23 September 2020, 22:08:20
Das klingt gut! :-)
Danke schon mal für die Arbeit.

Ich werde es mir bei Zeiten ansehen.
Leider sind diese aktuell echt hart bemessen :-D
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: C_Herrmann am 24 September 2020, 18:56:01
Hallo Dominik,

schön, dass du das Modul weiter entwickelst.

Ich habe versucht, einen Regler umzustellen. Dies hat leider nicht funktioniert.

1. Problem:
define pyBinding BindingsIo Python
wird nicht ausgeführt.
Nach einfügen von
use CoProcess;
in 10_BindingsIO.pm geht es.

Beim Definieren des Reglers mit
define eq3xx PythonModule eq3bt XX:XX:XX:XX:XX:XX
erhalte ich diese Fehlermeldung im STATE:
Failed to execute function Define: Traceback (most recent call last):
  File "/opt/fhem/FHEM/bindings/python/lib/fhem_pythonbinding.py", line 207, in onMessage
    ret = await asyncio.wait_for(func(hash, hash['args'], hash['argsh']), 5)
  File "/usr/lib/python3.7/asyncio/tasks.py", line 416, in wait_for
    return fut.result()
  File "/opt/fhem/FHEM/bindings/python/lib/eq3bt/eq3bt.py", line 53, in Define
    self.thermostat = FhemThermostat(self.logger, mac)
  File "/opt/fhem/FHEM/bindings/python/lib/eq3bt/eq3bt.py", line 183, in __init__
    super(FhemThermostat, self).__init__(mac, BTLEConnection)
  File "/opt/fhem/.local/lib/python3.7/site-packages/eq3bt/eq3btsmart.py", line 97, in __init__
    self._conn = connection_cls(_mac)
  File "/opt/fhem/FHEM/bindings/python/lib/eq3bt/connection.py", line 23, in __init__
    self._ifaces = self.get_hci_ifaces()
  File "/opt/fhem/FHEM/bindings/python/lib/eq3bt/connection.py", line 41, in get_hci_ifaces
    objects = manager.GetManagedObjects()
  File "/usr/lib/python3/dist-packages/dbus/proxies.py", line 70, in __call__
    return self._proxy_method(*args, **keywords)
  File "/usr/lib/python3/dist-packages/dbus/proxies.py", line 145, in __call__
    **keywords)
  File "/usr/lib/python3/dist-packages/dbus/connection.py", line 651, in call_blocking
    message, timeout)
dbus.exceptions.DBusException: org.freedesktop.DBus.Error.AccessDenied: Rejected send message, 2 matched rules; type="method_call", sender=":1.46" (uid=998 pid=27330 comm="python3 FHEM/bindings/python/pythonbinding.py ") interface="org.freedesktop.DBus.ObjectManager" member="GetManagedObjects" error name="(unset)" requested_reply="0" destination=":1.7" (uid=0 pid=498 comm="/usr/lib/bluetooth/bluetoothd ")


Ich hoffe, das hilft zur Fehlersuche.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 24 September 2020, 19:01:59
@dominik Frage vorweg: Kann es weiterhin über SSH oder generell nicht lokale BT Stacks nutzen?
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 24 September 2020, 21:32:34
@C_Herrmann, danke für die Rückmeldung. CoProcess habe ich hinzugefügt. Bitte noch folgendes für Bluetooth einrichten:
/etc/dbus-1/system.d/bluetooth.conf, folgendes einfügen
  <policy user="fhem">
    <allow own="org.bluez"/>
    <allow send_destination="org.bluez"/>
    <allow send_interface="org.bluez.GattCharacteristic1"/>
    <allow send_interface="org.bluez.GattDescriptor1"/>
    <allow send_interface="org.freedesktop.DBus.ObjectManager"/>
    <allow send_interface="org.freedesktop.DBus.Properties"/>
  </policy>

danach
sudo systemctl restart dbus

FHEM benötigt nämlich die Bluetooth Berechtigung.

Mach bitte auch noch ein "update" in FHEM, dort habe ich noch paar Fehler behoben.

@Master_Nick, aktuell nicht, da das Modul nun direkt Python Bluetooth Funktionen nutzt und keine Commandline Aufrufe. Eine Möglichkeit wäre mehrere PythonBindings laufen zu lassen, das wird aber noch nicht unterstützt. Ich werde mir das mal überlegen, weil dann könnte man generell einzelne PythonModule auf einen anderem RPi oder Server laufen lassen, das hätte schon was.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: C_Herrmann am 24 September 2020, 21:50:11
Danke, das wars.  :)
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: C_Herrmann am 26 September 2020, 18:17:02
Hallo Dominik,

einen Fehler habe ich noch gefunden:
Der Modus lässt sich nicht von manuell auf automatisch umstellen.

in PythonBinding.log findet sich dann:
2020-09-26 18:05:17,520 - ERROR    - lib.utils: Error in asyncio thread
Traceback (most recent call last):
  File "/opt/fhem/FHEM/bindings/python/lib/utils.py", line 10, in run_blocking
    pool, function)
  File "/usr/lib/python3.7/concurrent/futures/thread.py", line 57, in run
    result = self.fn(*self.args, **self.kwargs)
  File "/opt/fhem/FHEM/bindings/python/lib/eq3bt/eq3bt.py", line 221, in set_mode
    self.mode = mode
AttributeError: can't set attribute
2020-09-26 18:05:17,522 - ERROR    - asyncio: Task exception was never retrieved
future: <Task finished coro=<eq3bt.set_and_update() done, defined at /opt/fhem/FHEM/bindings/python/lib/eq3bt/eq3bt.py:159> exception=AttributeError("can't set attribute")>
Traceback (most recent call last):
  File "/opt/fhem/FHEM/bindings/python/lib/eq3bt/eq3bt.py", line 160, in set_and_update
    await utils.run_blocking(fct)
  File "/opt/fhem/FHEM/bindings/python/lib/utils.py", line 10, in run_blocking
    pool, function)
  File "/usr/lib/python3.7/concurrent/futures/thread.py", line 57, in run
    result = self.fn(*self.args, **self.kwargs)
  File "/opt/fhem/FHEM/bindings/python/lib/eq3bt/eq3bt.py", line 221, in set_mode
    self.mode = mode
AttributeError: can't set attribute

Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 26 September 2020, 20:48:08
Danke für die Info. Hab es gerade behoben, einfach ein "update" machen.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: C_Herrmann am 26 September 2020, 21:10:49
Danke, so geht es.  :)
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 02 Oktober 2020, 12:28:08
Moin,

mir ist eingefallen, dass ich tatsächlich zwingend die Struktur benötigen würde wo ich auf einem entfernten Pi/Linux das ganze ausführen kann.
Habe im Flur ein Touchpanel mit einem Pi3B+ das Wohnzimmer/Bad/Schlafzimmer/Küche versorgt. Am Server selber wird dann Arbeitszkimmer/Kinderzimmer/Flur versorgt.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 04 Oktober 2020, 11:53:21
Bin gerade dabei mir das anzuschauen und melde mich sobald ich was zum Testen habe.

Mein Plan:
- Am lokalen und Remote Pi laeuft dann der Python Server
- Jedes Device kann dann entweder fuer den lokalen oder remote Server konfiguriert werden, standardmaessig Lokal

Damit waere das fuer jedes PythonModule verwendbar, egal ob eq3bt, googlecast, usw. und muss nicht im Modul selbst gebaut werden. Mal sehen ob das so klappt :)
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 04 Oktober 2020, 13:07:59
Wäre sehr schön  8)
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 04 Oktober 2020, 22:55:06
So...ich habs gerade integriert und mit meiner Nespresso Bluetooth Maschine erfolgreich getestet :)

Folgendes ist zu tun:
- update in FHEM
- Restart
- Remote RPi:
    - fhem_pythonbinding installieren (https://github.com/dominikkarall/fhem_pythonbinding, nur was bei Console steht)
    - git clone https://github.com/dominikkarall/fhem_pythonbinding.git
    - cd fhem_pythonbinding/FHEM
    - python3 bindings/python/pythonbinding.py
- FHEM (am Master, am Remote muss KEIN FHEM installiert werden):
    - define bindingsio_remote BindingsIo IP:15733 Python
    - define eq3device PythonModule eq3bt MAC
    - attr eq3device IODev bindingsio_remote

Das ist noch BETA und daher bitte nicht wundern wenn etwas nicht sofort funktioniert. Lass mich einfach wissen ob es bei dir funktioniert oder du irgendwo nicht weiter kommst.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 05 Oktober 2020, 12:58:37
Ach herrje! :-D Danke das ging fix - bin gespannt :-D mal sehen wann ich es umgestellt bekomme.... :-D

Aber schon mal jetzt tausend Dank!
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Teonyr am 10 Oktober 2020, 18:05:10
Hallo,
ich habe ein eQ-3 Bluetooth Thermostat, welche ich bisher über define NAME EQ3BT MAC eingebunden habe.
Nun wollte ich mal das mit dem Python probieren.
Habe also die Installation (headless) auf meinem RPi4 gemacht, wie es hier steht: https://github.com/dominikkarall/fhem_pythonbinding
Der "state" steht bei diesem Device allerdings permanent auf "connecting" und wenn ich die "desiredTemperature" setzen möchte, dann gibt er mir folgende Fehlermeldung aus:

Failed to execute function Set: Traceback (most recent call last): File "/opt/fhem/FHEM/bindings/python/lib/fhem_pythonbinding.py", line 223, in onMessage ret = await asyncio.wait_for(func(hash, hash['args'], hash['argsh']), fct_timeout) File "/usr/lib/python3.7/asyncio/tasks.py", line 416, in wait_for return fut.result() File "/opt/fhem/FHEM/bindings/python/lib/eq3bt/eq3bt.py", line 100, in Set return await utils.handle_set(self.set_list_conf, self, hash, args, argsh) File "/opt/fhem/FHEM/bindings/python/lib/utils.py", line 76, in handle_set return await fct_call(final_params) File "/opt/fhem/FHEM/bindings/python/lib/eq3bt/eq3bt.py", line 181, in set_desiredTemperature asyncio.create_task(self.set_and_update(functools.partial(self.thermostat.set_target_temperature, temp))) AttributeError: 'eq3bt' object has no attribute 'thermostat'

Habe ich irgendwas vergessen oder falsch gemacht?
Das Device hat wirklich nicht das attribut "thermostat", ich kann es aber auch nicht hinzufügen.

Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 10 Oktober 2020, 18:42:34
Hi,

warte bitte bis es von connecting auf update geht und dann die Readings erhaelt. Das kann bis zu 3 Minuten dauern. Ich hatte da ein sleep eingebaut, damit beim Start von FHEM nicht alle Devices gleichzeitig probieren ueber Bluetooth zu verbinden, da die sich sonst einfach nur selbst stoeren.

//Edit: Bitte auch das nicht vergessen:
                        Please add following configuration to /etc/dbus-1/system.d/bluetooth.conf:
                        <policy user="fhem">
                            <allow own="org.bluez"/>
                            <allow send_destination="org.bluez"/>
                            <allow send_interface="org.bluez.GattCharacteristic1"/>
                            <allow send_interface="org.bluez.GattDescriptor1"/>
                            <allow send_interface="org.freedesktop.DBus.ObjectManager"/>
                            <allow send_interface="org.freedesktop.DBus.Properties"/>
                        </policy>
                        Restart dbus afterwards: sudo systemctl restart dbus
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Teonyr am 10 Oktober 2020, 19:27:02
Hey,

danke, nun hat es geklappt. :)
Habe die bluetooth.conf angepasst und das mit define NAME EQ3BT MAC definierte Device gelöscht.
Anschließend noch einmal per define NAME PythonModule eq3bt MAC das Python-eQ3bt-Device angelegt und nun gehts.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 10 Oktober 2020, 19:37:31
Danke fuer die Info. Dann lag es an der bluetooth.cfg...

Eigentlich sollte der oben von mir gepostete englische Text im "state" auftauchen. War das bei dir nicht der Fall? Wenn nicht, muss ich das nochmals testen.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Teonyr am 10 Oktober 2020, 19:39:46
Nein leider nicht, da stand nur "connecting".
Auch im Log/EventMonitor stand nichts.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 10 Oktober 2020, 19:48:30
Ok, dann werde ich das nochmals testen, weil gerade das ist wichtig.
Übrigens, du kannst beide Device (alt und neu) parallel nutzen, du musst das alte Device nicht löschen.

Was haltet ihr eigentlich davon die Bluetooth Verbindung aktiv zu halten? Damit sind Temperaturanpassung oder andere Einstellungen nämlich innerhalb einer Sekunde am Thermostat - genauso wie wenn man die CalorBT App nutzt. Ich teste das gerade um auch zu sehen wie stark das die Batterielaufzeit beeinflusst.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: C_Herrmann am 10 Oktober 2020, 20:19:38
Wie wäre es, wenn Du das mit der Bluetooth Verbindung per Attribut schaltbar machst, dann kann jeder selbst entscheiden, ob er Batterie sparen möchte oder die Werte unverzüglich angezeigt werden sollen.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 10 Oktober 2020, 20:29:21
Ja, das habe ich auf alle Faelle geplant. Ich habe es bei mir gerade ausprobiert und es scheint so, als ob das Thermostat selbst die Verbindung zumindest innerhalb von 5 Minuten trennt wenn keine weitere Abfrage passiert. Ich muss also scheinbar in kuerzeren Abstaenden das Thermostat abfragen.

Bin nur auf die Idee gekommen, da ich fuer die Nespresso Bluetooth Maschine es so geloest habe, da ich keine 30s warten will bis die Maschine das Signal zum Kaffee machen bekommt :)
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: mele am 11 Oktober 2020, 06:26:43
Zitat von: dominik am 10 Oktober 2020, 19:48:30
Ok, dann werde ich das nochmals testen, weil gerade das ist wichtig.
Übrigens, du kannst beide Device (alt und neu) parallel nutzen, du musst das alte Device nicht löschen.

Was haltet ihr eigentlich davon die Bluetooth Verbindung aktiv zu halten? Damit sind Temperaturanpassung oder andere Einstellungen nämlich innerhalb einer Sekunde am Thermostat - genauso wie wenn man die CalorBT App nutzt. Ich teste das gerade um auch zu sehen wie stark das die Batterielaufzeit beeinflusst.

Bei mir steht auch an, die Veränderung des Moduls zu testen.

Die schnellere Reaktionszeit wäre für den ein oder anderen bestimmt eine super Sache. Vielleicht kann man das als Attribut/Option einfügen, damit man die Wahl hat?
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: mele am 11 Oktober 2020, 09:15:28
Hallo, ich teste die Remote-Funktion auch gerade, habe aber ein Problem:

Hintergrund ist, dass ich für die EQ3BT ausschließlich Satelliten verwende, das Hauptsystem also nur alles steuert.

Ich habe dann erfolgreich auf dem Satellit die "Console"-Schritte durchgeführt und konnte auch Folgendes ausführen:

define bindingsio_156 BindingsIo 192.168.178.156:15733 Python


Gerät wurde angelegt und steht auf "opened"

Sobald ich dann versuche mein Thermostat zu definieren, kommt eine Fehlermeldung:

define eq3device_WC PythonModule eq3bt 00:1A:22:0C:79:CF

Before you use PythonModule please define BindingsIo once:
define pyBinding BindingsIo Python


Wenn ich dann auf dem hauptsystem "define pyBinding BindingsIo Python" ausführe, stürzt es ab. Mehrfach probiert.

Komisch daran finde ich, dass ich ja bereits ein entsprechendes Gerät in Schritt 1 definiert hatte:

define bindingsio_156 BindingsIo 192.168.178.156:15733 Python


Ist diese Art bei der Prüfung auf das BindingsIo vielleicht unberücksichtigt?

Vielen Dank vorab für die ganze Arbeit und die Hilfe,

Manuel
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 11 Oktober 2020, 10:17:36
@meie, genau das waere der Plan, dass es per Attribut konfigurierbar ist.

Mir ist noch eingefallen, dass die Dauerverbindung eigentlich auch aus Security Sicht von Vorteil ist. Ansonsten koennen Nachbarn in der Naehe (Bluetooth LE Reichweite) das eigene Thermostat auch steuern.

Bzgl. Remote Funktion, alles was in meiner "Kurzanleitung" unter FHEM steht, ist am Master auszufuehern. Am Remote RPi muss kein FHEM installiert weden.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: mele am 11 Oktober 2020, 10:44:31
Zitat von: dominik am 11 Oktober 2020, 10:17:36
Bzgl. Remote Funktion, alles was in meiner "Kurzanleitung" unter FHEM steht, ist am Master auszufuehern. Am Remote RPi muss kein FHEM installiert weden.

Das ist klar, ist auch kein FHEM drauf. Die Fehlermeldung hinsichtlich des fehlenden BindingsIo kam auf dem Hauptsystem. Ich vermute die Prüfung auf das vorhandene (remote) BindingsIo klappt nicht.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 11 Oktober 2020, 11:34:51
Ah, sorry, das hatte ich falsch gelesen.

Den Fall ohne Binding am Master hatte ich noch nicht bedacht. Ich pruefe naemlich beim Start ob ein 'PythonBinding' im FHEM definiert ist. Ich werde das auf 'BindingsIo' umstellen, dann klappt es auch mit Konstellationen wo kein PythonBinding am Master laeuft.

Ich melde mich sobald das Update bereit steht.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 11 Oktober 2020, 15:47:46
@mele, kannst du bitte nochmals testen? Vorher ein update/shutdown restart machen.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: mele am 11 Oktober 2020, 15:51:01
Zitat von: dominik am 11 Oktober 2020, 15:47:46
@mele, kannst du bitte nochmals testen? Vorher ein update/shutdown restart machen.

Update wurde abgebrochen:

2020.10.11 15:49:45 1 : Downloading https://raw.githubusercontent.com/dominikkarall/fhem_pythonbinding/master/controls_pythonbinding.txt
2020.10.11 15:49:45 1 :
2020.10.11 15:49:45 1 : pythonbinding
2020.10.11 15:49:45 1 : UPD FHEM/10_BindingsIo.pm
2020.10.11 15:49:45 1 : UPD FHEM/10_PythonModule.pm
2020.10.11 15:49:45 1 : UPD FHEM/bindings/python/lib/fhem.py
2020.10.11 15:49:45 1 : UPD FHEM/bindings/python/lib/fhem_pythonbinding.py
2020.10.11 15:49:45 1 : UPD FHEM/bindings/python/lib/utils.py
2020.10.11 15:49:45 1 : UPD FHEM/bindings/python/lib/discover_ble/discover_ble.py
2020.10.11 15:49:45 1 : UPD FHEM/bindings/python/lib/helloworld/helloworld.py
2020.10.11 15:49:45 1 : UPD FHEM/bindings/python/lib/eq3bt/connection.py
2020.10.11 15:49:45 1 : UPD FHEM/bindings/python/lib/eq3bt/eq3bt.py
2020.10.11 15:49:45 1 : Got 11935 bytes for FHEM/bindings/python/lib/eq3bt/eq3bt.py, expected 11844
2020.10.11 15:49:45 1 : aborting.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 11 Oktober 2020, 16:03:00
Jetzt gehts, hatte controls file nicht aktualisiert.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: mele am 11 Oktober 2020, 16:16:02
Zitat von: dominik am 11 Oktober 2020, 16:03:00
Jetzt gehts, hatte controls file nicht aktualisiert.

Nach Definition von

define eq3device_WC PythonModule eq3bt 00:1A:22:0C:79:CF
attr eq3device_WC IODev bindingsio_156


habe ich folgenden state erhalten, danach Absturz von FHEM:

Failed to load module eq3bt: Traceback (most recent call last):
  File "/home/pi/fhem_pythonbinding/FHEM/bindings/python/lib/fhem_pythonbinding.py", line 178, in onMessage
    module_object = importlib.import_module(pymodule)
  File "/usr/lib/python3.7/importlib/__init__.py", line 127, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
  File "<frozen importlib._bootstrap>", line 1006, in _gcd_import
  File "<frozen importlib._bootstrap>", line 983, in _find_and_load
  File "<frozen importlib._bootstrap>", line 967, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 677, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 728, in exec_module
  File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
  File "/home/pi/fhem_pythonbinding/FHEM/bindings/python/lib/eq3bt/eq3bt.py", line 10, in <module>
    from bluepy.btle import BTLEException
ModuleNotFoundError: No module named 'bluepy'


BindingsIo:

define bindingsio_156 BindingsIo 192.168.178.156:15733 Python
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 11 Oktober 2020, 16:38:18
Ich glaube du musst IODev wahrscheinlich gar nicht setzen, wird es nicht beim Define sogar automatisch gesetzt?

Kommt nach dem Define ein "Installing updates..." im Status vom Device?
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: mele am 11 Oktober 2020, 16:49:06
Zitat von: dominik am 11 Oktober 2020, 16:38:18
Ich glaube du musst IODev wahrscheinlich gar nicht setzen, wird es nicht beim Define sogar automatisch gesetzt?

Kommt nach dem Define ein "Installing updates..." im Status vom Device?

Ja, ich bekomme einen IODev, war aber der falsche und der war disconnectet.
Device seit der Definition auf PythonBinding offline.

Dann noch ein Test und falschen IODev vorher gelöscht.
Bei der Definition kommt nur der Status ??? und dann FHEM-Absturz.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 11 Oktober 2020, 16:53:11
Kannst du mir bitte vom FHEM Log die Teile posten wo es abstuertzt?

//Edit: Und bitte auch vom fhem_pythonbinding am Remote Host. Dort siehst du es vermutlich in der Konsole wenn du es in der Konsole gestartet hast.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: mele am 11 Oktober 2020, 21:08:13
Sorry für die späte Antwort - ich versuche das morgen zu machen.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 12 Oktober 2020, 23:09:30
Ich habe den Fehler gefunden.

Bitte aus dem Ordner fhem_pythonbinding starten und NICHT aus fhem_pythonbinding/FHEM
python3 FHEM/bindings/python/pythonbinding.py

Dann klappt es auch mit den Installationen.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: mele am 13 Oktober 2020, 06:50:12
Guten Morgen,

habs heute Morgen nochmal probiert - leider mit Fehler/Absturz Hauptsystem.

Kann es sein, das da ein Berechtigungsproblem besteht? Auf dem Remote gibt es keinen user fhem.

Log der Remote-Konsole:
pi@raspberrypi:~/fhem_pythonbinding $ python3 FHEM/bindings/python/pythonbinding.py
2020-10-13 06:22:38,603 - INFO     - lib.fhem_pythonbinding: Starting pythonbinding...
2020-10-13 06:22:44,081 - INFO     - lib.fhem_pythonbinding: FHEM connection started: 192.168.178.232
2020-10-13 06:23:39,377 - ERROR    - lib.fhem_pythonbinding: Connection closed error
Traceback (most recent call last):
  File "/usr/local/lib/python3.7/dist-packages/websockets/protocol.py", line 827, in transfer_data
    message = await self.read_message()
  File "/usr/local/lib/python3.7/dist-packages/websockets/protocol.py", line 895, in read_message
    frame = await self.read_data_frame(max_size=self.max_size)
  File "/usr/local/lib/python3.7/dist-packages/websockets/protocol.py", line 971, in read_data_frame
    frame = await self.read_frame(max_size)
  File "/usr/local/lib/python3.7/dist-packages/websockets/protocol.py", line 1051, in read_frame
    extensions=self.extensions,
  File "/usr/local/lib/python3.7/dist-packages/websockets/framing.py", line 105, in read
    data = await reader(2)
  File "/usr/lib/python3.7/asyncio/streams.py", line 677, in readexactly
    raise IncompleteReadError(incomplete, n)
asyncio.streams.IncompleteReadError: 0 bytes read on a total of 2 expected bytes

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/home/pi/fhem_pythonbinding/FHEM/bindings/python/lib/fhem_pythonbinding.py", line 41, in pybinding
    async for message in websocket:
  File "/usr/local/lib/python3.7/dist-packages/websockets/protocol.py", line 439, in __aiter__
    yield await self.recv()
  File "/usr/local/lib/python3.7/dist-packages/websockets/protocol.py", line 509, in recv
    await self.ensure_open()
  File "/usr/local/lib/python3.7/dist-packages/websockets/protocol.py", line 803, in ensure_open
    raise self.connection_closed_exc()
websockets.exceptions.ConnectionClosedError: code = 1006 (connection closed abnormally [internal]), no reason
2020-10-13 06:23:39,383 - INFO     - lib.fhem_pythonbinding: Waiting for new FHEM connection...
2020-10-13 06:23:43,547 - ERROR    - lib.fhem: Connection closed, can't send message.
^CTraceback (most recent call last):
  File "FHEM/bindings/python/pythonbinding.py", line 5, in <module>
    fpb.run()
  File "/home/pi/fhem_pythonbinding/FHEM/bindings/python/lib/fhem_pythonbinding.py", line 259, in run
    asyncio.get_event_loop().run_forever()
  File "/usr/lib/python3.7/asyncio/base_events.py", line 539, in run_forever
    self._run_once()
  File "/usr/lib/python3.7/asyncio/base_events.py", line 1739, in _run_once
    event_list = self._selector.select(timeout)
  File "/usr/lib/python3.7/selectors.py", line 468, in select
    fd_event_list = self._selector.poll(timeout, max_ev)


Trotz "globaler" verbose 5 kann ich leider nichts im Log finden. Vielleicht habe ich das auch an der falschen Stelle gesetzt?!?
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 13 Oktober 2020, 20:50:43
Hi,
starte bitte fhem_pythonbinding am Remote einfach nochmals neu.

Dieser Fehler fuehrt leider noch dazu, dass danach keine Kommunikation mit FHEM mehr moeglich ist. Ich muss den Ursprung des Fehlers noch finden.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 14 Oktober 2020, 11:45:14
Hey dominik,

ich hab beim update nun immer das hier mit drin:

New entries in the CHANGED file:
404: Not Found

Fehlt da bei dir im Repo ne Datei, die FHEM erwartet? :-)
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Teonyr am 14 Oktober 2020, 17:06:22
Hallo,

den Fehler von Master_Nick habe ich auch im Log beim Update, aber scheint erstmal (zumindest bei mir) nichts weiter kaputtgemacht zu haben.
Im Gegenteil:
Meine Heizungen, die seit dem letzten Update auf "offline / update" standen (laut log konnte wohl keine Verbindung aufgebaut werden), funktionieren wieder und haben sogar ein tolles Icon bekommen. :D
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: mele am 14 Oktober 2020, 17:25:10
Hallo zusammen,

ich habe es jetzt noch zweimal probiert - Ergebnis:

pi@raspberrypi:~ $ cd fhem_pythonbinding
pi@raspberrypi:~/fhem_pythonbinding $ python3 FHEM/bindings/python/pythonbinding                                                                                                                                                             .py
2020-10-14 16:09:06,542 - INFO     - lib.fhem_pythonbinding: Starting pythonbind                                                                                                                                                             ing...
2020-10-14 16:09:15,538 - INFO     - lib.fhem_pythonbinding: FHEM connection started: 192.168.178.232
2020-10-14 16:10:22,371 - ERROR    - dbus.proxies: Introspect error on :1.3:/: dbus.exceptions.DBusException: org.freedesktop.DBus.Error.AccessDenied: Rejected send message, 2 matched rules; type="method_call", sender=":1.13711" (uid=1000 pid=32404 comm="python3 FHEM/bindings/python/pythonbinding.py ") interface="org.freedesktop.DBus.Introspectable" member="Introspect" error name="(unset)" requested_reply="0" destination=":1.3" (uid=0 pid=7232 comm="/usr/lib/bluetooth/bluetoothd ")
2020-10-14 16:10:22,373 - ERROR    - eq3device_WC: Please add following configuration to /etc/dbus-1/system.d/bluetooth.conf:
                         <policy user="fhem">
                             <allow own="org.bluez"/>
                             <allow send_destination="org.bluez"/>
                             <allow send_interface="org.bluez.GattCharacteristic1"/>
                             <allow send_interface="org.bluez.GattDescriptor1"/>
                             <allow send_interface="org.freedesktop.DBus.ObjectManager"/>
                             <allow send_interface="org.freedesktop.DBus.Properties"/>
                         </policy>
                         Restart dbus afterwards: sudo systemctl restart dbus
2020-10-14 16:10:32,131 - ERROR    - lib.fhem_pythonbinding: Connection closed error
Traceback (most recent call last):
  File "/usr/local/lib/python3.7/dist-packages/websockets/protocol.py", line 827, in transfer_data
    message = await self.read_message()
  File "/usr/local/lib/python3.7/dist-packages/websockets/protocol.py", line 895, in read_message
    frame = await self.read_data_frame(max_size=self.max_size)
  File "/usr/local/lib/python3.7/dist-packages/websockets/protocol.py", line 971, in read_data_frame
    frame = await self.read_frame(max_size)
  File "/usr/local/lib/python3.7/dist-packages/websockets/protocol.py", line 1051, in read_frame
    extensions=self.extensions,
  File "/usr/local/lib/python3.7/dist-packages/websockets/framing.py", line 105, in read
    data = await reader(2)
  File "/usr/lib/python3.7/asyncio/streams.py", line 677, in readexactly
    raise IncompleteReadError(incomplete, n)
asyncio.streams.IncompleteReadError: 0 bytes read on a total of 2 expected bytes

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/home/pi/fhem_pythonbinding/FHEM/bindings/python/lib/fhem_pythonbinding.py", line 41, in pybinding
    async for message in websocket:
  File "/usr/local/lib/python3.7/dist-packages/websockets/protocol.py", line 439, in __aiter__
    yield await self.recv()
  File "/usr/local/lib/python3.7/dist-packages/websockets/protocol.py", line 509, in recv
    await self.ensure_open()
  File "/usr/local/lib/python3.7/dist-packages/websockets/protocol.py", line 803, in ensure_open
    raise self.connection_closed_exc()
websockets.exceptions.ConnectionClosedError: code = 1006 (connection closed abnormally [internal]), no reason
2020-10-14 16:10:32,141 - INFO     - lib.fhem_pythonbinding: Waiting for new FHEM connection...
^CTraceback (most recent call last):
  File "FHEM/bindings/python/pythonbinding.py", line 5, in <module>
    fpb.run()
  File "/home/pi/fhem_pythonbinding/FHEM/bindings/python/lib/fhem_pythonbinding.py", line 259, in run
    asyncio.get_event_loop().run_forever()
  File "/usr/lib/python3.7/asyncio/base_events.py", line 539, in run_forever
    self._run_once()
  File "/usr/lib/python3.7/asyncio/base_events.py", line 1739, in _run_once
    event_list = self._selector.select(timeout)
  File "/usr/lib/python3.7/selectors.py", line 468, in select
    fd_event_list = self._selector.poll(timeout, max_ev)
KeyboardInterrupt
pi@raspberrypi:~/fhem_pythonbinding $ sudo nano /etc/dbus-1/system.d/bluetooth.conf
pi@raspberrypi:~/fhem_pythonbinding $ sudo nano /etc/dbus-1/system.d/bluetooth.conf
pi@raspberrypi:~/fhem_pythonbinding $ sudo nano /etc/dbus-1/system.d/bluetooth.conf
pi@raspberrypi:~/fhem_pythonbinding $ sudo systemctl restart dbus
pi@raspberrypi:~/fhem_pythonbinding $ python3 FHEM/bindings/python/pythonbinding.py
2020-10-14 16:13:35,935 - INFO     - lib.fhem_pythonbinding: Starting pythonbinding...
2020-10-14 16:13:36,054 - INFO     - lib.fhem_pythonbinding: FHEM connection started: 192.168.178.232
2020-10-14 16:15:35,124 - ERROR    - eq3device_WC: Please add following configuration to /etc/dbus-1/system.d/bluetooth.conf:
                         <policy user="fhem">
                             <allow own="org.bluez"/>
                             <allow send_destination="org.bluez"/>
                             <allow send_interface="org.bluez.GattCharacteristic1"/>
                             <allow send_interface="org.bluez.GattDescriptor1"/>
                             <allow send_interface="org.freedesktop.DBus.ObjectManager"/>
                             <allow send_interface="org.freedesktop.DBus.Properties"/>
                         </policy>
                         Restart dbus afterwards: sudo systemctl restart dbus
2020-10-14 16:15:35,140 - ERROR    - lib.fhem_pythonbinding: Failed to handle message:
Traceback (most recent call last):
  File "/usr/local/lib/python3.7/dist-packages/websockets/protocol.py", line 827, in transfer_data
    message = await self.read_message()
  File "/usr/local/lib/python3.7/dist-packages/websockets/protocol.py", line 895, in read_message
    frame = await self.read_data_frame(max_size=self.max_size)
  File "/usr/local/lib/python3.7/dist-packages/websockets/protocol.py", line 971, in read_data_frame
    frame = await self.read_frame(max_size)
  File "/usr/local/lib/python3.7/dist-packages/websockets/protocol.py", line 1051, in read_frame
    extensions=self.extensions,
  File "/usr/local/lib/python3.7/dist-packages/websockets/framing.py", line 105, in read
    data = await reader(2)
  File "/usr/lib/python3.7/asyncio/streams.py", line 677, in readexactly
    raise IncompleteReadError(incomplete, n)
asyncio.streams.IncompleteReadError: 0 bytes read on a total of 2 expected bytes

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/home/pi/fhem_pythonbinding/FHEM/bindings/python/lib/fhem_pythonbinding.py", line 249, in onMessage
    await self.sendBackReturn(hash, ret)
  File "/home/pi/fhem_pythonbinding/FHEM/bindings/python/lib/fhem_pythonbinding.py", line 68, in sendBackReturn
    await self.wsconnection.send(msg)
  File "/usr/local/lib/python3.7/dist-packages/websockets/protocol.py", line 555, in send
    await self.ensure_open()
  File "/usr/local/lib/python3.7/dist-packages/websockets/protocol.py", line 803, in ensure_open
    raise self.connection_closed_exc()
websockets.exceptions.ConnectionClosedError: code = 1006 (connection closed abnormally [internal]), no reason
2020-10-14 16:15:35,143 - ERROR    - lib.fhem: Connection closed, can't send message.
2020-10-14 16:15:35,145 - ERROR    - lib.fhem_pythonbinding: Connection closed error
Traceback (most recent call last):
  File "/usr/local/lib/python3.7/dist-packages/websockets/protocol.py", line 827, in transfer_data
    message = await self.read_message()
  File "/usr/local/lib/python3.7/dist-packages/websockets/protocol.py", line 895, in read_message
    frame = await self.read_data_frame(max_size=self.max_size)
  File "/usr/local/lib/python3.7/dist-packages/websockets/protocol.py", line 971, in read_data_frame
    frame = await self.read_frame(max_size)
  File "/usr/local/lib/python3.7/dist-packages/websockets/protocol.py", line 1051, in read_frame
    extensions=self.extensions,
  File "/usr/local/lib/python3.7/dist-packages/websockets/framing.py", line 105, in read
    data = await reader(2)
  File "/usr/lib/python3.7/asyncio/streams.py", line 677, in readexactly
    raise IncompleteReadError(incomplete, n)
asyncio.streams.IncompleteReadError: 0 bytes read on a total of 2 expected bytes

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/home/pi/fhem_pythonbinding/FHEM/bindings/python/lib/fhem_pythonbinding.py", line 41, in pybinding
    async for message in websocket:
  File "/usr/local/lib/python3.7/dist-packages/websockets/protocol.py", line 439, in __aiter__
    yield await self.recv()
  File "/usr/local/lib/python3.7/dist-packages/websockets/protocol.py", line 509, in recv
    await self.ensure_open()
  File "/usr/local/lib/python3.7/dist-packages/websockets/protocol.py", line 803, in ensure_open
    raise self.connection_closed_exc()
websockets.exceptions.ConnectionClosedError: code = 1006 (connection closed abnormally [internal]), no reason
2020-10-14 16:15:35,147 - INFO     - lib.fhem_pythonbinding: Waiting for new FHEM connection...
2020-10-14 16:15:35,149 - ERROR    - lib.fhem_pythonbinding: Failed to handle message:
Traceback (most recent call last):
  File "/usr/local/lib/python3.7/dist-packages/websockets/protocol.py", line 827, in transfer_data
    message = await self.read_message()
  File "/usr/local/lib/python3.7/dist-packages/websockets/protocol.py", line 895, in read_message
    frame = await self.read_data_frame(max_size=self.max_size)
  File "/usr/local/lib/python3.7/dist-packages/websockets/protocol.py", line 971, in read_data_frame
    frame = await self.read_frame(max_size)
  File "/usr/local/lib/python3.7/dist-packages/websockets/protocol.py", line 1051, in read_frame
    extensions=self.extensions,
  File "/usr/local/lib/python3.7/dist-packages/websockets/framing.py", line 105, in read
    data = await reader(2)
  File "/usr/lib/python3.7/asyncio/streams.py", line 677, in readexactly
    raise IncompleteReadError(incomplete, n)
asyncio.streams.IncompleteReadError: 0 bytes read on a total of 2 expected bytes

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/home/pi/fhem_pythonbinding/FHEM/bindings/python/lib/fhem_pythonbinding.py", line 249, in onMessage
    await self.sendBackReturn(hash, ret)
  File "/home/pi/fhem_pythonbinding/FHEM/bindings/python/lib/fhem_pythonbinding.py", line 68, in sendBackReturn
    await self.wsconnection.send(msg)
  File "/usr/local/lib/python3.7/dist-packages/websockets/protocol.py", line 555, in send
    await self.ensure_open()
  File "/usr/local/lib/python3.7/dist-packages/websockets/protocol.py", line 803, in ensure_open
    raise self.connection_closed_exc()
websockets.exceptions.ConnectionClosedError: code = 1006 (connection closed abnormally [internal]), no reason
2020-10-14 16:15:35,152 - ERROR    - lib.fhem_pythonbinding: Failed to handle message:
Traceback (most recent call last):
  File "/usr/local/lib/python3.7/dist-packages/websockets/protocol.py", line 827, in transfer_data
    message = await self.read_message()
  File "/usr/local/lib/python3.7/dist-packages/websockets/protocol.py", line 895, in read_message
    frame = await self.read_data_frame(max_size=self.max_size)
  File "/usr/local/lib/python3.7/dist-packages/websockets/protocol.py", line 971, in read_data_frame
    frame = await self.read_frame(max_size)
  File "/usr/local/lib/python3.7/dist-packages/websockets/protocol.py", line 1051, in read_frame
    extensions=self.extensions,
  File "/usr/local/lib/python3.7/dist-packages/websockets/framing.py", line 105, in read
    data = await reader(2)
  File "/usr/lib/python3.7/asyncio/streams.py", line 677, in readexactly
    raise IncompleteReadError(incomplete, n)
asyncio.streams.IncompleteReadError: 0 bytes read on a total of 2 expected bytes

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/home/pi/fhem_pythonbinding/FHEM/bindings/python/lib/fhem_pythonbinding.py", line 249, in onMessage
    await self.sendBackReturn(hash, ret)
  File "/home/pi/fhem_pythonbinding/FHEM/bindings/python/lib/fhem_pythonbinding.py", line 68, in sendBackReturn
    await self.wsconnection.send(msg)
  File "/usr/local/lib/python3.7/dist-packages/websockets/protocol.py", line 555, in send
    await self.ensure_open()
  File "/usr/local/lib/python3.7/dist-packages/websockets/protocol.py", line 803, in ensure_open
    raise self.connection_closed_exc()
websockets.exceptions.ConnectionClosedError: code = 1006 (connection closed abnormally [internal]), no reason
2020-10-14 16:15:50,152 - ERROR    - lib.fhem: Timeout - NO RESPONSE for command: readingsSingleUpdate($defs{'eq3device_WC'},'state','Failed to execute function Set: Traceback (most recent call last):
  File "/usr/local/lib/python3.7/dist-packages/websockets/protocol.py", line 827, in transfer_data
    message = await self.read_message()
  File "/usr/local/lib/python3.7/dist-packages/websockets/protocol.py", line 895, in read_message
    frame = await self.read_data_frame(max_size=self.max_size)
  File "/usr/local/lib/python3.7/dist-packages/websockets/protocol.py", line 971, in read_data_frame
    frame = await self.read_frame(max_size)
  File "/usr/local/lib/python3.7/dist-packages/websockets/protocol.py", line 1051, in read_frame
    extensions=self.extensions,
  File "/usr/local/lib/python3.7/dist-packages/websockets/framing.py", line 105, in read
    data = await reader(2)
  File "/usr/lib/python3.7/asyncio/streams.py", line 677, in readexactly
    raise IncompleteReadError(incomplete, n)
asyncio.streams.IncompleteReadError: 0 bytes read on a total of 2 expected bytes

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/home/pi/fhem_pythonbinding/FHEM/bindings/python/lib/fhem_pythonbinding.py", line 228, in onMessage
    await self.updateHash(hash)
  File "/home/pi/fhem_pythonbinding/FHEM/bindings/python/lib/fhem_pythonbinding.py", line 88, in updateHash
    await self.wsconnection.send(msg)
  File "/usr/local/lib/python3.7/dist-packages/websockets/protocol.py", line 555, in send
    await self.ensure_open()
  File "/usr/local/lib/python3.7/dist-packages/websockets/protocol.py", line 803, in ensure_open
    raise self.connection_closed_exc()
websockets.exceptions.ConnectionClosedError: code = 1006 (connection closed abnormally [internal]), no reason
',1)


Vor dem zweiten Versuche habe ich die /etc/dbus-1/system.d/bluetooth.conf nochmal angepasst und die BT-Berechtigung für root auskommentiert:

<!-- This configuration file specifies the required security policies
     for Bluetooth core daemon to work. -->

<!DOCTYPE busconfig PUBLIC "-//freedesktop//DTD D-BUS Bus Configuration 1.0//EN"
"http://www.freedesktop.org/standards/dbus/1.0/busconfig.dtd">
<busconfig>

  <!-- ../system.conf have denied everything, so we just punch some holes -->

<!--  <policy user="root">
    <allow own="org.bluez"/>
    <allow send_destination="org.bluez"/>
    <allow send_interface="org.bluez.Agent1"/>
    <allow send_interface="org.bluez.MediaEndpoint1"/>
    <allow send_interface="org.bluez.MediaPlayer1"/>
    <allow send_interface="org.bluez.Profile1"/>
    <allow send_interface="org.bluez.GattCharacteristic1"/>
    <allow send_interface="org.bluez.GattDescriptor1"/>
    <allow send_interface="org.bluez.LEAdvertisement1"/>
    <allow send_interface="org.freedesktop.DBus.ObjectManager"/>
    <allow send_interface="org.freedesktop.DBus.Properties"/>
  </policy>
-->
                        <policy user="fhem">
                            <allow own="org.bluez"/>
                            <allow send_destination="org.bluez"/>
                            <allow send_interface="org.bluez.GattCharacteristic1"/>
                            <allow send_interface="org.bluez.GattDescriptor1"/>
                            <allow send_interface="org.freedesktop.DBus.ObjectManager"/>
                            <allow send_interface="org.freedesktop.DBus.Properties"/>
                        </policy>

  <!-- allow users of bluetooth group to communicate -->
  <policy group="bluetooth">
    <allow send_destination="org.bluez"/>
  </policy>

  <policy at_console="true">
    <allow send_destination="org.bluez"/>
  </policy>

  <!-- allow users of lp group (printing subsystem) to
       communicate with bluetoothd -->
  <policy group="lp">
    <allow send_destination="org.bluez"/>
  </policy>

  <policy context="default">
    <deny send_destination="org.bluez"/>
  </policy>

</busconfig>


Nochmal das Thema Rechte: Auf dem Remote gibt es keinen User fhem - natürlich auch kein FHEM installiert, aber vielleicht benötigt es einen entsprechenden User?

Danke und Gruß

Manuel :-\
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 14 Oktober 2020, 17:57:10
Der Fehler beim Update ist nicht weiter tragisch. Ich habe noch kein CHANGED File angelegt wo Changes dokumentiert werden, daher kommt die 404 Fehlermeldung. Das hat aber keine Auswirkung.

@mele, ja, du hast Recht, das hatte ich uebersehen. Bitte die Bluetooth Berechtigung von "fhem" auf "pi" aendern. Es muss der User drin stehen der fhem_pythonbinding ausfuehrt.
Danach einfach fhem_pythonbinding von der Konsole nochmals starten.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: mele am 14 Oktober 2020, 18:15:51
Hat leider nichts gebracht:

pi@raspberrypi:~/fhem_pythonbinding $ sudo nano /etc/dbus-1/system.d/bluetooth.conf
pi@raspberrypi:~/fhem_pythonbinding $ sudo systemctl restart dbus
pi@raspberrypi:~/fhem_pythonbinding $ python3 FHEM/bindings/python/pythonbinding.py
2020-10-14 17:12:22,271 - INFO     - lib.fhem_pythonbinding: Starting pythonbinding...
2020-10-14 17:12:24,170 - INFO     - lib.fhem_pythonbinding: FHEM connection started: 192.168.178.232
2020-10-14 17:13:31,482 - ERROR    - eq3device_WC: Please add following configuration to /etc/dbus-1/system.d/bluetooth.conf:
                         <policy user="fhem">
                             <allow own="org.bluez"/>
                             <allow send_destination="org.bluez"/>
                             <allow send_interface="org.bluez.GattCharacteristic1"/>
                             <allow send_interface="org.bluez.GattDescriptor1"/>
                             <allow send_interface="org.freedesktop.DBus.ObjectManager"/>
                             <allow send_interface="org.freedesktop.DBus.Properties"/>
                         </policy>
                         Restart dbus afterwards: sudo systemctl restart dbus
2020-10-14 17:13:31,489 - ERROR    - lib.fhem_pythonbinding: Connection closed error
Traceback (most recent call last):
  File "/usr/local/lib/python3.7/dist-packages/websockets/protocol.py", line 827, in transfer_data
    message = await self.read_message()
  File "/usr/local/lib/python3.7/dist-packages/websockets/protocol.py", line 895, in read_message
    frame = await self.read_data_frame(max_size=self.max_size)
  File "/usr/local/lib/python3.7/dist-packages/websockets/protocol.py", line 971, in read_data_frame
    frame = await self.read_frame(max_size)
  File "/usr/local/lib/python3.7/dist-packages/websockets/protocol.py", line 1051, in read_frame
    extensions=self.extensions,
  File "/usr/local/lib/python3.7/dist-packages/websockets/framing.py", line 105, in read
    data = await reader(2)
  File "/usr/lib/python3.7/asyncio/streams.py", line 677, in readexactly
    raise IncompleteReadError(incomplete, n)
asyncio.streams.IncompleteReadError: 0 bytes read on a total of 2 expected bytes

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/home/pi/fhem_pythonbinding/FHEM/bindings/python/lib/fhem_pythonbinding.py", line 41, in pybinding
    async for message in websocket:
  File "/usr/local/lib/python3.7/dist-packages/websockets/protocol.py", line 439, in __aiter__
    yield await self.recv()
  File "/usr/local/lib/python3.7/dist-packages/websockets/protocol.py", line 509, in recv
    await self.ensure_open()
  File "/usr/local/lib/python3.7/dist-packages/websockets/protocol.py", line 803, in ensure_open
    raise self.connection_closed_exc()
websockets.exceptions.ConnectionClosedError: code = 1006 (connection closed abnormally [internal]), no reason
2020-10-14 17:13:31,498 - INFO     - lib.fhem_pythonbinding: Waiting for new FHEM connection...
2020-10-14 17:13:31,500 - ERROR    - lib.fhem_pythonbinding: Failed to handle message:
Traceback (most recent call last):
  File "/usr/local/lib/python3.7/dist-packages/websockets/protocol.py", line 827, in transfer_data
    message = await self.read_message()
  File "/usr/local/lib/python3.7/dist-packages/websockets/protocol.py", line 895, in read_message
    frame = await self.read_data_frame(max_size=self.max_size)
  File "/usr/local/lib/python3.7/dist-packages/websockets/protocol.py", line 971, in read_data_frame
    frame = await self.read_frame(max_size)
  File "/usr/local/lib/python3.7/dist-packages/websockets/protocol.py", line 1051, in read_frame
    extensions=self.extensions,
  File "/usr/local/lib/python3.7/dist-packages/websockets/framing.py", line 105, in read
    data = await reader(2)
  File "/usr/lib/python3.7/asyncio/streams.py", line 677, in readexactly
    raise IncompleteReadError(incomplete, n)
asyncio.streams.IncompleteReadError: 0 bytes read on a total of 2 expected bytes

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/home/pi/fhem_pythonbinding/FHEM/bindings/python/lib/fhem_pythonbinding.py", line 249, in onMessage
    await self.sendBackReturn(hash, ret)
  File "/home/pi/fhem_pythonbinding/FHEM/bindings/python/lib/fhem_pythonbinding.py", line 68, in sendBackReturn
    await self.wsconnection.send(msg)
  File "/usr/local/lib/python3.7/dist-packages/websockets/protocol.py", line 555, in send
    await self.ensure_open()
  File "/usr/local/lib/python3.7/dist-packages/websockets/protocol.py", line 803, in ensure_open
    raise self.connection_closed_exc()
websockets.exceptions.ConnectionClosedError: code = 1006 (connection closed abnormally [internal]), no reason
2020-10-14 17:13:31,503 - ERROR    - lib.fhem_pythonbinding: Failed to handle message:
Traceback (most recent call last):
  File "/usr/local/lib/python3.7/dist-packages/websockets/protocol.py", line 827, in transfer_data
    message = await self.read_message()
  File "/usr/local/lib/python3.7/dist-packages/websockets/protocol.py", line 895, in read_message
    frame = await self.read_data_frame(max_size=self.max_size)
  File "/usr/local/lib/python3.7/dist-packages/websockets/protocol.py", line 971, in read_data_frame
    frame = await self.read_frame(max_size)
  File "/usr/local/lib/python3.7/dist-packages/websockets/protocol.py", line 1051, in read_frame
    extensions=self.extensions,
  File "/usr/local/lib/python3.7/dist-packages/websockets/framing.py", line 105, in read
    data = await reader(2)
  File "/usr/lib/python3.7/asyncio/streams.py", line 677, in readexactly
    raise IncompleteReadError(incomplete, n)
asyncio.streams.IncompleteReadError: 0 bytes read on a total of 2 expected bytes

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/home/pi/fhem_pythonbinding/FHEM/bindings/python/lib/fhem_pythonbinding.py", line 249, in onMessage
    await self.sendBackReturn(hash, ret)
  File "/home/pi/fhem_pythonbinding/FHEM/bindings/python/lib/fhem_pythonbinding.py", line 68, in sendBackReturn
    await self.wsconnection.send(msg)
  File "/usr/local/lib/python3.7/dist-packages/websockets/protocol.py", line 555, in send
    await self.ensure_open()
  File "/usr/local/lib/python3.7/dist-packages/websockets/protocol.py", line 803, in ensure_open
    raise self.connection_closed_exc()
websockets.exceptions.ConnectionClosedError: code = 1006 (connection closed abnormally [internal]), no reason
2020-10-14 17:13:31,506 - ERROR    - lib.fhem_pythonbinding: Failed to handle message:
Traceback (most recent call last):
  File "/usr/local/lib/python3.7/dist-packages/websockets/protocol.py", line 827, in transfer_data
    message = await self.read_message()
  File "/usr/local/lib/python3.7/dist-packages/websockets/protocol.py", line 895, in read_message
    frame = await self.read_data_frame(max_size=self.max_size)
  File "/usr/local/lib/python3.7/dist-packages/websockets/protocol.py", line 971, in read_data_frame
    frame = await self.read_frame(max_size)
  File "/usr/local/lib/python3.7/dist-packages/websockets/protocol.py", line 1051, in read_frame
    extensions=self.extensions,
  File "/usr/local/lib/python3.7/dist-packages/websockets/framing.py", line 105, in read
    data = await reader(2)
  File "/usr/lib/python3.7/asyncio/streams.py", line 677, in readexactly
    raise IncompleteReadError(incomplete, n)
asyncio.streams.IncompleteReadError: 0 bytes read on a total of 2 expected bytes

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/home/pi/fhem_pythonbinding/FHEM/bindings/python/lib/fhem_pythonbinding.py", line 249, in onMessage
    await self.sendBackReturn(hash, ret)
  File "/home/pi/fhem_pythonbinding/FHEM/bindings/python/lib/fhem_pythonbinding.py", line 68, in sendBackReturn
    await self.wsconnection.send(msg)
  File "/usr/local/lib/python3.7/dist-packages/websockets/protocol.py", line 555, in send
    await self.ensure_open()
  File "/usr/local/lib/python3.7/dist-packages/websockets/protocol.py", line 803, in ensure_open
    raise self.connection_closed_exc()
websockets.exceptions.ConnectionClosedError: code = 1006 (connection closed abnormally [internal]), no reason


/etc/dbus-1/system.d/bluetooth.conf:

<!-- This configuration file specifies the required security policies
     for Bluetooth core daemon to work. -->

<!DOCTYPE busconfig PUBLIC "-//freedesktop//DTD D-BUS Bus Configuration 1.0//EN"
"http://www.freedesktop.org/standards/dbus/1.0/busconfig.dtd">
<busconfig>

  <!-- ../system.conf have denied everything, so we just punch some holes -->

<!--  <policy user="root">
    <allow own="org.bluez"/>
    <allow send_destination="org.bluez"/>
    <allow send_interface="org.bluez.Agent1"/>
    <allow send_interface="org.bluez.MediaEndpoint1"/>
    <allow send_interface="org.bluez.MediaPlayer1"/>
    <allow send_interface="org.bluez.Profile1"/>
    <allow send_interface="org.bluez.GattCharacteristic1"/>
    <allow send_interface="org.bluez.GattDescriptor1"/>
    <allow send_interface="org.bluez.LEAdvertisement1"/>
    <allow send_interface="org.freedesktop.DBus.ObjectManager"/>
    <allow send_interface="org.freedesktop.DBus.Properties"/>
  </policy>
-->
                        <policy user="pi">
                            <allow own="org.bluez"/>
                            <allow send_destination="org.bluez"/>
                            <allow send_interface="org.bluez.GattCharacteristic1"/>
                            <allow send_interface="org.bluez.GattDescriptor1"/>
                            <allow send_interface="org.freedesktop.DBus.ObjectManager"/>
                            <allow send_interface="org.freedesktop.DBus.Properties"/>
                        </policy>

  <!-- allow users of bluetooth group to communicate -->
  <policy group="bluetooth">
    <allow send_destination="org.bluez"/>
  </policy>

  <policy at_console="true">
    <allow send_destination="org.bluez"/>
  </policy>

  <!-- allow users of lp group (printing subsystem) to
       communicate with bluetoothd -->
  <policy group="lp">
    <allow send_destination="org.bluez"/>
  </policy>

  <policy context="default">
    <deny send_destination="org.bluez"/>
  </policy>

</busconfig>
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 14 Oktober 2020, 18:24:08
Aktiviere bitte wieder den "root" Teil in der bluetooth.conf, ich denke root braucht auch Zugriff. Rest sieht alles gut aus, ist exakt gleich wie bei mir.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: mele am 14 Oktober 2020, 19:30:10
Geht immer noch nicht, aber es kam ein anderer Fehler. Man sieht auch, dass der definierte Name übertragen wird.

FHEM ist wieder nicht erreichbar und hat von alleine neu gestartet.

Ganz unten ist eine Fehlermeldung hierzu erkennbar:
readingsSingleUpdate($defs{'eq3device_WC'},'presence','offline',1)

Ist eq3device_WC (Devicename) richtig, ober müsste da die MAC rein?

pi@raspberrypi:~/fhem_pythonbinding $ sudo nano /etc/dbus-1/system.d/bluetooth.conf
pi@raspberrypi:~/fhem_pythonbinding $ sudo systemctl restart dbus
pi@raspberrypi:~/fhem_pythonbinding $ python3 FHEM/bindings/python/pythonbinding.py
2020-10-14 18:16:00,321 - INFO     - lib.fhem_pythonbinding: Starting pythonbinding...
2020-10-14 18:16:10,084 - INFO     - lib.fhem_pythonbinding: FHEM connection started: 192.168.178.232
2020-10-14 18:16:53,381 - ERROR    - lib.fhem_pythonbinding: Connection closed error
Traceback (most recent call last):
  File "/usr/local/lib/python3.7/dist-packages/websockets/protocol.py", line 827, in transfer_data
    message = await self.read_message()
  File "/usr/local/lib/python3.7/dist-packages/websockets/protocol.py", line 895, in read_message
    frame = await self.read_data_frame(max_size=self.max_size)
  File "/usr/local/lib/python3.7/dist-packages/websockets/protocol.py", line 971, in read_data_frame
    frame = await self.read_frame(max_size)
  File "/usr/local/lib/python3.7/dist-packages/websockets/protocol.py", line 1051, in read_frame
    extensions=self.extensions,
  File "/usr/local/lib/python3.7/dist-packages/websockets/framing.py", line 105, in read
    data = await reader(2)
  File "/usr/lib/python3.7/asyncio/streams.py", line 677, in readexactly
    raise IncompleteReadError(incomplete, n)
asyncio.streams.IncompleteReadError: 0 bytes read on a total of 2 expected bytes

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/home/pi/fhem_pythonbinding/FHEM/bindings/python/lib/fhem_pythonbinding.py", line 41, in pybinding
    async for message in websocket:
  File "/usr/local/lib/python3.7/dist-packages/websockets/protocol.py", line 439, in __aiter__
    yield await self.recv()
  File "/usr/local/lib/python3.7/dist-packages/websockets/protocol.py", line 509, in recv
    await self.ensure_open()
  File "/usr/local/lib/python3.7/dist-packages/websockets/protocol.py", line 803, in ensure_open
    raise self.connection_closed_exc()
websockets.exceptions.ConnectionClosedError: code = 1006 (connection closed abnormally [internal]), no reason
2020-10-14 18:16:53,401 - INFO     - lib.fhem_pythonbinding: Waiting for new FHEM connection...
2020-10-14 18:18:15,647 - ERROR    - lib.fhem: Connection closed, can't send message.
2020-10-14 18:18:30,662 - ERROR    - lib.fhem: Timeout - NO RESPONSE for command: readingsSingleUpdate($defs{'eq3device_WC'},'presence','offline',1)
2020-10-14 18:18:30,664 - ERROR    - lib.fhem: Connection closed, can't send message.
2020-10-14 18:18:45,680 - ERROR    - lib.fhem: Timeout - NO RESPONSE for command: readingsSingleUpdate($defs{'eq3device_WC'},'state','update',1)
2020-10-14 18:18:50,839 - ERROR    - lib.fhem: Connection closed, can't send message.
2020-10-14 18:19:05,855 - ERROR    - lib.fhem: Timeout - NO RESPONSE for command: readingsBeginUpdate($defs{'eq3device_WC'});;
2020-10-14 18:19:05,857 - ERROR    - lib.fhem: Connection closed, can't send message.


/etc/dbus-1/system.d/bluetooth.conf:

<!-- This configuration file specifies the required security policies
     for Bluetooth core daemon to work. -->

<!DOCTYPE busconfig PUBLIC "-//freedesktop//DTD D-BUS Bus Configuration 1.0//EN"
"http://www.freedesktop.org/standards/dbus/1.0/busconfig.dtd">
<busconfig>

  <!-- ../system.conf have denied everything, so we just punch some holes -->

  <policy user="root">
    <allow own="org.bluez"/>
    <allow send_destination="org.bluez"/>
    <allow send_interface="org.bluez.Agent1"/>
    <allow send_interface="org.bluez.MediaEndpoint1"/>
    <allow send_interface="org.bluez.MediaPlayer1"/>
    <allow send_interface="org.bluez.Profile1"/>
    <allow send_interface="org.bluez.GattCharacteristic1"/>
    <allow send_interface="org.bluez.GattDescriptor1"/>
    <allow send_interface="org.bluez.LEAdvertisement1"/>
    <allow send_interface="org.freedesktop.DBus.ObjectManager"/>
    <allow send_interface="org.freedesktop.DBus.Properties"/>
  </policy>

                        <policy user="pi">
                            <allow own="org.bluez"/>
                            <allow send_destination="org.bluez"/>
                            <allow send_interface="org.bluez.GattCharacteristic1"/>
                            <allow send_interface="org.bluez.GattDescriptor1"/>
                            <allow send_interface="org.freedesktop.DBus.ObjectManager"/>
                            <allow send_interface="org.freedesktop.DBus.Properties"/>
                        </policy>

  <!-- allow users of bluetooth group to communicate -->
  <policy group="bluetooth">
    <allow send_destination="org.bluez"/>
  </policy>

  <policy at_console="true">
    <allow send_destination="org.bluez"/>
  </policy>

  <!-- allow users of lp group (printing subsystem) to
       communicate with bluetoothd -->
  <policy group="lp">
    <allow send_destination="org.bluez"/>
  </policy>

  <policy context="default">
    <deny send_destination="org.bluez"/>
  </policy>

</busconfig>
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 14 Oktober 2020, 20:26:24
Sieht nun zumindest besser aus. Hast du vielleicht noch irgendeine Firewall oder iptables Einstellungen die eine Kommunikation zwischen den beiden RPis verhindert?

Der Fehler liegt am "Connection closed error", das ist mir im Moment nicht klar wieso die Verbindung geschlossen wird. Aktualisiere sicherheitshalber auch nochmals mit "git pull" am Remote in fhem_pythonbinding Verzeichnis die Module, daran liegt es aber glaube ich nicht.

Ändere danach bitte in FHEM/bindings/python/lib/fhem_pythonbinding.py das Logging:
logging.basicConfig(format='%(asctime)s - %(levelname)-8s - %(name)s: %(message)s', level=logging.INFO)
ändern auf
logging.basicConfig(format='%(asctime)s - %(levelname)-8s - %(name)s: %(message)s', level=logging.DEBUG)
Bitte poste dann nochmals das Log.
Danke dir für deine Tests!
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: mele am 14 Oktober 2020, 20:51:47
Hi,

die Einstellingen wie iptables oder so sind mir nicht bewusst. Remote und Haupt-FHEM sind per ssh verbunden und die Verbindung klappt. Hier das Log nach Änderung des logging Eintrags:

pi@raspberrypi:~/fhem_pythonbinding $ sudo nano FHEM/bindings/python/lib/fhem_pythonbinding.py
pi@raspberrypi:~/fhem_pythonbinding $ python3 FHEM/bindings/python/pythonbinding.py
2020-10-14 19:47:45,050 - DEBUG    - asyncio: Using selector: EpollSelector
2020-10-14 19:47:45,052 - INFO     - lib.fhem_pythonbinding: Starting pythonbinding...
2020-10-14 19:47:53,172 - DEBUG    - websockets.protocol: server - state = CONNECTING
2020-10-14 19:47:53,173 - DEBUG    - websockets.protocol: server - event = connection_made(<_SelectorSocketTransport fd=7 read=idle write=<idle, bufsize=0>>)
2020-10-14 19:47:53,174 - DEBUG    - websockets.protocol: server - event = data_received(<209 bytes>)
2020-10-14 19:47:53,175 - DEBUG    - websockets.server: server < GET / HTTP/1.1
2020-10-14 19:47:53,175 - DEBUG    - websockets.server: server < Headers([('Host', '192.168.178.156:15733'), ('User-Agent', 'fhem'), ('Accept-Encoding', 'gzip,deflate'), ('Sec-WebSocket-Key', 'oQBFP/kuQkFttqww9II/TQ=='), ('Connection', 'Upgrade'), ('Upgrade', 'websocket'), ('Sec-WebSocket-Version', '13')])
2020-10-14 19:47:53,177 - DEBUG    - websockets.server: server > HTTP/1.1 101 Switching Protocols
2020-10-14 19:47:53,178 - DEBUG    - websockets.server: server > Headers([('Upgrade', 'websocket'), ('Connection', 'Upgrade'), ('Sec-WebSocket-Accept', 'txm2yG1+1gDlZxDqYxqSFsHEzuk='), ('Date', 'Wed, 14 Oct 2020 18:47:53 GMT'), ('Server', 'Python/3.7 websockets/8.1')])
2020-10-14 19:47:53,178 - DEBUG    - websockets.protocol: server - state = OPEN
2020-10-14 19:47:53,179 - INFO     - lib.fhem_pythonbinding: FHEM connection started: 192.168.178.232
2020-10-14 19:48:09,070 - DEBUG    - websockets.protocol: server - event = data_received(<246 bytes>)
2020-10-14 19:48:09,072 - DEBUG    - websockets.protocol: server < Frame(fin=True, opcode=1, data=b'{"PYTHONTYPE":"eq3bt","argsh":{},"args":["set","eq3device_WC","room","test"],"function":"Attr","defargs":["eq3device_WC","PythonModule","eq3bt","00:1A:22:0C:79:CF"],"msgtype":"function","id":"28359558","defargsh":{},"NAME":"eq3device_WC"}', rsv1=False, rsv2=False, rsv3=False)
2020-10-14 19:48:09,073 - DEBUG    - lib.fhem_pythonbinding: >>> WS: {"PYTHONTYPE":"eq3bt","argsh":{},"args":["set","eq3device_WC","room","test"],"function":"Attr","defargs":["eq3device_WC","PythonModule","eq3bt","00:1A:22:0C:79:CF"],"msgtype":"function","id":"28359558","defargsh":{},"NAME":"eq3device_WC"}
2020-10-14 19:48:09,074 - DEBUG    - lib.fhem_pythonbinding: <<< WS: {"PYTHONTYPE": "eq3bt", "argsh": {}, "args": ["set", "eq3device_WC", "room", "test"], "function": "Attr", "defargs": ["eq3device_WC", "PythonModule", "eq3bt", "00:1A:22:0C:79:CF"], "msgtype": "function", "id": "28359558", "defargsh": {}, "NAME": "eq3device_WC", "finished": 1, "returnval": ""}
2020-10-14 19:48:09,075 - DEBUG    - websockets.protocol: server > Frame(fin=True, opcode=1, data=b'{"PYTHONTYPE": "eq3bt", "argsh": {}, "args": ["set", "eq3device_WC", "room", "test"], "function": "Attr", "defargs": ["eq3device_WC", "PythonModule", "eq3bt", "00:1A:22:0C:79:CF"], "msgtype": "function", "id": "28359558", "defargsh": {}, "NAME": "eq3device_WC", "finished": 1, "returnval": ""}', rsv1=False, rsv2=False, rsv3=False)
2020-10-14 19:48:09,325 - DEBUG    - websockets.protocol: server > Frame(fin=True, opcode=1, data=b'{"awaitId": 21558164, "NAME": "eq3device_WC", "msgtype": "command", "command": "AttrVal(\'eq3device_WC\', \'verbose\', \'3\')"}', rsv1=False, rsv2=False, rsv3=False)
2020-10-14 19:48:09,327 - DEBUG    - websockets.protocol: server - event = data_received(<49 bytes>)
2020-10-14 19:48:09,328 - DEBUG    - websockets.protocol: server < Frame(fin=True, opcode=1, data=b'{"error":0,"result":"3","awaitId":21558164}', rsv1=False, rsv2=False, rsv3=False)
2020-10-14 19:48:09,329 - DEBUG    - lib.fhem_pythonbinding: >>> WS: {"error":0,"result":"3","awaitId":21558164}
2020-10-14 19:48:09,330 - DEBUG    - websockets.protocol: server > Frame(fin=True, opcode=1, data=b'{"awaitId": 59372465, "NAME": "eq3device_WC", "msgtype": "command", "command": "AttrVal(\'eq3device_WC\', \'icon\', \'\')"}', rsv1=False, rsv2=False, rsv3=False)
2020-10-14 19:48:09,332 - DEBUG    - websockets.protocol: server - event = data_received(<48 bytes>)
2020-10-14 19:48:09,333 - DEBUG    - websockets.protocol: server < Frame(fin=True, opcode=1, data=b'{"awaitId":59372465,"error":0,"result":""}', rsv1=False, rsv2=False, rsv3=False)
2020-10-14 19:48:09,334 - DEBUG    - lib.fhem_pythonbinding: >>> WS: {"awaitId":59372465,"error":0,"result":""}
2020-10-14 19:48:09,335 - DEBUG    - websockets.protocol: server > Frame(fin=True, opcode=1, data=b'{"awaitId": 32367077, "NAME": "eq3device_WC", "msgtype": "command", "command": "CommandAttr(undef, \\"icon sani_heating_temp\\")"}', rsv1=False, rsv2=False, rsv3=False)
2020-10-14 19:48:09,337 - DEBUG    - websockets.protocol: server - event = data_received(<103 bytes>)
2020-10-14 19:48:09,337 - DEBUG    - websockets.protocol: server < Frame(fin=True, opcode=1, data=b'{"awaitId":32367077,"error":0,"result":"attr icon sani_heating_temp: attribute value is missing"}', rsv1=False, rsv2=False, rsv3=False)
2020-10-14 19:48:09,338 - DEBUG    - lib.fhem_pythonbinding: >>> WS: {"awaitId":32367077,"error":0,"result":"attr icon sani_heating_temp: attribute value is missing"}
2020-10-14 19:48:09,340 - DEBUG    - websockets.protocol: server > Frame(fin=True, opcode=1, data=b'{"awaitId": 64538320, "NAME": "eq3device_WC", "msgtype": "command", "command": "readingsSingleUpdate($defs{\'eq3device_WC\'},\'presence\',\'offline\',1)"}', rsv1=False, rsv2=False, rsv3=False)
2020-10-14 19:48:09,343 - DEBUG    - websockets.protocol: server - event = data_received(<65 bytes>)
2020-10-14 19:48:09,344 - DEBUG    - websockets.protocol: server < Frame(fin=True, opcode=1, data=b'{"awaitId":64538320,"result":"presence: offline","error":0}', rsv1=False, rsv2=False, rsv3=False)
2020-10-14 19:48:09,345 - DEBUG    - lib.fhem_pythonbinding: >>> WS: {"awaitId":64538320,"result":"presence: offline","error":0}
2020-10-14 19:48:09,346 - DEBUG    - websockets.protocol: server > Frame(fin=True, opcode=1, data=b'{"awaitId": 63294273, "NAME": "eq3device_WC", "msgtype": "command", "command": "readingsSingleUpdate($defs{\'eq3device_WC\'},\'state\',\'connecting\',1)"}', rsv1=False, rsv2=False, rsv3=False)
2020-10-14 19:48:09,349 - DEBUG    - websockets.protocol: server - event = data_received(<58 bytes>)
2020-10-14 19:48:09,350 - DEBUG    - websockets.protocol: server < Frame(fin=True, opcode=1, data=b'{"error":0,"result":"connecting","awaitId":63294273}', rsv1=False, rsv2=False, rsv3=False)
2020-10-14 19:48:09,351 - DEBUG    - lib.fhem_pythonbinding: >>> WS: {"error":0,"result":"connecting","awaitId":63294273}
2020-10-14 19:48:13,772 - DEBUG    - websockets.protocol: server - event = data_received(<229 bytes>)
2020-10-14 19:48:13,773 - DEBUG    - websockets.protocol: server < Frame(fin=True, opcode=1, data=b'{"NAME":"eq3device_WC","defargsh":{},"msgtype":"function","defargs":["eq3device_WC","PythonModule","eq3bt","00:1A:22:0C:79:CF"],"id":"39798918","function":"Set","PYTHONTYPE":"eq3bt","args":["eq3device_WC","?"],"argsh":{}}', rsv1=False, rsv2=False, rsv3=False)
2020-10-14 19:48:13,775 - DEBUG    - lib.fhem_pythonbinding: >>> WS: {"NAME":"eq3device_WC","defargsh":{},"msgtype":"function","defargs":["eq3device_WC","PythonModule","eq3bt","00:1A:22:0C:79:CF"],"id":"39798918","function":"Set","PYTHONTYPE":"eq3bt","args":["eq3device_WC","?"],"argsh":{}}
2020-10-14 19:48:13,776 - DEBUG    - lib.fhem_pythonbinding: Start function eq3device_WC:Set
2020-10-14 19:48:13,777 - DEBUG    - lib.fhem_pythonbinding: End function eq3device_WC:Set
2020-10-14 19:48:13,778 - DEBUG    - lib.fhem_pythonbinding: <<< WS: {"NAME": "eq3device_WC", "defargsh": {}, "msgtype": "function", "defargs": ["eq3device_WC", "PythonModule", "eq3bt", "00:1A:22:0C:79:CF"], "id": "39798918", "function": "Set", "PYTHONTYPE": "eq3bt", "args": ["eq3device_WC", "?"], "argsh": {}, "finished": 1, "returnval": "Unknown argument ?, choose one of on:noArg off:noArg desiredTemperature:slider,4.5,0.5,29.5,1 updateStatus:noArg boost:on,off mode:manual,automatic eco:noArg comfort:noArg childlock:on,off"}
2020-10-14 19:48:13,779 - DEBUG    - websockets.protocol: server > Frame(fin=True, opcode=1, data=b'{"NAME": "eq3device_WC", "defargsh": {}, "msgtype": "function", "defargs": ["eq3device_WC", "PythonModule", "eq3bt", "00:1A:22:0C:79:CF"], "id": "39798918", "function": "Set", "PYTHONTYPE": "eq3bt", "args": ["eq3device_WC", "?"], "argsh": {}, "finished": 1, "returnval": "Unknown argument ?, choose one of on:noArg off:noArg desiredTemperature:slider,4.5,0.5,29.5,1 updateStatus:noArg boost:on,off mode:manual,automatic eco:noArg comfort:noArg childlock:on,off"}', rsv1=False, rsv2=False, rsv3=False)
2020-10-14 19:48:15,333 - DEBUG    - websockets.protocol: server - event = data_received(<229 bytes>)
2020-10-14 19:48:15,334 - DEBUG    - websockets.protocol: server < Frame(fin=True, opcode=1, data=b'{"NAME":"eq3device_WC","defargsh":{},"id":"28732100","defargs":["eq3device_WC","PythonModule","eq3bt","00:1A:22:0C:79:CF"],"msgtype":"function","function":"Set","PYTHONTYPE":"eq3bt","args":["eq3device_WC","?"],"argsh":{}}', rsv1=False, rsv2=False, rsv3=False)
2020-10-14 19:48:15,336 - DEBUG    - lib.fhem_pythonbinding: >>> WS: {"NAME":"eq3device_WC","defargsh":{},"id":"28732100","defargs":["eq3device_WC","PythonModule","eq3bt","00:1A:22:0C:79:CF"],"msgtype":"function","function":"Set","PYTHONTYPE":"eq3bt","args":["eq3device_WC","?"],"argsh":{}}
2020-10-14 19:48:15,337 - DEBUG    - lib.fhem_pythonbinding: Start function eq3device_WC:Set
2020-10-14 19:48:15,338 - DEBUG    - lib.fhem_pythonbinding: End function eq3device_WC:Set
2020-10-14 19:48:15,339 - DEBUG    - lib.fhem_pythonbinding: <<< WS: {"NAME": "eq3device_WC", "defargsh": {}, "id": "28732100", "defargs": ["eq3device_WC", "PythonModule", "eq3bt", "00:1A:22:0C:79:CF"], "msgtype": "function", "function": "Set", "PYTHONTYPE": "eq3bt", "args": ["eq3device_WC", "?"], "argsh": {}, "finished": 1, "returnval": "Unknown argument ?, choose one of on:noArg off:noArg desiredTemperature:slider,4.5,0.5,29.5,1 updateStatus:noArg boost:on,off mode:manual,automatic eco:noArg comfort:noArg childlock:on,off"}
2020-10-14 19:48:15,339 - DEBUG    - websockets.protocol: server > Frame(fin=True, opcode=1, data=b'{"NAME": "eq3device_WC", "defargsh": {}, "id": "28732100", "defargs": ["eq3device_WC", "PythonModule", "eq3bt", "00:1A:22:0C:79:CF"], "msgtype": "function", "function": "Set", "PYTHONTYPE": "eq3bt", "args": ["eq3device_WC", "?"], "argsh": {}, "finished": 1, "returnval": "Unknown argument ?, choose one of on:noArg off:noArg desiredTemperature:slider,4.5,0.5,29.5,1 updateStatus:noArg boost:on,off mode:manual,automatic eco:noArg comfort:noArg childlock:on,off"}', rsv1=False, rsv2=False, rsv3=False)
2020-10-14 19:48:15,342 - DEBUG    - websockets.protocol: server - event = data_received(<229 bytes>)
2020-10-14 19:48:15,343 - DEBUG    - websockets.protocol: server < Frame(fin=True, opcode=1, data=b'{"NAME":"eq3device_WC","defargsh":{},"defargs":["eq3device_WC","PythonModule","eq3bt","00:1A:22:0C:79:CF"],"msgtype":"function","id":"11234299","function":"Set","PYTHONTYPE":"eq3bt","args":["eq3device_WC","?"],"argsh":{}}', rsv1=False, rsv2=False, rsv3=False)
2020-10-14 19:48:15,345 - DEBUG    - lib.fhem_pythonbinding: >>> WS: {"NAME":"eq3device_WC","defargsh":{},"defargs":["eq3device_WC","PythonModule","eq3bt","00:1A:22:0C:79:CF"],"msgtype":"function","id":"11234299","function":"Set","PYTHONTYPE":"eq3bt","args":["eq3device_WC","?"],"argsh":{}}
2020-10-14 19:48:15,346 - DEBUG    - lib.fhem_pythonbinding: Start function eq3device_WC:Set
2020-10-14 19:48:15,347 - DEBUG    - lib.fhem_pythonbinding: End function eq3device_WC:Set
2020-10-14 19:48:15,348 - DEBUG    - lib.fhem_pythonbinding: <<< WS: {"NAME": "eq3device_WC", "defargsh": {}, "defargs": ["eq3device_WC", "PythonModule", "eq3bt", "00:1A:22:0C:79:CF"], "msgtype": "function", "id": "11234299", "function": "Set", "PYTHONTYPE": "eq3bt", "args": ["eq3device_WC", "?"], "argsh": {}, "finished": 1, "returnval": "Unknown argument ?, choose one of on:noArg off:noArg desiredTemperature:slider,4.5,0.5,29.5,1 updateStatus:noArg boost:on,off mode:manual,automatic eco:noArg comfort:noArg childlock:on,off"}
2020-10-14 19:48:15,348 - DEBUG    - websockets.protocol: server > Frame(fin=True, opcode=1, data=b'{"NAME": "eq3device_WC", "defargsh": {}, "defargs": ["eq3device_WC", "PythonModule", "eq3bt", "00:1A:22:0C:79:CF"], "msgtype": "function", "id": "11234299", "function": "Set", "PYTHONTYPE": "eq3bt", "args": ["eq3device_WC", "?"], "argsh": {}, "finished": 1, "returnval": "Unknown argument ?, choose one of on:noArg off:noArg desiredTemperature:slider,4.5,0.5,29.5,1 updateStatus:noArg boost:on,off mode:manual,automatic eco:noArg comfort:noArg childlock:on,off"}', rsv1=False, rsv2=False, rsv3=False)
2020-10-14 19:48:15,351 - DEBUG    - websockets.protocol: server - event = data_received(<229 bytes>)
2020-10-14 19:48:15,352 - DEBUG    - websockets.protocol: server < Frame(fin=True, opcode=1, data=b'{"defargsh":{},"NAME":"eq3device_WC","function":"Get","PYTHONTYPE":"eq3bt","argsh":{},"args":["eq3device_WC","?"],"msgtype":"function","defargs":["eq3device_WC","PythonModule","eq3bt","00:1A:22:0C:79:CF"],"id":"92821015"}', rsv1=False, rsv2=False, rsv3=False)
2020-10-14 19:48:15,354 - DEBUG    - lib.fhem_pythonbinding: >>> WS: {"defargsh":{},"NAME":"eq3device_WC","function":"Get","PYTHONTYPE":"eq3bt","argsh":{},"args":["eq3device_WC","?"],"msgtype":"function","defargs":["eq3device_WC","PythonModule","eq3bt","00:1A:22:0C:79:CF"],"id":"92821015"}
2020-10-14 19:48:15,355 - DEBUG    - lib.fhem_pythonbinding: <<< WS: {"defargsh": {}, "NAME": "eq3device_WC", "function": "Get", "PYTHONTYPE": "eq3bt", "argsh": {}, "args": ["eq3device_WC", "?"], "msgtype": "function", "defargs": ["eq3device_WC", "PythonModule", "eq3bt", "00:1A:22:0C:79:CF"], "id": "92821015", "finished": 1, "returnval": ""}
2020-10-14 19:48:15,355 - DEBUG    - websockets.protocol: server > Frame(fin=True, opcode=1, data=b'{"defargsh": {}, "NAME": "eq3device_WC", "function": "Get", "PYTHONTYPE": "eq3bt", "argsh": {}, "args": ["eq3device_WC", "?"], "msgtype": "function", "defargs": ["eq3device_WC", "PythonModule", "eq3bt", "00:1A:22:0C:79:CF"], "id": "92821015", "finished": 1, "returnval": ""}', rsv1=False, rsv2=False, rsv3=False)
2020-10-14 19:48:19,370 - DEBUG    - websockets.protocol: server - event = eof_received()
2020-10-14 19:48:19,372 - DEBUG    - websockets.protocol: server ! failing OPEN WebSocket connection with code 1006
2020-10-14 19:48:19,373 - DEBUG    - websockets.protocol: server - event = connection_lost(None)
2020-10-14 19:48:19,373 - DEBUG    - websockets.protocol: server - state = CLOSED
2020-10-14 19:48:19,374 - DEBUG    - websockets.protocol: server x code = 1006, reason = [no reason]
2020-10-14 19:48:19,375 - DEBUG    - websockets.protocol: server x half-closing TCP connection
2020-10-14 19:48:19,376 - ERROR    - lib.fhem_pythonbinding: Connection closed error
Traceback (most recent call last):
  File "/usr/local/lib/python3.7/dist-packages/websockets/protocol.py", line 827, in transfer_data
    message = await self.read_message()
  File "/usr/local/lib/python3.7/dist-packages/websockets/protocol.py", line 895, in read_message
    frame = await self.read_data_frame(max_size=self.max_size)
  File "/usr/local/lib/python3.7/dist-packages/websockets/protocol.py", line 971, in read_data_frame
    frame = await self.read_frame(max_size)
  File "/usr/local/lib/python3.7/dist-packages/websockets/protocol.py", line 1051, in read_frame
    extensions=self.extensions,
  File "/usr/local/lib/python3.7/dist-packages/websockets/framing.py", line 105, in read
    data = await reader(2)
  File "/usr/lib/python3.7/asyncio/streams.py", line 677, in readexactly
    raise IncompleteReadError(incomplete, n)
asyncio.streams.IncompleteReadError: 0 bytes read on a total of 2 expected bytes

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/home/pi/fhem_pythonbinding/FHEM/bindings/python/lib/fhem_pythonbinding.py", line 42, in pybinding
    async for message in websocket:
  File "/usr/local/lib/python3.7/dist-packages/websockets/protocol.py", line 439, in __aiter__
    yield await self.recv()
  File "/usr/local/lib/python3.7/dist-packages/websockets/protocol.py", line 509, in recv
    await self.ensure_open()
  File "/usr/local/lib/python3.7/dist-packages/websockets/protocol.py", line 803, in ensure_open
    raise self.connection_closed_exc()
websockets.exceptions.ConnectionClosedError: code = 1006 (connection closed abnormally [internal]), no reason
2020-10-14 19:48:19,385 - INFO     - lib.fhem_pythonbinding: Waiting for new FHEM connection...
^CTraceback (most recent call last):
  File "FHEM/bindings/python/pythonbinding.py", line 5, in <module>
    fpb.run()
  File "/home/pi/fhem_pythonbinding/FHEM/bindings/python/lib/fhem_pythonbinding.py", line 260, in run
    asyncio.get_event_loop().run_forever()
  File "/usr/lib/python3.7/asyncio/base_events.py", line 539, in run_forever
    self._run_once()
  File "/usr/lib/python3.7/asyncio/base_events.py", line 1739, in _run_once
    event_list = self._selector.select(timeout)
  File "/usr/lib/python3.7/selectors.py", line 468, in select
    fd_event_list = self._selector.poll(timeout, max_ev)
KeyboardInterrupt
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 14 Oktober 2020, 21:20:25
Hmm...das ist interessant. Eigentlich ist die Verbindung schon aktiv, wird dann aber beendet.

Kannst du bitte mal im FHEM Log schauen ob du da was findest?

//Edit: Stell beim bindingsio Device mal verbose=5 und teste es dann nochmals. Dann sollte man im FHEM Log was finden.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 14 Oktober 2020, 22:04:33
Ich versuche gerade mal auf meinem Touchpanel Pi den "remote" Teil zu installieren - es wirkt gerade auf mich als müsse ich da nun noch ein FHEM installieren?

Denn in der Datei die ich anpassen soll nach meinem System steht
ExecStart=/usr/bin/python3 FHEM/bindings/python/pythonbinding.py

Ist das nur verwirrend gerade für mich?
Zitatchange fhem_pythonbinding/fhem_pythonbinding.service acording to your system
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 14 Oktober 2020, 22:10:32
Nein, FHEM muss keines installiert werden. Das ist nur irritierend, da der Pfad FHEM heisst. Sobald du ueber github ein clone machst, hast du diese Dateien vorliegen.

Mit der Info:
Zitatchange fhem_pythonbinding/fhem_pythonbinding.service acording to your system
meine ich nur die Anpassung von User (falls man nicht pi nutzt) bzw. der WorkingDirectory wenn man es nicht im /home/pi/... nutzen will.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 14 Oktober 2020, 22:12:10
Stimmt!
/fhem_pythonbinding/FHEM/bindings/python/pythonbinding.py
Da isse :-) Danke
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 14 Oktober 2020, 23:41:25
Wow!

Ich bin geflasht.
Also aktuell wohl noch ein Problem welcher User nun bei mir den Service remote ausführt (hab es gerade einfach so laufen und schau was so passiert) aber es läuft als wären die Teile am Kabel angeschlossen - gut aktuell mit einem von 7 erstmal ... aber das klappt echt allerfeinst.

Eines verwundert mich, hat es schon in der vorherigen Version des Moduls:
Das Thermostat geht von 4.5 bis 30 wobei diese beiden Grenzen auch OFF und ON deklarieren.
Warum sind diese nun erneut nicht beide einfach anfahrbar, sondern ende bei 29.5 ;-) ?

Das set on scheint aktuell auch einen Fehler zu werfen - ggf weil 30 über 29.5 ist?

Aber sonst allerfeinst! :-) Reaktiv wie nie zuvor bei mir.
Vielen vielen Dank für diese geniale Arbeit und direkt den Remote Teil! Ein Traum!
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: mele am 15 Oktober 2020, 06:40:00
Jetzt mal mit verbose 5:

bindingsIO:

2020.10.15 06:19:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:43 5: SW: 7b2261776169744964223a31333535363836312c22726573756c74223a22636f6e6e656374696e67222c226572726f72223a307d
2020.10.15 06:19:43 4: BindingsIo: <<< WS: {"awaitId":13556861,"result":"connecting","error":0}
2020.10.15 06:19:43 5: processMessage: {"awaitId": 13556861, "NAME": "eq3device_WC", "msgtype": "command", "command": "readingsSingleUpdate($defs{'eq3device_WC'},'state','connecting',1)"}
2020.10.15 06:19:43 5: BindingsIo: QUEUE: start handling - 1
2020.10.15 06:19:43 4: BindingsIo: >>> WS: {"awaitId": 13556861, "NAME": "eq3device_WC", "msgtype": "command", "command": "readingsSingleUpdate($defs{'eq3device_WC'},'state','connecting',1)"}
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead NoTimeout
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:43 5: SW: 7b22726573756c74223a2270726573656e63653a206f66666c696e65222c226572726f72223a302c2261776169744964223a35353033383133317d
2020.10.15 06:19:43 4: BindingsIo: <<< WS: {"result":"presence: offline","error":0,"awaitId":55038131}
2020.10.15 06:19:43 5: processMessage: {"awaitId": 55038131, "NAME": "eq3device_WC", "msgtype": "command", "command": "readingsSingleUpdate($defs{'eq3device_WC'},'presence','offline',1)"}
2020.10.15 06:19:43 5: BindingsIo: QUEUE: start handling - 1
2020.10.15 06:19:43 4: BindingsIo: >>> WS: {"awaitId": 55038131, "NAME": "eq3device_WC", "msgtype": "command", "command": "readingsSingleUpdate($defs{'eq3device_WC'},'presence','offline',1)"}
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead NoTimeout
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:43 5: SW: 7b22726573756c74223a22617474722069636f6e2073616e695f68656174696e675f74656d703a206174747269627574652076616c7565206973206d697373696e67222c226572726f72223a302c2261776169744964223a34343534393031397d
2020.10.15 06:19:43 4: BindingsIo: <<< WS: {"result":"attr icon sani_heating_temp: attribute value is missing","error":0,"awaitId":44549019}
2020.10.15 06:19:43 5: processMessage: {"awaitId": 44549019, "NAME": "eq3device_WC", "msgtype": "command", "command": "CommandAttr(undef, \"icon sani_heating_temp\")"}
2020.10.15 06:19:43 5: BindingsIo: QUEUE: start handling - 1
2020.10.15 06:19:43 4: BindingsIo: >>> WS: {"awaitId": 44549019, "NAME": "eq3device_WC", "msgtype": "command", "command": "CommandAttr(undef, \"icon sani_heating_temp\")"}
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead NoTimeout
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:43 5: SW: 7b2261776169744964223a36323532383138342c226572726f72223a302c22726573756c74223a22227d
2020.10.15 06:19:43 4: BindingsIo: <<< WS: {"awaitId":62528184,"error":0,"result":""}
2020.10.15 06:19:43 5: processMessage: {"awaitId": 62528184, "NAME": "eq3device_WC", "msgtype": "command", "command": "AttrVal('eq3device_WC', 'icon', '')"}
2020.10.15 06:19:43 5: BindingsIo: QUEUE: start handling - 1
2020.10.15 06:19:43 4: BindingsIo: >>> WS: {"awaitId": 62528184, "NAME": "eq3device_WC", "msgtype": "command", "command": "AttrVal('eq3device_WC', 'icon', '')"}
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead NoTimeout
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:43 4: BindingsIo: end PythonFunction: eq3device_WC => Attr (85093204) - result:
2020.10.15 06:19:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:43 5: processMessage: {"args": ["set", "eq3device_WC", "room", "test"], "PYTHONTYPE": "eq3bt", "id": "85093204", "defargs": ["eq3device_WC", "PythonModule", "eq3bt", "00:1A:22:0C:79:CF"], "defargsh": {}, "argsh": {}, "msgtype": "function", "NAME": "eq3device_WC", "function": "Attr", "finished": 1, "returnval": ""}
2020.10.15 06:19:43 5: BindingsIo: QUEUE: start handling - 1
2020.10.15 06:19:43 4: BindingsIo: >>> WS: {"args": ["set", "eq3device_WC", "room", "test"], "PYTHONTYPE": "eq3bt", "id": "85093204", "defargs": ["eq3device_WC", "PythonModule", "eq3bt", "00:1A:22:0C:79:CF"], "defargsh": {}, "argsh": {}, "msgtype": "function", "NAME": "eq3device_WC", "function": "Attr", "finished": 1, "returnval": ""}
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:43 5: SW: 7b2261776169744964223a33363236343833382c22726573756c74223a2235222c226572726f72223a307d
2020.10.15 06:19:43 4: BindingsIo: <<< WS: {"awaitId":36264838,"result":"5","error":0}
2020.10.15 06:19:43 5: processMessage: {"awaitId": 36264838, "NAME": "eq3device_WC", "msgtype": "command", "command": "AttrVal('eq3device_WC', 'verbose', '3')"}
2020.10.15 06:19:43 5: BindingsIo: QUEUE: start handling - 1
2020.10.15 06:19:43 4: BindingsIo: >>> WS: {"awaitId": 36264838, "NAME": "eq3device_WC", "msgtype": "command", "command": "AttrVal('eq3device_WC', 'verbose', '3')"}
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:43 5: SW: 7b2261726773223a5b22736574222c226571336465766963655f5743222c22726f6f6d222c2274657374225d2c22505954484f4e54595045223a226571336274222c226964223a223835303933323034222c2264656661726773223a5b226571336465766963655f5743222c22507974686f6e4d6f64756c65222c226571336274222c2230303a31413a32323a30433a37393a4346225d2c226465666172677368223a7b7d2c226172677368223a7b7d2c226d736774797065223a2266756e6374696f6e222c224e414d45223a226571336465766963655f5743222c2266756e6374696f6e223a2241747472227d
2020.10.15 06:19:43 4: BindingsIo: <<< WS: {"args":["set","eq3device_WC","room","test"],"PYTHONTYPE":"eq3bt","id":"85093204","defargs":["eq3device_WC","PythonModule","eq3bt","00:1A:22:0C:79:CF"],"defargsh":{},"argsh":{},"msgtype":"function","NAME":"eq3device_WC","function":"Attr"}
2020.10.15 06:19:43 4: BindingsIo: start PythonFunction: eq3device_WC => Attr (85093204)
2020.10.15 06:19:43 4: BindingsIo: end PythonFunction: eq3device_WC => Attr (44541779) - result:
2020.10.15 06:19:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:43 5: processMessage: {"args": ["set", "eq3device_WC", "verbose", "5"], "defargs": ["eq3device_WC", "PythonModule", "eq3bt", "00:1A:22:0C:79:CF"], "argsh": {}, "defargsh": {}, "PYTHONTYPE": "eq3bt", "id": "44541779", "NAME": "eq3device_WC", "msgtype": "function", "function": "Attr", "finished": 1, "returnval": ""}
2020.10.15 06:19:43 5: BindingsIo: QUEUE: start handling - 1
2020.10.15 06:19:43 4: BindingsIo: >>> WS: {"args": ["set", "eq3device_WC", "verbose", "5"], "defargs": ["eq3device_WC", "PythonModule", "eq3bt", "00:1A:22:0C:79:CF"], "argsh": {}, "defargsh": {}, "PYTHONTYPE": "eq3bt", "id": "44541779", "NAME": "eq3device_WC", "msgtype": "function", "function": "Attr", "finished": 1, "returnval": ""}
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:43 5: SW: 7b2261726773223a5b22736574222c226571336465766963655f5743222c22766572626f7365222c2235225d2c2264656661726773223a5b226571336465766963655f5743222c22507974686f6e4d6f64756c65222c226571336274222c2230303a31413a32323a30433a37393a4346225d2c226172677368223a7b7d2c226465666172677368223a7b7d2c22505954484f4e54595045223a226571336274222c226964223a223434353431373739222c224e414d45223a226571336465766963655f5743222c226d736774797065223a2266756e6374696f6e222c2266756e6374696f6e223a2241747472227d
2020.10.15 06:19:43 4: BindingsIo: <<< WS: {"args":["set","eq3device_WC","verbose","5"],"defargs":["eq3device_WC","PythonModule","eq3bt","00:1A:22:0C:79:CF"],"argsh":{},"defargsh":{},"PYTHONTYPE":"eq3bt","id":"44541779","NAME":"eq3device_WC","msgtype":"function","function":"Attr"}
2020.10.15 06:19:43 4: BindingsIo: start PythonFunction: eq3device_WC => Attr (44541779)
2020.10.15 06:19:43 4: BindingsIo: end PythonFunction: eq3device_WC => Undefine (23441313) - result:
2020.10.15 06:19:43 1: BindingsIo: ERROR: Timeout while waiting for function to finish (id: 23441313)
2020.10.15 06:19:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.15 06:19:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.15 06:19:42 5: BindingsIo: DevIo_SimpleRead
2020.10.15 06:19:42 5: SW: 7b224e414d45223a226571336465766963655f5743222c226d736774797065223a2266756e6374696f6e222c2266756e6374696f6e223a22556e646566696e65222c2261726773223a6e756c6c2c226964223a223233343431333133222c22505954484f4e54595045223a226571336274222c226465666172677368223a7b7d2c226172677368223a6e756c6c2c2264656661726773223a5b226571336465766963655f5743222c22507974686f6e4d6f64756c65222c226571336274222c2230303a31413a32323a30433a37393a4346225d7d
2020.10.15 06:19:42 4: BindingsIo: <<< WS: {"NAME":"eq3device_WC","msgtype":"function","function":"Undefine","args":null,"id":"23441313","PYTHONTYPE":"eq3bt","defargsh":{},"argsh":null,"defargs":["eq3device_WC","PythonModule","eq3bt","00:1A:22:0C:79:CF"]}
2020.10.15 06:19:42 4: BindingsIo: start PythonFunction: eq3device_WC => Undefine (23441313)


Jetzt mal nicht auf bindingsIO, sondern direkt beim Einfügen des Thermostats gesetzt:

Ganz unten stehts vielleicht: ERROR: empty name in readingsBeginUpdate

Sieht so aus, als ob der Name nicht mit zurückübergeben wird, oder?

Can't use string ("default/icoEverything.png") as a HASH ref while "strict refs" in use at ./FHEM/10_PythonModule.pm line 110.
2020.10.15 06:26:41 1:     main::CallFn                        called by fhem.pl (763)
2020.10.15 06:26:41 1:     main::BindingsIo_Read               called by fhem.pl (3817)
2020.10.15 06:26:41 1:     main::BindingsIo_readWebsocketMessage called by ./FHEM/10_BindingsIo.pm (157)
2020.10.15 06:26:41 1:     main::BindingsIo_processMessage     called by ./FHEM/10_BindingsIo.pm (448)
2020.10.15 06:26:41 1:     (eval)                              called by ./FHEM/10_BindingsIo.pm (341)
2020.10.15 06:26:41 1:     main::readingsBulkUpdateIfChanged   called by (eval 6610) (1)
2020.10.15 06:26:41 1:     main::readingsBulkUpdate            called by fhem.pl (4825)
2020.10.15 06:26:41 1: stacktrace:
2020.10.15 06:26:41 1: readingsUpdate(,schedule_thu_7,-) missed to call readingsBeginUpdate first.
2020.10.15 06:26:41 1:     main::CallFn                        called by fhem.pl (763)
2020.10.15 06:26:41 1:     main::BindingsIo_Read               called by fhem.pl (3817)
2020.10.15 06:26:41 1:     main::BindingsIo_readWebsocketMessage called by ./FHEM/10_BindingsIo.pm (157)
2020.10.15 06:26:41 1:     main::BindingsIo_processMessage     called by ./FHEM/10_BindingsIo.pm (448)
2020.10.15 06:26:41 1:     (eval)                              called by ./FHEM/10_BindingsIo.pm (341)
2020.10.15 06:26:41 1:     main::readingsBulkUpdateIfChanged   called by (eval 6609) (1)
2020.10.15 06:26:41 1:     main::readingsBulkUpdate            called by fhem.pl (4825)
2020.10.15 06:26:41 1: stacktrace:
2020.10.15 06:26:41 1: readingsUpdate(,schedule_thu_6,-) missed to call readingsBeginUpdate first.
2020.10.15 06:26:41 1:     main::CallFn                        called by fhem.pl (763)
2020.10.15 06:26:41 1:     main::BindingsIo_Read               called by fhem.pl (3817)
2020.10.15 06:26:41 1:     main::BindingsIo_readWebsocketMessage called by ./FHEM/10_BindingsIo.pm (157)
2020.10.15 06:26:41 1:     main::BindingsIo_processMessage     called by ./FHEM/10_BindingsIo.pm (448)
2020.10.15 06:26:41 1:     (eval)                              called by ./FHEM/10_BindingsIo.pm (341)
2020.10.15 06:26:41 1:     main::readingsBulkUpdateIfChanged   called by (eval 6608) (1)
2020.10.15 06:26:41 1:     main::readingsBulkUpdate            called by fhem.pl (4825)
2020.10.15 06:26:41 1: stacktrace:
2020.10.15 06:26:41 1: readingsUpdate(,schedule_thu_5,-) missed to call readingsBeginUpdate first.
2020.10.15 06:26:41 1:     main::CallFn                        called by fhem.pl (763)
2020.10.15 06:26:41 1:     main::BindingsIo_Read               called by fhem.pl (3817)
2020.10.15 06:26:41 1:     main::BindingsIo_readWebsocketMessage called by ./FHEM/10_BindingsIo.pm (157)
2020.10.15 06:26:41 1:     main::BindingsIo_processMessage     called by ./FHEM/10_BindingsIo.pm (448)
2020.10.15 06:26:41 1:     (eval)                              called by ./FHEM/10_BindingsIo.pm (341)
2020.10.15 06:26:41 1:     main::readingsBulkUpdateIfChanged   called by (eval 6607) (1)
2020.10.15 06:26:41 1:     main::readingsBulkUpdate            called by fhem.pl (4825)
2020.10.15 06:26:41 1: stacktrace:
2020.10.15 06:26:41 1: readingsUpdate(,schedule_thu_4,-) missed to call readingsBeginUpdate first.
2020.10.15 06:26:41 1:     main::CallFn                        called by fhem.pl (763)
2020.10.15 06:26:41 1:     main::BindingsIo_Read               called by fhem.pl (3817)
2020.10.15 06:26:41 1:     main::BindingsIo_readWebsocketMessage called by ./FHEM/10_BindingsIo.pm (157)
2020.10.15 06:26:41 1:     main::BindingsIo_processMessage     called by ./FHEM/10_BindingsIo.pm (448)
2020.10.15 06:26:41 1:     (eval)                              called by ./FHEM/10_BindingsIo.pm (341)
2020.10.15 06:26:41 1:     main::readingsBulkUpdateIfChanged   called by (eval 6606) (1)
2020.10.15 06:26:41 1:     main::readingsBulkUpdate            called by fhem.pl (4825)
2020.10.15 06:26:41 1: stacktrace:
2020.10.15 06:26:41 1: readingsUpdate(,schedule_thu_3,23:00 - 00:00: 17.0) missed to call readingsBeginUpdate first.
2020.10.15 06:26:41 1:     main::CallFn                        called by fhem.pl (763)
2020.10.15 06:26:41 1:     main::BindingsIo_Read               called by fhem.pl (3817)
2020.10.15 06:26:41 1:     main::BindingsIo_readWebsocketMessage called by ./FHEM/10_BindingsIo.pm (157)
2020.10.15 06:26:41 1:     main::BindingsIo_processMessage     called by ./FHEM/10_BindingsIo.pm (448)
2020.10.15 06:26:41 1:     (eval)                              called by ./FHEM/10_BindingsIo.pm (341)
2020.10.15 06:26:41 1:     main::readingsBulkUpdateIfChanged   called by (eval 6605) (1)
2020.10.15 06:26:41 1:     main::readingsBulkUpdate            called by fhem.pl (4825)
2020.10.15 06:26:41 1: stacktrace:
2020.10.15 06:26:41 1: readingsUpdate(,schedule_thu_2,06:00 - 23:00: 19.0) missed to call readingsBeginUpdate first.
2020.10.15 06:26:41 1:     main::CallFn                        called by fhem.pl (763)
2020.10.15 06:26:41 1:     main::BindingsIo_Read               called by fhem.pl (3817)
2020.10.15 06:26:41 1:     main::BindingsIo_readWebsocketMessage called by ./FHEM/10_BindingsIo.pm (157)
2020.10.15 06:26:41 1:     main::BindingsIo_processMessage     called by ./FHEM/10_BindingsIo.pm (448)
2020.10.15 06:26:41 1:     (eval)                              called by ./FHEM/10_BindingsIo.pm (341)
2020.10.15 06:26:41 1:     main::readingsBulkUpdateIfChanged   called by (eval 6604) (1)
2020.10.15 06:26:41 1:     main::readingsBulkUpdate            called by fhem.pl (4825)
2020.10.15 06:26:41 1: stacktrace:
2020.10.15 06:26:41 1: readingsUpdate(,schedule_thu_1,00:00 - 06:00: 17.0) missed to call readingsBeginUpdate first.
2020.10.15 06:26:41 1:     main::CallFn                        called by fhem.pl (763)
2020.10.15 06:26:41 1:     main::BindingsIo_Read               called by fhem.pl (3817)
2020.10.15 06:26:41 1:     main::BindingsIo_readWebsocketMessage called by ./FHEM/10_BindingsIo.pm (157)
2020.10.15 06:26:41 1:     main::BindingsIo_processMessage     called by ./FHEM/10_BindingsIo.pm (448)
2020.10.15 06:26:41 1:     (eval)                              called by ./FHEM/10_BindingsIo.pm (341)
2020.10.15 06:26:41 1:     main::readingsBulkUpdateIfChanged   called by (eval 6603) (1)
2020.10.15 06:26:41 1:     main::readingsBulkUpdate            called by fhem.pl (4825)
2020.10.15 06:26:41 1: stacktrace:
2020.10.15 06:26:41 1: readingsUpdate(,schedule_wed_7,-) missed to call readingsBeginUpdate first.
2020.10.15 06:26:41 1:     main::CallFn                        called by fhem.pl (763)
2020.10.15 06:26:41 1:     main::BindingsIo_Read               called by fhem.pl (3817)
2020.10.15 06:26:41 1:     main::BindingsIo_readWebsocketMessage called by ./FHEM/10_BindingsIo.pm (157)
2020.10.15 06:26:41 1:     main::BindingsIo_processMessage     called by ./FHEM/10_BindingsIo.pm (448)
2020.10.15 06:26:41 1:     (eval)                              called by ./FHEM/10_BindingsIo.pm (341)
2020.10.15 06:26:41 1:     main::readingsBulkUpdateIfChanged   called by (eval 6602) (1)
2020.10.15 06:26:41 1:     main::readingsBulkUpdate            called by fhem.pl (4825)
2020.10.15 06:26:41 1: stacktrace:
2020.10.15 06:26:41 1: readingsUpdate(,schedule_wed_6,-) missed to call readingsBeginUpdate first.
2020.10.15 06:26:41 1:     main::CallFn                        called by fhem.pl (763)
2020.10.15 06:26:41 1:     main::BindingsIo_Read               called by fhem.pl (3817)
...
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 16 Oktober 2020, 12:05:45
Ich hab mir mal den Code angesehen zu dem Thema "on" setzt nicht auf 30.0 °.

Es ist bei mir reproduzierbar, dass ein
2020.10.16 12:00:57 1 : BindingsIo: ERROR: Timeout while waiting for function to finish (id: 43042135)
geworfen wird, wenn ich eines der Thermostate auf "on" setze. (Hab in Github nen issue auf gemacht - finde ich übersichtlicher als im Forum)

Generell fänd ich es gut, wenn 30.0 ° auch visualisierbar wäre im Schieber des Device States eines Thermostats. Alternativ müsste da dann on erscheinen? (Nur beißt sich das halt mit 4.5 was auch normal visualisiert wird)
Ich habe ja nie verstanden (und es auch im vorherigen Modul angepasst) warum man bei 29.5 aufhört. Die Geräte gehen von 4.5 bis 30 nur weil 4.5 ein Off und 30 ein on (dauerhaft offen ist) muss man sie ja da nicht heraus nehmen (meine persönliche Ansicht) :-D

Warum genau nun das on noch nicht sauber funktioniert habe ich gerade nicht gefunden. Ich ging erst von einer Range Exception aus - die scheint es aber nicht zu werfen.
Ansonsten wollte ich mal schauen, ob es machbar ist das man den Zustand des Ventils (geschlossen = blau und in welcher Stellung auch immer geöffnet) in der Farbe des Device States wiedergeben könnte - habe das bei meinen Rolläden so genutzt.
Würde ich dann als merge reuquest in Github einreichen.


Ansonsten läuft es mega - das Ansprechverhalten ist bemerkenswert schnell - habe nun alle 7 Thermostate in Betrieb und konnte sogar eine weitere Bluetooth Instanz einsparen (hatte noch einen USB Dongle woanders extra eingesteckt weil es vorher immer wieder Probleme gab).
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 16 Oktober 2020, 20:05:43
@mele, kannst du bitte nochmals auf dem Remote Host (git pull) und in FHEM (update) ein Update machen? Zumindest sehen wir schon den Fehler, ich weiß aber noch nicht woher er kommt. Ich habe heute noch paar Anpassungen vorgenommen, würde daher gerne das Log mit der aktuellen Version prüfen. Danke!

@Master_Nick
30 Grad Problem habe ich behoben. on=>30 Grad, off=>4.5 Grad, Range 4.5-30 Grad.
Ich wusste nicht, dass es jemand so warm will :D

Sehr gerne kannst du einen PR auf Github dazu erstellen. Nehme ich gerne auf.

Bzgl. der schnellen Reaktionszeit...mir ist da ein kleiner Fehler unterlaufen...ich hatte unabsichtlich die Version online gestellt, bei der keep_connected Default auf "on" ist. Hatte es bei mir zum Testen so. Ich finde es bei mir auch gigantisch gut und die Verbindung ist sehr stabil. Bitte bedenke aber, falls deine Batterien nun schneller leer werden, liegt es daran ;)
Du kannst keep_connected in den Attributen auch auf "off" (erfordert im Moment noch FHEM Neustart) stellen, dann dauert das Senden/Empfangen aber wieder länger. Ich würde es Default mal auf "on" lassen, da es wirklich erhebliche Vorteile in der Nutzung bringt.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 16 Oktober 2020, 20:36:20
ZitatBzgl. der schnellen Reaktionszeit...mir ist da ein kleiner Fehler unterlaufen...ich hatte unabsichtlich die Version online gestellt, bei der keep_connected Default auf "on" ist. Hatte es bei mir zum Testen so. Ich finde es bei mir auch gigantisch gut und die Verbindung ist sehr stabil. Bitte bedenke aber, falls deine Batterien nun schneller leer werden, liegt es daran ;)
Du kannst keep_connected in den Attributen auch auf "off" (erfordert im Moment noch FHEM Neustart) stellen, dann dauert das Senden/Empfangen aber wieder länger. Ich würde es Default mal auf "on" lassen, da es wirklich erhebliche Vorteile in der Nutzung bringt.

Und nun dein Knüller fürs Wochenende ;-) Ich habe schon von anfang an das keep_connected auf off :-)
Die Reaktionszeit ist dennoch wahnsinnig geil! :-D
Bin maximalst begeistert.

PS: werde die 30° seltenst nutzen ^^ aber ich bin leider beruflich Softwaretester.... somit musste ich natürlich direkt alle Ecken und Kanten abfahren :-D Was liegt näher als der gute alte Grenzwerttest :-D Hihi
Set on werd ich direkt mal testen.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 16 Oktober 2020, 20:44:41
Oh, na das ist dann super! 8)

Hast du keep_connected = on auch schon mal probiert? Da gehen die Änderungen normal innerhalb von 1s.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 16 Oktober 2020, 20:46:06
Ne tatsächlich das noch nicht ;-)


Mhh das Update zickt gerade:

Zitat2020.10.16 20:45:39 1 : Downloading https://raw.githubusercontent.com/dominikkarall/fhem_pythonbinding/master/controls_pythonbinding.txt
2020.10.16 20:45:39 1 :
2020.10.16 20:45:39 1 : pythonbinding
2020.10.16 20:45:40 1 : UPD FHEM/10_BindingsIo.pm
2020.10.16 20:45:40 1 : UPD FHEM/10_PythonModule.pm
2020.10.16 20:45:40 1 : UPD FHEM/bindings/python/lib/fhem_pythonbinding.py
2020.10.16 20:45:40 1 : UPD FHEM/bindings/python/lib/googlecast/googlecast.py
2020.10.16 20:45:40 1 : UPD FHEM/bindings/python/lib/googlecast/manifest.json
2020.10.16 20:45:40 1 : UPD FHEM/bindings/python/lib/eq3bt/eq3bt.py
2020.10.16 20:45:40 1 : UPD FHEM/bindings/python/lib/nespresso_ble/nespresso.py
2020.10.16 20:45:40 1 : UPD FHEM/bindings/python/lib/gfprobt/gfprobt.py
2020.10.16 20:45:40 1 : Got 3609 bytes for FHEM/bindings/python/lib/gfprobt/gfprobt.py, expected 4217
2020.10.16 20:45:40 1 : aborting.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 16 Oktober 2020, 20:52:59
Ach, immer diese control Files :)

Bitte nochmals testen. Danke!
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 16 Oktober 2020, 21:11:25
Mhh... also jetzt gerade läuft es seeeehr zäh O_o :-D

Um nicht zu sagen, dass mein k8s Cluster den Container schon 3 mal abgeschossen hat weil er ihn nicht erreichen konnte :-D

Sehr viel hier von "PythonBinding timeout"
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 16 Oktober 2020, 21:18:15
Hast du einen Neustart von FHEM gemacht? Was findet man in den Logs dazu?
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 16 Oktober 2020, 21:21:51
Ich starte gerade einmal meinen remote durch nicht das da noch was hakt.

Hab dort ein git pull gemacht und hier das update und danach den restart.
Ich sammle mal was nun passiert.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 16 Oktober 2020, 21:34:38
Das eine Thermostat kommt gar nicht mehr online gerade - strange :-D

Ok scheint nur das eine zu sein alle andern gehen :-D (natürlich mein Testgerät direkt im Zimmer.... denke mal Batterie rein raus wirds fixen - das haben die ab und an wenn man zuviel will)
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 16 Oktober 2020, 21:50:19
Falls es weiter weg ist, dauert es vielleicht ein bisschen bis es einmal eine Verbindung schafft.

Btw, ich habe meine Thermostate alle auf Firmware Version 120 aktualisiert. Ob die Firmware auch auf BLE Auswirkungen hat weiss ich nicht, aber zumindest bekommt man auch mehr Readings.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 16 Oktober 2020, 21:51:36
Da sagst du was :-D alle 6 anderen haben 120 - dieses hier noch 110 - mal eben machen.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 16 Oktober 2020, 22:26:25
Der Start von FHEM ist noch ein wenig holprig mit dem Modul - kannst du da irgendwie nen Timer einfügen, dass es erstmal die Füße still hält und dann anfängt nach 5 Sekunden :-D?

Achtung "LANG"  :D - das spult da mehrfachst runter...:

Zitat2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:41 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:41 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:41 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:41 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:41 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:41 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:41 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:41 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:41 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:41 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:41 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:41 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:41 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:41 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:41 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:41 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:41 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:41 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:41 1: BindingsIo: ERROR: Timeout while waiting for function to finish (id: 9169301)
2020.10.16 22:24:41 4: BindingsIo: end PythonFunction: Arbeitszimmer_Thermostat => Set (9169301) - result:
2020.10.16 22:24:41 5: End notify loop for Arbeitszimmer_Thermostat
2020.10.16 22:24:41 4: BindingsIo: end PythonFunction: Arbeitszimmer_Thermostat => Set (92200174) - result:
2020.10.16 22:24:41 4: configDB reading file: ./www/gplot/SVG_FileLog_Arbeitszimmer_Sensor_3_1.gplot
2020.10.16 22:24:41 5: Cmd: >get FileLog_Arbeitszimmer_Sensor_3 CURRENT INT 2020-10-16_00:00:00 2020-10-16_23:59:59 4:Arbeitszimmer_Sensor_3.temperature\x3a:: 4:Arbeitszimmer_Sensor_3.humidity\x3a::<
2020.10.16 22:24:41 5: Cmd: >{ "Arbeitszimmer_Sensor_3-2020.log" }<
2020.10.16 22:24:41 5: Cmd: >{ "Arbeitszimmer - Min: $data{min1}°C $data{min2}%, Max: $data{max1}°C $data{max2}%, Aktuell $data{currval1}°C $data{currval2}%" }<
2020.10.16 22:24:41 4: BindingsIo: start PythonFunction: Badezimmer_Thermostat => Set (44769915)
2020.10.16 22:24:41 4: BindingsIo: <<< WS: {"PYTHONTYPE":"eq3bt","args":["Badezimmer_Thermostat","?"],"NAME":"Badezimmer_Thermostat","argsh":{},"function":"Set","defargs":["Badezimmer_Thermostat","PythonModule","eq3bt","00:1A:22:0C:F5:41"],"id":44769915,"defargsh":{},"msgtype":"function"}
2020.10.16 22:24:41 5: SW: 7b22505954484f4e54595045223a226571336274222c2261726773223a5b22426164657a696d6d65725f546865726d6f73746174222c223f225d2c224e414d45223a22426164657a696d6d65725f546865726d6f73746174222c226172677368223a7b7d2c2266756e6374696f6e223a22536574222c2264656661726773223a5b22426164657a696d6d65725f546865726d6f73746174222c22507974686f6e4d6f64756c65222c226571336274222c2230303a31413a32323a30433a46353a3431225d2c226964223a34343736393931352c226465666172677368223a7b7d2c226d736774797065223a2266756e6374696f6e227d
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:41 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:41 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:41 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:41 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:41 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:41 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:41 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:41 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:41 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:41 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:41 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:41 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:41 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:41 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:41 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:41 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:41 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:41 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:41 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:41 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:41 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:41 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:41 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:41 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:41 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:41 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:41 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:41 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:41 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:41 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:41 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:41 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:41 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:41 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:41 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:41 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:41 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:41 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:41 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:41 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:41 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:41 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:41 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:41 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:41 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:41 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:41 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:41 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:41 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:41 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:41 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:41 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:41 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:41 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:41 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:41 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:41 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:41 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:41 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:41 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:41 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:41 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:41 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:41 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:41 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:41 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:41 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:41 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:41 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:41 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:41 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:41 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:41 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:41 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:41 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:41 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:41 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:41 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:41 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:41 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:41 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:41 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:41 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:41 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:41 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:41 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:41 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:41 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:41 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:41 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:41 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:41 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:41 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:41 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:41 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:41 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:41 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:41 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:41 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:41 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:41 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:41 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:41 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:41 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:41 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:41 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:41 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:41 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:41 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:41 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:41 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:41 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:41 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:41 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:41 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:41 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:41 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:41 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:41 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:41 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:41 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:41 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:41 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:41 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:41 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:41 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:41 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:41 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:41 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:41 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:41 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:41 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:41 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:41 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:41 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:41 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:41 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:41 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:41 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:41 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:41 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:41 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:41 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:41 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:41 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:41 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:41 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:41 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:41 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:41 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:41 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:41 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:41 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:41 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:41 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:41 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:41 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:42 1: BindingsIo: ERROR: Timeout while waiting for function to finish (id: 44769915)
2020.10.16 22:24:42 5: Starting notify loop for Badezimmer_Thermostat, 1 event(s), first is PythonBinding timeout
2020.10.16 22:24:42 5: GoogleCloudMessages Badezimmer_Thermostat: ignoring state, as value PythonBinding timeout is blocked by stateFilter regexp.
2020.10.16 22:24:42 4: BindingsIo: start PythonFunction: Badezimmer_Thermostat => Set (41761225)
2020.10.16 22:24:42 4: BindingsIo: <<< WS: {"function":"Set","argsh":{},"args":["Badezimmer_Thermostat","?"],"NAME":"Badezimmer_Thermostat","PYTHONTYPE":"eq3bt","msgtype":"function","defargsh":{},"id":41761225,"defargs":["Badezimmer_Thermostat","PythonModule","eq3bt","00:1A:22:0C:F5:41"]}
2020.10.16 22:24:42 5: SW: 7b2266756e6374696f6e223a22536574222c226172677368223a7b7d2c2261726773223a5b22426164657a696d6d65725f546865726d6f73746174222c223f225d2c224e414d45223a22426164657a696d6d65725f546865726d6f73746174222c22505954484f4e54595045223a226571336274222c226d736774797065223a2266756e6374696f6e222c226465666172677368223a7b7d2c226964223a34313736313232352c2264656661726773223a5b22426164657a696d6d65725f546865726d6f73746174222c22507974686f6e4d6f64756c65222c226571336274222c2230303a31413a32323a30433a46353a3431225d7d
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:42 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:43 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:43 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:43 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:43 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:43 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:43 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:43 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:43 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:43 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:43 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:43 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:43 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:43 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:43 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:43 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:43 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:43 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:43 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:43 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:43 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:43 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:43 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:43 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:43 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:43 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:43 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:43 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:43 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:43 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:43 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:43 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:43 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:43 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:43 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:43 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:43 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:43 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:43 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:43 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:43 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:43 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:43 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:43 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:43 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:43 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:43 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:43 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:43 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:43 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:43 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:43 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:43 5: BindingsIo: DevIo_SimpleRead
2020.10.16 22:24:43 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.16 22:24:43 5: BindingsIo: QUEUE: start handling - 0
2020.10.16 22:24:43 5: BindingsIo: QUEUE: finished handling - 0
2020.10.16 22:24:43 5
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 16 Oktober 2020, 22:44:04
Passiert das jedes mal wenn du FHEM am Master startest?
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 16 Oktober 2020, 22:45:29
Jup bei mir ja.
Sehe ich aber nur wenn ich auch auf vebose5 unterwegs bin.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 16 Oktober 2020, 22:59:15
Wenn du auf verbose 3 gehst, wie viele ERROR Messages mit Timeouts bekommst du? Passiert das nach "Server started with ... defined entities (fhem.pl:22342/2020-07-04 perl:5.028001 os:linux user:fhem pid:541)" oder davor?
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 16 Oktober 2020, 23:05:07
So schauts:

Zitat2020.10.16 23:03:27 1: Shutdown executed
Abrupt daemon termination, starting 10s countdown ... 10 9 8 7 6 5 4
FHEM process reappeared ...
2020.10.16 23:03:30 3: From the FHEM_GLOBALATTR environment: attr global updateInBackground 1
2020.10.16 23:03:30 3: From the FHEM_GLOBALATTR environment: attr global nofork 0
2020.10.16 23:03:30 3: From the FHEM_GLOBALATTR environment: attr global logfile ./log/fhem-%Y-%m-%d.log
2020.10.16 23:03:30 3: From the FHEM_GLOBALATTR environment: attr global pidfilename ./log/fhem.pid
2020.10.16 23:03:30 3: telnetPort: port 7072 opened
2020.10.16 23:03:30 3: WEB: port 8083 opened
2020.10.16 23:03:30 3: WEBphone: port 8084 opened
2020.10.16 23:03:30 3: WEBtablet: port 8085 opened
2020.10.16 23:03:30 2: eventTypes: loaded 4072 events from ./log/eventTypes.txt
2020.10.16 23:03:30 3: Opening nanoCUL device /dev/ttyUSB0
2020.10.16 23:03:30 3: Setting nanoCUL serial parameters to 38400,8,N,1
2020.10.16 23:03:33 3: nanoCUL: Possible commands: ABCeFfGiKLlMNRTtUVWXx
2020.10.16 23:03:33 3: nanoCUL device opened
2020.10.16 23:03:33 1: PERL WARNING: Unescaped left brace in regex is deprecated here (and will be fatal in Perl 5.32), passed through in regex; marked by <-- HERE in m/^(.*)({ <-- HERE .*})(.*)$/ at ./FHEM/10_MQTT_GENERIC_BRIDGE.pm line 1358.
2020.10.16 23:03:34 3: TPLinkHS110: Steckdose_Waschmaschine defined.
2020.10.16 23:03:34 3: TPLinkHS110: Steckdose_Waschmaschine INTERVAL set to 120
2020.10.16 23:03:34 3: TPLinkHS110: Steckdose_Waschmaschine TIMEOUT set to 1
2020.10.16 23:03:34 3: TPLinkHS110: Steckdose_Trockner defined.
2020.10.16 23:03:34 3: TPLinkHS110: Steckdose_Trockner INTERVAL set to 120
2020.10.16 23:03:34 3: TPLinkHS110: Steckdose_Trockner TIMEOUT set to 1
2020.10.16 23:03:34 3: HUEDevice2: I/O device is Hue_Bridge
2020.10.16 23:03:34 3: HUEDevice1: I/O device is Hue_Bridge
2020.10.16 23:03:34 3: HUEGroup0: I/O device is Hue_Bridge
2020.10.16 23:03:34 3: HUEGroup1: I/O device is Hue_Bridge
2020.10.16 23:03:34 3: HUEGroup2: I/O device is Hue_Bridge
2020.10.16 23:03:34 3: HUEGroup3: I/O device is Hue_Bridge
2020.10.16 23:03:34 3: WEB2: port 8086 opened
2020.10.16 23:03:34 3: freezemon defined freezemon freezemon
2020.10.16 23:03:34 2: [Freezemon] freezemon: ready to watch out for delays greater than 1 second(s)
2020.10.16 23:03:34 3: HUEDevice3: I/O device is Hue_Bridge
2020.10.16 23:03:34 3: HUEGroup4: I/O device is Hue_Bridge
2020.10.16 23:03:34 3: WEBHealth: port 8087 opened
2020.10.16 23:03:34 3: TPLinkHS110: HS100 defined.
2020.10.16 23:03:34 3: HUEGroup5: I/O device is Hue_Bridge
2020.10.16 23:03:34 3: HUEDevice7: I/O device is Hue_Bridge
2020.10.16 23:03:34 3: HUEDevice8: I/O device is Hue_Bridge
2020.10.16 23:03:34 3: HUEDevice4: I/O device is Hue_Bridge
2020.10.16 23:03:34 3: HUEDevice9: I/O device is Hue_Bridge
2020.10.16 23:03:34 3: HUEDevice5: I/O device is Hue_Bridge
2020.10.16 23:03:34 3: HUEDevice6: I/O device is Hue_Bridge
2020.10.16 23:03:34 3: HUEGroup6: I/O device is Hue_Bridge
2020.10.16 23:03:34 3: PythonBinding v1.0.0
2020.10.16 23:03:34 3: PythonModule v1.0.0 (discover_upnp)
2020.10.16 23:03:34 1: PERL WARNING: Use of uninitialized value in hash element at ./FHEM/10_PythonModule.pm line 58.
2020.10.16 23:03:34 3: PythonModule: PythonBinding not yet connected! Define after connect...
2020.10.16 23:03:34 3: BindingsIo v1.0.0
2020.10.16 23:03:34 3: PythonModule v1.0.0 (eq3bt)
2020.10.16 23:03:34 3: PythonModule: PythonBinding not yet connected! Define after connect...
2020.10.16 23:03:34 3: PythonModule v1.0.0 (eq3bt)
2020.10.16 23:03:34 3: PythonModule: PythonBinding not yet connected! Define after connect...
2020.10.16 23:03:34 3: PythonModule v1.0.0 (eq3bt)
2020.10.16 23:03:34 3: PythonModule: PythonBinding not yet connected! Define after connect...
2020.10.16 23:03:34 3: PythonModule v1.0.0 (eq3bt)
2020.10.16 23:03:34 3: PythonModule: PythonBinding not yet connected! Define after connect...
2020.10.16 23:03:34 3: PythonModule v1.0.0 (eq3bt)
2020.10.16 23:03:34 3: PythonModule: PythonBinding not yet connected! Define after connect...
2020.10.16 23:03:34 3: PythonModule v1.0.0 (eq3bt)
2020.10.16 23:03:34 3: PythonModule: PythonBinding not yet connected! Define after connect...
2020.10.16 23:03:34 3: PythonModule v1.0.0 (eq3bt)
2020.10.16 23:03:34 3: PythonModule: PythonBinding not yet connected! Define after connect...
2020.10.16 23:03:34 3: From the FHEM_GLOBALATTR environment: attr global updateInBackground 1
2020.10.16 23:03:34 3: From the FHEM_GLOBALATTR environment: attr global nofork 0
2020.10.16 23:03:34 3: From the FHEM_GLOBALATTR environment: attr global logfile ./log/fhem-%Y-%m-%d.log
2020.10.16 23:03:34 3: From the FHEM_GLOBALATTR environment: attr global pidfilename ./log/fhem.pid
2020.10.16 23:03:34 3: Pythonbinding_0: starting
2020.10.16 23:03:34 3: Pythonbinding_0: using logfile: ./log/PythonBinding-2020-10-16.log
2020.10.16 23:03:34 1: PERL WARNING: Use of uninitialized value in pattern match (m//) at ./FHEM/37_harmony.pm line 1765.
2020.10.16 23:03:37 2: [Freezemon] freezemon: ready to watch out for delays greater than 1 second(s)
2020.10.16 23:03:37 0: Featurelevel: 6
2020.10.16 23:03:37 0: Server started with 198 defined entities (fhem.pl:22935/2020-10-07 perl:5.028001 os:linux user:fhem pid:47726)
2020.10.16 23:03:39 2: IT IODev device didn't answer is command correctly:   raw => omAAAAAAAB32D4CB3555354AB3553552D554CCCD552AB532D42C
2020.10.16 23:03:39 2: IT IODev device didn't answer is command correctly:   raw => omAAAAAAAA802C
2020.10.16 23:03:40 1: [Freezemon] freezemon: possible freeze starting at 23:03:38, delay is 2.076 possibly caused by: tmr-CODE(0x5631d92e0430)(dnsQuery) tmr-FRITZBOX_Readout_Start(N/A) tmr-TPLinkHS110_Get(Steckdose_Waschmaschine) tmr-TPLinkHS110_Get(Steckdose_Trockner) tmr-TPLinkHS110_Get(HS100)
2020.10.16 23:03:40 3: Opening bindingsio_remote device ws:192.168.0.114:15733
2020.10.16 23:03:40 3: Pythonbinding_0: read: end of file reached while sysread
2020.10.16 23:03:40 3: Pythonbinding_0: stopped
2020.10.16 23:03:42 2: AttrTemplates: got 204 entries
2020.10.16 23:03:46 3: bindingsio_remote device opened
2020.10.16 23:03:46 1: [Freezemon] freezemon: possible freeze starting at 23:03:44, delay is 2.63 possibly caused by: no bad guy found :-(
2020.10.16 23:04:00 3: Pythonbinding_0: starting
2020.10.16 23:04:00 3: Pythonbinding_0: using logfile: ./log/PythonBinding-2020-10-16.log
2020.10.16 23:04:00 3: Pythonbinding_0: read: end of file reached while sysread
2020.10.16 23:04:00 3: Pythonbinding_0: stopped
2020.10.16 23:04:20 3: Pythonbinding_0: starting
2020.10.16 23:04:20 3: Pythonbinding_0: using logfile: ./log/PythonBinding-2020-10-16.log
2020.10.16 23:04:20 3: Pythonbinding_0: read: end of file reached while sysread
2020.10.16 23:04:20 3: Pythonbinding_0: stopped
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 16 Oktober 2020, 23:12:35
Hmm...da ist nun leider kein ERROR zu sehen. Aber ich habe eine Idee wie ich das verbessern kann, ich wuerde die ersten 2 Minuten beim Start das Timeout hoeher setzen.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 16 Oktober 2020, 23:14:03
Klingt gut :-)
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: mele am 17 Oktober 2020, 06:52:07
Guten Morgen,

nach zweimaligem "python3 FHEM/bindings/python/pythonbinding.py" funktioniert es jetzt.

@Dominik: VIELEN DANK FÜR DEINE HILFE BZW. ARBEIT!

Jetzt habe ich ein Remote-pi mit einem Thermostat am Laufen. Da kommt noch ein wenig Arbeit auf mich zu.

Eine Frage habe ich aber noch: Wie bekomme ich "python3 FHEM/bindings/python/pythonbinding.py" in den Autostart?

Vielen Dank vorab,

Manuel
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 17 Oktober 2020, 08:55:57
Super! Hast du vielleicht noch ein Log wo es mit der neuen Version nicht funktioniert hat? Weil irgendwo dürfte noch ein Fehler drin wenn es nicht immer geht.

Autostart: Ich habe hier die Einleitung eingefügt:
https://github.com/dominikkarall/fhem_pythonbinding#configure-remote-devices-eg-extend-bluetooth-range
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: mele am 17 Oktober 2020, 09:28:02
Zitat von: dominik am 17 Oktober 2020, 08:55:57
Super! Hast du vielleicht noch ein Log wo es mit der neuen Version nicht funktioniert hat? Weil irgendwo dürfte noch ein Fehler drin wenn es nicht immer geht.

Putty war noch auf ;-) Habe das Verhalten auch nochmal gesehen, so dass ich immer 2x starten musste (1x abbrechen und neu):

pi@raspberrypi:~/fhem_pythonbinding $ python3 FHEM/bindings/python/pythonbinding.py
2020-10-17 06:20:06,232 - INFO     - lib.fhem_pythonbinding: Starting pythonbinding...
2020-10-17 06:20:11,583 - INFO     - lib.fhem_pythonbinding: FHEM connection started: 192.168.178.232
2020-10-17 06:20:11,588 - INFO     - lib.fhem_pythonbinding: FHEM connection started: 192.168.178.232
2020-10-17 06:20:11,834 - ERROR    - lib.fhem_pythonbinding: Connection closed error
Traceback (most recent call last):
  File "/usr/local/lib/python3.7/dist-packages/websockets/protocol.py", line 827, in transfer_data
    message = await self.read_message()
  File "/usr/local/lib/python3.7/dist-packages/websockets/protocol.py", line 895, in read_message
    frame = await self.read_data_frame(max_size=self.max_size)
  File "/usr/local/lib/python3.7/dist-packages/websockets/protocol.py", line 971, in read_data_frame
    frame = await self.read_frame(max_size)
  File "/usr/local/lib/python3.7/dist-packages/websockets/protocol.py", line 1051, in read_frame
    extensions=self.extensions,
  File "/usr/local/lib/python3.7/dist-packages/websockets/framing.py", line 105, in read
    data = await reader(2)
  File "/usr/lib/python3.7/asyncio/streams.py", line 677, in readexactly
    raise IncompleteReadError(incomplete, n)
asyncio.streams.IncompleteReadError: 0 bytes read on a total of 2 expected bytes

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/home/pi/fhem_pythonbinding/FHEM/bindings/python/lib/fhem_pythonbinding.py", line 41, in pybinding
    async for message in websocket:
  File "/usr/local/lib/python3.7/dist-packages/websockets/protocol.py", line 439, in __aiter__
    yield await self.recv()
  File "/usr/local/lib/python3.7/dist-packages/websockets/protocol.py", line 509, in recv
    await self.ensure_open()
  File "/usr/local/lib/python3.7/dist-packages/websockets/protocol.py", line 803, in ensure_open
    raise self.connection_closed_exc()
websockets.exceptions.ConnectionClosedError: code = 1006 (connection closed abnormally [internal]), no reason
2020-10-17 06:20:11,839 - INFO     - lib.fhem_pythonbinding: Waiting for new FHEM connection...
2020-10-17 06:20:26,825 - ERROR    - lib.fhem: Timeout - NO RESPONSE for command: AttrVal('eq3device_EZ', 'verbose', '3')
2020-10-17 06:22:15,178 - ERROR    - eq3device_EZ: Failed to update, retry in 300s
^CTraceback (most recent call last):
  File "FHEM/bindings/python/pythonbinding.py", line 5, in <module>
    fpb.run()
  File "/home/pi/fhem_pythonbinding/FHEM/bindings/python/lib/fhem_pythonbinding.py", line 266, in run
    asyncio.get_event_loop().run_forever()
  File "/usr/lib/python3.7/asyncio/base_events.py", line 539, in run_forever
    self._run_once()
  File "/usr/lib/python3.7/asyncio/base_events.py", line 1739, in _run_once
    event_list = self._selector.select(timeout)
  File "/usr/lib/python3.7/selectors.py", line 468, in select
    fd_event_list = self._selector.poll(timeout, max_ev)
KeyboardInterrupt
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 17 Oktober 2020, 09:41:11
Hmm..kannst du mir bitte noch das FHEM Log dazu posten.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: mele am 17 Oktober 2020, 09:51:53
Ich befürchte, dass ich zu diesem Zeitpunkt kein vernüftiges verbose gesetzt hatte.

Ich kann das am WE gerne nochmal testen. verbose 3 reicht? Auf das BindingsIO, das Thermostat oder beides?

2020.10.17 07:20:11 1: ws:192.168.178.156:15733 reappeared (bindingsio_156)
2020.10.17 07:20:11 1: ws:192.168.178.156:15733 reappeared (bindingsio_156)
2020.10.17 07:20:01 1: BindingsIo: ERROR bindingsio_156 - error while connecting: 192.168.178.156: Connection refused (111)
2020.10.17 07:19:51 1: BindingsIo: ERROR bindingsio_156 - error while connecting: 192.168.178.156: Connection refused (111)
2020.10.17 07:19:41 1: BindingsIo: ERROR bindingsio_156 - error while connecting: 192.168.178.156: Connection refused (111)
2020.10.17 07:19:41 1: BindingsIo: ERROR bindingsio_156 - error while connecting: 192.168.178.156: Connection refused (111)
2020.10.17 07:19:31 1: BindingsIo: ERROR bindingsio_156 - error while connecting: 192.168.178.156: Connection refused (111)
2020.10.17 07:19:25 1: wifi_jeelink_garten: Can't connect to 192.168.178.247:81: Connection timed out
2020.10.17 07:19:21 1: BindingsIo: ERROR bindingsio_156 - error while connecting: 192.168.178.156: Connection refused (111)
2020.10.17 07:19:21 1: ws:192.168.178.156:15733 disconnected, waiting to reappear (bindingsio_156)
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 17 Oktober 2020, 10:05:40
verbose 5 auf BindingsIo waere super. Zumindest anhand dieser Logs, war die Verbindung weg. Vielleicht gab es da wirklich Verbindungsprobleme? Weil wifi_jeelink ebenfalls zur gleichen Zeit einen Fehler liefert. Aber bitte dennoch ein Log noch dazu, ich moechte dieses Problem unbedingt identifizieren und beheben.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: mele am 17 Oktober 2020, 11:11:24
Hab gerade nochmal probiert - hat zuerst funktioniert.

Dann habe ich einen Master-Neustart von FHEM gemacht. Dann hat es nichtmehr funktioniert. Viel im Log! Vielleicht hilfts!?!

Remote-Konsole:

pi@raspberrypi:~/fhem_pythonbinding $ python3 FHEM/bindings/python/pythonbinding.py
2020-10-17 10:01:35,130 - INFO     - lib.fhem_pythonbinding: Starting pythonbinding...
2020-10-17 10:01:42,642 - INFO     - lib.fhem_pythonbinding: FHEM connection started: 192.168.178.232
2020-10-17 10:02:59,734 - ERROR    - lib.fhem_pythonbinding: Connection closed error
Traceback (most recent call last):
  File "/usr/local/lib/python3.7/dist-packages/websockets/protocol.py", line 827, in transfer_data
    message = await self.read_message()
  File "/usr/local/lib/python3.7/dist-packages/websockets/protocol.py", line 895, in read_message
    frame = await self.read_data_frame(max_size=self.max_size)
  File "/usr/local/lib/python3.7/dist-packages/websockets/protocol.py", line 971, in read_data_frame
    frame = await self.read_frame(max_size)
  File "/usr/local/lib/python3.7/dist-packages/websockets/protocol.py", line 1051, in read_frame
    extensions=self.extensions,
  File "/usr/local/lib/python3.7/dist-packages/websockets/framing.py", line 105, in read
    data = await reader(2)
  File "/usr/lib/python3.7/asyncio/streams.py", line 677, in readexactly
    raise IncompleteReadError(incomplete, n)
asyncio.streams.IncompleteReadError: 0 bytes read on a total of 2 expected bytes

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/home/pi/fhem_pythonbinding/FHEM/bindings/python/lib/fhem_pythonbinding.py", line 41, in pybinding
    async for message in websocket:
  File "/usr/local/lib/python3.7/dist-packages/websockets/protocol.py", line 439, in __aiter__
    yield await self.recv()
  File "/usr/local/lib/python3.7/dist-packages/websockets/protocol.py", line 509, in recv
    await self.ensure_open()
  File "/usr/local/lib/python3.7/dist-packages/websockets/protocol.py", line 803, in ensure_open
    raise self.connection_closed_exc()
websockets.exceptions.ConnectionClosedError: code = 1006 (connection closed abnormally [internal]), no reason
2020-10-17 10:02:59,745 - INFO     - lib.fhem_pythonbinding: Waiting for new FHEM connection...
2020-10-17 10:03:12,993 - ERROR    - lib.fhem: Connection closed, can't send message.
2020-10-17 10:03:28,009 - ERROR    - lib.fhem: Timeout - NO RESPONSE for command: readingsSingleUpdate($defs{'eq3device_WC'},'presence','offline',1)
2020-10-17 10:03:28,010 - ERROR    - lib.fhem: Connection closed, can't send message.
2020-10-17 10:03:33,556 - INFO     - lib.fhem_pythonbinding: FHEM connection started: 192.168.178.232
2020-10-17 10:03:33,715 - ERROR    - eq3device_EZ: Failed to update, retry in 300s
2020-10-17 10:03:43,021 - ERROR    - lib.fhem: Timeout - NO RESPONSE for command: readingsSingleUpdate($defs{'eq3device_WC'},'state','update',1)
2020-10-17 10:03:52,026 - ERROR    - eq3device_WC: Failed to update, retry in 300s
2020-10-17 10:04:20,203 - ERROR    - eq3device_WC: Failed to update, retry in 300s
^CTraceback (most recent call last):
  File "FHEM/bindings/python/pythonbinding.py", line 5, in <module>
    fpb.run()
  File "/home/pi/fhem_pythonbinding/FHEM/bindings/python/lib/fhem_pythonbinding.py", line 266, in run
    asyncio.get_event_loop().run_forever()
  File "/usr/lib/python3.7/asyncio/base_events.py", line 539, in run_forever
    self._run_once()
  File "/usr/lib/python3.7/asyncio/base_events.py", line 1739, in _run_once
    event_list = self._selector.select(timeout)
  File "/usr/lib/python3.7/selectors.py", line 468, in select
    fd_event_list = self._selector.poll(timeout, max_ev)
KeyboardInterrupt


Master-Log:

2020.10.17 11:01:59 1: wifi_jeelink_garten: Can't connect to 192.168.178.247:81: Connection timed out
2020.10.17 11:01:46 1: wifi_jeelink: Can't connect to 192.168.178.254:81: Connection timed out
2020.10.17 11:01:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.17 11:01:42 5: processMessage: {"defargsh": {}, "PYTHONTYPE": "eq3bt", "msgtype": "update_hash", "defargs": ["eq3device_WC", "PythonModule", "eq3bt", "00:1A:22:0C:79:CF"], "argsh": {}, "function": "Define", "args": ["eq3device_WC", "PythonModule", "eq3bt", "00:1A:22:0C:79:CF"], "NAME": "eq3device_WC", "MAC": "00:1A:22:0C:79:CF"}
2020.10.17 11:01:42 5: BindingsIo: QUEUE: start handling - 1
2020.10.17 11:01:42 4: BindingsIo: >>> WS: {"defargsh": {}, "PYTHONTYPE": "eq3bt", "msgtype": "update_hash", "defargs": ["eq3device_WC", "PythonModule", "eq3bt", "00:1A:22:0C:79:CF"], "argsh": {}, "function": "Define", "args": ["eq3device_WC", "PythonModule", "eq3bt", "00:1A:22:0C:79:CF"], "NAME": "eq3device_WC", "MAC": "00:1A:22:0C:79:CF"}
2020.10.17 11:01:42 5: BindingsIo: DevIo_SimpleRead NoTimeout
2020.10.17 11:01:42 5: BindingsIo: DevIo_SimpleRead
2020.10.17 11:01:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.17 11:01:42 5: processMessage: {"argsh": {}, "function": "Define", "args": ["eq3device_EZ", "PythonModule", "eq3bt", "00:1A:22:11:DD:BA"], "NAME": "eq3device_EZ", "defargsh": {}, "PYTHONTYPE": "eq3bt", "msgtype": "update_hash", "defargs": ["eq3device_EZ", "PythonModule", "eq3bt", "00:1A:22:11:DD:BA"], "MAC": "00:1A:22:11:DD:BA"}
2020.10.17 11:01:42 5: BindingsIo: QUEUE: start handling - 1
2020.10.17 11:01:42 4: BindingsIo: >>> WS: {"argsh": {}, "function": "Define", "args": ["eq3device_EZ", "PythonModule", "eq3bt", "00:1A:22:11:DD:BA"], "NAME": "eq3device_EZ", "defargsh": {}, "PYTHONTYPE": "eq3bt", "msgtype": "update_hash", "defargs": ["eq3device_EZ", "PythonModule", "eq3bt", "00:1A:22:11:DD:BA"], "MAC": "00:1A:22:11:DD:BA"}
2020.10.17 11:01:42 5: BindingsIo: DevIo_SimpleRead NoTimeout
2020.10.17 11:01:42 5: BindingsIo: DevIo_SimpleRead
2020.10.17 11:01:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.17 11:01:42 5: SW: 7b22726573756c74223a226f6666222c226572726f72223a302c2261776169744964223a39383735393437347d
2020.10.17 11:01:42 4: BindingsIo: <<< WS: {"result":"off","error":0,"awaitId":98759474}
2020.10.17 11:01:42 5: processMessage: {"awaitId": 98759474, "NAME": "eq3device_WC", "msgtype": "command", "command": "AttrVal('eq3device_WC', 'keep_connected', 'on')"}
2020.10.17 11:01:42 5: SW: 7b226572726f72223a302c22726573756c74223a226f6666222c2261776169744964223a38373739333831387d
2020.10.17 11:01:42 4: BindingsIo: <<< WS: {"error":0,"result":"off","awaitId":87793818}
2020.10.17 11:01:42 5: processMessage: {"awaitId": 87793818, "NAME": "eq3device_EZ", "msgtype": "command", "command": "AttrVal('eq3device_EZ', 'keep_connected', 'on')"}
2020.10.17 11:01:42 5: BindingsIo: QUEUE: start handling - 2
2020.10.17 11:01:42 4: BindingsIo: >>> WS: {"awaitId": 98759474, "NAME": "eq3device_WC", "msgtype": "command", "command": "AttrVal('eq3device_WC', 'keep_connected', 'on')"}
2020.10.17 11:01:42 4: BindingsIo: >>> WS: {"awaitId": 87793818, "NAME": "eq3device_EZ", "msgtype": "command", "command": "AttrVal('eq3device_EZ', 'keep_connected', 'on')"}
2020.10.17 11:01:42 5: BindingsIo: DevIo_SimpleRead NoTimeout
2020.10.17 11:01:42 5: BindingsIo: DevIo_SimpleRead
2020.10.17 11:01:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.17 11:01:42 5: SW: 7b226572726f72223a302c22726573756c74223a226b6565705f636f6e6e65637465643a6f6e2c6f6666222c2261776169744964223a33333335323138377d
2020.10.17 11:01:42 4: BindingsIo: <<< WS: {"error":0,"result":"keep_connected:on,off","awaitId":33352187}
2020.10.17 11:01:42 5: processMessage: {"awaitId": 33352187, "NAME": "eq3device_WC", "msgtype": "command", "command": "addToDevAttrList('eq3device_WC', 'keep_connected:on,off')"}
2020.10.17 11:01:42 5: BindingsIo: QUEUE: start handling - 1
2020.10.17 11:01:42 4: BindingsIo: >>> WS: {"awaitId": 33352187, "NAME": "eq3device_WC", "msgtype": "command", "command": "addToDevAttrList('eq3device_WC', 'keep_connected:on,off')"}
2020.10.17 11:01:42 5: BindingsIo: DevIo_SimpleRead NoTimeout
2020.10.17 11:01:42 5: BindingsIo: DevIo_SimpleRead
2020.10.17 11:01:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.17 11:01:42 5: SW: 7b2261776169744964223a34333433363839362c22726573756c74223a226b6565705f636f6e6e65637465643a6f6e2c6f6666222c226572726f72223a307d
2020.10.17 11:01:42 4: BindingsIo: <<< WS: {"awaitId":43436896,"result":"keep_connected:on,off","error":0}
2020.10.17 11:01:42 5: processMessage: {"awaitId": 43436896, "NAME": "eq3device_EZ", "msgtype": "command", "command": "addToDevAttrList('eq3device_EZ', 'keep_connected:on,off')"}
2020.10.17 11:01:42 5: SW: 7b2261776169744964223a33333637363037322c226572726f72223a302c22726573756c74223a22636f6e6e656374696e67227d
2020.10.17 11:01:42 4: BindingsIo: <<< WS: {"awaitId":33676072,"error":0,"result":"connecting"}
2020.10.17 11:01:42 4: BindingsIo: end PythonFunction: eq3device_WC => Set (36949477) - result: Unknown argument ?, choose one of on:noArg off:noArg desiredTemperature:slider,4.5,0.5,30,1 updateStatus:noArg boost:on,off mode:manual,automatic eco:noArg comfort:noArg childlock:on,off
2020.10.17 11:01:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.17 11:01:42 5: processMessage: {"defargsh": {}, "PYTHONTYPE": "eq3bt", "defargs": ["eq3device_WC", "PythonModule", "eq3bt", "00:1A:22:0C:79:CF"], "msgtype": "function", "function": "Set", "argsh": {}, "args": ["eq3device_WC", "?"], "NAME": "eq3device_WC", "id": "36949477", "finished": 1, "returnval": "Unknown argument ?, choose one of on:noArg off:noArg desiredTemperature:slider,4.5,0.5,30,1 updateStatus:noArg boost:on,off mode:manual,automatic eco:noArg comfort:noArg childlock:on,off"}
2020.10.17 11:01:42 5: processMessage: {"awaitId": 43436896, "NAME": "eq3device_EZ", "msgtype": "command", "command": "addToDevAttrList('eq3device_EZ', 'keep_connected:on,off')"}
2020.10.17 11:01:42 5: BindingsIo: QUEUE: start handling - 2
2020.10.17 11:01:42 4: BindingsIo: >>> WS: {"defargsh": {}, "PYTHONTYPE": "eq3bt", "defargs": ["eq3device_WC", "PythonModule", "eq3bt", "00:1A:22:0C:79:CF"], "msgtype": "function", "function": "Set", "argsh": {}, "args": ["eq3device_WC", "?"], "NAME": "eq3device_WC", "id": "36949477", "finished": 1, "returnval": "Unknown argument ?, choose one of on:noArg off:noArg desiredTemperature:slider,4.5,0.5,30,1 updateStatus:noArg boost:on,off mode:manual,automatic eco:noArg comfort:noArg childlock:on,off"}
2020.10.17 11:01:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.17 11:01:42 5: BindingsIo: DevIo_SimpleRead
2020.10.17 11:01:42 5: SW: 7b226465666172677368223a7b7d2c22505954484f4e54595045223a226571336274222c2264656661726773223a5b226571336465766963655f5743222c22507974686f6e4d6f64756c65222c226571336274222c2230303a31413a32323a30433a37393a4346225d2c226d736774797065223a2266756e6374696f6e222c2266756e6374696f6e223a22536574222c226172677368223a7b7d2c2261726773223a5b226571336465766963655f5743222c223f225d2c224e414d45223a226571336465766963655f5743222c226964223a223336393439343737227d
2020.10.17 11:01:42 4: BindingsIo: <<< WS: {"defargsh":{},"PYTHONTYPE":"eq3bt","defargs":["eq3device_WC","PythonModule","eq3bt","00:1A:22:0C:79:CF"],"msgtype":"function","function":"Set","argsh":{},"args":["eq3device_WC","?"],"NAME":"eq3device_WC","id":"36949477"}
2020.10.17 11:01:42 4: BindingsIo: start PythonFunction: eq3device_WC => Set (36949477)
2020.10.17 11:01:42 5: processMessage: {"awaitId": 33676072, "NAME": "eq3device_WC", "msgtype": "command", "command": "readingsSingleUpdate($defs{'eq3device_WC'},'state','connecting',1)"}
2020.10.17 11:01:42 5: BindingsIo: QUEUE: start handling - 2
2020.10.17 11:01:42 4: BindingsIo: >>> WS: {"awaitId": 43436896, "NAME": "eq3device_EZ", "msgtype": "command", "command": "addToDevAttrList('eq3device_EZ', 'keep_connected:on,off')"}
2020.10.17 11:01:42 4: BindingsIo: >>> WS: {"awaitId": 33676072, "NAME": "eq3device_WC", "msgtype": "command", "command": "readingsSingleUpdate($defs{'eq3device_WC'},'state','connecting',1)"}
2020.10.17 11:01:42 5: BindingsIo: DevIo_SimpleRead NoTimeout
2020.10.17 11:01:42 5: BindingsIo: DevIo_SimpleRead
2020.10.17 11:01:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.17 11:01:42 5: SW: 7b22726573756c74223a22636f6e6e656374696e67222c226572726f72223a302c2261776169744964223a32313839343435327d
2020.10.17 11:01:42 4: BindingsIo: <<< WS: {"result":"connecting","error":0,"awaitId":21894452}
2020.10.17 11:01:42 5: processMessage: {"awaitId": 21894452, "NAME": "eq3device_EZ", "msgtype": "command", "command": "readingsSingleUpdate($defs{'eq3device_EZ'},'state','connecting',1)"}
2020.10.17 11:01:42 5: SW: 7b2261776169744964223a33393335353539362c22726573756c74223a2270726573656e63653a206f66666c696e65222c226572726f72223a307d
2020.10.17 11:01:42 4: BindingsIo: <<< WS: {"awaitId":39355596,"result":"presence: offline","error":0}
2020.10.17 11:01:42 4: BindingsIo: end PythonFunction: eq3device_WC => Set (47572983) - result: Unknown argument ?, choose one of on:noArg off:noArg desiredTemperature:slider,4.5,0.5,30,1 updateStatus:noArg boost:on,off mode:manual,automatic eco:noArg comfort:noArg childlock:on,off
2020.10.17 11:01:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.17 11:01:42 5: processMessage: {"msgtype": "function", "defargs": ["eq3device_WC", "PythonModule", "eq3bt", "00:1A:22:0C:79:CF"], "PYTHONTYPE": "eq3bt", "defargsh": {}, "NAME": "eq3device_WC", "id": "47572983", "args": ["eq3device_WC", "?"], "argsh": {}, "function": "Set", "finished": 1, "returnval": "Unknown argument ?, choose one of on:noArg off:noArg desiredTemperature:slider,4.5,0.5,30,1 updateStatus:noArg boost:on,off mode:manual,automatic eco:noArg comfort:noArg childlock:on,off"}
2020.10.17 11:01:42 5: processMessage: {"awaitId": 21894452, "NAME": "eq3device_EZ", "msgtype": "command", "command": "readingsSingleUpdate($defs{'eq3device_EZ'},'state','connecting',1)"}
2020.10.17 11:01:42 5: BindingsIo: QUEUE: start handling - 2
2020.10.17 11:01:42 4: BindingsIo: >>> WS: {"msgtype": "function", "defargs": ["eq3device_WC", "PythonModule", "eq3bt", "00:1A:22:0C:79:CF"], "PYTHONTYPE": "eq3bt", "defargsh": {}, "NAME": "eq3device_WC", "id": "47572983", "args": ["eq3device_WC", "?"], "argsh": {}, "function": "Set", "finished": 1, "returnval": "Unknown argument ?, choose one of on:noArg off:noArg desiredTemperature:slider,4.5,0.5,30,1 updateStatus:noArg boost:on,off mode:manual,automatic eco:noArg comfort:noArg childlock:on,off"}
2020.10.17 11:01:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.17 11:01:42 5: BindingsIo: DevIo_SimpleRead
2020.10.17 11:01:42 5: SW: 7b226d736774797065223a2266756e6374696f6e222c2264656661726773223a5b226571336465766963655f5743222c22507974686f6e4d6f64756c65222c226571336274222c2230303a31413a32323a30433a37393a4346225d2c22505954484f4e54595045223a226571336274222c226465666172677368223a7b7d2c224e414d45223a226571336465766963655f5743222c226964223a223437353732393833222c2261726773223a5b226571336465766963655f5743222c223f225d2c226172677368223a7b7d2c2266756e6374696f6e223a22536574227d
2020.10.17 11:01:42 4: BindingsIo: <<< WS: {"msgtype":"function","defargs":["eq3device_WC","PythonModule","eq3bt","00:1A:22:0C:79:CF"],"PYTHONTYPE":"eq3bt","defargsh":{},"NAME":"eq3device_WC","id":"47572983","args":["eq3device_WC","?"],"argsh":{},"function":"Set"}
2020.10.17 11:01:42 4: BindingsIo: start PythonFunction: eq3device_WC => Set (47572983)
2020.10.17 11:01:42 5: processMessage: {"awaitId": 39355596, "NAME": "eq3device_WC", "msgtype": "command", "command": "readingsSingleUpdate($defs{'eq3device_WC'},'presence','offline',1)"}
2020.10.17 11:01:42 5: BindingsIo: QUEUE: start handling - 2
2020.10.17 11:01:42 4: BindingsIo: >>> WS: {"awaitId": 21894452, "NAME": "eq3device_EZ", "msgtype": "command", "command": "readingsSingleUpdate($defs{'eq3device_EZ'},'state','connecting',1)"}
2020.10.17 11:01:42 4: BindingsIo: >>> WS: {"awaitId": 39355596, "NAME": "eq3device_WC", "msgtype": "command", "command": "readingsSingleUpdate($defs{'eq3device_WC'},'presence','offline',1)"}
2020.10.17 11:01:42 5: BindingsIo: DevIo_SimpleRead NoTimeout
2020.10.17 11:01:42 5: BindingsIo: DevIo_SimpleRead
2020.10.17 11:01:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.17 11:01:42 5: SW: 7b22726573756c74223a2270726573656e63653a206f66666c696e65222c226572726f72223a302c2261776169744964223a37333736303231307d
2020.10.17 11:01:42 4: BindingsIo: <<< WS: {"result":"presence: offline","error":0,"awaitId":73760210}
2020.10.17 11:01:42 5: processMessage: {"awaitId": 73760210, "NAME": "eq3device_EZ", "msgtype": "command", "command": "readingsSingleUpdate($defs{'eq3device_EZ'},'presence','offline',1)"}
2020.10.17 11:01:42 5: SW: 7b22726573756c74223a2273616e695f68656174696e675f74656d70222c226572726f72223a302c2261776169744964223a34393032383437397d
2020.10.17 11:01:42 4: BindingsIo: <<< WS: {"result":"sani_heating_temp","error":0,"awaitId":49028479}
2020.10.17 11:01:42 5: processMessage: {"awaitId": 49028479, "NAME": "eq3device_WC", "msgtype": "command", "command": "AttrVal('eq3device_WC', 'icon', 'noicon')"}
2020.10.17 11:01:42 5: BindingsIo: QUEUE: start handling - 2
2020.10.17 11:01:42 4: BindingsIo: >>> WS: {"awaitId": 73760210, "NAME": "eq3device_EZ", "msgtype": "command", "command": "readingsSingleUpdate($defs{'eq3device_EZ'},'presence','offline',1)"}
2020.10.17 11:01:42 4: BindingsIo: >>> WS: {"awaitId": 49028479, "NAME": "eq3device_WC", "msgtype": "command", "command": "AttrVal('eq3device_WC', 'icon', 'noicon')"}
2020.10.17 11:01:42 5: BindingsIo: DevIo_SimpleRead NoTimeout
2020.10.17 11:01:42 5: BindingsIo: DevIo_SimpleRead
2020.10.17 11:01:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.17 11:01:42 5: SW: 7b22726573756c74223a2273616e695f68656174696e675f74656d70222c226572726f72223a302c2261776169744964223a37343937323939317d
2020.10.17 11:01:42 4: BindingsIo: <<< WS: {"result":"sani_heating_temp","error":0,"awaitId":74972991}
2020.10.17 11:01:42 5: processMessage: {"awaitId": 74972991, "NAME": "eq3device_EZ", "msgtype": "command", "command": "AttrVal('eq3device_EZ', 'icon', 'noicon')"}
2020.10.17 11:01:42 5: BindingsIo: QUEUE: start handling - 1
2020.10.17 11:01:42 4: BindingsIo: >>> WS: {"awaitId": 74972991, "NAME": "eq3device_EZ", "msgtype": "command", "command": "AttrVal('eq3device_EZ', 'icon', 'noicon')"}
2020.10.17 11:01:42 5: BindingsIo: DevIo_SimpleRead NoTimeout
2020.10.17 11:01:42 5: BindingsIo: DevIo_SimpleRead
2020.10.17 11:01:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.17 11:01:42 5: SW: 7b22726573756c74223a2233222c226572726f72223a302c2261776169744964223a32363236353130327d
2020.10.17 11:01:42 4: BindingsIo: <<< WS: {"result":"3","error":0,"awaitId":26265102}
2020.10.17 11:01:42 5: processMessage: {"awaitId": 26265102, "NAME": "eq3device_WC", "msgtype": "command", "command": "AttrVal('eq3device_WC', 'verbose', '3')"}
2020.10.17 11:01:42 5: SW: 7b226572726f72223a302c22726573756c74223a2233222c2261776169744964223a34363535393330337d
2020.10.17 11:01:42 4: BindingsIo: <<< WS: {"error":0,"result":"3","awaitId":46559303}
2020.10.17 11:01:42 5: processMessage: {"awaitId": 46559303, "NAME": "eq3device_EZ", "msgtype": "command", "command": "AttrVal('eq3device_EZ', 'verbose', '3')"}
2020.10.17 11:01:42 5: BindingsIo: QUEUE: start handling - 2
2020.10.17 11:01:42 4: BindingsIo: >>> WS: {"awaitId": 26265102, "NAME": "eq3device_WC", "msgtype": "command", "command": "AttrVal('eq3device_WC', 'verbose', '3')"}
2020.10.17 11:01:42 5: BindingsIo: DevIo_SimpleRead NoTimeout
2020.10.17 11:01:42 5: BindingsIo: DevIo_SimpleRead
2020.10.17 11:01:42 1: ws:192.168.178.156:15733 reappeared (bindingsio_156)
2020.10.17 11:01:42 4: BindingsIo: end PythonFunction: eq3device_WC => Define (51451610) - result:
2020.10.17 11:01:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.17 11:01:42 5: processMessage: {"defargsh": {}, "PYTHONTYPE": "eq3bt", "msgtype": "function", "defargs": ["eq3device_WC", "PythonModule", "eq3bt", "00:1A:22:0C:79:CF"], "argsh": {}, "function": "Define", "args": ["eq3device_WC", "PythonModule", "eq3bt", "00:1A:22:0C:79:CF"], "NAME": "eq3device_WC", "id": "51451610", "finished": 1, "returnval": ""}
2020.10.17 11:01:42 5: processMessage: {"awaitId": 46559303, "NAME": "eq3device_EZ", "msgtype": "command", "command": "AttrVal('eq3device_EZ', 'verbose', '3')"}
2020.10.17 11:01:42 5: BindingsIo: QUEUE: start handling - 2
2020.10.17 11:01:42 4: BindingsIo: >>> WS: {"defargsh": {}, "PYTHONTYPE": "eq3bt", "msgtype": "function", "defargs": ["eq3device_WC", "PythonModule", "eq3bt", "00:1A:22:0C:79:CF"], "argsh": {}, "function": "Define", "args": ["eq3device_WC", "PythonModule", "eq3bt", "00:1A:22:0C:79:CF"], "NAME": "eq3device_WC", "id": "51451610", "finished": 1, "returnval": ""}
2020.10.17 11:01:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.17 11:01:42 5: BindingsIo: DevIo_SimpleRead
2020.10.17 11:01:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.17 11:01:42 5: processMessage: {"awaitId": 46559303, "NAME": "eq3device_EZ", "msgtype": "command", "command": "AttrVal('eq3device_EZ', 'verbose', '3')"}
2020.10.17 11:01:42 5: BindingsIo: QUEUE: start handling - 1
2020.10.17 11:01:42 4: BindingsIo: >>> WS: {"awaitId": 46559303, "NAME": "eq3device_EZ", "msgtype": "command", "command": "AttrVal('eq3device_EZ', 'verbose', '3')"}
2020.10.17 11:01:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.17 11:01:42 5: BindingsIo: DevIo_SimpleRead
2020.10.17 11:01:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.17 11:01:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.17 11:01:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.17 11:01:42 5: BindingsIo: DevIo_SimpleRead
2020.10.17 11:01:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.17 11:01:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.17 11:01:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.17 11:01:42 5: BindingsIo: DevIo_SimpleRead
2020.10.17 11:01:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.17 11:01:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.17 11:01:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.17 11:01:42 5: BindingsIo: DevIo_SimpleRead
2020.10.17 11:01:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.17 11:01:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.17 11:01:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.17 11:01:42 5: BindingsIo: DevIo_SimpleRead
2020.10.17 11:01:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.17 11:01:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.17 11:01:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.17 11:01:42 5: BindingsIo: DevIo_SimpleRead
2020.10.17 11:01:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.17 11:01:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.17 11:01:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.17 11:01:42 5: BindingsIo: DevIo_SimpleRead
2020.10.17 11:01:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.17 11:01:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.17 11:01:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.17 11:01:42 5: BindingsIo: DevIo_SimpleRead
2020.10.17 11:01:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.17 11:01:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.17 11:01:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.17 11:01:42 5: BindingsIo: DevIo_SimpleRead
2020.10.17 11:01:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.17 11:01:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.17 11:01:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.17 11:01:42 5: BindingsIo: DevIo_SimpleRead
2020.10.17 11:01:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.17 11:01:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.17 11:01:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.17 11:01:42 5: BindingsIo: DevIo_SimpleRead
2020.10.17 11:01:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.17 11:01:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.17 11:01:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.17 11:01:42 5: BindingsIo: DevIo_SimpleRead
2020.10.17 11:01:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.17 11:01:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.17 11:01:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.17 11:01:42 5: BindingsIo: DevIo_SimpleRead
2020.10.17 11:01:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.17 11:01:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.17 11:01:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.17 11:01:42 5: BindingsIo: DevIo_SimpleRead
2020.10.17 11:01:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.17 11:01:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.17 11:01:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.17 11:01:42 5: BindingsIo: DevIo_SimpleRead
2020.10.17 11:01:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.17 11:01:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.17 11:01:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.17 11:01:42 5: BindingsIo: DevIo_SimpleRead
2020.10.17 11:01:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.17 11:01:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.17 11:01:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.17 11:01:42 5: BindingsIo: DevIo_SimpleRead
2020.10.17 11:01:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.17 11:01:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.17 11:01:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.17 11:01:42 5: BindingsIo: DevIo_SimpleRead
2020.10.17 11:01:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.17 11:01:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.17 11:01:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.17 11:01:42 5: BindingsIo: DevIo_SimpleRead
2020.10.17 11:01:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.17 11:01:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.17 11:01:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.17 11:01:42 5: BindingsIo: DevIo_SimpleRead
2020.10.17 11:01:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.17 11:01:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.17 11:01:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.17 11:01:42 5: BindingsIo: DevIo_SimpleRead
2020.10.17 11:01:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.17 11:01:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.17 11:01:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.17 11:01:42 5: BindingsIo: DevIo_SimpleRead
2020.10.17 11:01:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.17 11:01:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.17 11:01:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.17 11:01:42 5: BindingsIo: DevIo_SimpleRead
2020.10.17 11:01:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.17 11:01:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.17 11:01:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.17 11:01:42 5: BindingsIo: DevIo_SimpleRead
2020.10.17 11:01:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.17 11:01:42 5: BindingsIo: QUEUE: start handling - 0
2020.10.17 11:01:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.17 11:01:42 5: BindingsIo: DevIo_SimpleRead
2020.10.17 11:01:42 5: SW: 7b226465666172677368223a7b7d2c22505954484f4e54595045223a226571336274222c226d736774797065223a2266756e6374696f6e222c2264656661726773223a5b226571336465766963655f5743222c22507974686f6e4d6f64756c65222c226571336274222c2230303a31413a32323a30433a37393a4346225d2c226172677368223a7b7d2c2266756e6374696f6e223a22446566696e65222c2261726773223a5b226571336465766963655f5743222c22507974686f6e4d6f64756c65222c226571336274222c2230303a31413a32323a30433a37393a4346225d2c224e414d45223a226571336465766963655f5743222c226964223a223531343531363130227d
2020.10.17 11:01:42 4: BindingsIo: <<< WS: {"defargsh":{},"PYTHONTYPE":"eq3bt","msgtype":"function","defargs":["eq3device_WC","PythonModule","eq3bt","00:1A:22:0C:79:CF"],"argsh":{},"function":"Define","args":["eq3device_WC","PythonModule","eq3bt","00:1A:22:0C:79:CF"],"NAME":"eq3device_WC","id":"51451610"}
2020.10.17 11:01:42 4: BindingsIo: start PythonFunction: eq3device_WC => Define (51451610)
2020.10.17 11:01:42 4: BindingsIo: end PythonFunction: eq3device_EZ => Define (84384008) - result:
2020.10.17 11:01:42 5: BindingsIo: QUEUE: finished handling - 0
2020.10.17 11:01:42 5: processMessage: {"argsh": {}, "function": "Define", "args": ["eq3device_EZ", "PythonModule", "eq3bt", "00:1A:22:11:DD:BA"], "id": "84384008", "NAME": "eq3device_EZ", "defargsh": {}, "PYTHONTYPE": "eq3bt", "msgtype": "function", "defargs": ["eq3device_EZ", "PythonModule", "eq3bt", "00:1A:22:11:DD:BA"], "finished": 1, "returnval": ""}
2020.10.17 11:01:42 5: BindingsIo: QUEUE: start handling - 1
2020.10.17 11:01:42 4: BindingsIo: >>> WS: {"argsh": {}, "function": "Define", "args": ["eq3device_EZ", "PythonModule", "eq3bt", "00:1A:22:11:DD:BA"], "id": "84384008", "NAME": "eq3device_EZ", "defargsh": {}, "PYTHONTYPE": "eq3bt", "msgtype": "function", "defargs": ["eq3device_EZ", "PythonModule", "eq3bt", "00:1A:22:11:DD:BA"], "finished": 1, "returnval": ""}
2020.10.17 11:01:42 5: BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.17 11:01:42 5: BindingsIo: DevIo_SimpleRead
2020.10.17 11:01:42 5: SW: 7b226172677368223a7b7d2c2266756e6374696f6e223a22446566696e65222c2261726773223a5b226571336465766963655f455a222c22507974686f6e4d6f64756c65222c226571336274222c2230303a31413a32323a31313a44443a4241225d2c226964223a223834333834303038222c224e414d45223a226571336465766963655f455a222c226465666172677368223a7b7d2c22505954484f4e54595045223a226571336274222c226d736774797065223a2266756e6374696f6e222c2264656661726773223a5b226571336465766963655f455a222c22507974686f6e4d6f64756c65222c226571336274222c2230303a31413a32323a31313a44443a4241225d7d
2020.10.17 11:01:42 4: BindingsIo: <<< WS: {"argsh":{},"function":"Define","args":["eq3device_EZ","PythonModule","eq3bt","00:1A:22:11:DD:BA"],"id":"84384008","NAME":"eq3device_EZ","defargsh":{},"PYTHONTYPE":"eq3bt","msgtype":"function","defargs":["eq3device_EZ","PythonModule","eq3bt","00:1A:22:11:DD:BA"]}
2020.10.17 11:01:42 4: BindingsIo: start PythonFunction: eq3device_EZ => Define (84384008)
Server: Python/3.7 websockets/8.1
Date: Sat, 17 Oct 2020 09:01:42 GMT
Sec-WebSocket-Accept: mGSup08l/WmQBTXAbP/6C8kE0G0=
Connection: Upgrade
Upgrade: websocket
HTTP/1.1 101 Switching Protocols
2020.10.17 11:01:42 5: HttpUtils response header:
2020.10.17 11:01:42 5: HttpUtils http://192.168.178.156:15733/: Got data, length: 0
2020.10.17 11:01:42 4: http://192.168.178.156:15733/: HTTP response code 101

Sec-WebSocket-Version: 13
Connection: Upgrade
Upgrade: websocket
Sec-WebSocket-Key: p0oVB5gGiPUGaaXzpP/7zQ==
Accept-Encoding: gzip,deflate
User-Agent: fhem
Host: 192.168.178.156:15733
GET / HTTP/1.1
2020.10.17 11:01:42 5: HttpUtils request header:
2020.10.17 11:01:42 4: IP: 192.168.178.156 -> 192.168.178.156
2020.10.17 11:01:42 5: HttpUtils url=http://192.168.178.156:15733/
2020.10.17 11:01:31 1: BindingsIo: ERROR bindingsio_156 - error while connecting: 192.168.178.156: Connection refused (111)
2020.10.17 11:01:31 4: HttpUtils: 192.168.178.156: Connection refused (111)
2020.10.17 11:01:31 4: IP: 192.168.178.156 -> 192.168.178.156
2020.10.17 11:01:31 5: HttpUtils url=http://192.168.178.156:15733/
2020.10.17 11:01:31 5: BindingsIo: QUEUE: finished handling - 0
2020.10.17 11:01:31 5: BindingsIo: QUEUE: start handling - 0
2020.10.17 11:01:31 5: BindingsIo: DevIo_SimpleRead NoTimeout
2020.10.17 11:01:31 1: ws:192.168.178.156:15733 disconnected, waiting to reappear (bindingsio_156)
2020.10.17 11:01:31 5: BindingsIo: DevIo_SimpleRead
2020.10.17 11:01:29 1: wifi_jeelink_garten: Can't connect to 192.168.178.247:81: No route to host
2020.10.17 11:01:16 5: BindingsIo: QUEUE: finished handling - 0
2020.10.17 11:01:16 5: SW: 7b22726573756c74223a6e756c6c2c226572726f72223a302c2261776169744964223a38343638373137307d
2020.10.17 11:01:16 4: BindingsIo: <<< WS: {"result":null,"error":0,"awaitId":84687170}
2020.10.17 11:01:16 5: processMessage: {"awaitId": 84687170, "NAME": "eq3device_EZ", "msgtype": "command", "command": "readingsEndUpdate($defs{'eq3device_EZ'},1);;"}
2020.10.17 11:01:16 5: BindingsIo: QUEUE: start handling - 1
2020.10.17 11:01:16 4: BindingsIo: >>> WS: {"awaitId": 84687170, "NAME": "eq3device_EZ", "msgtype": "command", "command": "readingsEndUpdate($defs{'eq3device_EZ'},1);;"}
2020.10.17 11:01:16 5: BindingsIo: DevIo_SimpleRead NoTimeout
2020.10.17 11:01:16 5: BindingsIo: DevIo_SimpleRead
2020.10.17 11:01:16 5: BindingsIo: QUEUE: finished handling - 0
2020.10.17 11:01:16 5: SW: 7b2261776169744964223a35363633323235302c226572726f72223a302c22726573756c74223a6e756c6c7d
2020.10.17 11:01:16 4: BindingsIo: <<< WS: {"awaitId":56632250,"error":0,"result":null}
2020.10.17 11:01:16 5: processMessage: {"awaitId": 56632250, "NAME": "eq3device_EZ", "msgtype": "command", "command": "readingsBulkUpdateIfChanged($defs{'eq3device_EZ'},'schedule_thu_7','-');;"}
2020.10.17 11:01:16 5: BindingsIo: QUEUE: start handling - 1
2020.10.17 11:01:16 4: BindingsIo: >>> WS: {"awaitId": 56632250, "NAME": "eq3device_EZ", "msgtype": "command", "command": "readingsBulkUpdateIfChanged($defs{'eq3device_EZ'},'schedule_thu_7','-');;"}
2020.10.17 11:01:16 5: BindingsIo: DevIo_SimpleRead NoTimeout
2020.10.17 11:01:16 5: BindingsIo: DevIo_SimpleRead
2020.10.17 11:01:16 5: BindingsIo: QUEUE: finished handling - 0
2020.10.17 11:01:16 5: SW: 7b226572726f72223a302c22726573756c74223a6e756c6c2c2261776169744964223a39323934393539357d
2020.10.17 11:01:16 4: BindingsIo: <<< WS: {"error":0,"result":null,"awaitId":92949595}
2020.10.17 11:01:16 5: processMessage: {"awaitId": 92949595, "NAME": "eq3device_EZ", "msgtype": "command", "command": "readingsBulkUpdateIfChanged($defs{'eq3device_EZ'},'schedule_thu_6','-');;"}
2020.10.17 11:01:16 5: BindingsIo: QUEUE: start handling - 1
2020.10.17 11:01:16 4: BindingsIo: >>> WS: {"awaitId": 92949595, "NAME": "eq3device_EZ", "msgtype": "command", "command": "readingsBulkUpdateIfChanged($defs{'eq3device_EZ'},'schedule_thu_6','-');;"}
2020.10.17 11:01:16 5: BindingsIo: DevIo_SimpleRead NoTimeout
2020.10.17 11:01:16 5: BindingsIo: DevIo_SimpleRead
2020.10.17 11:01:16 5: BindingsIo: QUEUE: finished handling - 0
2020.10.17 11:01:16 5: SW: 7b226572726f72223a302c22726573756c74223a6e756c6c2c2261776169744964223a38313639333737367d
2020.10.17 11:01:16 4: BindingsIo: <<< WS: {"error":0,"result":null,"awaitId":81693776}
2020.10.17 11:01:16 5: processMessage: {"awaitId": 81693776, "NAME": "eq3device_EZ", "msgtype": "command", "command": "readingsBulkUpdateIfChanged($defs{'eq3device_EZ'},'schedule_thu_5','23:00 - 00:00: 17.0');;"}
2020.10.17 11:01:16 5: BindingsIo: QUEUE: start handling - 1
2020.10.17 11:01:16 4: BindingsIo: >>> WS: {"awaitId": 81693776, "NAME": "eq3device_EZ", "msgtype": "command", "command": "readingsBulkUpdateIfChanged($defs{'eq3device_EZ'},'schedule_thu_5','23:00 - 00:00: 17.0');;"}
2020.10.17 11:01:16 5: BindingsIo: DevIo_SimpleRead NoTimeout
2020.10.17 11:01:16 5: BindingsIo: DevIo_SimpleRead
2020.10.17 11:01:16 5: BindingsIo: QUEUE: finished handling - 0
2020.10.17 11:01:16 5: SW: 7b2261776169744964223a39333635393634322c226572726f72223a302c22726573756c74223a6e756c6c7d
2020.10.17 11:01:16 4: BindingsIo: <<< WS: {"awaitId":93659642,"error":0,"result":null}
2020.10.17 11:01:16 5: processMessage: {"awaitId": 93659642, "NAME": "eq3device_EZ", "msgtype": "command", "command": "readingsBulkUpdateIfChanged($defs{'eq3device_EZ'},'schedule_thu_4','17:00 - 23:00: 21.0');;"}
2020.10.17 11:01:16 5: BindingsIo: QUEUE: start handling - 1
2020.10.17 11:01:16 4: BindingsIo: >>> WS: {"awaitId": 93659642, "NAME": "eq3device_EZ", "msgtype": "command", "command": "readingsBulkUpdateIfChanged($defs{'eq3device_EZ'},'schedule_thu_4','17:00 - 23:00: 21.0');;"}
2020.10.17 11:01:16 5: BindingsIo: DevIo_SimpleRead NoTimeout
2020.10.17 11:01:16 5: BindingsIo: DevIo_SimpleRead
2020.10.17 11:01:16 5: BindingsIo: QUEUE: finished handling - 0
2020.10.17 11:01:16 5: SW: 7b2261776169744964223a39323536313538332c226572726f72223a302c22726573756c74223a6e756c6c7d
2020.10.17 11:01:16 4: BindingsIo: <<< WS: {"awaitId":92561583,"error":0,"result":null}
2020.10.17 11:01:16 5: processMessage: {"awaitId": 92561583, "NAME": "eq3device_EZ", "msgtype": "command", "command": "readingsBulkUpdateIfChanged($defs{'eq3device_EZ'},'schedule_thu_3','09:00 - 17:00: 17.0');;"}
2020.10.17 11:01:16 5: BindingsIo: QUEUE: start handling - 1
2020.10.17 11:01:16 4: BindingsIo: >>> WS: {"awaitId": 92561583, "NAME": "eq3device_EZ", "msgtype": "command", "command": "readingsBulkUpdateIfChanged($defs{'eq3device_EZ'},'schedule_thu_3','09:00 - 17:00: 17.0');;"}
2020.10.17 11:01:16 5: BindingsIo: DevIo_SimpleRead NoTimeout
2020.10.17 11:01:16 5: BindingsIo: DevIo_SimpleRead
2020.10.17 11:01:16 5: BindingsIo: QUEUE: finished handling - 0
2020.10.17 11:01:16 5: SW: 7b2261776169744964223a39363039303037342c226572726f72223a302c22726573756c74223a6e756c6c7d
2020.10.17 11:01:16 4: BindingsIo: <<< WS: {"awaitId":96090074,"error":0,"result":null}
2020.10.17 11:01:16 5: processMessage: {"awaitId": 96090074, "NAME": "eq3device_EZ", "msgtype": "command", "command": "readingsBulkUpdateIfChanged($defs{'eq3device_EZ'},'schedule_thu_2','06:00 - 09:00: 21.0');;"}
2020.10.17 11:01:16 5: BindingsIo: QUEUE: start handling - 1
2020.10.17 11:01:16 4: BindingsIo: >>> WS: {"awaitId": 96090074, "NAME": "eq3device_EZ", "msgtype": "command", "command": "readingsBulkUpdateIfChanged($defs{'eq3device_EZ'},'schedule_thu_2','06:00 - 09:00: 21.0');;"}
2020.10.17 11:01:16 5: BindingsIo: DevIo_SimpleRead NoTimeout
2020.10.17 11:01:16 5: BindingsIo: DevIo_SimpleRead
2020.10.17 11:01:16 5: BindingsIo: QUEUE: finished handling - 0
2020.10.17 11:01:16 5: SW: 7b226572726f72223a302c22726573756c74223a6e756c6c2c2261776169744964223a39343432393834317d
2020.10.17 11:01:16 4: BindingsIo: <<< WS: {"error":0,"result":null,"awaitId":94429841}
2020.10.17 11:01:16 5: processMessage: {"awaitId": 94429841, "NAME": "eq3device_EZ", "msgtype": "command", "command": "readingsBulkUpdateIfChanged($defs{'eq3device_EZ'},'schedule_thu_1','00:00 - 06:00: 17.0');;"}
2020.10.17 11:01:16 5: BindingsIo: QUEUE: start handling - 1
2020.10.17 11:01:16 4: BindingsIo: >>> WS: {"awaitId": 94429841, "NAME": "eq3device_EZ", "msgtype": "command", "command": "readingsBulkUpdateIfChanged($defs{'eq3device_EZ'},'schedule_thu_1','00:00 - 06:00: 17.0');;"}
2020.10.17 11:01:16 5: BindingsIo: DevIo_SimpleRead NoTimeout
2020.10.17 11:01:16 5: BindingsIo: DevIo_SimpleRead
2020.10.17 11:01:16 5: BindingsIo: QUEUE: finished handling - 0
2020.10.17 11:01:16 5: SW: 7b22726573756c74223a6e756c6c2c226572726f72223a302c2261776169744964223a35343137343637367d
2020.10.17 11:01:16 4: BindingsIo: <<< WS: {"result":null,"error":0,"awaitId":54174676}
2020.10.17 11:01:16 5: processMessage: {"awaitId": 54174676, "NAME": "eq3device_EZ", "msgtype": "command", "command": "readingsBulkUpdateIfChanged($defs{'eq3device_EZ'},'schedule_wed_7','-');;"}
2020.10.17 11:01:16 5: BindingsIo: QUEUE: start handling - 1
2020.10.17 11:01:16 4: BindingsIo: >>> WS: {"awaitId": 54174676, "NAME": "eq3device_EZ", "msgtype": "command", "command": "readingsBulkUpdateIfChanged($defs{'eq3device_EZ'},'schedule_wed_7','-');;"}
2020.10.17 11:01:16 5: BindingsIo: DevIo_SimpleRead NoTimeout
2020.10.17 11:01:16 5: BindingsIo: DevIo_SimpleRead
2020.10.17 11:01:16 5: BindingsIo: QUEUE: finished handling - 0
2020.10.17 11:01:16 5: SW: 7b2261776169744964223a38393538313232322c226572726f72223a302c22726573756c74223a6e756c6c7d
2020.10.17 11:01:16 4: BindingsIo: <<< WS: {"awaitId":89581222,"error":0,"result":null}
2020.10.17 11:01:16 5: processMessage: {"awaitId": 89581222, "NAME": "eq3device_EZ", "msgtype": "command", "command": "readingsBulkUpdateIfChanged($defs{'eq3device_EZ'},'schedule_wed_6','-');;"}
2020.10.17 11:01:16 5: BindingsIo: QUEUE: start handling - 1
2020.10.17 11:01:16 4: BindingsIo: >>> WS: {"awaitId": 89581222, "NAME": "eq3device_EZ", "msgtype": "command", "command": "readingsBulkUpdateIfChanged($defs{'eq3device_EZ'},'schedule_wed_6','-');;"}
2020.10.17 11:01:16 5: BindingsIo: DevIo_SimpleRead NoTimeout
2020.10.17 11:01:16 5: BindingsIo: DevIo_SimpleRead
2020.10.17 11:01:16 5: BindingsIo: QUEUE: finished handling - 0
2020.10.17 11:01:16 5: SW: 7b2261776169744964223a32343934393134352c226572726f72223a302c22726573756c74223a6e756c6c7d
2020.10.17 11:01:16 4: BindingsIo: <<< WS: {"awaitId":24949145,"error":0,"result":null}
2020.10.17 11:01:16 5: processMessage: {"awaitId": 24949145, "NAME": "eq3device_EZ", "msgtype": "command", "command": "readingsBulkUpdateIfChanged($defs{'eq3device_EZ'},'schedule_wed_5','23:00 - 00:00: 17.0');;"}
2020.10.17 11:01:16 5: BindingsIo: QUEUE: start handling - 1
2020.10.17 11:01:16 4: BindingsIo: >>> WS: {"awaitId": 24949145, "NAME": "eq3device_EZ", "msgtype": "command", "command": "readingsBulkUpdateIfChanged($defs{'eq3device_EZ'},'schedule_wed_5','23:00 - 00:00: 17.0');;"}
2020.10.17 11:01:16 5: BindingsIo: DevIo_SimpleRead NoTimeout
2020.10.17 11:01:16 5: BindingsIo: DevIo_SimpleRead
2020.10.17 11:01:16 5: BindingsIo: QUEUE: finished handling - 0
2020.10.17 11:01:16 5: SW: 7b226572726f72223a302c22726573756c74223a6e756c6c2c2261776169744964223a37353130323439397d
2020.10.17 11:01:16 4: BindingsIo: <<< WS: {"error":0,"result":null,"awaitId":75102499}
2020.10.17 11:01:16 5: processMessage: {"awaitId": 75102499, "NAME": "eq3device_EZ", "msgtype": "command", "command": "readingsBulkUpdateIfChanged($defs{'eq3device_EZ'},'schedule_wed_4','17:00 - 23:00: 21.0');;"}
2020.10.17 11:01:16 5: BindingsIo: QUEUE: start handling - 1
2020.10.17 11:01:16 4: BindingsIo: >>> WS: {"awaitId": 75102499, "NAME": "eq3device_EZ", "msgtype": "command", "command": "readingsBulkUpdateIfChanged($defs{'eq3device_EZ'},'schedule_wed_4','17:00 - 23:00: 21.0');;"}
2020.10.17 11:01:16 5: BindingsIo: DevIo_SimpleRead NoTimeout
2020.10.17 11:01:16 5: BindingsIo: DevIo_SimpleRead
2020.10.17 11:01:16 5: BindingsIo: QUEUE: finished handling - 0
2020.10.17 11:01:16 5: SW: 7b226572726f72223a302c22726573756c74223a6e756c6c2c2261776169744964223a33383039313535397d
2020.10.17 11:01:16 4: BindingsIo: <<< WS: {"error":0,"result":null,"awaitId":38091559}
2020.10.17 11:01:16 5: processMessage: {"awaitId": 38091559, "NAME": "eq3device_EZ", "msgtype": "command", "command": "readingsBulkUpdateIfChanged($defs{'eq3device_EZ'},'schedule_wed_3','09:00 - 17:00: 17.0');;"}
2020.10.17 11:01:16 5: BindingsIo: QUEUE: start handling - 1
2020.10.17 11:01:16 4: BindingsIo: >>> WS: {"awaitId": 38091559, "NAME": "eq3device_EZ", "msgtype": "command", "command": "readingsBulkUpdateIfChanged($defs{'eq3device_EZ'},'schedule_wed_3','09:00 - 17:00: 17.0');;"}
2020.10.17 11:01:16 5: BindingsIo: DevIo_SimpleRead NoTimeout
2020.10.17 11:01:16 5: BindingsIo: DevIo_SimpleRead
2020.10.17 11:01:16 5: BindingsIo: QUEUE: finished handling - 0
2020.10.17 11:01:16 5: SW: 7b2261776169744964223a36363836363534312c22726573756c74223a6e756c6c2c226572726f72223a307d
2020.10.17 11:01:16 4: BindingsIo: <<< WS: {"awaitId":66866541,"result":null,"error":0}
2020.10.17 11:01:16 5: processMessage: {"awaitId": 66866541, "NAME": "eq3device_EZ", "msgtype": "command", "command": "readingsBulkUpdateIfChanged($defs{'eq3device_EZ'},'schedule_wed_2','06:00 - 09:00: 21.0');;"}
2020.10.17 11:01:16 5: BindingsIo: QUEUE: start handling - 1
2020.10.17 11:01:16 4: BindingsIo: >>> WS: {"awaitId": 66866541, "NAME": "eq3device_EZ", "msgtype": "command", "command": "readingsBulkUpdateIfChanged($defs{'eq3device_EZ'},'schedule_wed_2','06:00 - 09:00: 21.0');;"}
2020.10.17 11:01:16 5: BindingsIo: DevIo_SimpleRead NoTimeout
2020.10.17 11:01:16 5: BindingsIo: DevIo_SimpleRead
2020.10.17 11:01:16 5: BindingsIo: QUEUE: finished handling - 0
2020.10.17 11:01:16 5: SW: 7b226572726f72223a302c22726573756c74223a6e756c6c2c2261776169744964223a31343234343334397d
2020.10.17 11:01:16 4: BindingsIo: <<< WS: {"error":0,"result":null,"awaitId":14244349}
2020.10.17 11:01:16 5: processMessage: {"awaitId": 14244349, "NAME": "eq3device_EZ", "msgtype": "command", "command": "readingsBulkUpdateIfChanged($defs{'eq3device_EZ'},'schedule_wed_1','00:00 - 06:00: 17.0');;"}
2020.10.17 11:01:16 5: BindingsIo: QUEUE: start handling - 1
2020.10.17 11:01:16 4: BindingsIo: >>> WS: {"awaitId": 14244349, "NAME": "eq3device_EZ", "msgtype": "command", "command": "readingsBulkUpdateIfChanged($defs{'eq3device_EZ'},'schedule_wed_1','00:00 - 06:00: 17.0');;"}
2020.10.17 11:01:16 5: BindingsIo: DevIo_SimpleRead NoTimeout
2020.10.17 11:01:16 5: BindingsIo: DevIo_SimpleRead
2020.10.17 11:01:16 5: BindingsIo: QUEUE: finished handling - 0
2020.10.17 11:01:16 5: SW: 7b2261776169744964223a31323937373139372c226572726f72223a302c22726573756c74223a6e756c6c7d
2020.10.17 11:01:16 4: BindingsIo: <<< WS: {"awaitId":12977197,"error":0,"result":null}
2020.10.17 11:01:16 5: processMessage: {"awaitId": 12977197, "NAME": "eq3device_EZ", "msgtype": "command", "command": "readingsBulkUpdateIfChanged($defs{'eq3device_EZ'},'schedule_tue_7','-');;"}
2020.10.17 11:01:16 5: BindingsIo: QUEUE: start handling - 1
2020.10.17 11:01:16 4: BindingsIo: >>> WS: {"awaitId": 12977197, "NAME": "eq3device_EZ", "msgtype": "command", "command": "readingsBulkUpdateIfChanged($defs{'eq3device_EZ'},'schedule_tue_7','-');;"}
2020.10.17 11:01:16 5: BindingsIo: DevIo_SimpleRead NoTimeout
2020.10.17 11:01:16 5: BindingsIo: DevIo_SimpleRead
2020.10.17 11:01:16 5: BindingsIo: QUEUE: finished handling - 0
2020.10.17 11:01:16 5: SW: 7b22726573756c74223a6e756c6c2c226572726f72223a302c2261776169744964223a33363032313835337d
2020.10.17 11:01:16 4: BindingsIo: <<< WS: {"result":null,"error":0,"awaitId":36021853}
2020.10.17 11:01:16 5: processMessage: {"awaitId": 36021853, "NAME": "eq3device_EZ", "msgtype": "command", "command": "readingsBulkUpdateIfChanged($defs{'eq3device_EZ'},'schedule_tue_6','-');;"}
2020.10.17 11:01:16 5: BindingsIo: QUEUE: start handling - 1
2020.10.17 11:01:16 4: BindingsIo: >>> WS: {"awaitId": 36021853, "NAME": "eq3device_EZ", "msgtype": "command", "command": "readingsBulkUpdateIfChanged($defs{'eq3device_EZ'},'schedule_tue_6','-');;"}
2020.10.17 11:01:16 5: BindingsIo: DevIo_SimpleRead NoTimeout
2020.10.17 11:01:16 5: BindingsIo: DevIo_SimpleRead
2020.10.17 11:01:16 5: BindingsIo: QUEUE: finished handling - 0
2020.10.17 11:01:16 5: SW: 7b22726573756c74223a6e756c6c2c226572726f72223a302c2261776169744964223a39393631343736347d
2020.10.17 11:01:16 4: BindingsIo: <<< WS: {"result":null,"error":0,"awaitId":99614764}
2020.10.17 11:01:16 5: processMessage: {"awaitId": 99614764, "NAME": "eq3device_EZ", "msgtype": "command", "command": "readingsBulkUpdateIfChanged($defs{'eq3device_EZ'},'schedule_tue_5','23:00 - 00:00: 17.0');;"}
2020.10.17 11:01:16 5: BindingsIo: QUEUE: start handling - 1
2020.10.17 11:01:16 4: BindingsIo: >>> WS: {"awaitId": 99614764, "NAME": "eq3device_EZ", "msgtype": "command", "command": "readingsBulkUpdateIfChanged($defs{'eq3device_EZ'},'schedule_tue_5','23:00 - 00:00: 17.0');;"}
2020.10.17 11:01:16 5: BindingsIo: DevIo_SimpleRead NoTimeout
2020.10.17 11:01:16 5: BindingsIo: DevIo_SimpleRead
2020.10.17 11:01:16 5: BindingsIo: QUEUE: finished handling - 0
2020.10.17 11:01:16 5: SW: 7b2261776169744964223a37313534303134342c226572726f72223a302c22726573756c74223a6e756c6c7d
2020.10.17 11:01:16 4: BindingsIo: <<< WS: {"awaitId":71540144,"error":0,"result":null}
2020.10.17 11:01:16 5: processMessage: {"awaitId": 71540144, "NAME": "eq3device_EZ", "msgtype": "command", "command": "readingsBulkUpdateIfChanged($defs{'eq3device_EZ'},'schedule_tue_4','17:00 - 23:00: 21.0');;"}
2020.10.17 11:01:16 5: BindingsIo: QUEUE: start handling - 1
2020.10.17 11:01:16 4: BindingsIo: >>> WS: {"awaitId": 71540144, "NAME": "eq3device_EZ", "msgtype": "command", "command": "readingsBulkUpdateIfChanged($defs{'eq3device_EZ'},'schedule_tue_4','17:00 - 23:00: 21.0');;"}
2020.10.17 11:01:16 5: BindingsIo: DevIo_SimpleRead NoTimeout
2020.10.17 11:01:16 5: BindingsIo: DevIo_SimpleRead
2020.10.17 11:01:16 5: BindingsIo: QUEUE: finished handling - 0
2020.10.17 11:01:16 5: SW: 7b226572726f72223a302c22726573756c74223a6e756c6c2c2261776169744964223a39323535373838397d
2020.10.17 11:01:16 4: BindingsIo: <<< WS: {"error":0,"result":null,"awaitId":92557889}
2020.10.17 11:01:16 5: processMessage: {"awaitId": 92557889, "NAME": "eq3device_EZ", "msgtype": "command", "command": "readingsBulkUpdateIfChanged($defs{'eq3device_EZ'},'schedule_tue_3','09:00 - 17:00: 17.0');;"}
2020.10.17 11:01:16 5: BindingsIo: QUEUE: start handling - 1
2020.10.17 11:01:16 4: BindingsIo: >>> WS: {"awaitId": 92557889, "NAME": "eq3device_EZ", "msgtype": "command", "command": "readingsBulkUpdateIfChanged($defs{'eq3device_EZ'},'schedule_tue_3','09:00 - 17:00: 17.0');;"}
2020.10.17 11:01:16 5: BindingsIo: DevIo_SimpleRead NoTimeout
2020.10.17 11:01:16 5: BindingsIo: DevIo_SimpleRead
2020.10.17 11:01:16 5: BindingsIo: QUEUE: finished handling - 0
2020.10.17 11:01:16 5: SW: 7b2261776169744964223a34373031343332312c226572726f72223a302c22726573756c74223a6e756c6c7d
2020.10.17 11:01:16 4: BindingsIo: <<< WS: {"awaitId":47014321,"error":0,"result":null}
2020.10.17 11:01:16 5: processMessage: {"awaitId": 47014321, "NAME": "eq3device_EZ", "msgtype": "command", "command": "readingsBulkUpdateIfChanged($defs{'eq3device_EZ'},'schedule_tue_2','06:00 - 09:00: 21.0');;"}
2020.10.17 11:01:16 5: BindingsIo: QUEUE: start handling - 1
2020.10.17 11:01:16 4: BindingsIo: >>> WS: {"awaitId": 47014321, "NAME": "eq3device_EZ", "msgtype": "command", "command": "readingsBulkUpdateIfChanged($defs{'eq3device_EZ'},'schedule_tue_2','06:00 - 09:00: 21.0');;"}
2020.10.17 11:01:16 5: BindingsIo: DevIo_SimpleRead NoTimeout
2020.10.17 11:01:16 5: BindingsIo: DevIo_SimpleRead
2020.10.17 11:01:16 5: BindingsIo: QUEUE: finished handling - 0
2020.10.17 11:01:16 5: SW: 7b226572726f72223a302c22726573756c74223a6e756c6c2c2261776169744964223a38323538363639317d
2020.10.17 11:01:16 4: BindingsIo: <<< WS: {"error":0,"result":null,"awaitId":82586691}
2020.10.17 11:01:16 5: processMessage: {"awaitId": 82586691, "NAME": "eq3device_EZ", "msgtype":
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 17 Oktober 2020, 12:32:58
Hab nun mal das keep_connected an gelassen und testweise 2 Remotes im Einsatz.
Irgendwie verbinden sie sich nicht mehr so schön und schnell - 5 von 7 sind offline. Das ist aber halt auch nur ein Gefühl :-D


Mal zum attr verbose eine generelle Frage - ich habe das gefühl bei global verbose 1 bringt ein verbose 5 am einzelnen Gerät recht wenig... oder mach ich da nen generellen Fehler?

Hab mal mein Log mit verbose bei den beiden BindingsIo angehangen.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 17 Oktober 2020, 13:22:06
@mele, danke, das sind hilfreiche Infos! Schaue ich mir am Abend an.

@Master, zu der Geschwindigkeit, setze mal alle auf keep_connected=on und starte dann FHEM neu. Nach dem FHEM Neustart dann die einzelnen Remotes neu starten.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 17 Oktober 2020, 13:26:43
Moin,

das ist schon geschehen - habe gerade einen lustigen Effekt - Thermostat gilt als Offline ich kann es aber zu 100% steuern :-D
Habe gerenell mal alles neu gestartet. Und das keep_connected hab ich ja bereits schon an bei allen.


- Es wird als offline aufgeführt ich setze eine Temperatur - die wird gesetzt und danach geht es wieder auf das was vorher war 20.5 (denke mal weil der status offline ist)


Zitat2020-10-17 13:32:44 PythonModule Arbeitszimmer_Thermostat desiredTemperature 15.0
2020.10.17 13:32:45 4 : BindingsIo: start PythonFunction: Arbeitszimmer_Thermostat => Set (34106502)
2020.10.17 13:32:45 4 : BindingsIo: <<< WS: {"argsh":{},"defargsh":{},"defargs":["Arbeitszimmer_Thermostat","PythonModule","eq3bt","00:1A:22:0C:E8:EA"],"function":"Set","args":["Arbeitszimmer_Thermostat","desiredTemperature","20.5"],"msgtype":"function","NAME":"Arbeitszimmer_Thermostat","id":34106502,"PYTHONTYPE":"eq3bt"}
2020.10.17 13:32:45 5 : SW: 7b226172677368223a7b7d2c226465666172677368223a7b7d2c2264656661726773223a5b22417262656974737a696d6d65725f546865726d6f73746174222c22507974686f6e4d6f64756c65222c226571336274222c2230303a31413a32323a30433a45383a4541225d2c2266756e6374696f6e223a22536574222c2261726773223a5b22417262656974737a696d6d65725f546865726d6f73746174222c226465736972656454656d7065726174757265222c2232302e35225d2c226d736774797065223a2266756e6374696f6e222c224e414d45223a22417262656974737a696d6d65725f546865726d6f73746174222c226964223a33343130363530322c22505954484f4e54595045223a226571336274227d
2020.10.17 13:32:45 5 : BindingsIo: DevIo_SimpleRead
2020.10.17 13:32:45 5 : BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.17 13:32:45 4 : BindingsIo: >>> WS: {"argsh": {}, "defargsh": {}, "defargs": ["Arbeitszimmer_Thermostat", "PythonModule", "eq3bt", "00:1A:22:0C:E8:EA"], "function": "Set", "args": ["Arbeitszimmer_Thermostat", "desiredTemperature", "20.5"], "msgtype": "function", "NAME": "Arbeitszimmer_Thermostat", "id": 34106502, "PYTHONTYPE": "eq3bt", "finished": 1, "returnval": ""}
2020.10.17 13:32:45 5 : BindingsIo: QUEUE: start handling - 1
2020.10.17 13:32:45 5 : processMessage: {"argsh": {}, "defargsh": {}, "defargs": ["Arbeitszimmer_Thermostat", "PythonModule", "eq3bt", "00:1A:22:0C:E8:EA"], "function": "Set", "args": ["Arbeitszimmer_Thermostat", "desiredTemperature", "20.5"], "msgtype": "function", "NAME": "Arbeitszimmer_Thermostat", "id": 34106502, "PYTHONTYPE": "eq3bt", "finished": 1, "returnval": ""}
2020.10.17 13:32:45 5 : BindingsIo: QUEUE: finished handling - 0
2020.10.17 13:32:45 4 : BindingsIo: end PythonFunction: Arbeitszimmer_Thermostat => Set (34106502) - result:
2020.10.17 13:32:45 4 : BindingsIo: start PythonFunction: Arbeitszimmer_Thermostat => Set (78641639)
2020.10.17 13:32:45 4 : BindingsIo: <<< WS: {"NAME":"Arbeitszimmer_Thermostat","args":["Arbeitszimmer_Thermostat","?"],"function":"Set","msgtype":"function","id":78641639,"PYTHONTYPE":"eq3bt","argsh":{},"defargsh":{},"defargs":["Arbeitszimmer_Thermostat","PythonModule","eq3bt","00:1A:22:0C:E8:EA"]}
2020.10.17 13:32:45 5 : SW: 7b224e414d45223a22417262656974737a696d6d65725f546865726d6f73746174222c2261726773223a5b22417262656974737a696d6d65725f546865726d6f73746174222c223f225d2c2266756e6374696f6e223a22536574222c226d736774797065223a2266756e6374696f6e222c226964223a37383634313633392c22505954484f4e54595045223a226571336274222c226172677368223a7b7d2c226465666172677368223a7b7d2c2264656661726773223a5b22417262656974737a696d6d65725f546865726d6f73746174222c22507974686f6e4d6f64756c65222c226571336274222c2230303a31413a32323a30433a45383a4541225d7d
2020.10.17 13:32:45 5 : BindingsIo: DevIo_SimpleRead
2020.10.17 13:32:45 5 : BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.17 13:32:45 4 : BindingsIo: >>> WS: {"NAME": "Arbeitszimmer_Thermostat", "args": ["Arbeitszimmer_Thermostat", "?"], "function": "Set", "msgtype": "function", "id": 78641639, "PYTHONTYPE": "eq3bt", "argsh": {}, "defargsh": {}, "defargs": ["Arbeitszimmer_Thermostat", "PythonModule", "eq3bt", "00:1A:22:0C:E8:EA"], "finished": 1, "returnval": "Unknown argument ?, choose one of on:noArg off:noArg desiredTemperature:slider,4.5,0.5,30,1 updateStatus:noArg boost:on,off mode:manual,automatic eco:noArg comfort:noArg childlock:on,off"}
2020.10.17 13:32:45 5 : BindingsIo: QUEUE: start handling - 1
2020.10.17 13:32:45 5 : processMessage: {"NAME": "Arbeitszimmer_Thermostat", "args": ["Arbeitszimmer_Thermostat", "?"], "function": "Set", "msgtype": "function", "id": 78641639, "PYTHONTYPE": "eq3bt", "argsh": {}, "defargsh": {}, "defargs": ["Arbeitszimmer_Thermostat", "PythonModule", "eq3bt", "00:1A:22:0C:E8:EA"], "finished": 1, "returnval": "Unknown argument ?, choose one of on:noArg off:noArg desiredTemperature:slider,4.5,0.5,30,1 updateStatus:noArg boost:on,off mode:manual,automatic eco:noArg comfort:noArg childlock:on,off"}
2020.10.17 13:32:45 5 : BindingsIo: QUEUE: finished handling - 0
2020.10.17 13:32:45 4 : BindingsIo: end PythonFunction: Arbeitszimmer_Thermostat => Set (78641639) - result: Unknown argument ?, choose one of on:noArg off:noArg desiredTemperature:slider,4.5,0.5,30,1 updateStatus:noArg boost:on,off mode:manual,automatic eco:noArg comfort:noArg childlock:on,off
2020.10.17 13:32:45 4 : BindingsIo: start PythonFunction: Arbeitszimmer_Thermostat => Set (94869377)
2020.10.17 13:32:45 4 : BindingsIo: <<< WS: {"function":"Set","args":["Arbeitszimmer_Thermostat","?"],"msgtype":"function","NAME":"Arbeitszimmer_Thermostat","PYTHONTYPE":"eq3bt","id":94869377,"defargsh":{},"argsh":{},"defargs":["Arbeitszimmer_Thermostat","PythonModule","eq3bt","00:1A:22:0C:E8:EA"]}
2020.10.17 13:32:45 5 : SW: 7b2266756e6374696f6e223a22536574222c2261726773223a5b22417262656974737a696d6d65725f546865726d6f73746174222c223f225d2c226d736774797065223a2266756e6374696f6e222c224e414d45223a22417262656974737a696d6d65725f546865726d6f73746174222c22505954484f4e54595045223a226571336274222c226964223a39343836393337372c226465666172677368223a7b7d2c226172677368223a7b7d2c2264656661726773223a5b22417262656974737a696d6d65725f546865726d6f73746174222c22507974686f6e4d6f64756c65222c226571336274222c2230303a31413a32323a30433a45383a4541225d7d
2020.10.17 13:32:45 5 : BindingsIo: DevIo_SimpleRead
2020.10.17 13:32:45 5 : BindingsIo: DevIo_SimpleRead WithTimeout
2020.10.17 13:32:45 4 : BindingsIo: >>> WS: {"function": "Set", "args": ["Arbeitszimmer_Thermostat", "?"], "msgtype": "function", "NAME": "Arbeitszimmer_Thermostat", "PYTHONTYPE": "eq3bt", "id": 94869377, "defargsh": {}, "argsh": {}, "defargs": ["Arbeitszimmer_Thermostat", "PythonModule", "eq3bt", "00:1A:22:0C:E8:EA"], "finished": 1, "returnval": "Unknown argument ?, choose one of on:noArg off:noArg desiredTemperature:slider,4.5,0.5,30,1 updateStatus:noArg boost:on,off mode:manual,automatic eco:noArg comfort:noArg childlock:on,off"}
2020.10.17 13:32:45 5 : BindingsIo: QUEUE: start handling - 1
2020.10.17 13:32:45 5 : processMessage: {"function": "Set", "args": ["Arbeitszimmer_Thermostat", "?"], "msgtype": "function", "NAME": "Arbeitszimmer_Thermostat", "PYTHONTYPE": "eq3bt", "id": 94869377, "defargsh": {}, "argsh": {}, "defargs": ["Arbeitszimmer_Thermostat", "PythonModule", "eq3bt", "00:1A:22:0C:E8:EA"], "finished": 1, "returnval": "Unknown argument ?, choose one of on:noArg off:noArg desiredTemperature:slider,4.5,0.5,30,1 updateStatus:noArg boost:on,off mode:manual,automatic eco:noArg comfort:noArg childlock:on,off"}
2020.10.17 13:32:45 5 : BindingsIo: QUEUE: finished handling - 0
2020.10.17 13:32:45 4 : BindingsIo: end PythonFunction: Arbeitszimmer_Thermostat => Set (94869377) - result: Unknown argument ?, choose one of on:noArg off:noArg desiredTemperature:slider,4.5,0.5,30,1 updateStatus:noArg boost:on,off mode:manual,automatic eco:noArg comfort:noArg childlock:on,off
2020-10-17 13:32:45 PythonModule Arbeitszimmer_Thermostat desiredTemperature 20.5
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 17 Oktober 2020, 14:02:35
Bei dem Phänomen reichte ein Neustart der Remotes - hab mir dafür nun ein DOIF gebaut :-)

([global:"INITIALIZED"]) (({system("ssh touchpanel sudo systemctl restart fhem_pythonbinding.service &")})) (({system("ssh server sudo systemctl restart fhem_pythonbinding.service &")}))

Beim Start von FHEM starten die einmal neu.



Fazit - ich halte mich jetzt mal was zurück und schaue wie es läuft :-)
Bisher läuft es nun wieder sehr sauber - hab nun solange ich meine Heizungen steuern will aktiv - das keep_connected drin - schalte ich meine Steuerung ab wird das auf off gesetzt bei allen.
Mal sehen wie das damit Batterie zerrt.
Sollte ich dann was finden, das mir irgendwie klar als Fehler auffällt oder eine Kombination die zu etwas komischen führt mach ich piep.

Soweit läuft es wohl alles... manchmal kann der Neustart der Remotes echt helfen um es wieder sauber zu bekommen.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 17 Oktober 2020, 23:21:11
Mir ist noch nicht klar wo die Ursache fuer den "ConnectionClosedError" ist. Laut websockets Doku liegt das an Netzwerkproblemen, das kann ich mir aber nicht vorstellen, da ich den Fehler auch auf localhost heute hatte.

Ich habe noch einen kleinen Bug gefunden der hoffentlich ein Reconnect ermoeglicht um aktuell notwendigen Restarts zu vermeiden. Ich teste es mal bei mir...
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 18 Oktober 2020, 14:07:03
Moin,

ich hab gerade festgestellt dass alle meine Thermostate offline sind.
Der Grund liegt hier aber woanders :-D

An meinem Pi3b+ sagt

bluetoothctl scan on
"No default controller available"

:-D wtf ;D Sind 7 Thermostate doch zuviel für einen Controller dauerhaft? :-D

Mal sehen ob ich was raus finde warum wieso...
*Edit.. tja hab dann das Logging mal wieder eingeschaltet auf dem Pi :-D


Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 18 Oktober 2020, 19:35:08
Hast du im Log was dazu gefunden? 7 Thermostate auf einem RPi? Ich meine mal gelesen zu haben, dass max. 5 BLE Verbindungen aktiv sein koennen.

Hier ein guter Artikel dazu:
https://dev.classmethod.jp/articles/raspberry-pi-3b-plus-max-ble-connection-en/
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 19 Oktober 2020, 10:52:15
 ;D ;D ;D ;D

Ah schön, dann war es ja das direkt :-D

Ne hatte leider das Logging aus um die SD Card zu schonen - ich schau jetzt nochmal (ich vermute es ist wieder soweit), ob etwas sichtbar ist.

*edit net diese Nacht lief es sauber durch - hab es aber nun dennoch wieder auf 2 Geräte aufgeteilt :-) einmal 4 einmal 3 Thermostate.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 19 Oktober 2020, 17:54:45
Ich glaube den Connection Closed Error nun endlich gefunden zu haben. Update mit Fix ist online.

Folgendes habe ich auch eingebaut, wenn die Connection verloren geht, macht das fhem_pythonbinding ein exit und wird dann durch FHEM (am Remote durch systemd) neu gestartet. Das sollte eigentlich nicht mehr auftreten, aber sicher ist sicher.

Zu den Bluetooth issues:
Hatte heute auch auf einem Pi das Problem, dass keine Verbindung mehr moeglich war. Hatte dann ein
sudo systemctl restart bluetooth
sudo hciconfig hci0 reset

ohne Neustart von irgendwas gemacht und danach ging alles wieder. Ich koennte das auch im Code integrieren (pygatt macht das), dass eventuell alle 24h oder so ein Reset gemacht wird. Was haltet ihr davon?
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 19 Oktober 2020, 19:28:55
Eine gute Idee! Mit dem restart und reset.

Das schadet ja null und man nutzt die Bluetooth Stacks ja eh nicht noch für etwas weiteres (so wäre mein Ansatz).
Aber lass doch einfach das mittels Attribut in den jeweiligen remotes oder main einfach schalten ;-)


Direkt mal updaten :-)
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 19 Oktober 2020, 21:30:08
Nachdem das BLE Thema eher unabhaengig von eq3bt ist (da es fuer alle BLE Module gilt), habe ich ein extra Modul dafuer gemacht:
define py_ble_reset PythonModule ble_reset

Dort kann man dann die Stunden einstellen wann in welchen Intervallen das Reset passieren soll oder auf manual stellen und mit "set ... resetnow" zu beliebigen Zeiten ein Reset machen.

Das Modul macht nichts anderes als die beiden Befehle per sudo auszufuehren:
sudo systemctl restart bluetooth
sudo hciconfig hci0 reset
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 19 Oktober 2020, 21:45:43
mhh wie macht man das dann mit den remotes?

also mein main hat ja kein BT aber zwei remotes  ;D

Müsste ja dann irgendwie  über die python verbindung an den remote gehen... ist das so?
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 19 Oktober 2020, 21:51:47
Genau, so ist es.

Einfach beim IODev das passende BindingsIo Device auswaehlen, dann geht das Remote oder Lokal, wo man es will. Wenn man es Remote UND Lokal haben moechte, muss man 2 Devices definieren.

Das ist das coole am fhem_pythonbinding, JEDES Modul geht Remote und Lokal, man muss dafuer nichts spezielles entwickeln. :)
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 19 Oktober 2020, 21:58:14
Ah also pro reset für einen remote einen device.

Joa das ist nice mit dem Python ;-)
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 19 Oktober 2020, 21:59:48
Genau, pro Remote ein Device. Wo es läuft wird über IODev definiert.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 20 Oktober 2020, 11:56:29
 :) Sieht bisher traumhaft aus:

- 2 remotes mit 7 Thermostaten (einmal 4 und einmal 3 am jeweiligen remote [Pi + Ubuntu LTS])
- keep_connected = off (dennoch unfassbar gute Response Zeit - eigentlich - nein nicht eigentlich sondern instant)
- kein Thermostat offline bisher
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: mele am 20 Oktober 2020, 14:32:14
Hallo Zusammen,

kurzes Zwischenupdate:

Ich habe seit gerstern Abend auch 2 Thermostate an einem Remote online. Steuerung muss ich mangels Zeit aber noch aktualisieren.

Dann werde ich weitere Remotes/Thermostate in Betrieb nehmen.

Bis hierhin schonmal vielen Dank. Vielleicht schaffe ich heute Abend mehr.

VG

Manuel
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 21 Oktober 2020, 11:09:35
ZitatNew entries in the CHANGED file:
2020-10-19: Initial release of CHANGED file :)


;D ;D ;D ;D 8) nice


Bei mir benötigt es echt kein keep_connected.
Und es ist dennoch unfassbar schnell - richtig angenehm.


*EDIT Alternativ ist "keep_connected" gerade kaputt und dauerhaft an?

Failed to execute function Attr: Traceback (most recent call last):
  File "/fhem_pythonbinding/FHEM/bindings/python/lib/fhem_pythonbinding.py", line 236, in _onMessage
    ret = await asyncio.wait_for(func(hash, hash['args'], hash['argsh']), fct_timeout)
TypeError: Attr() missing 1 required positional argument: 'attr_value'


Das passiert bei mir (mit aktuell verfügbarer Version), wenn man keep_connected ändern möchte.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 22 Oktober 2020, 14:43:39
Eines meiner "ble_reset" verschwindet immer in den Status PythonBinding timeout:

Internals:
   DEF        ble_reset
   FUUID      5f8deff4-f33f-bf4c-2f52-0ce34dd7369b54d1
   FVERSION   10_PythonModule.pm:0.182830/2019-01-16
   IODev      bindingsio_remote
   NAME       ble_reset
   NR         202
   PYTHONTYPE ble_reset
   STATE      PythonBinding timeout
   TYPE       PythonModule
   READINGS:
     2020-10-19 22:10:00   interval        24h
     2020-10-21 21:26:30   state           PythonBinding timeout
   args:
     ble_reset
     PythonModule
     ble_reset
   argsh:
Attributes:
   IODev      bindingsio_remote
   group      Python
   room       Technikraum


Iodev dazu:

Internals:
   BindingType Python
   DEF        192.168.0.114:15733 Python
   DeviceName ws:192.168.0.114:15733
   FD         27
   FUUID      5f876620-f33f-bf4c-5e2a-332b1491818643ef
   FVERSION   10_BindingsIo.pm:0.182830/2019-01-16
   NAME       bindingsio_remote
   NR         191
   NTFY_ORDER 50-bindingsio_remote
   PARTIAL   
   STATE      opened
   TYPE       BindingsIo
   WEBSOCKET  1
   nextOpenDelay 10
   READINGS:
     2020-10-21 21:25:51   state           opened
Attributes:
   alias      Python EQ3 Connector TouchPi3
   group      Python
   room       Technikraum


Log im verbose 1 sagt erstmal gar nix. Auch in Verbose 5 im FHEM erstmal nix auffälliges.
Der Remote sagt im Status vom Service:

Zitat
pi@TouchPi3:/fhem_pythonbinding/FHEM/bindings/python/lib $ sudo systemctl status fhem_pythonbinding
● fhem_pythonbinding.service - FHEM PythonBinding
   Loaded: loaded (/etc/systemd/system/fhem_pythonbinding.service; enabled; vendor preset: enabled)
   Active: active (running) since Wed 2020-10-21 21:25:41 CEST; 17h ago
Main PID: 10805 (python3)
    Tasks: 4 (limit: 2065)
   CGroup: /system.slice/fhem_pythonbinding.service
           ├─10805 /usr/bin/python3 FHEM/bindings/python/pythonbinding.py
           ├─27531 /home/pi/.local/lib/python3.7/site-packages/bluepy/bluepy-helper 0
           ├─27548 /home/pi/.local/lib/python3.7/site-packages/bluepy/bluepy-helper 0
           └─27583 /home/pi/.local/lib/python3.7/site-packages/bluepy/bluepy-helper 0

Oct 22 10:58:38 TouchPi3 python3[10805]: 2020-10-22 10:58:38,638 - ERROR    - lib.fhem_pythonbinding: Failed to execute function Attr: Traceback (most recent call last):
Oct 22 10:58:38 TouchPi3 python3[10805]:   File "/fhem_pythonbinding/FHEM/bindings/python/lib/fhem_pythonbinding.py", line 236, in _onMessage
Oct 22 10:58:38 TouchPi3 python3[10805]:     ret = await asyncio.wait_for(func(hash, hash['args'], hash['argsh']), fct_timeout)
Oct 22 10:58:38 TouchPi3 python3[10805]: TypeError: Attr() missing 1 required positional argument: 'attr_value'
Oct 22 10:58:38 TouchPi3 python3[10805]: (id: 56830492)
Oct 22 10:58:38 TouchPi3 python3[10805]: 2020-10-22 10:58:38,655 - ERROR    - lib.fhem_pythonbinding: Failed to execute function Attr: Traceback (most recent call last):
Oct 22 10:58:38 TouchPi3 python3[10805]:   File "/fhem_pythonbinding/FHEM/bindings/python/lib/fhem_pythonbinding.py", line 236, in _onMessage
Oct 22 10:58:38 TouchPi3 python3[10805]:     ret = await asyncio.wait_for(func(hash, hash['args'], hash['argsh']), fct_timeout)
Oct 22 10:58:38 TouchPi3 python3[10805]: TypeError: Attr() missing 1 required positional argument: 'attr_value'
Oct 22 10:58:38 TouchPi3 python3[10805]: (id: 82043346)

Der scheint schon gar nicht mehr auf äußeres zu reagieren - also scheint das "timeout" zu stimmen - hatte nämlich gerade ein reset now gemacht.

Habe das ble_reset mal an meinem anderen remote ausgeführt und dabei den status vom service bluetooth angesehen - der wurde das letzte mal am 17.10. neu gestartet und wurde nun auch dadurch nicht neu gestartet.

Habe diesen nun mal manuell neu gestartet:

● bluetooth.service - Bluetooth service
     Loaded: loaded (/lib/systemd/system/bluetooth.service; enabled; vendor preset: enabled)
     Active: active (running) since Thu 2020-10-22 15:07:36 CEST; 15s ago
       Docs: man:bluetoothd(8)
   Main PID: 1466538 (bluetoothd)
     Status: "Running"
      Tasks: 1 (limit: 18793)
     Memory: 1.3M
     CGroup: /system.slice/bluetooth.service
             └─1466538 /usr/lib/bluetooth/bluetoothd

Okt 22 15:07:36 duffstation bluetoothd[1466538]: Bluetooth management interface 1.14 initialized
Okt 22 15:07:36 duffstation bluetoothd[1466538]: Failed to clear UUIDs: Busy (0x0a)
Okt 22 15:07:36 duffstation bluetoothd[1466538]: Failed to set privacy: Rejected (0x0b)
Okt 22 15:07:36 duffstation bluetoothd[1466538]: Failed to add UUID: Busy (0x0a)
Okt 22 15:07:36 duffstation bluetoothd[1466538]: Failed to add UUID: Busy (0x0a)
Okt 22 15:07:36 duffstation bluetoothd[1466538]: Failed to set device class: Busy (0x0a)
Okt 22 15:07:36 duffstation bluetoothd[1466538]: Failed to add UUID: Busy (0x0a)
Okt 22 15:07:36 duffstation bluetoothd[1466538]: Failed to add UUID: Busy (0x0a)
Okt 22 15:07:36 duffstation bluetoothd[1466538]: Failed to add UUID: Busy (0x0a)
Okt 22 15:07:36 duffstation bluetoothd[1466538]: Failed to set device class: Busy (0x0a)


Dies bleibt auch so, wenn ich stop mache und etwas warte und start mache.

Das reset_ble scheint auch beim Service Bluetooth weiter ohne sichtbaren Effekt in dessen Status (Startzeit bleibt die alte).
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 23 Oktober 2020, 19:02:03
Hi,
ich habe vor 4 Tagen den Bug mit den PythonBinding timeout behoben, das sollte jetzt nicht mehr vorkommen. Kann es sein, dass dein Update laenger her ist?
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 24 Oktober 2020, 10:43:54
 ;) :D tatsächlich habe ich aktuell das Gefühl das sich da dann was überschritten hat. Seit meinem letzten Post und dem Neustart läuft es tadellos  ;D

Vielen Dank dir.
Hast du ggf eine Idee wo ich mal schauen müsste um mich an Farbänderung im state (Batterie voll/leer Ventil offen/zu Boost an/aus) zu machen? Hatte mal gesucht aber nicht mal die Herkunft des "C°" gefunden  ;D
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 24 Oktober 2020, 11:12:44
Du kannst es mal ueber stateFormat und devStateIcon probieren. Wenn das klappt, kann man es in den Code aufnehmen.

Hier hatte ich bei gassistant ein ziemlich komplexes:
https://github.com/mhop/fhem-mirror/blob/master/fhem/FHEM/39_gassistant.pm#L99

Da werden mehrere Readings ausgelesen und in Summe 3 Images angezeigt:
- gruener / roter Punkt, abhaengig ob lastServerError = ""
- reload Icon, wird orange bei reload
- restart Icon, wird rot bei Neustart

Ich glaube man braucht auch hier so ein komplexes devStateIcon mit Perl Code dahinter.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 24 Oktober 2020, 11:53:53
Ah stimmt so herum geht es auch. Ja das in FHEM ist ja easy - hatte an im Code gedacht aber wenn du das dann so übernehmen kannst - alles klar ;-)

Danke
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 24 Oktober 2020, 23:48:39
Maaahlzeit :-)
So war jetzt mal seit Freitag nicht da und schaue gerade nach.

Flur/Kinderzimmer/Küche/Arbeitszimmer = offline (gesamter remote2)
Schlafzimmer/Wohnzimmer/Badezimmer = online (gesamter remote1)

Habe nun mal den Remote2 angeschaut der schien sich nicht mehr disconnectet zu haben von einem thermostat:
Zitatduff@duffstation:~$ bluetoothctl
Agent registered
[CHG] Controller 5C:F3:70:80:C5:C4 Pairable: yes
[CC-RT-BLE]#
[CC-RT-BLE]#
[CC-RT-BLE]#
[CC-RT-BLE]#
[CC-RT-BLE]# exit

Dann:
Zitatduff@duffstation:~$ bluetoothctl power off
Changing power off succeeded
duff@duffstation:~$ bluetoothctl power on
Changing power on succeeded

Und schon lief das wieder sauber:
Zitatduff@duffstation:~$ bluetoothctl
Agent registered
[CHG] Controller 5C:F3:70:80:C5:C4 Pairable: yes
[bluetooth]# exit

Nur die Thermostate wollten noch nicht wieder gesteuert werden ... also weiter - reset_ble ausgeführt:
- Vorher: Startzeit - Blueetooth Service
Zitat● bluetooth.service - Bluetooth service
     Loaded: loaded (/lib/systemd/system/bluetooth.service; enabled; vendor preset: enabled)
     Active: active (running) since Thu 2020-10-22 15:17:10 CEST; 2 days ago
       Docs: man:bluetoothd(8)
   Main PID: 3342 (bluetoothd)
     Status: "Running"
      Tasks: 1 (limit: 18793)
     Memory: 17.6M
     CGroup: /system.slice/bluetooth.service
             └─3342 /usr/lib/bluetooth/bluetoothd

Okt 22 15:17:10 duffstation systemd[1]: Starting Bluetooth service...
Okt 22 15:17:10 duffstation bluetoothd[3342]: Bluetooth daemon 5.53
Okt 22 15:17:10 duffstation systemd[1]: Started Bluetooth service.
Okt 22 15:17:10 duffstation bluetoothd[3342]: Starting SDP server
Okt 22 15:17:10 duffstation bluetoothd[3342]: Bluetooth management interface 1.14 initialized
Okt 24 22:58:45 duffstation bluetoothd[3342]: Failed to set mode: Failed (0x03)
Man sieht da hängt auch etwas quer... aber wichtiger:
Active: active (running) since Thu 2020-10-22 15:17:10 CEST; 2 days ago
reset_ble ist aber gesetzt auf alle 24h, dass scheint noch nicht zu klappen - nun nochmal manuell schauen.

Reset_ble manuell - remote 2:
Vorher: Active: active (running) since Thu 2020-10-22 15:17:10 CEST; 2 days ago
Nachher:  Active: active (running) since Thu 2020-10-22 15:17:10 CEST; 2 days ago

Leider scheint das auf remote2 (Ubuntu LTS) nicht zu gehen - nun mal am remote 1 schauen.

Reset_ble manuell - remote 1:
Vorher: Active: active (running) since Sat 2020-10-24 15:19:06 CEST; 7h ago
Nachher:  Active: active (running) since Sat 2020-10-24 15:19:06 CEST; 7h ago

Leider auch hier kein Erfolg  ??? Mh!

Bei beiden dann einmal manuell sudo systemctl restart bluetooth gemacht und dann waren die services auch sichtbar neu gestartet.

Generell aber - das Problem bei meinem remote 2 scheint eines zu sein was nichts hier mit dem Modul zu tun hat. Eher mit Ubuntu oder dem BT USB Stick :-D Unklar.
Ein "unplug - plug" behob es jedenfalls :-D


Es läuft also echt gut :-) bis auf die Kleinen Dinge mit dem ble_reset :-) Aber der erschien nicht mal zwingend nötig - wäre schick wenn er geht.
Vielen Dank weiterhin! :-)



Generell eine Frage, ist es absicht, dass python3 statt 3.7 genutzt wird (aufgefallen am remote1)?
● fhem_pythonbinding.service - FHEM PythonBinding
   Loaded: loaded (/etc/systemd/system/fhem_pythonbinding.service; enabled; vend
   Active: active (running) since Thu 2020-10-22 15:18:53 CEST; 2 days ago
Main PID: 1473 (python3)
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 25 Oktober 2020, 08:45:02
Kann es sein, dass du deinen Remote dazwischen neu gestartet hast, zumindest fhem_pythonbinding? ble_reset rechnet naemlich die X Stunden ab der Startzeit. Wenn es innerhalb von 24h neu gestartet wird, dann wird auch kein Reset gemacht. Ich denke ich bau da noch ein Attribut ein wo man dann auch selbst die Reset Zeit definieren kann.

Ich denke deine Thermostate sind wahrscheinlich mit keep_connected noch verbunden. Aktuell erfordert die Umstellung von keep_connected noch einen Restart von fhem_pythonbinding. Ich werde das adaptieren, weil so ist es verwirrend.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 25 Oktober 2020, 09:48:24
Moin
Kannn ich mir eigentlich nicht vorstellen,  der letzte Neustart war Freitag bevor ich gefahren bin. Und keep_connected steht ja die gesamte Zeit auf off. Aber ich schrieb oben mal von einem Fehler,  der auftritt wenn man keep_connected ändern will.

Ansonsten wären 24 h von Freitag bis Sonntag minimum einmal vergangen und das ble_reset hätte einmal was tun müssen  - im service war aber uptime seit 22.10. 15:17:10.
Ich habe gestern die Services ja neu gestartet und geupdated nachdem ich hier schrieb - müssten ja dann heute um die Zeit den restart machen - ich beobachte es einfach  ;)
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 25 Oktober 2020, 10:22:48
Ah, danke für den Hinweis zu keep_connected, da ist noch ein Fehler drin. Den behebe ich heut Abend.
Sobald ble_reset ausgeführt wird schreibt es auch ein Reading lastreset. Ich werde aber dennoch ein Attribut mit aufnehmen, dann kann man auch fixe Zeiten setzen.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 25 Oktober 2020, 10:50:50
 ;)
Hey wenn ich helfen kann bin ich froh - du leistest hier die Pioniersarbeit :-)
Ich denke man kann sagen - so wie es läuft - so stabil lief es (bisher zumindest bei mir) noch nie.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 25 Oktober 2020, 14:30:40
Achso, noch wegen Python3. Python3 ist im Normalfall ein Link auf die genaue Python3 Version. Wenn du python3 --version eingibst kommt da sicher 3.7.3.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 25 Oktober 2020, 16:51:40
@Master_Nick, ich muss dich leider enttäuschen, dein keep_connected war wahrscheinlich nie wirklich off ;)

Ich habe keep_connected nun gefixed, es wird nun nach dem Setzen gleich korrekt übergeben und ein Neustart ist nicht mehr erforderlich. Da merkst du dann, dass "off" wirklich langsam ist...

ble_reset hat nun folgende neuen Funktionen:
- Reading lastreset: Zeitpunkt des letzten Resets
- Reading nextreset: Zeit wann der nächste Reset erfolgt
- Attribut reset_time: Zeit in HH:MM wann der Reset erfolgen soll, von diesen Zeitpunkt werden die Intervalle gerechnet. Default: 04:00
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 26 Oktober 2020, 12:39:34
Hehe kein Problem - das vermutete ich ja eh ;-)

Zitat von: Master_Nick am 21 Oktober 2020, 11:09:35

*EDIT Alternativ ist "keep_connected" gerade kaputt und dauerhaft an?

Failed to execute function Attr: Traceback (most recent call last):
  File "/fhem_pythonbinding/FHEM/bindings/python/lib/fhem_pythonbinding.py", line 236, in _onMessage
    ret = await asyncio.wait_for(func(hash, hash['args'], hash['argsh']), fct_timeout)
TypeError: Attr() missing 1 required positional argument: 'attr_value'


Das passiert bei mir (mit aktuell verfügbarer Version), wenn man keep_connected ändern möchte.


Ich update mal :-)

Und trage hier meine bisherigen Ergebnisse ein:

- reset_ble funktioniert bei mir nun an remote 2: Active: active (running) since Mon 2020-10-26 13:44:32 CET; 27s ago
- bei remote 1 hat es irgendwie immer "PythonBinding timeout" (dominik ggf kannst du mal mit 2 remotes testen? mir scheint als wäre das ein permanenter Fehler)
  generell funktionierte aber auch dort der manuel reset: Active: active (running) since Mon 2020-10-26 13:46:25 CET; 1min 34s ago
- keep_connected lässt sich nun umschalten :-)

Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 27 Oktober 2020, 15:49:53
Tja ... wenn ich rausbekommen könnte, was hier der Grund ist :-D

duff@duffstation:~$ sudo bluetoothctl
Agent registered
[CHG] Controller 5C:F3:70:80:C5:C4 Pairable: yes
[bluetooth]# scan on
Failed to start discovery: org.bluez.Error.NotReady


Kaum stecke ich den USB BT Stick kurz ab und wieder dran ist alles tutti :-D


Ich schalte mal testweise für den remote 2 das reset ab.... nicht das das Ubuntu das net mag :-D Alternativ doch mal nen Aktiven USB Hub an das Kabel wo 3 Geräte dran sind die alle Strom brauchen (gnihihih)


Ich habe jetzt mal geschaut und mir ein Script gesucht (github/askubuntu) das USB Geräte zurücksetzen kann:

über lsusb -v meine nötigen Ids gesucht und dann:

#!/bin/bash

set -euo pipefail
IFS=$'\n\t'

VENDOR="1d6b"
PRODUCT="0002"

for DIR in $(find /sys/bus/usb/devices/ -maxdepth 1 -type l); do
  if [[ -f $DIR/idVendor && -f $DIR/idProduct &&
        $(cat $DIR/idVendor) == $VENDOR && $(cat $DIR/idProduct) == $PRODUCT ]]; then
    echo 0 > $DIR/authorized
    sleep 0.5
    echo 1 > $DIR/authorized
  fi
done


Habe bei mir dann geschaut in einem SSH Tab bluetoothhctl an und im andern das script gestartet:

Zitat[DEL] Controller 5C:F3:70:80:C5:C4 duffstation [default]
[NEW] Controller 5C:F3:70:80:C5:C4 duffstation [default]

Und das funzt :-)

Eventuell hilft das ja nochmal jemandem der auch so einen zickigen USB BT Stick hat :D das Pi3B+ zickt nicht so herum.

Kann nun quasi darauf pollen wenn es ausgestiegen ist und dann einfach  reset :-D


*Edit: 30.10.2020 Bisher läuft es echt astrein :-) und ja ich bin zu keep connected on über gelaufen ... es ist sooo fancy :-D
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 30 Oktober 2020, 20:49:58
Ich habe mir ble_reset nochmals genauer angeschaut. Der Reset erfordert spezielle sudo Berechtigungen, habe das hier zusammengefasst:
https://github.com/dominikkarall/fhem_pythonbinding/blob/master/FHEM/bindings/python/lib/ble_reset/README.md

Dann kappt der Reset auch wirklich :) Kannst ja mal probieren das ob das bei dir klappt, ich denke das sollte ausreichen ohne den USB Stick zurueckzusetzen.

Ich habe nun auch die "consumption" mit aufgenommen.
1 Einheit = 1 Minute Ventil auf 100% offen
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 30 Oktober 2020, 21:19:22
Jo die Berechtigungen hat es schon bei mir :-)
Das funzt soweit alles.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 13 November 2020, 15:10:51
Bisher läuft echt alles sauber - konnte nix entdecken was groß auffält bis auf dieses eine:

Direkt nach einem Neustart von FHEM und den Phythonbinding instanzen auf den Slaves geht ein blereset auf "active" und der andere ins Timeout.
Angefügt ein Bild von dem was ich da erlebe.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 13 November 2020, 22:05:37
Beim ble_reset hatte ich noch einen Bug drin. Hatte ich vor kurzem gefixt, bitte einfach ein Update machen.

Danke für die Rückmeldung, dass alles so gut läuft! Freut mich. Bei mir im Moment auch alles genial mit keep_connect=on :)

Für alle die es testen wollen, achtet bitte auch darauf, dass ihr nicht mehr als 5 Devices mit einem RPi ohne Dongle verbinden könnt. Erweiterbar einfach mit zusätzlichen BT USB Dongles, je Dongle dann jeweils 5 BLE Connections im Normalfall möglich.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 14 November 2020, 10:20:37
Moin,  8)
Ich hatte gestern geupdated bevor ich berichtete um 15 Uhr herum und das dann weiterhin festgestellt - oder hast du jetzt was neues eingecheckt :-) ?
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 14 November 2020, 10:42:09
Das Pythonbinding offline/timeout Problem beim ble_reset hatte ich schon vor paar Tagen eingecheckt. Tritt es bei dir wirklich noch immer auf nach jedem Neustart?
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 14 November 2020, 10:52:36
Dann ja.
Aktuell zeigen beide reset Dinge, dass python binding wäre offline.
Sind Sie natürlich nicht.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 14 November 2020, 10:58:19
Hast du auch am Remote Peer ein "git pull" im fhem_pythonbinding Ordner gemacht?
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 14 November 2020, 11:02:19
Jap ;-)
Die Remotes sind up to date gewesen gestern nachdem ich git pull machte.

Habe es gerade nochmal gemacht:
5 files changed, 143 insertions(+), 20 deletions(-)
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 14 November 2020, 11:09:06
Hast du das fhem_pythonbinding auch neu gestartet? Am FHEM (killall python3) und am Remote Peer? FHEM selbst musst nicht neu starten.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 14 November 2020, 11:11:24
Fhem startet neu und startet daraufhin auf beiden remotes die pythonbindings neu. Aber ich schau mir das nochmal an ... Allein das git ja nun nicht aktuell war... sagt ja ich teste nochmal
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 20 November 2020, 10:05:00
Alles top! :-)

;D Vielen Vielen Dank für das Modul!

So schaut es nun aus wie es soll:
Python EQ3 Connector Duffstation opened
Python EQ3 Connector TouchPi3 opened
ble_reset active
ble_reset_2 active
upnp active



Hätte noch eine Verbessrung vorzuschlagen:

Das alte EQ3 Modul - wurde in andFHEM als Thermostat geführt und von Alexa war es steuerbar (Boost und Temperatur). **EDIT** Ok Räume auf Temperatur einstellen geht mittels Alexa - Boost scheint noch nicht zu gehen.
Dann wäre es nur noch "boost" andFHEM - da stellt sich die Frage soll Matthias das in andFHEM anpassen oder du hier :-D Das wäre noch echt maximalst komfortabel :-D
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 20 November 2020, 18:12:07
Super, dass alles läuft :)

Ich glaube "boost" muss Matthias in andFHEM integrieren. Außer es wird ein spezielles Command im Modul erwartet, dass aktuell nicht drin ist. Das kann ich mir aber nicht vorstellen, da "boost" als solches vorhanden ist. Also wenn ich noch was anpassen soll, dann gerne um Info dazu, ansonsten glaube ich, dass hier Matthias ran muss.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 20 November 2020, 20:35:04
Also Boost wir bezogen auf Steuern mittels Alexa, das nutzt ja nur direkt FHEM. Da ist nur FHEM und das Modul EQ3 Modul zwischen - grob gesagt.

Matthias ist der Entwickler hinter der Handy App andFHEM.
Da werden die Thermostate halt aktuell mit on und off und darunter dan noch die Auswahl boost oder desiredTemp. und weitere angezeigt.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 20 November 2020, 21:44:54
Habe ich es richtig verstanden...

- Alexa: Da hat boost vorher funktioniert, jetzt mit dem Modul aber nicht mehr?
Wenn dem so ist, gibt es 2 Möglichkeiten. Entweder homebridgeMapping dazu anlegen, oder Andre baut es in alexa-fhem ein.

- andFHEM: Da hat boost ebenso vorher funktioniert und jetzt nicht mehr?
Auch hier müsste Matthias den Support für das neue Modul einbauen. Ich vermute mal, dass er aktuell ein paar Module direkt anhand von TYPE supported und das ist beim neuen Modul PythonModule statt EQ3BT. So meine Annahme. Weil eine Konfiguration für andFHEM wäre mir nicht bekannt.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 21 November 2020, 12:05:56
 ;) Moin!

Also ja in Alexa konnte ich früher sagen (bei mir halt Echo genannt) "Echo setze Arbeitszimmer auf boost" nun sagt er dann "Es ist im Benutzerdefinierten Modus". Klingt für mich wie die Rückmeldung - Manual, denn auf automatisch kann ich es setzen :-D
Homebridge Mapping würde völlig reichen - da bin ich nur nicht so bewandert :-D


Zu andFHEM -> Generell werden die als Widget korrekt angezeigt und sind auch 100% steuerbar. Öffnet man ein Widget sieht man halt statt einem Slider für Temperatur nur "On" und "Off" :-D was halt der Rückmeldung des Status geschuldet ist denke ich.
Da muss ich mal schauen... generell aber nix wildes :-D  regel es quasi eh Großteils automatisch.

Den Boos mittels Alexa nutzte ich schon häufiger :-D
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 21 November 2020, 17:34:44
Alexa: Ich finde in Alexa leider kein Mapping für boost selbst. Im alexa-fhem Code konnte ich auch nichts dazu finden. Kannst du dazu bitte mal im Alexa Thread nachfragen? Ich selbst bin komplett in der Google Welt zu Hause, daher kann ich da bei mir auch nichts schnell testen. Wenn du aus dem Alexa Thread eine Anforderung an eq3bt bekommst, kann ich das gerne umsetzen.

andFHEM: Ich denke da wird EQ3BT vermutlich im Code abgefragt, weil die Rückmeldung zu den set Commands ist nahezu gleich, einziger Unterschied: Im neuen Modul ist 30 Grad max, im alten war es 29.5 Grad. Kannst du da mal bitte bei Markus nachfragen? Auch hier gilt, wenn ich was anpassen soll, gerne melden.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 04 Dezember 2020, 23:22:13
Für alle die fhem_pythonbinding (neuer Name fhempy, ist kürzer zu tippen :)) auf einen Remote Peer verwenden, folgende wichtige Info:

Ihr könnte /home/pi/fhem_pythonbinding löschen und auch /etc/systemd/system/fhem_pythonbinding.service. Ab sofort gibt es nämlich fhempy als pip package und man erspart sich somit das mühsame git update.
https://github.com/dominikkarall/fhem_pythonbinding#run-python-modules-on-remote-python-peers-eg-extend-bluetooth-range

Kurz zusammengefasst läuft die Installation (für alle die systemd nutzen, was in vielen Fällen Standard ist) nun mit
sudo pip3 install fhempy
https://raw.githubusercontent.com/dominikkarall/fhem_pythonbinding/master/install_systemd_fhempy.sh | sudo -E bash -


Weitere Neuerung:
- Update des Remote Peers kann nun über das BindingsIo Devie durchgeführt werden (set remote_bindingio update)
- Version vom Remote Peer wird ebenfalls im BindingsIo Device angezeigt
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 05 Dezember 2020, 02:56:22
Cool! :-D
Werde ich morgen mal testen (nachher wenn man schlafen war).
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 05 Dezember 2020, 16:04:23
Geupdatet :-)  8)

Läuft bisher einwandfrei. Ein Traum das man nun aus FHEM updaten kann :-) Großartig.
Kann man wohl noch anschalten, dass der das Update macht, wenn man FHEM sagt update mal? :-D Irgendwie mittels Attribut, dass man sagen kann "update with FHEM" - "yes"|"no" :-D
Das wäreee meeeega Komfort :-D (also nochmal mehr zu dem gerade schon)

Hab vielen Dank! Großartig!
Ich hab schon mal angefangen mit Batterie Einblendung und baue nun ein wenig an der Ventilanzeige durch Farbe...
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 05 Dezember 2020, 16:20:46
Das muss ich mir noch anschauen, geht sicher :)

Wenn du eine schöne Anzeige hast, share danach gerne die Einstellungen dann bau ich das mit ein. Ich finde es immer gut wenn per Default schon viel mitkommt.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 05 Dezember 2020, 16:24:40
Wird gemacht, sobald es fertig ist :-)
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 05 Dezember 2020, 21:35:43
Ich habe es mal implementiert aber noch nicht getestet. Nach einem Update sollten nun auch alle Remote Peers aktualisiert werden.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 09 Dezember 2020, 13:44:52
Update funktioniert :-)

Ich denke ich habe eine Besonderheit bei meinem Ubuntu LTS da steckt das fhempy durchaus mal fest nach dem Update:

duff@duffstation:/var/log$ sudo systemctl status fhempy.service
● fhempy.service - FHEM PythonBinding
     Loaded: loaded (/etc/systemd/system/fhempy.service; enabled; vendor preset: enabled)
     Active: failed (Result: exit-code) since Wed 2020-12-09 13:36:54 CET; 6min ago
    Process: 1607231 ExecStart=/usr/local/bin/fhempy (code=exited, status=1/FAILURE)
   Main PID: 1607231 (code=exited, status=1/FAILURE)

Dez 09 13:36:54 duffstation systemd[1]: fhempy.service: Scheduled restart job, restart counter is at 8.
Dez 09 13:36:54 duffstation systemd[1]: Stopped FHEM PythonBinding.
Dez 09 13:36:54 duffstation systemd[1]: fhempy.service: Start request repeated too quickly.
Dez 09 13:36:54 duffstation systemd[1]: fhempy.service: Failed with result 'exit-code'.
Dez 09 13:36:54 duffstation systemd[1]: Failed to start FHEM PythonBinding.


Syslog:

Dec  9 13:36:53 duffstation systemd[1]: Started FHEM PythonBinding.
Dec  9 13:36:54 duffstation fhempy[1607195]: Traceback (most recent call last):
Dec  9 13:36:54 duffstation fhempy[1607195]:   File "/usr/local/bin/fhempy", line 128, in <module>
Dec  9 13:36:54 duffstation fhempy[1607195]:     import lib.fhem_pythonbinding as fpb
Dec  9 13:36:54 duffstation fhempy[1607195]:   File "/usr/local/lib/python3.8/dist-packages/lib/fhem_pythonbinding.py", line 15, in <module>
Dec  9 13:36:54 duffstation fhempy[1607195]:     from .core.zeroconf import zeroconf
Dec  9 13:36:54 duffstation fhempy[1607195]:   File "/usr/local/lib/python3.8/dist-packages/lib/core/zeroconf.py", line 2, in <module>
Dec  9 13:36:54 duffstation fhempy[1607195]:     from zeroconf import Zeroconf, ServiceInfo
Dec  9 13:36:54 duffstation fhempy[1607195]: ModuleNotFoundError: No module named 'zeroconf'
Dec  9 13:36:54 duffstation systemd[1]: fhempy.service: Main process exited, code=exited, status=1/FAILURE
Dec  9 13:36:54 duffstation systemd[1]: fhempy.service: Failed with result 'exit-code'.
Dec  9 13:36:54 duffstation systemd[1]: fhempy.service: Scheduled restart job, restart counter is at 7.


Wenn ich dann mal stop mache und start... läuft es wieder:

duff@duffstation:/var/log$ sudo systemctl stop fhempy.service
duff@duffstation:/var/log$ sudo systemctl start fhempy.service
duff@duffstation:/var/log$ sudo systemctl status fhempy.service
● fhempy.service - FHEM PythonBinding
     Loaded: loaded (/etc/systemd/system/fhempy.service; enabled; vendor preset: enabled)
     Active: active (running) since Wed 2020-12-09 13:46:13 CET; 96ms ago
   Main PID: 1627676 (fhempy)
      Tasks: 1 (limit: 18792)
     Memory: 11.7M
     CGroup: /system.slice/fhempy.service
             └─1627676 /usr/bin/python3 /usr/local/bin/fhempy

Dez 09 13:46:13 duffstation systemd[1]: Started FHEM PythonBinding.



Hatte vorher bemerkt, dass ein Thermostat als online geführt wird aber seit 6 Uhr heute morgen gar nichts mehr von sich gegeben hatte (bzw. nichts empfangen wurde) andere Thermostate vom gleichen FhemPy ließen sich aber weiter steuern.

**EDIT: Ich scheine unter Ubuntu die aktuellste Version gar nicht mehr zum laufen zu bringen - das wäre schade :-D
Zeroconf scheint mittlerweile dann "notwendig".

duff@duffstation:/usr/local/bin$ sudo ./fhempy
Traceback (most recent call last):
  File "./fhempy", line 128, in <module>
    import lib.fhem_pythonbinding as fpb
  File "/usr/local/lib/python3.8/dist-packages/lib/fhem_pythonbinding.py", line 15, in <module>
    from .core.zeroconf import zeroconf
  File "/usr/local/lib/python3.8/dist-packages/lib/core/zeroconf.py", line 2, in <module>
    from zeroconf import Zeroconf, ServiceInfo
ModuleNotFoundError: No module named 'zeroconf'



8) EDIT VOM EDIT der Edith ihr Edit....:
sudo pip3 install zeroconf ... das war einfach.

Geht alles :-D
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 09 Dezember 2020, 22:07:57
Danke für die Info, da ist mir beim letzten Update ein Fehler passiert. Sorry...

Ich habe soeben auch noch eine größere Änderung eingespielt, inkl. Bugfix für zeroconf. Nun werden die fhempy Peers automatisch erkannt und in FHEM angelegt. Du brauchst nur mehr einen RPi mit fhempy über pip3 bespielen und dann wird der automatisch in FHEM als BindingsIo angelegt :)
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: C_Herrmann am 09 Dezember 2020, 22:43:47
Hallo,

ich habe eben ein Update durchgeführt und erhalte folgende Fehlermeldung:

2020.12.09 22:39:16 1: pythonbinding
2020.12.09 22:39:16 1: UPD FHEM/10_PythonBinding.pm
2020.12.09 22:39:17 1: UPD FHEM/10_BindingsIo.pm
2020.12.09 22:39:17 1: UPD FHEM/10_PythonModule.pm
2020.12.09 22:39:18 1: UPD FHEM/bindings/python/fhempy
2020.12.09 22:39:18 1: Got 14 bytes for FHEM/bindings/python/fhempy, expected 4096
2020.12.09 22:39:18 1: aborting.

Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 09 Dezember 2020, 22:59:40
Danke für die rasche Info. Bitte nochmals ein update testen, sollte nun klappen.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: C_Herrmann am 09 Dezember 2020, 23:02:24
Klappt leider noch nicht, jetzt kommt dies:

2020.12.09 23:00:33 1 : UPD FHEM/10_PythonModule.pm
2020.12.09 23:00:33 1 : UPD FHEM/10_BindingsIo.pm
2020.12.09 23:00:33 1 : UPD FHEM/10_PythonBinding.pm
2020.12.09 23:00:33 1 : UPD FHEM/bindings/python/bin/fhempy
2020.12.09 23:00:34 1 : UPD FHEM/bindings/python/fhempy/__init__.py
2020.12.09 23:00:34 1 : open ./FHEM/bindings/python/fhempy/__init__.py failed: Not a directory, trying to restore the previous version and aborting the update
2020.12.09 23:00:40 1 : BindingsIo: ERROR pyBinding - error while connecting: 127.0.0.1: Verbindungsaufbau abgelehnt (111)

Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 09 Dezember 2020, 23:07:14
Achje, da ist noch das alte fhempy File und sollte jetzt ein Ordner sein.

Kannst du bitte nochmals testen, ich habe ein MOV zum Verschieben eingebaut.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: C_Herrmann am 09 Dezember 2020, 23:18:42
Jetzt läufts wieder.  :)

Da ist noch eine Warnung übrig, die aber auch schon in der vorigen Version mit anderer Zeilennummer auftrat:

2020.12.09 23:14:02 1: PERL WARNING: Use of uninitialized value in string ne at ./FHEM/10_BindingsIo.pm line 359.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 09 Dezember 2020, 23:22:53
Kam die Warnung bei dir nach dem FHEM Neustart?
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: C_Herrmann am 09 Dezember 2020, 23:37:34
Ja, nach dem Neustart.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 10 Dezember 2020, 03:47:31
Schnurrt wieder wie es soll :-)
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 14 Dezember 2020, 20:02:01
Achtung, es gibt ein Update der Thermostat Firmware. Aus dem Changelog calorBT App:
Diese Version ermöglicht das Update von Heizkörperthermostaten auf eine neue Firmware-Version mit verbessertem Sicherheitsverfahren.

Dieses Update sollte als NICHT eingespielt werden! Ich gehe davon aus, dass damit der Zugriff nur mehr mit dem PIN möglich ist.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 15 Dezember 2020, 02:18:12
Naja dann müsste man alle Thermostate mal koppeln right?

Aber ja wird erstmal nicht gemacht - check.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 15 Dezember 2020, 08:23:56
Das kann ich noch nicht sagen wie gut der Security Mechanismus implementiert wurde. Meine Vermutung ist, dass der Pairing PIN nun wirklich irgendwo ins Device geschrieben werden muss um die Verbindung herzustellen. Das wäre noch einfach, wenn der aber verschlüsselt wird, dann wird's schwer.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Davos2 am 15 Dezember 2020, 15:42:10
Apologies for the English here but I wrote to eq3 support and this is potentially useful, if inconclusive...

I wrote:
Subject: New firmware, security and local control

Hello there, Ive seen there is new firmware with a new security mechanism.

How does this affect those using their own methods of controlling the valves, eg fhem or home assistant? Using gattool under linux basically?

Thank you
Kind regards

They just replied:
Dear David,

Thank you very much for your inquiry.

The Update installs a new security mechanism which closes down potential security breaches.
Effects on non-offical access algorithms such as FHEM or HomeAssistant are possible yet are not supported by us in any way.

Should you have any further questions, please feel free to contact us again via email.

Yours sincerely

eQ-3 Support-Team
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 15 Dezember 2020, 20:31:48
Thank you for the info!

I'm waiting for the calorBT 1.3.3 apk to be uploaded somewhere to have a quick look at the source code of the app. Maybe I can find some hint about the security fix there.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: C_Herrmann am 16 Dezember 2020, 16:36:40
Hallo,

ich habe das Update der calorBT-App mal installiert. Da scheint sich wohl einiges geändert zu haben. Meine beiden Thermostate waren nicht mehr in der App gespeichert. Daher habe ich ein Backup der alten Version zurückgespielt.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 16 Dezember 2020, 20:33:31
Danke euch fuer du Zusendungen bzgl. APK, habe es bereits geladen.

Ich habe bei eq3 auch nachgefragt ob sich außer den Security Thema noch was geändert hat, laut deren Auskunft nicht. Wir haben also im Moment keinen Stress das Update einzuspielen, da es keine zusätzlichen Features bringt. Vielleicht ist die wärmere Jahreszeit dann besser geeignet mal ein Thermostat umzustellen und zu spielen. Im Winter ist mir das jetzt zu riskant.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 17 Dezember 2020, 17:04:19
Absolut richtig :-D hier gibt es keine Notwendigkeit Unsicherheit in die neu gewonnene Stabilität zu bringen :-D

Danach bin ich gern bereit auch mal zu testen ;-)
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 18 Dezember 2020, 16:25:12
Mahlzeit,

gibt es ne Option in fhempy das Loglevel zu ändern? bei mir spammt das über die Tage ganz gut das Syslog in meinem ubuntu voll :-D
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 18 Dezember 2020, 16:27:38
Default ist INFO. Da sollte eigentlich nicht so viel kommen, welche Meldungen sind das bei dir?

Einzelne Module kannst du mit dem verbose Level über FHEM anpassen. Die allgemeinen fhempy Log Meldungen sind noch nicht konfigurierbar.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 18 Dezember 2020, 16:33:09
Sorry ich meinte den fhempy remote :-)

Dec 18 16:01:03 duffstation fhempy[715205]: 2020-12-18 16:01:03,948 - ERROR    - Arbeitszimmer_Thermostat: Failed to update, retry in 60s
Dec 18 16:01:15 duffstation fhempy[715205]: 2020-12-18 16:01:15,445 - ERROR    - Kueche_Thermostat: Failed to update, retry in 60s
Dec 18 16:02:03 duffstation fhempy[715205]: 2020-12-18 16:02:03,186 - ERROR    - Kinderzimmer_Thermostat: Failed to update, retry in 60s
Dec 18 16:02:04 duffstation fhempy[715205]: 2020-12-18 16:02:04,019 - ERROR    - Flur_Thermostat: Failed to update, retry in 60s
Dec 18 16:02:14 duffstation fhempy[715205]: 2020-12-18 16:02:14,028 - ERROR    - Arbeitszimmer_Thermostat: Failed to update, retry in 60s
Dec 18 16:02:25 duffstation fhempy[715205]: 2020-12-18 16:02:25,530 - ERROR    - Kueche_Thermostat: Failed to update, retry in 60s
Dec 18 16:03:13 duffstation fhempy[715205]: 2020-12-18 16:03:13,305 - ERROR    - Kinderzimmer_Thermostat: Failed to update, retry in 60s
Dec 18 16:03:14 duffstation fhempy[715205]: 2020-12-18 16:03:14,099 - ERROR    - Flur_Thermostat: Failed to update, retry in 60s
Dec 18 16:03:24 duffstation fhempy[715205]: 2020-12-18 16:03:24,100 - ERROR    - Arbeitszimmer_Thermostat: Failed to update, retry in 60s
Dec 18 16:03:35 duffstation fhempy[715205]: 2020-12-18 16:03:35,608 - ERROR    - Kueche_Thermostat: Failed to update, retry in 60s
Dec 18 16:04:33 duffstation fhempy[715205]: 2020-12-18 16:04:33,415 - ERROR    - Kinderzimmer_Thermostat: Failed to update, retry in 60s
Dec 18 16:04:34 duffstation fhempy[715205]: 2020-12-18 16:04:34,184 - ERROR    - Flur_Thermostat: Failed to update, retry in 60s
Dec 18 16:04:54 duffstation fhempy[715205]: 2020-12-18 16:04:54,197 - ERROR    - Arbeitszimmer_Thermostat: Failed to update, retry in 60s
Dec 18 16:04:55 duffstation fhempy[715205]: 2020-12-18 16:04:55,695 - ERROR    - Kueche_Thermostat: Failed to update, retry in 60s
Dec 18 16:05:43 duffstation fhempy[715205]: 2020-12-18 16:05:43,528 - ERROR    - Kinderzimmer_Thermostat: Failed to update, retry in 60s
Dec 18 16:05:54 duffstation fhempy[715205]: 2020-12-18 16:05:54,273 - ERROR    - Flur_Thermostat: Failed to update, retry in 60s
Dec 18 16:06:04 duffstation fhempy[715205]: 2020-12-18 16:06:04,282 - ERROR    - Arbeitszimmer_Thermostat: Failed to update, retry in 60s
Dec 18 16:06:35 duffstation fhempy[715205]: 2020-12-18 16:06:35,784 - ERROR    - Kueche_Thermostat: Failed to update, retry in 60s
Dec 18 16:07:03 duffstation fhempy[715205]: 2020-12-18 16:07:03,618 - ERROR    - Kinderzimmer_Thermostat: Failed to update, retry in 60s
Dec 18 16:07:24 duffstation fhempy[715205]: 2020-12-18 16:07:24,368 - ERROR    - Arbeitszimmer_Thermostat: Failed to update, retry in 60s
Dec 18 16:07:34 duffstation fhempy[715205]: 2020-12-18 16:07:34,375 - ERROR    - Flur_Thermostat: Failed to update, retry in 60s
Dec 18 16:07:55 duffstation fhempy[715205]: 2020-12-18 16:07:55,867 - ERROR    - Kueche_Thermostat: Failed to update, retry in 60s
Dec 18 16:08:13 duffstation fhempy[715205]: 2020-12-18 16:08:13,711 - ERROR    - Kinderzimmer_Thermostat: Failed to update, retry in 60s
Dec 18 16:08:34 duffstation fhempy[715205]: 2020-12-18 16:08:34,452 - ERROR    - Arbeitszimmer_Thermostat: Failed to update, retry in 60s
Dec 18 16:09:04 duffstation fhempy[715205]: 2020-12-18 16:09:04,461 - ERROR    - Flur_Thermostat: Failed to update, retry in 60s
Dec 18 16:09:15 duffstation fhempy[715205]: 2020-12-18 16:09:15,968 - ERROR    - Kueche_Thermostat: Failed to update, retry in 60s
Dec 18 16:09:43 duffstation fhempy[715205]: 2020-12-18 16:09:43,806 - ERROR    - Kinderzimmer_Thermostat: Failed to update, retry in 60s
Dec 18 16:09:54 duffstation fhempy[715205]: 2020-12-18 16:09:54,559 - ERROR    - Arbeitszimmer_Thermostat: Failed to update, retry in 60s
Dec 18 16:10:14 duffstation fhempy[715205]: 2020-12-18 16:10:14,555 - ERROR    - Flur_Thermostat: Failed to update, retry in 60s
Dec 18 16:10:16 duffstation fhempy[715205]: 2020-12-18 16:10:16,031 - ERROR    - Kueche_Thermostat: Failed to update, retry in 60s
Dec 18 16:10:53 duffstation fhempy[715205]: 2020-12-18 16:10:53,916 - ERROR    - Kinderzimmer_Thermostat: Failed to update, retry in 60s
Dec 18 16:11:04 duffstation fhempy[715205]: 2020-12-18 16:11:04,639 - ERROR    - Arbeitszimmer_Thermostat: Failed to update, retry in 60s
Dec 18 16:11:24 duffstation fhempy[715205]: 2020-12-18 16:11:24,646 - ERROR    - Flur_Thermostat: Failed to update, retry in 60s
Dec 18 16:11:46 duffstation fhempy[715205]: 2020-12-18 16:11:46,119 - ERROR    - Kueche_Thermostat: Failed to update, retry in 60s
Dec 18 16:12:04 duffstation fhempy[715205]: 2020-12-18 16:12:04,000 - ERROR    - Kinderzimmer_Thermostat: Failed to update, retry in 60s
Dec 18 16:12:14 duffstation fhempy[715205]: 2020-12-18 16:12:14,733 - ERROR    - Arbeitszimmer_Thermostat: Failed to update, retry in 60s
Dec 18 16:12:34 duffstation fhempy[715205]: 2020-12-18 16:12:34,730 - ERROR    - Flur_Thermostat: Failed to update, retry in 60s
Dec 18 16:13:14 duffstation fhempy[715205]: 2020-12-18 16:13:14,105 - ERROR    - Kinderzimmer_Thermostat: Failed to update, retry in 60s
Dec 18 16:13:16 duffstation fhempy[715205]: 2020-12-18 16:13:16,219 - ERROR    - Kueche_Thermostat: Failed to update, retry in 60s
Dec 18 16:13:44 duffstation fhempy[715205]: 2020-12-18 16:13:44,822 - ERROR    - Arbeitszimmer_Thermostat: Failed to update, retry in 60s
Dec 18 16:13:54 duffstation fhempy[715205]: 2020-12-18 16:13:54,819 - ERROR    - Flur_Thermostat: Failed to update, retry in 60s
Dec 18 16:14:26 duffstation fhempy[715205]: 2020-12-18 16:14:26,675 - ERROR    - Kueche_Thermostat: Failed to update, retry in 60s
Dec 18 16:14:44 duffstation fhempy[715205]: 2020-12-18 16:14:44,208 - ERROR    - Kinderzimmer_Thermostat: Failed to update, retry in 60s
Dec 18 16:15:14 duffstation fhempy[715205]: 2020-12-18 16:15:14,896 - ERROR    - Arbeitszimmer_Thermostat: Failed to update, retry in 60s
Dec 18 16:15:24 duffstation fhempy[715205]: 2020-12-18 16:15:24,920 - ERROR    - Flur_Thermostat: Failed to update, retry in 60s
Dec 18 16:15:46 duffstation fhempy[715205]: 2020-12-18 16:15:46,760 - ERROR    - Kueche_Thermostat: Failed to update, retry in 60s
Dec 18 16:16:14 duffstation fhempy[715205]: 2020-12-18 16:16:14,312 - ERROR    - Kinderzimmer_Thermostat: Failed to update, retry in 60s
Dec 18 16:16:35 duffstation fhempy[715205]: 2020-12-18 16:16:35,013 - ERROR    - Flur_Thermostat: Failed to update, retry in 60s
Dec 18 16:16:54 duffstation fhempy[715205]: 2020-12-18 16:16:54,983 - ERROR    - Arbeitszimmer_Thermostat: Failed to update, retry in 60s
Dec 18 16:16:56 duffstation fhempy[715205]: 2020-12-18 16:16:56,859 - ERROR    - Kueche_Thermostat: Failed to update, retry in 60s
Dec 18 16:17:34 duffstation fhempy[715205]: 2020-12-18 16:17:34,408 - ERROR    - Kinderzimmer_Thermostat: Failed to update, retry in 60s
Dec 18 16:17:45 duffstation fhempy[715205]: 2020-12-18 16:17:45,097 - ERROR    - Flur_Thermostat: Failed to update, retry in 60s
Dec 18 16:18:05 duffstation fhempy[715205]: 2020-12-18 16:18:05,087 - ERROR    - Arbeitszimmer_Thermostat: Failed to update, retry in 60s
Dec 18 16:18:34 duffstation fhempy[715205]: 2020-12-18 16:18:34,518 - ERROR    - Kinderzimmer_Thermostat: Failed to update, retry in 60s
Dec 18 16:18:36 duffstation fhempy[715205]: 2020-12-18 16:18:36,951 - ERROR    - Kueche_Thermostat: Failed to update, retry in 60s
Dec 18 16:18:55 duffstation fhempy[715205]: 2020-12-18 16:18:55,194 - ERROR    - Flur_Thermostat: Failed to update, retry in 60s
Dec 18 16:19:25 duffstation fhempy[715205]: 2020-12-18 16:19:25,179 - ERROR    - Arbeitszimmer_Thermostat: Failed to update, retry in 60s
Dec 18 16:19:47 duffstation fhempy[715205]: 2020-12-18 16:19:47,039 - ERROR    - Kueche_Thermostat: Failed to update, retry in 60s
Dec 18 16:20:04 duffstation fhempy[715205]: 2020-12-18 16:20:04,612 - ERROR    - Kinderzimmer_Thermostat: Failed to update, retry in 60s
Dec 18 16:20:25 duffstation fhempy[715205]: 2020-12-18 16:20:25,284 - ERROR    - Flur_Thermostat: Failed to update, retry in 60s
Dec 18 16:20:47 duffstation fhempy[715205]: 2020-12-18 16:20:47,133 - ERROR    - Kueche_Thermostat: Failed to update, retry in 60s
Dec 18 16:21:05 duffstation fhempy[715205]: 2020-12-18 16:21:05,291 - ERROR    - Arbeitszimmer_Thermostat: Failed to update, retry in 60s
Dec 18 16:21:14 duffstation fhempy[715205]: 2020-12-18 16:21:14,719 - ERROR    - Kinderzimmer_Thermostat: Failed to update, retry in 60s
Dec 18 16:21:45 duffstation fhempy[715205]: 2020-12-18 16:21:45,374 - ERROR    - Flur_Thermostat: Failed to update, retry in 60s
Dec 18 16:21:47 duffstation fhempy[715205]: 2020-12-18 16:21:47,241 - ERROR    - Kueche_Thermostat: Failed to update, retry in 60s
Dec 18 16:22:14 duffstation fhempy[715205]: 2020-12-18 16:22:14,779 - ERROR    - Kinderzimmer_Thermostat: Failed to update, retry in 60s
Dec 18 16:22:15 duffstation fhempy[715205]: 2020-12-18 16:22:15,380 - ERROR    - Arbeitszimmer_Thermostat: Failed to update, retry in 60s
Dec 18 16:22:55 duffstation fhempy[715205]: 2020-12-18 16:22:55,482 - ERROR    - Flur_Thermostat: Failed to update, retry in 60s
Dec 18 16:23:17 duffstation fhempy[715205]: 2020-12-18 16:23:17,317 - ERROR    - Kueche_Thermostat: Failed to update, retry in 60s
Dec 18 16:23:24 duffstation fhempy[715205]: 2020-12-18 16:23:24,836 - ERROR    - Kinderzimmer_Thermostat: Failed to update, retry in 60s
Dec 18 16:23:25 duffstation fhempy[715205]: 2020-12-18 16:23:25,459 - ERROR    - Arbeitszimmer_Thermostat: Failed to update, retry in 60s
Dec 18 16:24:05 duffstation fhempy[715205]: 2020-12-18 16:24:05,595 - ERROR    - Flur_Thermostat: Failed to update, retry in 60s
Dec 18 16:24:35 duffstation fhempy[715205]: 2020-12-18 16:24:35,549 - ERROR    - Arbeitszimmer_Thermostat: Failed to update, retry in 60s
Dec 18 16:24:37 duffstation fhempy[715205]: 2020-12-18 16:24:37,411 - ERROR    - Kueche_Thermostat: Failed to update, retry in 60s
Dec 18 16:24:54 duffstation fhempy[715205]: 2020-12-18 16:24:54,927 - ERROR    - Kinderzimmer_Thermostat: Failed to update, retry in 60s
Dec 18 16:25:25 duffstation fhempy[715205]: 2020-12-18 16:25:25,692 - ERROR    - Flur_Thermostat: Failed to update, retry in 60s
Dec 18 16:25:47 duffstation fhempy[715205]: 2020-12-18 16:25:47,482 - ERROR    - Kueche_Thermostat: Failed to update, retry in 60s
Dec 18 16:26:05 duffstation fhempy[715205]: 2020-12-18 16:26:05,017 - ERROR    - Kinderzimmer_Thermostat: Failed to update, retry in 60s
Dec 18 16:26:05 duffstation fhempy[715205]: 2020-12-18 16:26:05,643 - ERROR    - Arbeitszimmer_Thermostat: Failed to update, retry in 60s



Und so weiter ;-)


Das Problem dahinter ist mir bekannt (also warum er das nicht tun konnte) aber das er halt so dermaßen das Log voll ballert :-D fänd ich cool abschalten zu können - auf einer SD Karte beim Pi verlängert das durchaus das leben - da habe ich logging eh komplett aus. Bei meinem Ubuntu ist es lediglich die Lesbarkeit - ich schalte mir die Loglevel meist hoch, wenn ich Probleme bemerke und habe sonst ein recht gut lesbares Log - da fließt ja noch viel mehr rein.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 18 Dezember 2020, 16:52:38
Stell mal bei den Thermostat Devices in FHEM verbose 0, dann sollten diese Meldungen weg sein.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 18 Dezember 2020, 17:04:29
Hab Dank ;-)
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: denis.robel am 16 Januar 2021, 19:38:16
So, ich habs zu spät gelesen und ein Thermostat mit dem update versehen. Nun geht's nicht mehr mit FHEM sonder nur noch über die App :-(
Kann man die FW irgndwie wieder Downgraden?
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: mele am 16 Januar 2021, 19:53:45
Ja, alte App-Version downloaden
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 20 Januar 2021, 21:56:17
Zitat von: mele am 16 Januar 2021, 19:53:45
Ja, alte App-Version downloaden

Cool, hast du das schon erfolgreich getestet? Das würde mir natürlich bei der Entwicklung für die neue Version helfen, weil dann muss ich nicht 3 Monate im kalten sitzen ;)
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: mele am 21 Januar 2021, 07:41:38
Zitat von: dominik am 20 Januar 2021, 21:56:17
Cool, hast du das schon erfolgreich getestet? Das würde mir natürlich bei der Entwicklung für die neue Version helfen, weil dann muss ich nicht 3 Monate im kalten sitzen ;)

Ja, läuft!
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 22 Januar 2021, 22:58:11
 :o Irgendwie habe ich gerade einen Loop.

Habe einen remote mal raus geworfen bei mir gerade... seither spackt es.

021-01-22 22:56:40 BindingsIo bindingsio_remote info: ready
2021-01-22 22:56:40 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-01-22 22:56:40 BindingsIo bindingsio_remote info: ready
2021-01-22 22:56:40 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-01-22 22:56:40 BindingsIo bindingsio_remote info: ready
2021-01-22 22:56:40 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-01-22 22:56:40 BindingsIo bindingsio_remote info: ready
2021-01-22 22:56:40 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-01-22 22:56:40 BindingsIo bindingsio_remote info: ready
2021-01-22 22:56:40 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-01-22 22:56:40 BindingsIo bindingsio_remote info: ready
2021-01-22 22:56:40 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-01-22 22:56:40 BindingsIo bindingsio_remote info: ready
2021-01-22 22:56:40 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-01-22 22:56:40 BindingsIo bindingsio_remote info: ready
2021-01-22 22:56:40 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-01-22 22:56:40 BindingsIo bindingsio_remote info: ready
2021-01-22 22:56:40 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-01-22 22:56:40 BindingsIo bindingsio_remote info: ready
2021-01-22 22:56:40 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-01-22 22:56:40 BindingsIo bindingsio_remote info: ready
2021-01-22 22:56:40 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-01-22 22:56:40 BindingsIo bindingsio_remote info: ready
2021-01-22 22:56:40 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-01-22 22:56:40 BindingsIo bindingsio_remote info: ready
2021-01-22 22:56:40 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-01-22 22:56:40 BindingsIo bindingsio_remote info: ready
2021-01-22 22:56:40 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-01-22 22:56:40 BindingsIo bindingsio_remote info: ready
2021-01-22 22:56:40 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-01-22 22:56:40 BindingsIo bindingsio_remote info: ready
2021-01-22 22:56:40 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-01-22 22:56:40 BindingsIo bindingsio_remote info: ready
2021-01-22 22:56:40 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-01-22 22:56:40 BindingsIo bindingsio_remote info: ready
2021-01-22 22:56:40 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-01-22 22:56:40 BindingsIo bindingsio_remote info: ready
2021-01-22 22:56:40 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-01-22 22:56:40 BindingsIo bindingsio_remote info: ready
2021-01-22 22:56:40 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-01-22 22:56:40 BindingsIo bindingsio_remote info: ready
2021-01-22 22:56:40 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-01-22 22:56:40 BindingsIo bindingsio_remote info: ready
2021-01-22 22:56:40 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-01-22 22:56:40 BindingsIo bindingsio_remote info: ready
2021-01-22 22:56:40 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-01-22 22:56:40 BindingsIo bindingsio_remote info: ready
2021-01-22 22:56:40 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-01-22 22:56:40 BindingsIo bindingsio_remote info: ready
2021-01-22 22:56:40 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-01-22 22:56:40 BindingsIo bindingsio_remote info: ready
2021-01-22 22:56:40 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-01-22 22:56:40 BindingsIo bindingsio_remote info: ready
2021-01-22 22:56:40 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-01-22 22:56:40 BindingsIo bindingsio_remote info: ready
2021-01-22 22:56:40 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-01-22 22:56:40 BindingsIo bindingsio_remote info: ready
2021-01-22 22:56:40 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-01-22 22:56:40 BindingsIo bindingsio_remote info: ready
2021-01-22 22:56:40 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-01-22 22:56:40 BindingsIo bindingsio_remote info: ready
2021-01-22 22:56:40 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-01-22 22:56:40 BindingsIo bindingsio_remote info: ready
2021-01-22 22:56:40 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-01-22 22:56:40 BindingsIo bindingsio_remote info: ready
2021-01-22 22:56:40 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-01-22 22:56:40 BindingsIo bindingsio_remote info: ready
2021-01-22 22:56:40 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-01-22 22:56:40 BindingsIo bindingsio_remote info: ready
2021-01-22 22:56:40 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-01-22 22:56:40 BindingsIo bindingsio_remote info: ready
2021-01-22 22:56:40 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-01-22 22:56:40 BindingsIo bindingsio_remote info: ready
2021-01-22 22:56:40 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-01-22 22:56:40 BindingsIo bindingsio_remote info: ready
2021-01-22 22:56:40 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-01-22 22:56:40 BindingsIo bindingsio_remote info: ready
2021-01-22 22:56:40 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-01-22 22:56:40 BindingsIo bindingsio_remote info: ready
2021-01-22 22:56:40 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-01-22 22:56:40 BindingsIo bindingsio_remote info: ready
2021-01-22 22:56:40 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-01-22 22:56:40 BindingsIo bindingsio_remote info: ready
2021-01-22 22:56:40 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-01-22 22:56:40 BindingsIo bindingsio_remote info: ready
2021-01-22 22:56:40 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-01-22 22:56:40 BindingsIo bindingsio_remote info: ready
2021-01-22 22:56:40 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-01-22 22:56:40 BindingsIo bindingsio_remote info: ready
2021-01-22 22:56:40 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-01-22 22:56:40 BindingsIo bindingsio_remote info: ready
2021-01-22 22:56:40 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-01-22 22:56:40 BindingsIo bindingsio_remote info: ready
2021-01-22 22:56:40 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-01-22 22:56:40 BindingsIo bindingsio_remote info: ready
2021-01-22 22:56:40 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-01-22 22:56:40 BindingsIo bindingsio_remote info: ready
2021-01-22 22:56:40 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-01-22 22:56:40 BindingsIo bindingsio_remote info: ready
2021-01-22 22:56:40 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-01-22 22:56:40 BindingsIo bindingsio_remote info: ready
2021-01-22 22:56:40 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-01-22 22:56:40 BindingsIo bindingsio_remote info: ready
2021-01-22 22:56:40 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-01-22 22:56:40 BindingsIo bindingsio_remote info: ready
2021-01-22 22:56:40 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-01-22 22:56:40 BindingsIo bindingsio_remote info: ready


Neustart von FHEM unterbrach des dann und kam auch net wieder gerade :-D
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 23 Januar 2021, 09:41:27
Ist der "Fehler" jetzt weg? Das ist ein Reading was aktualisiert wird, damit man weiß, dass BindingsIo fertig initialisiert wurde.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 23 Januar 2021, 12:29:57
Jo kam bisher nicht nochmal wieder - so wirklich wie und warum er aufgetreten ist.... kann ich leider nicht berichten.

Habe nun von Ubuntu LTS den 2. remote abgezogen und ein Pi ZeroW da angesteckt wo der Asus USB BT Stick war :-D
Irgendwie mochte Ubuntu das mit dem BT nicht so sehr und ich musste den Stick immer wieder manuell ein und aus stecken.
Da so ein ZeroW ca 120 mA verbrät... legitime Lösung :-D
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: denis.robel am 23 Januar 2021, 16:22:46
Zitat von: mele am 21 Januar 2021, 07:41:38
Ja, läuft!

Ich kann aber nicht pairen, da mit der neuen Firmware der Code xxx-yyy ist also 6 Stellen hat und in der alten App nur 4 Stellen eingegeben werden können.

Kannst Du den Downgrade-Prozess bitte kurz beschreiben und ggf. bitte auch die alte App-Version benennen.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: mele am 24 Januar 2021, 17:23:23
Hm, also sie alte App-Version ist 1.2.3. An das Thema Anzahl der Stellen kann ich mich leider nicht erinnern.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: mayonezo am 25 Januar 2021, 14:11:48
Ist es bereits möglich, den Temperaturoffset mit fhempy zu ändern? Das wäre für mich der letzte Grund, der mich daran hindert, die calorBT App zu deinstallieren.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 26 Januar 2021, 20:16:51
Zitat von: mayonezo am 25 Januar 2021, 14:11:48
Ist es bereits möglich, den Temperaturoffset mit fhempy zu ändern? Das wäre für mich der letzte Grund, der mich daran hindert, die calorBT App zu deinstallieren.

Das ist kein Problem, hab es gerade eingebaut. Ist im Update v0.1.26 heute Abend online.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: mayonezo am 28 Januar 2021, 22:38:12
Zitat von: dominik am 26 Januar 2021, 20:16:51
Das ist kein Problem, hab es gerade eingebaut. Ist im Update v0.1.26 heute Abend online.

Hey Dominik

ich habe die Option gefunden. Vielen Dank, dass du es so schnell implementiert hast! Leider passiert bei mir nichts, wenn ich den "temperaturOffset" mit "set" verstelle. "desiredTemperature" geht nach wie vor.

Übrigens ist es eine Freude, wie schnell die Änderungen mittlerweile auf die Thermostate übertragen werden und wie schnell auch das Auslesen der Werte funktioniert!

Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 28 Januar 2021, 23:08:56
Jetzt sollte es klappen => 0.1.38

Ja, die Stabilität der Verbindung ist um einiges besser als früher.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 30 Januar 2021, 01:24:43
Mhh :-)
könntest du die "Nach Fenster offen Temperatur" auch noch einbinden? ;-)
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: mayonezo am 30 Januar 2021, 10:56:38
Zitat von: dominik am 28 Januar 2021, 23:08:56
Jetzt sollte es klappen => 0.1.38

Ja, die Stabilität der Verbindung ist um einiges besser als früher.

Hast du es bei dir einmal getestet? Bei mir geht es leider noch nicht.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 30 Januar 2021, 11:39:46
Hast recht, ich hatte nur geschaut ob es da ist aber nicht gesetzt. Ich schau mir das nochmals an.

Nach Fenster offen Temperatur kann ich dann auch gleich mit aufnehmen :)
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 30 Januar 2021, 13:29:18
Ich habe den Fehler gefunden, das update funktionierte mit der letzten Version leider nicht.

Bitte update mit
sudo -u fhem pip3 install --upgrade fhempy
durchführen und dann nochmals testen.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: mayonezo am 30 Januar 2021, 14:02:19
Zitat von: dominik am 30 Januar 2021, 13:29:18
Ich habe den Fehler gefunden, das update funktionierte mit der letzten Version leider nicht.

Bitte update mit
sudo -u fhem pip3 install --upgrade fhempy
durchführen und dann nochmals testen.

Damit hat es funktioniert! Vielen Dank  :)
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 30 Januar 2021, 17:10:55
Folgende Einstellungen werde nun auch noch unterstützt:
- windowOpenTemp
- windowOpenTime
- ecoTemperature
- comfortTemperature

Bitte das Update diesmal mit
sudo -u fhem pip3 install --upgrade fhempy
machen. Danach läuft das Update wieder normal über das FHEM Update.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 31 Januar 2021, 02:20:44
Meeeeeega Sexy!

Ein absolut herzliches Danke!
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 02 Februar 2021, 18:10:29
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-02 18:09:38 BindingsIo fhempy_peer_192_168_0_114 info: ready



Okay ich denke wir müssen mal aufdröseln, was es tut wenn man set update nutzt ;-)

Kann es sein das von Userns ausgegangen wird?
Ich habe z. B. auf keinem meiner Pis einen FHEM User.
Irgendwo scheint es da noch zu  haken.


**Edit nun gerade nochmal mittels upgrade auf den remotes gemacht - da gab es wohl noch was neues. Ich melde, sollte es nochmal auftreten ;-) dann gehen wir das mal an. So aktuell sieht es gerade wieder schön harmonisch aus.  8) 8)
Allerdings fehlen die
- windowOpenTemp
- windowOpenTime
- ecoTemperature
- comfortTemperature

Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 02 Februar 2021, 21:11:18
Bitte mal ein Update mit
sudo -u fhem pip3 install --upgrade fhempy
dann sollten die Commands da sein.

Hast du vielleicht BindingIo reload gemacht oder die fhem.cfg über das WebIf bearbeitet?
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 02 Februar 2021, 21:30:10
Huhu,
habe ja wie gesagt keinen Benutzer fhem auf meinen pi's aber habe den Befehl mit sudo ausgeführt.
Keine Änderungen in fhem.cfg und auch kein reload in bindingslo.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 02 Februar 2021, 21:47:03
Ah, ok, wenn es um die fhempy peers geht, dann brauchst du da nichts mit sudo installieren.

Mach bitte
sudo pip3 uninstall fhempy
pip3 install --upgrade fhempy


Wichtig, das 2. Command ohne sudo. Im BindingIo Device sollte dann Version 0.1.48 stehen.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 03 Februar 2021, 13:27:06
Ok upgrade gerade :-)

Muss ich eine Version auch auf dem Docker installiert haben auf dem FHEM läuft?
Habe da nur das Modul drin mehr nicht bisher. :-)

Bisher ging ich davon aus - nix lokal außer FHEM Modul und dann 2 Peers reicht :-D

Bin nun auf "version 0.1.48" :-) und alle Änderungen sind drin Yeha!  8) 8) 8) 8) ;D :)

Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 03 Februar 2021, 19:15:28
Ah, sorry, wenn du nix lokal hast, dann brauchst du fhempy natürlich nicht lokal installieren sondern nur auf den Peers.

Super, dass es jetzt läuft. Die weiteren Updates brauchst du nicht mehr manuell durchführen, da läuft es über FHEM Update.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 03 Februar 2021, 19:18:39
Danke dir ;-)
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 09 Februar 2021, 18:28:08
Ok also nach Update und Neustart hab ich regelmäßig das hier:

021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready


Gibt es ggf noch irgendwo Benutzer hart verdrahtet die da was falsch starten wollen? (weil es sie halt nicht gibt)

Fixe ich aktuell in dem ich die instanz auf den beiden einzeln neu starte. Beides Rasberry Pis.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 10 Februar 2021, 18:19:18
*Nachtrag

Habe mal meine Windowtemperature gesetzt - irgendwie bleibt sie aber am Thermostat jeweils auf 12° -> hatte 4.5 gesagt.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 10 Februar 2021, 21:26:19
Zitat von: Master_Nick am 09 Februar 2021, 18:28:08
Ok also nach Update und Neustart hab ich regelmäßig das hier:

021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_15 info: ready
2021-02-09 18:27:31 BindingsIo fhempy_peer_192_168_0_114 info: ready


Gibt es ggf noch irgendwo Benutzer hart verdrahtet die da was falsch starten wollen? (weil es sie halt nicht gibt)

Fixe ich aktuell in dem ich die instanz auf den beiden einzeln neu starte. Beides Rasberry Pis.

Funktionieren in so einem Zustand die beiden fhempy Peers? Diese Meldung kommt aus dem Callback nachdem DevIO die Verbindung aufgebaut hat. Eigentlich sollte das nur einmalig kommen.
Was steht zu der Zeit im STATE vom fhempy_peer_... BindingsIo Device?
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 10 Februar 2021, 21:28:24
Zitat von: Master_Nick am 10 Februar 2021, 18:19:18
*Nachtrag

Habe mal meine Windowtemperature gesetzt - irgendwie bleibt sie aber am Thermostat jeweils auf 12° -> hatte 4.5 gesagt.
Kannst du bitte auch windowOpenTime ausprobieren ob das geht? Weil beim Setzen einer der beiden Settings muss ich immer beide Werte mitgeben.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 10 Februar 2021, 21:59:42
Huhu,

also am Gerät eingestellt 10 ° und 5 Minuten bekomme ich in FHEM nach einem updatestatus rein.

Ändere ich dann auf 4.5 und noch auf 10 Minuten passiert nix.

Vorschlag: Zeitangabe nicht mittels schieber -> lieber per textfeld 480 Sekunden für 8 Minuten ist so nicht schön zu schieben  ;D ;D
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 13 Februar 2021, 09:51:36
Zitat von: Master_Nick am 10 Februar 2021, 21:59:42
Huhu,

also am Gerät eingestellt 10 ° und 5 Minuten bekomme ich in FHEM nach einem updatestatus rein.

Ändere ich dann auf 4.5 und noch auf 10 Minuten passiert nix.

Vorschlag: Zeitangabe nicht mittels schieber -> lieber per textfeld 480 Sekunden für 8 Minuten ist so nicht schön zu schieben  ;D ;D

Ok, danke fuer den Test. Ich schau mir das im Laufe der naechsten Woche an.
Schieberegler: Ja, der Schieberegler ist da nicht so schön. Ich werde das anpassen, mir gefallen diese Textfelder nicht so gut, da das für neue User komplett unklar ist. Werde da noch einen Hilfetext darunter einfügen.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 15 Februar 2021, 14:53:59
Mahlzeit,

ich hatte nun 2 Tage hintereinander folgendes bemerkt:

Um 4 Uhr hat "blereset" gewirkt und seither waren die Thermostate dieses peers komplett offline.
Ein reboot des peers (Ein Pi3 mit RaspberryPiOS minimal mit Chrome) hat dann geholfen.
Habe jetzt als ersten Versuch die den automatischen Resete um 4 auf manuell gesetzt und werde mal schauen ob es dann anders ist.

Weiter kommt dann der Test das mal manuell zu machen und zu schauen ob die Thermostate noch arbeiten. Ich vermute, das da irgendwas nicht richtig weiter arbeitet bei mir nachdem der Reset ausgelöst wurde.

Was ich schon so getestet hatte war ein set update bei dem Peer über bindingsio -> das hat wohl gearbeitet aber die Funktionalität blieb wie oben beschrieben (also Thermostate offline)

Soweit erstmal die Beobachtungen :-) Mal sehen ob ich Fakten draus machen kann und was finde.

Weiterhin aber maximalst zufrieden - das läuft einfach echt schnieke!
An meinem ZeroW hatte ich dieses Problem auch gar nicht feststellen können mit dem Reset.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 15 Februar 2021, 18:19:16
Danke für die Infos, bin gespannt was du feststellst. Ich hatte mit bt reset (24h) bisher keine Probleme, aber es kommt trotzdem alle paar Wochen mal zu einem Bluetooth Ausfall am RPi.

Ich hatte mal gelesen, dass der RPi Zero angeblich ein stabileres Bluetooth hat. Wenn dem so ist, würde ich mir auch welche zulegen :)
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 23 Februar 2021, 12:24:44
Soo also keinerlei ble_reset aktiv.

Gestern ne Neustart gemacht von FHEM - seither ->

im Log:

021.02.23 00:00:06 1: BindingsIo: ERROR fhempy_peer_192_168_0_114 - error while connecting: connect to http://192.168.0.114:15733 timed out
2021.02.23 00:00:19 1: BindingsIo: ERROR fhempy_peer_192_168_0_114 - error while connecting: connect to http://192.168.0.114:15733 timed out
2021.02.23 00:00:32 1: BindingsIo: ERROR fhempy_peer_192_168_0_114 - error while connecting: connect to http://192.168.0.114:15733 timed out
2021.02.23 00:00:45 1: BindingsIo: ERROR fhempy_peer_192_168_0_114 - error while connecting: connect to http://192.168.0.114:15733 timed out
2021.02.23 00:00:58 1: BindingsIo: ERROR fhempy_peer_192_168_0_114 - error while connecting: connect to http://192.168.0.114:15733 timed out
2021.02.23 00:01:11 1: BindingsIo: ERROR fhempy_peer_192_168_0_114 - error while connecting: connect to http://192.168.0.114:15733 timed out
2021.02.23 00:01:24 1: BindingsIo: ERROR fhempy_peer_192_168_0_114 - error while connecting: connect to http://192.168.0.114:15733 timed out
2021.02.23 00:01:37 1: BindingsIo: ERROR fhempy_peer_192_168_0_114 - error while connecting: connect to http://192.168.0.114:15733 timed out
2021.02.23 00:01:50 1: BindingsIo: ERROR fhempy_peer_192_168_0_114 - error while connecting: connect to http://192.168.0.114:15733 timed out
2021.02.23 00:02:03 1: BindingsIo: ERROR fhempy_peer_192_168_0_114 - error while connecting: connect to http://192.168.0.114:15733 timed out
2021.02.23 00:02:16 1: BindingsIo: ERROR fhempy_peer_192_168_0_114 - error while connecting: connect to http://192.168.0.114:15733 timed out
2021.02.23 00:02:29 1: BindingsIo: ERROR fhempy_peer_192_168_0_114 - error while connecting: connect to http://192.168.0.114:15733 timed out
2021.02.23 00:02:42 1: BindingsIo: ERROR fhempy_peer_192_168_0_114 - error while connecting: connect to http://192.168.0.114:15733 timed out
2021.02.23 00:02:55 1: BindingsIo: ERROR fhempy_peer_192_168_0_114 - error while connecting: connect to http://192.168.0.114:15733 timed out
2021.02.23 00:03:08 1: BindingsIo: ERROR fhempy_peer_192_168_0_114 - error while connecting: connect to http://192.168.0.114:15733 timed out
2021.02.23 00:03:21 1: BindingsIo: ERROR fhempy_peer_192_168_0_114 - error while connecting: connect to http://192.168.0.114:15733 timed out
2021.02.23 00:03:34 1: BindingsIo: ERROR fhempy_peer_192_168_0_114 - error while connecting: connect to http://192.168.0.114:15733 timed out
2021.02.23 00:03:47 1: BindingsIo: ERROR fhempy_peer_192_168_0_114 - error while connecting: connect to http://192.168.0.114:15733 timed out
2021.02.23 00:04:00 1: BindingsIo: ERROR fhempy_peer_192_168_0_114 - error while connecting: connect to http://192.168.0.114:15733 timed out
2021.02.23 00:04:13 1: BindingsIo: ERROR fhempy_peer_192_168_0_114 - error while connecting: connect to http://192.168.0.114:15733 timed out
2021.02.23 00:04:26 1: BindingsIo: ERROR fhempy_peer_192_168_0_114 - error while connecting: connect to http://192.168.0.114:15733 timed out
2021.02.23 00:04:39 1: BindingsIo: ERROR fhempy_peer_192_168_0_114 - error while connecting: connect to http://192.168.0.114:15733 timed out
2021.02.23 00:04:52 1: BindingsIo: ERROR fhempy_peer_192_168_0_114 - error while connecting: connect to http://192.168.0.114:15733 timed out
2021.02.23 00:05:05 1: BindingsIo: ERROR fhempy_peer_192_168_0_114 - error while connecting: connect to http://192.168.0.114:15733 timed out
2021.02.23 00:05:18 1: BindingsIo: ERROR fhempy_peer_192_168_0_114 - error while connecting: connect to http://192.168.0.114:15733 timed out
2021.02.23 00:05:31 1: BindingsIo: ERROR fhempy_peer_192_168_0_114 - error while connecting: connect to http://192.168.0.114:15733 timed out
2021.02.23 00:05:44 1: BindingsIo: ERROR fhempy_peer_192_168_0_114 - error while connecting: connect to http://192.168.0.114:15733 timed out
2021.02.23 00:05:57 1: BindingsIo: ERROR fhempy_peer_192_168_0_114 - error while connecting: connect to http://192.168.0.114:15733 timed out
2021.02.23 00:06:10 1: BindingsIo: ERROR fhempy_peer_192_168_0_114 - error while connecting: connect to http://192.168.0.114:15733 timed out
2021.02.23 00:06:23 1: BindingsIo: ERROR fhempy_peer_192_168_0_114 - error while connecting: connect to http://192.168.0.114:15733 timed out
2021.02.23 00:06:36 1: BindingsIo: ERROR fhempy_peer_192_168_0_114 - error while connecting: connect to http://192.168.0.114:15733 timed out
2021.02.23 00:06:49 1: BindingsIo: ERROR fhempy_peer_192_168_0_114 - error while connecting: connect to http://192.168.0.114:15733 timed out
2021.02.23 00:07:02 1: BindingsIo: ERROR fhempy_peer_192_168_0_114 - error while connecting: connect to http://192.168.0.114:15733 timed out
2021.02.23 00:07:15 1: BindingsIo: ERROR fhempy_peer_192_168_0_114 - error while connecting: connect to http://192.168.0.114:15733 timed out
2021.02.23 00:07:28 1: BindingsIo: ERROR fhempy_peer_192_168_0_114 - error while connecting: connect to http://192.168.0.114:15733 timed out


Und Eventviewer:
2021-02-23 12:27:12 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:12 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:12 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:12 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:12 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:12 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:12 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:12 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:12 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:12 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:12 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:12 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:12 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:12 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:12 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:12 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:12 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:12 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:12 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:12 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:12 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:12 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:12 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:12 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:12 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:12 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:12 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:12 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:12 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:12 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:12 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:12 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:12 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:12 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:12 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:12 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:12 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:12 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:12 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready
2021-02-23 12:27:13 BindingsIo fhempy_peer_192_168_0_114 info: ready


Mir scheint da muss man mal eine "Versuche es wieder in immer mehr werdenden Sekunden" oder ein total Timeout einführen ;-) ?
Problem besteht auch über einen Neustart hinaus. Nun mal sehen was der Peer tut - generell online ist er.

pi@TouchPi3:~ $ sudo service fhempy status
● fhempy.service - FHEM PythonBinding
   Loaded: loaded (/etc/systemd/system/fhempy.service; enabled; vendor preset: enabled)
   Active: active (running) since Fri 2021-02-19 15:23:25 CET; 3 days ago
Main PID: 598 (fhempy)
    Tasks: 12 (limit: 2063)
   CGroup: /system.slice/fhempy.service
           ├─  598 /usr/bin/python3 /home/pi/.local/bin/fhempy
           ├─20450 /home/pi/.local/lib/python3.7/site-packages/bluepy/bluepy-helper 0
           ├─28049 /home/pi/.local/lib/python3.7/site-packages/bluepy/bluepy-helper 0
           ├─28050 /home/pi/.local/lib/python3.7/site-packages/bluepy/bluepy-helper 0
           ├─30293 /home/pi/.local/lib/python3.7/site-packages/bluepy/bluepy-helper 0
           ├─30319 /home/pi/.local/lib/python3.7/site-packages/bluepy/bluepy-helper 0
           ├─30323 /home/pi/.local/lib/python3.7/site-packages/bluepy/bluepy-helper 0
           ├─30326 /home/pi/.local/lib/python3.7/site-packages/bluepy/bluepy-helper 0
           ├─30350 /home/pi/.local/lib/python3.7/site-packages/bluepy/bluepy-helper 0
           └─30352 /home/pi/.local/lib/python3.7/site-packages/bluepy/bluepy-helper 0

Feb 22 11:52:21 TouchPi3 fhempy[598]: 2021-02-22 11:52:21,362 - INFO     - asyncio: poll 23798.400 ms took 4729.293 ms: 1 events
Feb 22 11:52:40 TouchPi3 fhempy[598]: 2021-02-22 11:52:40,450 - INFO     - asyncio: poll 17910.006 ms took 17929.007 ms: timeout
Feb 22 11:52:44 TouchPi3 fhempy[598]: 2021-02-22 11:52:44,778 - INFO     - asyncio: poll 23403.409 ms took 4324.299 ms: 1 events
Feb 22 11:53:03 TouchPi3 fhempy[598]: 2021-02-22 11:53:03,876 - INFO     - asyncio: poll 18076.192 ms took 18095.309 ms: timeout
Feb 22 11:53:10 TouchPi3 fhempy[598]: 2021-02-22 11:53:10,857 - INFO     - asyncio: poll 18630.883 ms took 6967.116 ms: 1 events
Feb 22 11:53:22 TouchPi3 fhempy[598]: 2021-02-22 11:53:22,533 - INFO     - asyncio: poll 10619.222 ms took 10631.718 ms: timeout
Feb 22 11:53:25 TouchPi3 fhempy[598]: 2021-02-22 11:53:25,778 - INFO     - asyncio: poll 23242.304 ms took 3240.064 ms: 1 events
Feb 22 11:53:27 TouchPi3 fhempy[598]: 2021-02-22 11:53:27,401 - INFO     - fhempy.lib.pkg_installer: Attempting install of fhempy
Feb 22 11:53:45 TouchPi3 fhempy[598]: 2021-02-22 11:53:45,794 - INFO     - asyncio: poll 18370.693 ms took 18383.891 ms: timeout
Feb 22 11:53:52 TouchPi3 fhempy[598]: 2021-02-22 11:53:52,709 - INFO     - asyncio: poll 26092.618 ms took 6900.799 ms: 1 events


Tjoaaa keine Ahnung - mal neu starten den Dienst.
*edit neustart vom Dienst auf dem Peer fixte es.


Habe jetzt mal das ble_reset getestet - das tut anscheind wie es soll.
Problem scheint bei mir, dass der Dienst obwohl der Status "läuft" sagt nicht richtig arbeitet.
Könnte mittels DOIF einen verzögerten neustart des Dienstes über SSH machen - oder aber irgendwie was besseres machbar?
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 01 März 2021, 10:28:53
Jetzt lief alles echt lange ohne jedes Problem durch.

Ich aktiviere nun mal wieder den 4:00 ble reset (auch wenn er gar nicht nötig erscheint). ^^ Testen halt.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 07 April 2021, 12:37:35
Moinsen :-)

Soweit alles tutti bei mir mit dem Modul.
Ich habe nun einfach ein DOIF, dass beim FHEM neustart den Service jeweils auf den Peers neu startet - so habe ich das umgehen können wo er die endlos Error wirft (das kommt schon noch mal vor aber selten - und ist mit einem neustart weg - also ja da ist irgendwo was.... aber wo :-D )

Ansonsten habe ich eines definitiv feststellen können:

Bei mir funktioniert das set von "windowOpenTemperature" und "windowOpenTime" nicht.
Wenn ich am Thermostat da was verstelle bekommt FHEM die korrekten Werte - setze ich von FHEM die Werte kommt der gesetzte Wert vom Thermostat irgendwann als "aktualisiert" (rot markiert) zurück.
Es kann auch mal dazu führen, dass ein Thermostat gar nicht mehr auf die BT Commands reagiert und ich es resetten muss.

Dazu mal ne Frage - muss man den Thermostaten die aktuelle Uhrzeit echt beibringen oder werden die nicht eh damit von FHEM versorgt über das Modul?

:-) Grüße!
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 18 April 2021, 19:44:02
Hm...das mit windowOpen... muss ich bei mir noch debuggen. Aktuell fehlt mir leider noch die Zeit dazu, auf meiner Todo Liste steht es schon :)

Die Zeit wird automatisch gesetzt, man muss sich also nicht um Zeitumstellung oder Zeiteinstellung nach Batteriewechsel kümmern.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 18 April 2021, 19:56:31
Danke für die Zeit info :-)

Alles klar! :-)
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: diver am 26 April 2021, 20:56:03
Hallo,

besten Dank für das Modul. Habe noch eine alte Version und es läuft.

Habe mal eine Logikfrage:
wenn der Fensterkontakt auf ist soll die Heizung ausgehen. Das ist noch einfach.
Wird das Fenster wieder geschlossen soll die Heizung auf den vorherigen Zustand.

Ich habe da jetzt zwei einfache notifies gemacht.
Eines setzt bei Fenster auf die Temp auf 5 Grad
Das Andere bei Fenster zu auf Mode Automatic.

Wie man alle aktuellen Werte elegant ausliest und dann wieder zurück schreibt habe ich noch nicht probiert. Scheint mir aufwändig zu sein.

Wie würdet Ihr das einfach und elegant lösen?

Danke und Gruß Andre
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: C_Herrmann am 05 September 2021, 21:52:38
Hallo,
seit einiger Zeit werden die Logdateien (z.B. fhempy-2021-08-23.log) nicht mehr gelöscht, obwohl im log steht:
2021.09.01 00:00:01 2: Deleting fhempy-2021-08-23.log

Ursache dafür scheint zu sein, dass das Attribut
nrarchive 10
fehlt. Wenn ich es setze, ist es beim nächsten Neustart wieder verschwunden, obwohl ich ein save configausgeführt habe.

Kannst Du das bitte mal prüfen, Dominik?

Gruß, Christian
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 29 November 2021, 13:19:34
 ;D ;D

Moin moin - alle Jahre wieder :-)

Also ich bin echt mega happy mit dem Setup!
Der Rewrite mit dem Phython ist grandios.

Ich merke eine Sache funzt bei mir (weiterhin) nicht - die Window-Funktionen: "windowOpenTemperature" und "windowOpenTime".
Aktuell in Version 0.1.181 zuletzt getestet.

2021-11-29 13:14:41 PythonBinding Pythonbinding_0 fhempy: running FHEM/bindings/python/bin/fhempy
2021-11-29 13:14:41 PythonBinding Pythonbinding_0 fhempy: stopped
2021-11-29 13:14:44 PythonModule Wohnzimmer_Thermostat valvePosition: 27
2021-11-29 13:14:44 PythonModule Wohnzimmer_Thermostat consumption: 568.96
2021-11-29 13:14:44 PythonModule Wohnzimmer_Thermostat consumptionToday: 71.91
2021-11-29 13:14:46 PythonModule Arbeitszimmer_Thermostat windowOpenTemperature 4.5
2021-11-29 13:15:01 PythonBinding Pythonbinding_0 fhempy: running FHEM/bindings/python/bin/fhempy
2021-11-29 13:15:01 PythonBinding Pythonbinding_0 fhempy: stopped
2021-11-29 13:15:17 PythonModule Arbeitszimmer_Thermostat consumption: 260.63
2021-11-29 13:15:17 PythonModule Arbeitszimmer_Thermostat consumptionToday: 64.84


Er aktualisiert das Thermostat sogar aber es gibt keine Änderung an der Window open Temp.
Funktioniert das bei euch? Oder könnte es sein, dass das Thermostat wie in Menü verankert diese Beiden Werte als "eines" haben will? Im Menü gibt es ja "Aero" darunter sind dann Temperatur und Zeit.

Ich hab einen Pi ZeroW als einzigen remote der Bluetooth hat - FHEM selber hat bei mir keines am Host.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: eki am 02 Dezember 2021, 17:08:00
Erst mal vielen Dank für das tolle Tool, habe vor kurzem damit angefangen damit zu experimentieren und grundsätzlich klappt das erst mal auf Anhieb, super.

Gibt es eigentlich grundsätzlich die Möglichkeit and dim im Thermostat hinterlegten Wochenpläne zu kommen bzw. diese zu ändern? In der App scheint das ja zu funktionieren.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 02 Dezember 2021, 17:13:25
Zitat von: Master_Nick am 29 November 2021, 13:19:34
;D ;D

Moin moin - alle Jahre wieder :-)

Also ich bin echt mega happy mit dem Setup!
Der Rewrite mit dem Phython ist grandios.

Ich merke eine Sache funzt bei mir (weiterhin) nicht - die Window-Funktionen: "windowOpenTemperature" und "windowOpenTime".
Aktuell in Version 0.1.181 zuletzt getestet.

2021-11-29 13:14:41 PythonBinding Pythonbinding_0 fhempy: running FHEM/bindings/python/bin/fhempy
2021-11-29 13:14:41 PythonBinding Pythonbinding_0 fhempy: stopped
2021-11-29 13:14:44 PythonModule Wohnzimmer_Thermostat valvePosition: 27
2021-11-29 13:14:44 PythonModule Wohnzimmer_Thermostat consumption: 568.96
2021-11-29 13:14:44 PythonModule Wohnzimmer_Thermostat consumptionToday: 71.91
2021-11-29 13:14:46 PythonModule Arbeitszimmer_Thermostat windowOpenTemperature 4.5
2021-11-29 13:15:01 PythonBinding Pythonbinding_0 fhempy: running FHEM/bindings/python/bin/fhempy
2021-11-29 13:15:01 PythonBinding Pythonbinding_0 fhempy: stopped
2021-11-29 13:15:17 PythonModule Arbeitszimmer_Thermostat consumption: 260.63
2021-11-29 13:15:17 PythonModule Arbeitszimmer_Thermostat consumptionToday: 64.84


Er aktualisiert das Thermostat sogar aber es gibt keine Änderung an der Window open Temp.
Funktioniert das bei euch? Oder könnte es sein, dass das Thermostat wie in Menü verankert diese Beiden Werte als "eines" haben will? Im Menü gibt es ja "Aero" darunter sind dann Temperatur und Zeit.

Ich hab einen Pi ZeroW als einzigen remote der Bluetooth hat - FHEM selber hat bei mir keines am Host.


Ist soweit gefixt worden von Dominik :-)
Aktuell scheint es noch probleme mit "4.5" bei WindowOpenTemperature zu geben.


*** Edit -> 4.5 bei windowOpen unterstützen die Geräte gar nicht :-D Auch die original App nicht.
Es funzt daher alles perfekt! :-D

Vielen Dank!
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: eki am 10 Dezember 2021, 10:13:14
Ich habe nach Absprache mit dominik jetzt mal eine Version gebaut, die auch das Setzen und Auslesen der Profile beherrscht (also die im automatic Modus geltenden Einstellungen für bestimmte Temperaturen zu bestimmten Tageszeiten pro Wochentag).

Die neue Version ist hier anghängt und funktioniert bei mir jetzt seit ein paar Tagen problemlos. Es gibt neue "Set" Optionen um die Listen für jeden Wochentag zu setzen (z. B. set tempListSat). Die Syntax habe ich versucht genauso zu machen wie bei den Homematic Thermostaten.
Darüberinaus kann man sich per set updateTempList die aktuellen Einstellungen vom Device als Readings holen (entweder für einzelne Tage oder für alle Tage). Das Update passiert auch automatisch wenn ein Device angelegt wird bzw. ca. alle 2 Stunden bzw. wenn neue Werte gesetzt werden.

Es wäre super, wenn der ein oder andere das mal Testen könnte. Falls es problemlos läuft, wird dominik das dann einchecken.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: eki am 20 Dezember 2021, 16:40:23
Ich habe jetzt noch mal ein bisschen weiter gemacht (auch wenn das Interesse eher relativ gering zu sein scheint). Hier noch mal ein Update mit folgenden Ergänzungen:

- Temperaturlisten (oben schon enthalten, jetzt aber mit Queueingmechanismus, damit der Verkehr auf der Funkschnittstelle geringer wird)
- Setzen der Termperaturen für Comfort- und Ecomodus
- Setzen von Datum und Zeit
- Setzen auf Holiday-/Partymode (Temperatur und Enddatum)
- Holen der Holiday-/Party Parameter, falls vorhanden, aus den Statusmeldungen und setzen als Readings
- Setzen des Temperaturoffsets
- Setzen der Parameter für den WindowOpen Modus (Temperatur und Dauer)

Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 20 Dezember 2021, 16:56:52
Moin eki :-)

Doch ich bin nur gerade ein wenig verhindert - leider ein wenig Krank seit 2 Wochen.
Dann wollt ich mal rein schauen was du da schönes tust :-)

@eki:

- Setzen des Temperaturoffsets
- Setzen der Parameter für den WindowOpen Modus (Temperatur und Dauer)


Die gab es doch schon?
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: asdfex am 01 Januar 2022, 18:15:21
Zitat von: denis.robel am 23 Januar 2021, 16:22:46
Ich kann aber nicht pairen, da mit der neuen Firmware der Code xxx-yyy ist also 6 Stellen hat und in der alten App nur 4 Stellen eingegeben werden können.

Kannst Du den Downgrade-Prozess bitte kurz beschreiben und ggf. bitte auch die alte App-Version benennen.

Hallo,
hat jemand das "Downgrade Problem" gelöst inzwischen? Die alte Software installieren ist kein Problem, aber das Paaren funktioniert nicht wegen der 6-stelligen PIN.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 01 Februar 2022, 12:34:39
Zitat von: eki am 20 Dezember 2021, 16:40:23
Ich habe jetzt noch mal ein bisschen weiter gemacht (auch wenn das Interesse eher relativ gering zu sein scheint). Hier noch mal ein Update mit folgenden Ergänzungen:

- Temperaturlisten (oben schon enthalten, jetzt aber mit Queueingmechanismus, damit der Verkehr auf der Funkschnittstelle geringer wird)
- Setzen der Termperaturen für Comfort- und Ecomodus
- Setzen von Datum und Zeit
- Setzen auf Holiday-/Partymode (Temperatur und Enddatum)
- Holen der Holiday-/Party Parameter, falls vorhanden, aus den Statusmeldungen und setzen als Readings
- Setzen des Temperaturoffsets
- Setzen der Parameter für den WindowOpen Modus (Temperatur und Dauer)


Moin eki  :)
Das funktioniert bei mir soweit alles Prima.

Kannst du mir sagen wie das funktioniert mit der Mitteilung von Ventilständen(Valve)?
Werden die Thermostate in einem festen Intervall abgefragt? Würde es ggf cool sein das Intervall  über ein Attr in FHEM anpassen zu können?
Ich habe öfters mal fehlende Updates nachdem das Ventil offen war und wieder geschlossen wurde.
Daher würde ich ggf. proaktiv da updaten.

LG
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: eki am 01 Februar 2022, 14:03:07
Aktuell werden die Updates ca. alle 3 Minuten gemacht (fest eingestellt 140 Sekunden mit einem Zufallsoffset zwischen 0 und 60 Sekunden). Das könnte man natürlich als Attribut herausführen.
Wenn das Update schief geht wird etwas länger gewartet (170 statt 140 Sekunden).

Was Du auf jeden Fall machen kannst ist "set <device> updateStatus" aufrufen. Dann wird das Update direkt getriggert (könnte man z.B. aus einem zyklischen "at" heraus machen).
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 01 Februar 2022, 14:37:26
Hab dank soweit :-)

Wird das Update im Intervall denn IMMER bis zum Erfolg versucht?
Oder wird irgendwann abgebrochen?
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: eki am 01 Februar 2022, 17:24:42
Nein, es gibt das Attribut maxRetries (Default 20), das festlegt, wie oft versucht wird. Falls die Anzahl von Versuchen ohne Erfolg durchgeführt wurde, wird gewartet (170 plus x Sekunden) bis der nächste Anlauf genommen wird.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 01 Februar 2022, 18:11:14
Danke dir! :-)
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 01 Februar 2022, 18:15:54
Mh ich glaube das maxRetries  kann man gar nicht nutzen in FHEM als ATTR oder? Ich finde es nicht.

Das wäre tatsächlich etwas, dass hilfreich wäre für mich. :-)
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: eki am 02 Februar 2022, 08:07:18
Also bei mir gibt es das und es funktioniert auch. Das Einzige, was noch falsch war, ist, dass die zugehörige Log Fehlermeldung immer 20 im Text hat, egal wie der Wert gesetzt ist.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 02 Februar 2022, 11:05:36
Mooin  :)

Also sowohl in der help als auch in der Liste der Attribute fehlt es bei mir - woran kann das liegen?
Up to date ist alles - sofern man nix gesondertes zu tun hat.

Danke dir!


**EDIT: Ist deine version noch nicht eingecheckt ggf.? ^^
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: eki am 02 Februar 2022, 13:44:49
Ich glaube wir reden hier über unterschiedliche Module ???.

Deine Screendumps sind definitiv nicht von dem Modul, um das es hier geht. Du verwendest wahrscheinlich die Python Variante über FHEMPY und nicht das native Modul, um das es hier geht, wenn ich das richtig sehe. Dazu kann ich leider nichts sagen. Habe zwar schon mal mit dem Verfasser des Moduls darüber gesprochen, die zusätzlichen Parameter auch dort verfügbar zu machen, das habe ich bisher aber noch nicht geschafft.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 02 Februar 2022, 13:55:57
Ah - ok :-D

Witzig! Ja ok dann müssen wir die Aussagen von mir nochmal neu ordnen -> die drehen sich um das Pythonmodul.

Da hatte ich mich auch gewundert, dass ich dich in den issues bei Github oder sonstigem gar nicht sah :-D

Okay verstehe.
Sollten wir dann nicht besser 2 Threads haben - einen für das "native" und einen für die Python Version? :-)

PS: Habe das maxRetries mal in Github angefragt :-)
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 06 Februar 2022, 14:53:50
So maxRetries nun drin -> dort ist es im default auf 5 :-)
Da ist das schon nice 2 have.  8)
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: F_Klee am 01 August 2022, 10:01:07
Hallo Leute,
es ist schon seit längerem ruhig hier, vermutlich weil Heizungsthemen im Sommer nicht so aktuell sind. Ich versuche es trotzdem mal.

Ich habe mir zum Testen ein Thermostat besorgt und habe es nach der commandref auch schell zum Laufen gebracht. Allerdings wird hier im Forum über Dinge geredet, die ich bei mir nicht finde, z.B. WindowOpenTemperatur. Dann habe ich gesehen, dass es auch noch zwei unterschiedliche Module gibt.

Jetzt bin ich verwirrt.

Muss ich das Python-Modul installieren? Wie wird das gemacht? Oder werden die Features des Python-Moduls auch noch nach 10_EQ3BT übernommen?

Leider gibt es im Wiki keine Informationen - oder ich bin zu blöd zum suchen. Ich würde, wenn ich meine Thermostate zum Laufen gebracht habe, ein HowTo ins Wiki stellen. Allerdings bräuchte ich dazu erst einmal Input.

Per ssh auf einen anderen RasPi zuzugreifen, um dessen BLE-Empfänger zu nutzen, ist eine feine Sache. Unter welchem User greift EQ3BT auf ssh zu, d.h. für welchen User muss ich das Zerifikat erstellen?

Da der ESP32 ja auch Bluetooth besitzt müsste es doch möglich sein, statt eines RasPi auch einen ESP zu nutzen. Eigentlich muss der ESP die Daten ja nur durchreichen. EQ3BT müsste dann ein weiteres Attribut ESP-BT bekommen. Vielleicht etwas für den nächsten Winter?

Ich hoffe, dass ihr nicht alle in Urlaub seid. Ansonsten einen schönen solchen.

Gruß
Frank
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 01 August 2022, 13:21:31
Moin also für das FHEMPY wird dir hier geholfen:
https://github.com/fhempy/fhempy
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: F_Klee am 01 August 2022, 15:06:42
Danke für die schnelle Antwort. Ich habe schon mal kurz drüber geschaut.

Sehe ich das richtig, dass das Perl-Modul nicht mehr weiter entwickelt wird? Dann werde ich mich mal mit fhempy beschäftigen.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Master_Nick am 01 August 2022, 15:20:09
Da kann ich dir nicht viel zu sagen - aber ich bin auch seit langem schon auf dem FHEMPY :-)
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: F_Klee am 02 August 2022, 10:53:04
So, ich war gestern fleißig und habe fhempy zunächst lokal und dann remote in Betrieb genommen. Lob an alle Entwickler. Ging völlig problemlos und auch heute war mein Testventil online. Ich werde demnächst in größerem Maßstab einsteigen.

Interessant fand ich, dass der Peer vom Server erkannt wurde, obwohl er sich in einem anderen Netzwerk befand (VPN-Tunnel). Aber wenn mehr geht als erwartet, freut einen das und man sollte nicht anfangen zu grübeln  :)

Nur nochmal zur Sicherheit: Auf dem Peer müssen die gleichen Python-Pakete installiert werden wie auf dem FHEM-Server. Die Einstellungen in der bluetooth.conf sind ebenfalls die gleichen, mit Ausnahme des Users (pi statt fhem). Wenn das so stimmt würde ich mich an den Wiki-Text machen.

Im Screenshot im Git werden als Reading auch Temperatur und Luftfeuchtigkeit angezeigt. Kann es sein, dass ich ein anderes Thermostat habe, das diese Werte nicht liefert bzw. sie anders geliefert werden, so dass die Software das nicht auswerten kann? Meines nennt sich Model N mit Bluetooth. Ein anderes hatte ich aber auch nicht gefunden.

Es wird an verschiedenen Stellen darauf hingewiesen, dass die Firmware 120 erforderlich ist und auf keinen Fall ein Update gemacht werden darf. Mein Thermostat wurde mit FW120 geliefert. Aber was muss man machen, wenn eine neuere FW schon drauf ist? Ich habe im App-Store bei Apple keine ältere App gefunden, um evtl. über diese herunter zu rüsten.

Noch einmal: Tolle Arbeit!

Gruß
Frank
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: denis.robel am 23 September 2022, 21:25:42
Zitat von: F_Klee am 02 August 2022, 10:53:04
Es wird an verschiedenen Stellen darauf hingewiesen, dass die Firmware 120 erforderlich ist und auf keinen Fall ein Update gemacht werden darf. Mein Thermostat wurde mit FW120 geliefert. Aber was muss man machen, wenn eine neuere FW schon drauf ist? Ich habe im App-Store bei Apple keine ältere App gefunden, um evtl. über diese herunter zu rüsten.

Ich habe mehrere Thermostate mit FW146 laufen. Ein Downgrade gibt es leider nicht.
Um die Dinger zum Laufen zu bekommen, müssen die einfach gepaired werden:

Im folgenden Link schauen....
https://github.com/rytilahti/python-eq3bt#pairing (https://github.com/rytilahti/python-eq3bt#pairing)

nachdem Pairing laufen die Thermostate eigentlich. Für das Pairing habe ich FHEM gestoppt, damit das BT Device nicht dauernd belegt wird.
Der einzige Nachteil ist, dass die Thermostate nur mit einem Gerät gepaired werden können. Positv betrachtet ein Zugewinn an Sicherheit :-)
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: denis.robel am 24 September 2022, 06:32:34
Moin moin,

ich bin auch auf fhempy umgestiegen mit 12 Thermostaten. Ich teste das gerade alles, bevor das Heizen demnächst los geht.

Mir ist aufgefallen, dass wenn ein Thermostat offline ist, wegen Batterieausfall, dann steht das ganze fhempy System und wenn zu viele Aktionen laufen, dann stürzt FHEM ab bzw der Raspi friert ein.

Kann man dieses Verhalten unterbinden?

Mein System ist ein Pi 4 mit 8GB RAM, fhempy lokal und einem Peer.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 24 September 2022, 10:30:04
Zitat von: F_Klee am 02 August 2022, 10:53:04
So, ich war gestern fleißig und habe fhempy zunächst lokal und dann remote in Betrieb genommen. Lob an alle Entwickler. Ging völlig problemlos und auch heute war mein Testventil online. Ich werde demnächst in größerem Maßstab einsteigen.

Interessant fand ich, dass der Peer vom Server erkannt wurde, obwohl er sich in einem anderen Netzwerk befand (VPN-Tunnel). Aber wenn mehr geht als erwartet, freut einen das und man sollte nicht anfangen zu grübeln  :)

Nur nochmal zur Sicherheit: Auf dem Peer müssen die gleichen Python-Pakete installiert werden wie auf dem FHEM-Server. Die Einstellungen in der bluetooth.conf sind ebenfalls die gleichen, mit Ausnahme des Users (pi statt fhem). Wenn das so stimmt würde ich mich an den Wiki-Text machen.

Im Screenshot im Git werden als Reading auch Temperatur und Luftfeuchtigkeit angezeigt. Kann es sein, dass ich ein anderes Thermostat habe, das diese Werte nicht liefert bzw. sie anders geliefert werden, so dass die Software das nicht auswerten kann? Meines nennt sich Model N mit Bluetooth. Ein anderes hatte ich aber auch nicht gefunden.

Es wird an verschiedenen Stellen darauf hingewiesen, dass die Firmware 120 erforderlich ist und auf keinen Fall ein Update gemacht werden darf. Mein Thermostat wurde mit FW120 geliefert. Aber was muss man machen, wenn eine neuere FW schon drauf ist? Ich habe im App-Store bei Apple keine ältere App gefunden, um evtl. über diese herunter zu rüsten.

Noch einmal: Tolle Arbeit!

Gruß
Frank

Danke für die Rückmeldung!
Temperatur und Humidity bekommst du leider nicht über das Thermostat, das habe ich über einen Sensor mit DOIF in das Device gesetzt.

Wg. neuer Firmware scheint es auch schon Infos zu geben wie denis.robel geschrieben hat (hab es selbst nicht probiert).
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 24 September 2022, 10:32:01
Zitat von: denis.robel am 24 September 2022, 06:32:34
Moin moin,

ich bin auch auf fhempy umgestiegen mit 12 Thermostaten. Ich teste das gerade alles, bevor das Heizen demnächst los geht.

Mir ist aufgefallen, dass wenn ein Thermostat offline ist, wegen Batterieausfall, dann steht das ganze fhempy System und wenn zu viele Aktionen laufen, dann stürzt FHEM ab bzw der Raspi friert ein.

Kann man dieses Verhalten unterbinden?

Mein System ist ein Pi 4 mit 8GB RAM, fhempy lokal und einem Peer.

Hast du dazu ein fhempy.log wo der Fehler ersichtlich ist? Ich kann es bei mir nämlich nicht reproduzieren, hatte selbst gerade erst Batterien gewechselt. keep_connected hast du auf on?
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: denis.robel am 24 September 2022, 12:12:08
Zitat von: dominik am 24 September 2022, 10:32:01
Hast du dazu ein fhempy.log wo der Fehler ersichtlich ist? Ich kann es bei mir nämlich nicht reproduzieren, hatte selbst gerade erst Batterien gewechselt. keep_connected hast du auf on?

Ja hab ich:


During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/generic.py", line 189, in _handle_task_result
    task.result()
  File "/opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/generic.py", line 183, in _run_coro
    await coro
  File "/opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/eq3bt/eq3bt.py", line 364, in set_and_update
    await utils.run_blocking(fct)
  File "/opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/utils.py", line 35, in run_blocking
    return await asyncio.get_event_loop().run_executor(pool, function)
  File "/usr/lib/python3.9/concurrent/futures/thread.py", line 52, in run
    result = self.fn(*self.args, **self.kwargs)
  File "/opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/eq3bt/eq3bt.py", line 538, in set_target_temperature
    self.target_temperature = temp
  File "/opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/eq3bt/eq3btsmart.py", line 267, in target_temperature
    self._conn.make_request(PROP_WRITE_HANDLE, value)
  File "/opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/eq3bt/connection.py", line 198, in make_request
    with self:
  File "/opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/eq3bt/connection.py", line 152, in __enter__
    self._conn.connect(
  File "/opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/eq3bt/connection.py", line 67, in connect
    self._connect(addr, addrType, iface, timeout)
  File "/opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/eq3bt/connection.py", line 58, in _connect
    raise btle.BTLEDisconnectError(
bluepy.btle.BTLEDisconnectError: Failed to connect to peripheral 00:1A:22:0C:59:03, addr type: public



EDIT: keep_connected ist auf on bei allen Thermostaten.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 24 September 2022, 12:13:47
Hmmm...das ist nur der Fehler, dass keine Verbindung hergestellt werden kann. Kannst du den Fehler regelmäßig reproduzieren? Also so, dass es blockt. Weil trotz der Meldung sollte nix blocken.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: F_Klee am 24 September 2022, 15:09:05
ZitatTemperatur und Humidity bekommst du leider nicht über das Thermostat

Da rytilahti in seiner Software die Temperatur auch auslesen kann, scheint das Ventil die Daten zu liefern. Vielleicht kann man das bei Gelegenheit noch in die Software integrieren.

Beim Wochenprogramm fiel mir auf, dass der Freitag fehlt. Ist für mich nicht wichtig, aber vielleicht gibt es hier ja noch ein Problem.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 24 September 2022, 21:11:58
Wo hast du die Info gefunden, dass die aktuelle Temperatur ausgelesen wird? Ich konnte nix finden.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: F_Klee am 24 September 2022, 21:26:04
Ich glaube, ich habe mich vertan. Es gibt ein temp-Kommando. Das meint aber wahrscheinlich die Soll-Temperatur.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Sebastian84 am 13 Oktober 2022, 12:57:42
Guten Tag
Ich bekomm jetzt Folgenen Fehler.

   
Save config
anyViews
0_System
1_UG
2_EG
3_1.OG
4_2.OG
Wecker.Aus 5_Klingel
6_Heizung
7_Muelltonne
8_Zuhause
 

     9_Batterie
FBDECT
Garten
HUEDevice
ge_wht_steckdose Keller
Plots
Unsorted
fhempy
icoEverything Everything
Commandref
Remote doc
Edit files
Select style
Event monitor

Failed to execute function Set: Traceback (most recent call last):
  File "/opt/fhem/.local/lib/python3.7/site-packages/fhempy/lib/fhem_pythonbinding.py", line 367, in handle_function
    ret = await self.execute_function(hash, fhem_reply_done, nmInstance)
  File "/opt/fhem/.local/lib/python3.7/site-packages/fhempy/lib/fhem_pythonbinding.py", line 440, in execute_function
    fct_timeout,
  File "/usr/lib/python3.7/asyncio/tasks.py", line 416, in wait_for
    return fut.result()
  File "/opt/fhem/.local/lib/python3.7/site-packages/fhempy/lib/generic.py", line 175, in Set
    return await utils.handle_set(self._conf_set, self, hash, args, argsh)
  File "/opt/fhem/.local/lib/python3.7/site-packages/fhempy/lib/utils.py", line 289, in handle_set
    return await fct_call(hash, final_params)
  File "/opt/fhem/.local/lib/python3.7/site-packages/fhempy/lib/eq3bt/eq3bt.py", line 390, in set_desiredTemperature
    functools.partial(self.thermostat.set_target_temperature, temp)
AttributeError: 'NoneType' object has no attribute 'set_target_temperature'


Fhemy läuft und zeigt mir einen grünen Kreis an.


 
Save config
anyViews
0_System
1_UG
2_EG
3_1.OG
4_2.OG
Wecker.Aus 5_Klingel
6_Heizung
7_Muelltonne
8_Zuhause
 

     9_Batterie
FBDECT
Garten
HUEDevice
ge_wht_steckdose Keller
Plots
Unsorted
fhempy
icoEverything Everything
Commandref
Remote doc
Edit files
Select style
Event monitor

Internals:
   CFGFN     
   DEF        0
   FD         62
   FUUID      6347e9db-f33f-cdd4-6f3c-3260b5c47b18119f
   LAST_START 2022-10-13 12:43:45
   LAST_STOP  2022-10-13 12:43:45
   NAME       fhempyserver_15733
   NR         489
   NTFY_ORDER 50-fhempyserver_15733
   PID        30494
   STARTS     4
   STATE      ???
   TYPE       fhempyServer
   currentlogfile ./log/fhempy-2022-10-13.log
   eventCount 10
   logfile    ./log/fhempy-%Y-%m-%d.log
   CoProcess:
     cmdFn      fhempyServer_getCmd
     name       fhempy
     state      running FHEM/bindings/python/bin/fhempy
   READINGS:
     2022-10-13 12:43:45   fhempy          running FHEM/bindings/python/bin/fhempy
     2022-10-13 12:35:07   python          v3.7.3
Attributes:
   devStateIcon {      my $status_img = "10px-kreis-gruen";;      my $status_txt = "running";;      if (substr(ReadingsVal($name, "fhempy", "running"),0,7) ne "running") {        $status_img = "10px-kreis-rot";;        $status_txt = "stopped";;      }      "<div><a>".FW_makeImage($status_img, $status_txt)."</a><a  href=\"/fhem?cmd.dummy=set $name restart&XHR=1\" title=\"Restart\">".FW_makeImage("audio_repeat")."</a></div>"      }
   group      fhempy
   icon       python
   logfile    ./log/fhempy-%Y-%m-%d.log
   nrarchive  10
   room       fhempy

 


 
Save config
anyViews
0_System
1_UG
2_EG
3_1.OG
4_2.OG
Wecker.Aus 5_Klingel
6_Heizung
7_Muelltonne
8_Zuhause
 

     9_Batterie
FBDECT
Garten
HUEDevice
ge_wht_steckdose Keller
Plots
Unsorted
fhempy
icoEverything Everything
Commandref
Remote doc
Edit files
Select style
Event monitor

Internals:
   BindingType fhempy
   CFGFN     
   DEF        fhempy
   DeviceName ws:127.0.0.1:15733
   FD         68
   FUUID      6347e9db-f33f-cdd4-9a49-5fad43fb588b9c2d
   IP         127.0.0.1
   NAME       fhempy_local
   NR         488
   NTFY_ORDER 50-fhempy_local
   PARTIAL   
   PORT       15733
   STATE      opened
   TYPE       BindingsIo
   WEBSOCKET  1
   binary     1
   connecttime 1665657835.66122
   devioLoglevel 0
   eventCount 23
   localBinding 1
   nextOpenDelay 10
   prev_error 127.0.0.1: Verbindungsaufbau abgelehnt (111)
   READINGS:
     2022-10-13 12:43:55   hostname        raspberrypi
     2022-10-13 12:43:55   os              posix
     2022-10-13 12:43:55   python          3.7.3
     2022-10-13 12:43:55   release         5.10.103-v7l+
     2022-10-13 12:43:55   state           opened
     2022-10-13 12:43:55   system          Linux
     2022-10-13 12:43:55   version         0.1.506
     2022-10-13 12:43:56   version_available 0.1.506
     2022-10-13 12:43:56   version_release_notes <html><a href="https://github.com/fhempy/fhempy/releases" target="_blank">Release Notes</a></html>
   args:
     fhempy_local
     BindingsIo
     fhempy
   argsh:
Attributes:
   devStateIcon {      my $status_img = "10px-kreis-gruen";;      my $status_txt = "connected";;      my $ver = ReadingsVal($name, "version", "-");;      my $ver_available = ReadingsVal($name, "version_available", $ver);;      my $update_icon = "";;      if ($ver_available ne $ver) {        $status_img = "10px-kreis-gelb";;        $status_txt = "Version ".$ver_available." available for update";;      }      if (ReadingsVal($name, "state", "disconnected") eq "disconnected") {        $status_img = "10px-kreis-rot";;        $status_txt = "disconnected";;      }      $update_icon = "<a  href=\"/fhem?cmd.dummy=set $name update&XHR=1\" title=\"Start ".$ver_available." update\">".FW_makeImage("refresh")."</a>";;      "<div><a>".FW_makeImage($status_img, $status_txt)."</a><a> ".$ver." </a>".$update_icon."</div>"    }
   group      fhempy
   icon       file_json-ld2
   room       fhempy

 

Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 15 Oktober 2022, 21:56:37
Steht das Device auf online? Schau bitte noch im fhempy Log (/opt/fhem/log/fhempy....) nach was da vor dem Fehler noch auftritt.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: Sebastian84 am 20 Oktober 2022, 23:59:13
    2022-10-20 23:47:52,114 - INFO     - fhempy.lib.fhem_pythonbinding: Starting fhempy 0.1.506...
2022-10-20 23:47:52,122 - INFO     - fhempy.lib.fhem_pythonbinding: Waiting for FHEM connection
2022-10-20 23:47:52,180 - INFO     - websockets.server: server listening on 0.0.0.0:15733
2022-10-20 23:47:53,495 - INFO     - websockets.server: connection open
2022-10-20 23:47:53,497 - INFO     - fhempy.lib.fhem_pythonbinding: Incoming FHEM connection: 127.0.0.1
2022-10-20 23:49:27,091 - ERROR    - dbus.proxies: Introspect error on :1.5:/: dbus.exceptions.DBusException: org.freedesktop.DBus.Error.AccessDenied: Rejected send message, 2 matched rules; type="method_call", sender=":1.30" (uid=999 pid=8379 comm="python3 FHEM/bindings/python/bin/fhempy --local ") interface="org.freedesktop.DBus.Introspectable" member="Introspect" error name="(unset)" requested_reply="0" destination=":1.5" (uid=0 pid=492 comm="/usr/lib/bluetooth/bluetoothd ")
2022-10-20 23:49:27,092 - ERROR    - eq3bt: Please add following configuration to /etc/dbus-1/system.d/bluetooth.conf:
<policy user="fhem">
    <allow own="org.bluez"/>
    <allow send_destination="org.bluez"/>
    <allow send_interface="org.bluez.GattCharacteristic1"/>
    <allow send_interface="org.bluez.GattDescriptor1"/>
    <allow send_interface="org.freedesktop.DBus.ObjectManager"/>
    <allow send_interface="org.freedesktop.DBus.Properties"/>
</policy>

ATTENTION: On remote device change the user account above to the one which runs fhempy (e.g. pi)

Restart dbus afterwards: sudo systemctl restart dbus
2022-10-20 23:49:57,837 - INFO     - fhempy.lib.fhem_pythonbinding: Start update...
2022-10-20 23:49:57,839 - INFO     - fhempy.lib.pkg_installer: Attempting install of fhempy
2022-10-20 23:50:11,069 - INFO     - fhempy.lib.pkg_installer: Successfully installed fhempy update!
2022-10-20 23:50:11,085 - INFO     - fhempy.lib.fhem_pythonbinding: Restart initiated...
2022-10-20 23:50:11,088 - INFO     - fhempy.lib.fhem_pythonbinding: All modules successfully undefined!
2022-10-20 23:50:11,089 - INFO     - websockets.server: server closing
2022-10-20 23:50:21,111 - INFO     - websockets.server: connection closed
2022-10-20 23:50:21,112 - INFO     - websockets.server: server closed
2022-10-20 23:50:21,114 - INFO     - fhempy.lib.fhem_pythonbinding: Exit 1
2022-10-20 23:50:22,048 - INFO     - fhempy.lib.fhem_pythonbinding: Starting fhempy 0.1.508...
2022-10-20 23:50:22,055 - INFO     - fhempy.lib.fhem_pythonbinding: Waiting for FHEM connection
2022-10-20 23:50:22,095 - INFO     - websockets.server: server listening on 0.0.0.0:15733
2022-10-20 23:50:31,487 - INFO     - websockets.server: connection open
2022-10-20 23:50:31,490 - INFO     - fhempy.lib.fhem_pythonbinding: Incoming FHEM connection: 127.0.0.1
2022-10-20 23:50:32,096 - ERROR    - dbus.proxies: Introspect error on :1.5:/: dbus.exceptions.DBusException: org.freedesktop.DBus.Error.AccessDenied: Rejected send message, 2 matched rules; type="method_call", sender=":1.31" (uid=999 pid=10064 comm="python3 FHEM/bindings/python/bin/fhempy --local ") interface="org.freedesktop.DBus.Introspectable" member="Introspect" error name="(unset)" requested_reply="0" destination=":1.5" (uid=0 pid=492 comm="/usr/lib/bluetooth/bluetoothd ")
2022-10-20 23:50:32,097 - ERROR    - eq3bt: Please add following configuration to /etc/dbus-1/system.d/bluetooth.conf:
<policy user="fhem">
    <allow own="org.bluez"/>
    <allow send_destination="org.bluez"/>
    <allow send_interface="org.bluez.GattCharacteristic1"/>
    <allow send_interface="org.bluez.GattDescriptor1"/>
    <allow send_interface="org.freedesktop.DBus.ObjectManager"/>
    <allow send_interface="org.freedesktop.DBus.Properties"/>
</policy>

ATTENTION: On remote device change the user account above to the one which runs fhempy (e.g. pi)

Restart dbus afterwards: sudo systemctl restart dbus
2022-10-20 23:52:25,556 - INFO     - fhempy.lib.fhem_pythonbinding: Shutdown initiated...
2022-10-20 23:52:25,563 - INFO     - fhempy.lib.fhem_pythonbinding: All modules successfully undefined!
2022-10-20 23:52:25,565 - INFO     - websockets.server: server closing
2022-10-20 23:52:27,037 - INFO     - fhempy.lib.fhem_pythonbinding: Shutdown is already running, keep calm.
2022-10-20 23:52:28,971 - INFO     - fhempy.lib.fhem_pythonbinding: Starting fhempy 0.1.508...
2022-10-20 23:52:28,979 - INFO     - fhempy.lib.fhem_pythonbinding: Waiting for FHEM connection
2022-10-20 23:52:29,019 - INFO     - websockets.server: server listening on 0.0.0.0:15733
2022-10-20 23:52:38,259 - INFO     - websockets.server: connection open
2022-10-20 23:52:38,262 - INFO     - fhempy.lib.fhem_pythonbinding: Incoming FHEM connection: 127.0.0.1
2022-10-20 23:52:38,657 - ERROR    - dbus.proxies: Introspect error on :1.5:/: dbus.exceptions.DBusException: org.freedesktop.DBus.Error.AccessDenied: Rejected send message, 2 matched rules; type="method_call", sender=":1.32" (uid=999 pid=11426 comm="python3 FHEM/bindings/python/bin/fhempy --local ") interface="org.freedesktop.DBus.Introspectable" member="Introspect" error name="(unset)" requested_reply="0" destination=":1.5" (uid=0 pid=492 comm="/usr/lib/bluetooth/bluetoothd ")
2022-10-20 23:52:38,658 - ERROR    - eq3bt: Please add following configuration to /etc/dbus-1/system.d/bluetooth.conf:
<policy user="fhem">
    <allow own="org.bluez"/>
    <allow send_destination="org.bluez"/>
    <allow send_interface="org.bluez.GattCharacteristic1"/>
    <allow send_interface="org.bluez.GattDescriptor1"/>
    <allow send_interface="org.freedesktop.DBus.ObjectManager"/>
    <allow send_interface="org.freedesktop.DBus.Properties"/>
</policy>

ATTENTION: On remote device change the user account above to the one which runs fhempy (e.g. pi)

Restart dbus afterwards: sudo systemctl restart dbus
2022-10-20 23:53:22,917 - ERROR    - eq3bt: Exception raised by task: <Task finished coro=<FhemModule._run_coro() done, defined at /opt/fhem/.local/lib/python3.7/site-packages/fhempy/lib/generic.py:183> exception=AttributeError("'NoneType' object has no attribute 'update_all'") created at /usr/lib/python3.7/asyncio/tasks.py:325>
Traceback (most recent call last):
  File "/opt/fhem/.local/lib/python3.7/site-packages/fhempy/lib/generic.py", line 191, in _handle_task_result
    task.result()
  File "/opt/fhem/.local/lib/python3.7/site-packages/fhempy/lib/generic.py", line 185, in _run_coro
    await coro
  File "/opt/fhem/.local/lib/python3.7/site-packages/fhempy/lib/eq3bt/eq3bt.py", line 218, in update_all
    pool, functools.partial(self.thermostat.update_all)
AttributeError: 'NoneType' object has no attribute 'update_all' 
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: F_Klee am 14 Dezember 2022, 15:53:39
Hallo Leute,
ich teste gerade fhempy mit eq3bt. Da ich einige Satelliten benötige und Raspberry Pi zur Zeit schlecht zu bekommen sind, habe ich den RockPi Zero (mit Armbian) ausprobiert. Funktioniert prima. Mein RockPi hat eine externe Antenne. Dadurch scheint sich eine größere Reichweite gegenüber einem RasPi 3 zu ergeben. Nun schaue ich, wie sich das Ventil verhält bevor ich mir weitere zulege und endgültig einbaue.

Beim Update der fhempy-Peers (habe zwei Stück zum Testen plus local) fiel mir auf, dass die Meldung "update finished...please wait" am Ende stehen blieb. Erst nach einem Restart des Peers (Dienst reichte nicht) wurde die neue Version angezeigt.
Desweiteren konnte ich zwar ein "off" zum Ventil senden, bei einem anschließenden "on" stand im Auswahlfeld für das set-Kommando nur noch "error". Ein setzen auf "Comfort" schaltete das Ventil wieder ein.

Ich werde weiter testen und berichten.

Gruß
Frank
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: F_Klee am 14 Dezember 2022, 17:13:20
Wollte gerade einmal in die Log-Datei schauen. Folgende URL wurde im Browser aufgerufen

8083/fhem?detail=fhempy_log

Die Seite war leer. Ich habe die Log-Dateien auf ein Datenlaufwerk ausgelagert. Dort werden alle Log-Dateien (FHEM und Devices) korrekt angelegt und auch angezeigt. Die fhempy Log-Dateien werden auch korrekt angelegt. Nur nicht angezeigt. Kann es sein, dass es beim Auslagern der Log-Dateien noch ein Problem gibt?

Gruß
Frank
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 17 Dezember 2022, 21:01:38
Stimmt, das Logfile wird nicht angelegt. Danke für die Info! Ist beim nächsten Update gefixed.

"update finished...please wait" könnte hängen bleiben, wenn der Bluetooth Prozess hängt. Du kannst mal versuchen einen Bluetooth reset zu machen um zu prüfen ob es dann geht.
Probier das mit dem "on" bitte nochmals, wenn "error" kommt, poste bitte das FHEM und fhempy Log. Das fhempy Log am Peer bekommst du mit journalctl -u fhempy
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: F_Klee am 18 Dezember 2022, 15:56:34
Hallo Dominik,
den beschriebenen Fehler mit "error" in der set-Auswahlliste konnte ich nicht mehr nachstellen. Allerdings habe ich festgestellt, dass es wohl bei verschiedenen Skins Probleme gibt. Auf dem PC nutze ich f18. Dort funktionieren alle set-Befehle wie sie sollen. Allerdings verschwindet manchmal die set-Zeile mit dem Auswahlfeld komplett. Auf dem Handy hatte ich iOS12 als Oberfläche. Dort kann ich die desiredTemperature setzen. Bei anderen Kommandos bekomme ich "too many parameters provided 4.5". Stelle ich auf f18 um, dann funktionieren die Einstellungen auch vom Handy. Üblicherweise stelle ich die Werte aber über das FTUI. Das funktioniert, wie auch die direkte Eingabe in die Befehlszeile unabhängig von der Oberfläche funktioniert.
Für mich reicht das eigentlich. Meine Mieterin ist nicht so technikaffin, dass ich ihr mit FhemWEB kommen könnte. Am wahrscheinlichsten ist, dass sie das Drehrad am Thermostat benutzt  ;D

Nachdem ich beim Probieren etwas verwundert war und mal in der Anleitung nachgelesen habe musste ich feststellen, dass "on" nicht das Gegenteil von "off" ist. Mit "on" wird ein Stromsparmodus für den Sommer aktiviert (Ventil komplett offen - desiredTemperature 30,0), während "off" ein Frostschutz ist (Ventil komplett geschlossen - desiredTemperature 4,5). Aufgehoben wird der jeweilige Modus durch Einstellen einer neuen Solltemperatur.

Ich hatte auch schon mal einen Text für das Wiki entworfen, wobei ich das Thermostat als Aufhänger genommen habe und sowohl das Modul 10_EQ3BT als auch die fhempy-Installation für das Thermostat beschreibe. Ich überlege, ob ein anderer Ansatz nicht sinnvoller wäre, nämlich ein Kapitel Installation fhempy und ein zweites Kapitel Thermostat mit den zwei Varianten. Ist das 10_EQ3BT eigentlich noch aktiv und in der Weiterentwicklung oder soll das aussterben und auch gar nicht mehr ins Wiki?

Gruß
Frank
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 18 Dezember 2022, 22:28:22
Hi Frank,

also wenn du ein Wiki über die fhempy Installation + Thermostat Nutzung machst, wäre ich dir sehr dankbar!! :)

Mit on/off das ist hardcoded so wie du es beschrieben hast. Was würdest du dir bei on erwarten? In der Standard App gibt es glaube ich gar kein "on". Ich könnte mir vorstellen, dass ich einfach die letzte Temperature != 4.5 (=OFF) speichere und das dann für "on" verwendet wird.

Danke für die Info mit den Skins! Das hatte ich natürlich überhaupt nicht am Radar. Ich schreibe den helpText direkt über JavaScript, womöglich gibt es da mittlerweile bessere Varianten die dann Skin unabhängig sind. Dann schau ich mir noch an.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: mayonezo am 22 Dezember 2022, 22:11:17
Hallo zusammen,

ist es bei euch auch so, dass das Einstellen der Offset Temperatur keinen Effekt hat, wenn es über Bluetooth passiert? Meine Thermostate zeigen zwar die neue Offset-Temperatur an, die Ventile reagieren aber nur, wenn ich den Offset direkt an den Thermostaten einstelle. Hier gibt es auch einen Forenbeitrag dazu:

https://de.elv.com/forum/temperatur-offset-scheint-wirkungslos-zu-sein-18916 (https://de.elv.com/forum/temperatur-offset-scheint-wirkungslos-zu-sein-18916)

Kann man da von fhempy-Seite aus was machen oder ist das einfach ein Fehler der Thermostate?
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: F_Klee am 22 Dezember 2022, 22:38:54
Ich spiele zur Zeit erst einmal mit einem Thermostat. Auch bei mir änderte sich an der Ventilstellung nichts trotz tempOffset -3,5 Grad. Ich habe es aber noch nicht weiter verfolgt. Da bei direkter Einstellung am Thermostat die Ventilstellung direkt angepasst wird, scheint eine Verzögerung als Grund weg zu fallen (hatte ich zuerst vermutet). Es scheint wohl ein Problem des Thermostats zu sein. Werde ich demnächst mal genauer hinschauen.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: F_Klee am 28 Dezember 2022, 14:29:28
Hallo Leute,
ich habe einen Wiki-Artikel https://wiki.fhem.de/wiki/Einrichten_der_Bluetooth-Thermostate_von_eQ-3 (https://wiki.fhem.de/wiki/Einrichten_der_Bluetooth-Thermostate_von_eQ-3) erstellt. Da ich selbst Anfänger bin, haben sich sicher noch ein paar Fehler eingeschlichen. Schaut doch mal bitte drüber, ob das so OK ist. In dem Kapitel "Bekannte Probleme" könnt ihr gerne von euren Problemerfahrungen und deren eventuellen Lösungen berichten.

Gruß
Frank
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: F_Klee am 28 Dezember 2022, 17:36:53
Zum Thema Offset-Temperatur konnte ich das Problem bestätigen (Vers. 120). Die neue Offset-Temperatur wird zum Thermostat übertragen und dort gespeichert. Zur Regelung wird dieser Wert erst dann genutzt, wenn man am Thermostat den Menüpunkt aufruft und die eingestellte Offset-Temperatur - ohne sie zu ändern - bestätigt. Da die App-Nutzer das gleiche Problem haben, ist das ein Fehler der Thermostat-Software. Da man die Offset-Temperatur aber nur einmal einstellen muss halte ich das aber nur für ein kleines Problem.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: denis.robel am 29 Dezember 2022, 11:56:50
Hallo Frank,

habe gerade mal quer gelesen im Wiki.
Es ist für mich nachvollziehbar und ich habe auf den ersten Blick keine gravierenden Fehler gefunden.

Vielen Dank für den Beitrag.
Titel: Unzuverlässige Verbindung und bluepy-helper bei 100%
Beitrag von: mayonezo am 07 Januar 2023, 13:28:54
Hallo zusammen,

ich habe Probleme mit bluepy-helper, das immer wieder mal 100% CPU Auslastung per top anzeigt. Außerdem sind die Verbindungen zu den Thermostaten unzuverlässig. Ein Neustart von fhem hilft dann meistens, dass es wieder geht.

An der Bluetooth Reichweite sollte es nicht liegen, ich habe einen Bluetooth Adapter gekauft, der 100m Reichweite angibt und der sich im Wohnzimmer befindet, in Sichtlinie zu 2 der Thermostate.

Kann mir jemand helfen das zu debuggen? Ich habe mal das fhempy-Log von heute angehängt, da ist auch immer mal wieder ein "broken pipe" Eintrag dazwischen.Die meisten update ERRORs habe ich noch entfernt. bluepy-helper wurde ca. um 13:02 Uhr per killall beendet:

2023-01-07 00:00:35,756 - ERROR    - Arbeitszimmer_Thermostat: Failed to update, retry in 60s
2023-01-07 00:00:35,759 - ERROR    - Kinderzimmer_Thermostat: Failed to update, retry in 60s
2023-01-07 00:00:35,766 - ERROR    - Wohnzimmer_Thermostat_Klein: Failed to update, retry in 60s
2023-01-07 00:01:35,819 - ERROR    - Arbeitszimmer_Thermostat: Failed to update, retry in 60s
2023-01-07 00:01:35,823 - ERROR    - Kinderzimmer_Thermostat: Failed to update, retry in 60s
2023-01-07 00:01:35,831 - ERROR    - Wohnzimmer_Thermostat_Klein: Failed to update, retry in 60s
2023-01-07 03:10:56,018 - ERROR    - Wohnzimmer_Thermostat_Klein: Exception raised by task: <Task finished name='Task-1016973' coro=<FhemModule._run_coro() done, defined at /opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/generic.py:194> exception=BrokenPipeError(32, 'Broken pipe') created at /usr/lib/python3.9/asyncio/tasks.py:361>
Traceback (most recent call last):
  File "/opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/generic.py", line 202, in _handle_task_result
    task.result()
  File "/opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/generic.py", line 196, in _run_coro
    await coro
  File "/opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/eq3bt/eq3bt.py", line 364, in set_and_update
    await utils.run_blocking(fct)
  File "/opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/utils.py", line 72, in run_blocking
    return await asyncio.get_event_loop().run_in_executor(pool, function)
  File "/usr/lib/python3.9/concurrent/futures/thread.py", line 52, in run
    result = self.fn(*self.args, **self.kwargs)
  File "/opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/eq3bt/eq3bt.py", line 538, in set_target_temperature
    self.target_temperature = temp
  File "/opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/eq3bt/eq3btsmart.py", line 267, in target_temperature
    self._conn.make_request(PROP_WRITE_HANDLE, value)
  File "/opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/eq3bt/connection.py", line 198, in make_request
    with self:
  File "/opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/eq3bt/connection.py", line 128, in __enter__
    conn_state = self._conn.getState()
  File "/opt/fhem/.local/lib/python3.9/site-packages/bluepy/btle.py", line 471, in getState
    status = self.status()
  File "/opt/fhem/.local/lib/python3.9/site-packages/bluepy/btle.py", line 378, in status
    self._writeCmd("stat\n")
  File "/opt/fhem/.local/lib/python3.9/site-packages/bluepy/btle.py", line 304, in _writeCmd
    self._helper.stdin.write(cmd)
BrokenPipeError: [Errno 32] Broken pipe
2023-01-07 03:23:45,532 - ERROR    - Wohnzimmer_Thermostat_Klein: Failed to update, retry in 60s
2023-01-07 03:24:17,701 - ERROR    - Wohnzimmer_Thermostat_Klein: Exception raised by task: <Task finished name='Task-1019067' coro=<FhemModule._run_coro() done, defined at /opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/generic.py:194> exception=BrokenPipeError(32, 'Broken pipe') created at /usr/lib/python3.9/asyncio/tasks.py:361>
Traceback (most recent call last):
  File "/opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/generic.py", line 202, in _handle_task_result
    task.result()
  File "/opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/generic.py", line 196, in _run_coro
    await coro
  File "/opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/eq3bt/eq3bt.py", line 364, in set_and_update
    await utils.run_blocking(fct)
  File "/opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/utils.py", line 72, in run_blocking
    return await asyncio.get_event_loop().run_in_executor(pool, function)
  File "/usr/lib/python3.9/concurrent/futures/thread.py", line 52, in run
    result = self.fn(*self.args, **self.kwargs)
  File "/opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/eq3bt/eq3bt.py", line 538, in set_target_temperature
    self.target_temperature = temp
  File "/opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/eq3bt/eq3btsmart.py", line 267, in target_temperature
    self._conn.make_request(PROP_WRITE_HANDLE, value)
  File "/opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/eq3bt/connection.py", line 198, in make_request
    with self:
  File "/opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/eq3bt/connection.py", line 128, in __enter__
    conn_state = self._conn.getState()
  File "/opt/fhem/.local/lib/python3.9/site-packages/bluepy/btle.py", line 471, in getState
    status = self.status()
  File "/opt/fhem/.local/lib/python3.9/site-packages/bluepy/btle.py", line 378, in status
    self._writeCmd("stat\n")
  File "/opt/fhem/.local/lib/python3.9/site-packages/bluepy/btle.py", line 304, in _writeCmd
    self._helper.stdin.write(cmd)
BrokenPipeError: [Errno 32] Broken pipe
2023-01-07 03:24:45,564 - ERROR    - Arbeitszimmer_Thermostat: Failed to update, retry in 60s
2023-01-07 09:37:03,298 - ERROR    - Wohnzimmer_Thermostat_Klein: Failed to update, retry in 60s
2023-01-07 09:37:51,117 - ERROR    - Wohnzimmer_Thermostat_Klein: Exception raised by task: <Task finished name='Task-1075651' coro=<FhemModule._run_coro() done, defined at /opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/generic.py:194> exception=BrokenPipeError(32, 'Broken pipe') created at /usr/lib/python3.9/asyncio/tasks.py:361>
Traceback (most recent call last):
  File "/opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/generic.py", line 202, in _handle_task_result
    task.result()
  File "/opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/generic.py", line 196, in _run_coro
    await coro
  File "/opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/eq3bt/eq3bt.py", line 364, in set_and_update
    await utils.run_blocking(fct)
  File "/opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/utils.py", line 72, in run_blocking
    return await asyncio.get_event_loop().run_in_executor(pool, function)
  File "/usr/lib/python3.9/concurrent/futures/thread.py", line 52, in run
    result = self.fn(*self.args, **self.kwargs)
  File "/opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/eq3bt/eq3bt.py", line 538, in set_target_temperature
    self.target_temperature = temp
  File "/opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/eq3bt/eq3btsmart.py", line 267, in target_temperature
    self._conn.make_request(PROP_WRITE_HANDLE, value)
  File "/opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/eq3bt/connection.py", line 198, in make_request
    with self:
  File "/opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/eq3bt/connection.py", line 128, in __enter__
    conn_state = self._conn.getState()
  File "/opt/fhem/.local/lib/python3.9/site-packages/bluepy/btle.py", line 471, in getState
    status = self.status()
  File "/opt/fhem/.local/lib/python3.9/site-packages/bluepy/btle.py", line 378, in status
    self._writeCmd("stat\n")
  File "/opt/fhem/.local/lib/python3.9/site-packages/bluepy/btle.py", line 304, in _writeCmd
    self._helper.stdin.write(cmd)
BrokenPipeError: [Errno 32] Broken pipe
2023-01-07 09:37:54,701 - ERROR    - Wohnzimmer_Thermostat_Klein: Exception raised by task: <Task finished name='Task-1075704' coro=<FhemModule._run_coro() done, defined at /opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/generic.py:194> exception=BrokenPipeError(32, 'Broken pipe') created at /usr/lib/python3.9/asyncio/tasks.py:361>
Traceback (most recent call last):
  File "/opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/generic.py", line 202, in _handle_task_result
    task.result()
  File "/opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/generic.py", line 196, in _run_coro
    await coro
  File "/opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/eq3bt/eq3bt.py", line 364, in set_and_update
    await utils.run_blocking(fct)
  File "/opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/utils.py", line 72, in run_blocking
    return await asyncio.get_event_loop().run_in_executor(pool, function)
  File "/usr/lib/python3.9/concurrent/futures/thread.py", line 52, in run
    result = self.fn(*self.args, **self.kwargs)
  File "/opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/eq3bt/eq3bt.py", line 538, in set_target_temperature
    self.target_temperature = temp
  File "/opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/eq3bt/eq3btsmart.py", line 267, in target_temperature
    self._conn.make_request(PROP_WRITE_HANDLE, value)
  File "/opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/eq3bt/connection.py", line 198, in make_request
    with self:
  File "/opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/eq3bt/connection.py", line 128, in __enter__
    conn_state = self._conn.getState()
  File "/opt/fhem/.local/lib/python3.9/site-packages/bluepy/btle.py", line 471, in getState
    status = self.status()
  File "/opt/fhem/.local/lib/python3.9/site-packages/bluepy/btle.py", line 378, in status
    self._writeCmd("stat\n")
  File "/opt/fhem/.local/lib/python3.9/site-packages/bluepy/btle.py", line 304, in _writeCmd
    self._helper.stdin.write(cmd)
BrokenPipeError: [Errno 32] Broken pipe
2023-01-07 09:38:03,239 - ERROR    - Arbeitszimmer_Thermostat: Failed to update, retry in 60s
2023-01-07 09:38:03,330 - ERROR    - Kinderzimmer_Thermostat: Failed to update, retry in 60s
2023-01-07 09:38:03,340 - ERROR    - Wohnzimmer_Thermostat_Klein: Failed to update, retry in 60s
2023-01-07 09:39:03,279 - ERROR    - Arbeitszimmer_Thermostat: Failed to update, retry in 60s
2023-01-07 09:39:03,373 - ERROR    - Kinderzimmer_Thermostat: Failed to update, retry in 60s
2023-01-07 09:39:03,384 - ERROR    - Wohnzimmer_Thermostat_Klein: Failed to update, retry in 60s
2023-01-07 09:40:03,322 - ERROR    - Arbeitszimmer_Thermostat: Failed to update, retry in 60s
2023-01-07 09:40:03,417 - ERROR    - Kinderzimmer_Thermostat: Failed to update, retry in 60s
2023-01-07 09:40:03,459 - ERROR    - Wohnzimmer_Thermostat_Klein: Failed to update, retry in 60s
2023-01-07 09:40:35,167 - ERROR    - Wohnzimmer_Thermostat_Klein: Exception raised by task: <Task finished name='Task-1076228' coro=<FhemModule._run_coro() done, defined at /opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/generic.py:194> exception=BrokenPipeError(32, 'Broken pipe') created at /usr/lib/python3.9/asyncio/tasks.py:361>
Traceback (most recent call last):
  File "/opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/generic.py", line 202, in _handle_task_result
    task.result()
  File "/opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/generic.py", line 196, in _run_coro
    await coro
  File "/opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/eq3bt/eq3bt.py", line 364, in set_and_update
    await utils.run_blocking(fct)
  File "/opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/utils.py", line 72, in run_blocking
    return await asyncio.get_event_loop().run_in_executor(pool, function)
  File "/usr/lib/python3.9/concurrent/futures/thread.py", line 52, in run
    result = self.fn(*self.args, **self.kwargs)
  File "/opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/eq3bt/eq3bt.py", line 538, in set_target_temperature
    self.target_temperature = temp
  File "/opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/eq3bt/eq3btsmart.py", line 267, in target_temperature
    self._conn.make_request(PROP_WRITE_HANDLE, value)
  File "/opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/eq3bt/connection.py", line 198, in make_request
    with self:
  File "/opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/eq3bt/connection.py", line 128, in __enter__
    conn_state = self._conn.getState()
  File "/opt/fhem/.local/lib/python3.9/site-packages/bluepy/btle.py", line 471, in getState
    status = self.status()
  File "/opt/fhem/.local/lib/python3.9/site-packages/bluepy/btle.py", line 378, in status
    self._writeCmd("stat\n")
  File "/opt/fhem/.local/lib/python3.9/site-packages/bluepy/btle.py", line 304, in _writeCmd
    self._helper.stdin.write(cmd)
BrokenPipeError: [Errno 32] Broken pipe
2023-01-07 09:40:38,230 - ERROR    - Wohnzimmer_Thermostat_Klein: Exception raised by task: <Task finished name='Task-1076281' coro=<FhemModule._run_coro() done, defined at /opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/generic.py:194> exception=BrokenPipeError(32, 'Broken pipe') created at /usr/lib/python3.9/asyncio/tasks.py:361>
Traceback (most recent call last):
  File "/opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/generic.py", line 202, in _handle_task_result
    task.result()
  File "/opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/generic.py", line 196, in _run_coro
    await coro
  File "/opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/eq3bt/eq3bt.py", line 364, in set_and_update
    await utils.run_blocking(fct)
  File "/opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/utils.py", line 72, in run_blocking
    return await asyncio.get_event_loop().run_in_executor(pool, function)
  File "/usr/lib/python3.9/concurrent/futures/thread.py", line 52, in run
    result = self.fn(*self.args, **self.kwargs)
  File "/opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/eq3bt/eq3bt.py", line 538, in set_target_temperature
    self.target_temperature = temp
  File "/opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/eq3bt/eq3btsmart.py", line 267, in target_temperature
    self._conn.make_request(PROP_WRITE_HANDLE, value)
  File "/opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/eq3bt/connection.py", line 198, in make_request
    with self:
  File "/opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/eq3bt/connection.py", line 128, in __enter__
    conn_state = self._conn.getState()
  File "/opt/fhem/.local/lib/python3.9/site-packages/bluepy/btle.py", line 471, in getState
    status = self.status()
  File "/opt/fhem/.local/lib/python3.9/site-packages/bluepy/btle.py", line 378, in status
    self._writeCmd("stat\n")
  File "/opt/fhem/.local/lib/python3.9/site-packages/bluepy/btle.py", line 304, in _writeCmd
    self._helper.stdin.write(cmd)
BrokenPipeError: [Errno 32] Broken pipe
2023-01-07 10:27:05,668 - ERROR    - Wohnzimmer_Thermostat_Klein: Failed to update, retry in 60s
2023-01-07 10:27:48,070 - ERROR    - Arbeitszimmer_Thermostat: Exception raised by task: <Task finished name='Task-1083425' coro=<FhemModule._run_coro() done, defined at /opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/generic.py:194> exception=BrokenPipeError(32, 'Broken pipe') created at /usr/lib/python3.9/asyncio/tasks.py:361>
Traceback (most recent call last):
  File "/opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/generic.py", line 202, in _handle_task_result
    task.result()
  File "/opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/generic.py", line 196, in _run_coro
    await coro
  File "/opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/eq3bt/eq3bt.py", line 364, in set_and_update
    await utils.run_blocking(fct)
  File "/opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/utils.py", line 72, in run_blocking
    return await asyncio.get_event_loop().run_in_executor(pool, function)
  File "/usr/lib/python3.9/concurrent/futures/thread.py", line 52, in run
    result = self.fn(*self.args, **self.kwargs)
  File "/opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/eq3bt/eq3bt.py", line 538, in set_target_temperature
    self.target_temperature = temp
  File "/opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/eq3bt/eq3btsmart.py", line 267, in target_temperature
    self._conn.make_request(PROP_WRITE_HANDLE, value)
  File "/opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/eq3bt/connection.py", line 198, in make_request
    with self:
  File "/opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/eq3bt/connection.py", line 128, in __enter__
    conn_state = self._conn.getState()
  File "/opt/fhem/.local/lib/python3.9/site-packages/bluepy/btle.py", line 471, in getState
    status = self.status()
  File "/opt/fhem/.local/lib/python3.9/site-packages/bluepy/btle.py", line 378, in status
    self._writeCmd("stat\n")
  File "/opt/fhem/.local/lib/python3.9/site-packages/bluepy/btle.py", line 304, in _writeCmd
    self._helper.stdin.write(cmd)
BrokenPipeError: [Errno 32] Broken pipe
2023-01-07 10:28:05,629 - ERROR    - Arbeitszimmer_Thermostat: Failed to update, retry in 60s
2023-01-07 11:02:07,308 - ERROR    - Wohnzimmer_Thermostat_Klein: Failed to update, retry in 60s
2023-01-07 11:02:29,527 - ERROR    - Arbeitszimmer_Thermostat: Exception raised by task: <Task finished name='Task-1088637' coro=<FhemModule._run_coro() done, defined at /opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/generic.py:194> exception=BrokenPipeError(32, 'Broken pipe') created at /usr/lib/python3.9/asyncio/tasks.py:361>
Traceback (most recent call last):
  File "/opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/generic.py", line 202, in _handle_task_result
    task.result()
  File "/opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/generic.py", line 196, in _run_coro
    await coro
  File "/opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/eq3bt/eq3bt.py", line 364, in set_and_update
    await utils.run_blocking(fct)
  File "/opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/utils.py", line 72, in run_blocking
    return await asyncio.get_event_loop().run_in_executor(pool, function)
  File "/usr/lib/python3.9/concurrent/futures/thread.py", line 52, in run
    result = self.fn(*self.args, **self.kwargs)
  File "/opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/eq3bt/eq3bt.py", line 538, in set_target_temperature
    self.target_temperature = temp
  File "/opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/eq3bt/eq3btsmart.py", line 267, in target_temperature
    self._conn.make_request(PROP_WRITE_HANDLE, value)
  File "/opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/eq3bt/connection.py", line 198, in make_request
    with self:
  File "/opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/eq3bt/connection.py", line 128, in __enter__
    conn_state = self._conn.getState()
  File "/opt/fhem/.local/lib/python3.9/site-packages/bluepy/btle.py", line 471, in getState
    status = self.status()
  File "/opt/fhem/.local/lib/python3.9/site-packages/bluepy/btle.py", line 378, in status
    self._writeCmd("stat\n")
  File "/opt/fhem/.local/lib/python3.9/site-packages/bluepy/btle.py", line 304, in _writeCmd
    self._helper.stdin.write(cmd)
BrokenPipeError: [Errno 32] Broken pipe
2023-01-07 11:03:07,274 - ERROR    - Arbeitszimmer_Thermostat: Failed to update, retry in 60s
2023-01-07 11:03:07,304 - ERROR    - Kinderzimmer_Thermostat: Failed to update, retry in 60s
2023-01-07 11:03:07,337 - ERROR    - Wohnzimmer_Thermostat_Klein: Failed to update, retry in 60s
2023-01-07 11:03:08,012 - INFO     - fhempy.lib.fhem_pythonbinding: Start update...
2023-01-07 11:03:08,015 - INFO     - fhempy.lib.pkg_installer: Attempting install of fhempy
2023-01-07 11:03:34,486 - INFO     - fhempy.lib.pkg_installer: Successfully installed fhempy update!
2023-01-07 11:03:34,507 - INFO     - fhempy.lib.fhem_pythonbinding: Restart initiated...
2023-01-07 11:03:34,540 - INFO     - fhempy.lib.fhem_pythonbinding: All modules successfully undefined!
2023-01-07 11:03:34,544 - INFO     - websockets.server: server closing
2023-01-07 11:03:44,583 - INFO     - websockets.server: connection closed
2023-01-07 11:03:44,586 - INFO     - websockets.server: server closed
2023-01-07 11:03:44,591 - INFO     - fhempy.lib.fhem_pythonbinding: Exit 1
2023-01-07 11:03:47,244 - INFO     - fhempy.lib.fhem_pythonbinding: Starting fhempy 0.1.543...
2023-01-07 11:03:47,254 - INFO     - fhempy.lib.fhem_pythonbinding: Waiting for FHEM connection
2023-01-07 11:03:47,349 - WARNING  - asyncio: Executing <Task pending name='Task-1' coro=<async_main() running at /opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/fhem_pythonbinding.py:616> wait_for=<_GatheringFuture pending cb=[<TaskWakeupMethWrapper object at 0x7f9779fdf0>()] created at /usr/lib/python3.9/asyncio/tasks.py:704> cb=[_run_until_complete_cb() at /usr/lib/python3.9/asyncio/base_events.py:184] created at /usr/lib/python3.9/asyncio/base_events.py:621> took 0.105 seconds
2023-01-07 11:03:47,353 - INFO     - websockets.server: server listening on 0.0.0.0:15733
2023-01-07 11:03:55,646 - INFO     - websockets.server: connection open
2023-01-07 11:03:55,651 - INFO     - fhempy.lib.fhem_pythonbinding: Incoming FHEM connection: 127.0.0.1
2023-01-07 11:45:19,117 - ERROR    - Arbeitszimmer_Thermostat: Failed to update, retry in 60s
2023-01-07 11:46:25,916 - ERROR    - Arbeitszimmer_Thermostat: Failed to update, retry in 60s
2023-01-07 11:47:37,766 - ERROR    - Arbeitszimmer_Thermostat: Failed to update, retry in 60s
2023-01-07 11:55:07,019 - WARNING  - asyncio: Executing <Task pending name='Task-5' coro=<WebSocketCommonProtocol.transfer_data() running at /opt/fhem/.local/lib/python3.9/site-packages/websockets/legacy/protocol.py:945> wait_for=<Future pending cb=[<TaskWakeupMethWrapper object at 0x7f95d5ed30>()] created at /usr/lib/python3.9/asyncio/base_events.py:424> cb=[<TaskWakeupMethWrapper object at 0x7f9779fcd0>(), _wait.<locals>._on_completion() at /usr/lib/python3.9/asyncio/tasks.py:513] created at /opt/fhem/.local/lib/python3.9/site-packages/websockets/legacy/protocol.py:344> took 0.108 seconds
2023-01-07 12:00:08,215 - ERROR    - Arbeitszimmer_Thermostat: Failed to update, retry in 60s
2023-01-07 12:22:16,413 - ERROR    - Arbeitszimmer_Thermostat: Failed to update, retry in 60s
2023-01-07 12:43:40,663 - ERROR    - Arbeitszimmer_Thermostat: Failed to update, retry in 60s
2023-01-07 13:02:55,481 - ERROR    - Wohnzimmer_Thermostat_Klein: Failed to update, retry in 60s
2023-01-07 13:02:55,483 - ERROR    - Kinderzimmer_Thermostat: Failed to update, retry in 60s

2023-01-07 14:01:57,812 - ERROR    - Wohnzimmer_Thermostat_Klein: Failed to update, retry in 60s
2023-01-07 14:01:57,838 - ERROR    - Kinderzimmer_Thermostat: Failed to update, retry in 60s
2023-01-07 14:02:00,745 - ERROR    - Wohnzimmer_Thermostat_Gross: Failed to update, retry in 60s
2023-01-07 14:02:42,063 - ERROR    - Arbeitszimmer_Thermostat: Failed to update, retry in 60s
2023-01-07 14:02:49,034 - ERROR    - Arbeitszimmer_Thermostat: Exception raised by task: <Task finished name='Task-53214' coro=<FhemModule._run_coro() done, defined at /opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/generic.py:194> exception=BrokenPipeError(32, 'Broken pipe') created at /usr/lib/python3.9/asyncio/tasks.py:361>
Traceback (most recent call last):
  File "/opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/generic.py", line 202, in _handle_task_result
    task.result()
  File "/opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/generic.py", line 196, in _run_coro
    await coro
  File "/opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/eq3bt/eq3bt.py", line 364, in set_and_update
    await utils.run_blocking(fct)
  File "/opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/utils.py", line 72, in run_blocking
    return await asyncio.get_event_loop().run_in_executor(pool, function)
  File "/usr/lib/python3.9/concurrent/futures/thread.py", line 52, in run
    result = self.fn(*self.args, **self.kwargs)
  File "/opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/eq3bt/eq3bt.py", line 538, in set_target_temperature
    self.target_temperature = temp
  File "/opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/eq3bt/eq3btsmart.py", line 267, in target_temperature
    self._conn.make_request(PROP_WRITE_HANDLE, value)
  File "/opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/eq3bt/connection.py", line 198, in make_request
    with self:
  File "/opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/eq3bt/connection.py", line 128, in __enter__
    conn_state = self._conn.getState()
  File "/opt/fhem/.local/lib/python3.9/site-packages/bluepy/btle.py", line 471, in getState
    status = self.status()
  File "/opt/fhem/.local/lib/python3.9/site-packages/bluepy/btle.py", line 378, in status
    self._writeCmd("stat\n")
  File "/opt/fhem/.local/lib/python3.9/site-packages/bluepy/btle.py", line 305, in _writeCmd
    self._helper.stdin.flush()
BrokenPipeError: [Errno 32] Broken pipe
2023-01-07 14:02:57,854 - ERROR    - Wohnzimmer_Thermostat_Klein: Failed to update, retry in 60s
2023-01-07 14:02:57,877 - ERROR    - Kinderzimmer_Thermostat: Failed to update, retry in 60s
2023-01-07 14:02:59,197 - ERROR    - Arbeitszimmer_Thermostat: Exception raised by task: <Task finished name='Task-53229' coro=<FhemModule._run_coro() done, defined at /opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/generic.py:194> exception=BrokenPipeError(32, 'Broken pipe') created at /usr/lib/python3.9/asyncio/tasks.py:361>
Traceback (most recent call last):
  File "/opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/generic.py", line 202, in _handle_task_result
    task.result()
  File "/opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/generic.py", line 196, in _run_coro
    await coro
  File "/opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/eq3bt/eq3bt.py", line 364, in set_and_update
    await utils.run_blocking(fct)
  File "/opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/utils.py", line 72, in run_blocking
    return await asyncio.get_event_loop().run_in_executor(pool, function)
  File "/usr/lib/python3.9/concurrent/futures/thread.py", line 52, in run
    result = self.fn(*self.args, **self.kwargs)
  File "/opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/eq3bt/eq3bt.py", line 538, in set_target_temperature
    self.target_temperature = temp
  File "/opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/eq3bt/eq3btsmart.py", line 267, in target_temperature
    self._conn.make_request(PROP_WRITE_HANDLE, value)
  File "/opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/eq3bt/connection.py", line 198, in make_request
    with self:
  File "/opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/eq3bt/connection.py", line 128, in __enter__
    conn_state = self._conn.getState()
  File "/opt/fhem/.local/lib/python3.9/site-packages/bluepy/btle.py", line 471, in getState
    status = self.status()
  File "/opt/fhem/.local/lib/python3.9/site-packages/bluepy/btle.py", line 378, in status
    self._writeCmd("stat\n")
  File "/opt/fhem/.local/lib/python3.9/site-packages/bluepy/btle.py", line 305, in _writeCmd
    self._helper.stdin.flush()
BrokenPipeError: [Errno 32] Broken pipe
2023-01-07 14:03:00,777 - ERROR    - Wohnzimmer_Thermostat_Gross: Failed to update, retry in 60s
2023-01-07 14:03:07,321 - ERROR    - Arbeitszimmer_Thermostat: Exception raised by task: <Task finished name='Task-53240' coro=<FhemModule._run_coro() done, defined at /opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/generic.py:194> exception=BrokenPipeError(32, 'Broken pipe') created at /usr/lib/python3.9/asyncio/tasks.py:361>
Traceback (most recent call last):
  File "/opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/generic.py", line 202, in _handle_task_result
    task.result()
  File "/opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/generic.py", line 196, in _run_coro
    await coro
  File "/opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/eq3bt/eq3bt.py", line 364, in set_and_update
    await utils.run_blocking(fct)
  File "/opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/utils.py", line 72, in run_blocking
    return await asyncio.get_event_loop().run_in_executor(pool, function)
  File "/usr/lib/python3.9/concurrent/futures/thread.py", line 52, in run
    result = self.fn(*self.args, **self.kwargs)
  File "/opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/eq3bt/eq3bt.py", line 538, in set_target_temperature
    self.target_temperature = temp
  File "/opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/eq3bt/eq3btsmart.py", line 267, in target_temperature
    self._conn.make_request(PROP_WRITE_HANDLE, value)
  File "/opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/eq3bt/connection.py", line 198, in make_request
    with self:
  File "/opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/eq3bt/connection.py", line 128, in __enter__
    conn_state = self._conn.getState()
  File "/opt/fhem/.local/lib/python3.9/site-packages/bluepy/btle.py", line 471, in getState
    status = self.status()
  File "/opt/fhem/.local/lib/python3.9/site-packages/bluepy/btle.py", line 378, in status
    self._writeCmd("stat\n")
  File "/opt/fhem/.local/lib/python3.9/site-packages/bluepy/btle.py", line 305, in _writeCmd
    self._helper.stdin.flush()
BrokenPipeError: [Errno 32] Broken pipe
2023-01-07 14:03:13,399 - ERROR    - Arbeitszimmer_Thermostat: Exception raised by task: <Task finished name='Task-53247' coro=<FhemModule._run_coro() done, defined at /opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/generic.py:194> exception=BrokenPipeError(32, 'Broken pipe') created at /usr/lib/python3.9/asyncio/tasks.py:361>
Traceback (most recent call last):
  File "/opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/generic.py", line 202, in _handle_task_result
    task.result()
  File "/opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/generic.py", line 196, in _run_coro
    await coro
  File "/opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/eq3bt/eq3bt.py", line 364, in set_and_update
    await utils.run_blocking(fct)
  File "/opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/utils.py", line 72, in run_blocking
    return await asyncio.get_event_loop().run_in_executor(pool, function)
  File "/usr/lib/python3.9/concurrent/futures/thread.py", line 52, in run
    result = self.fn(*self.args, **self.kwargs)
  File "/opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/eq3bt/eq3bt.py", line 538, in set_target_temperature
    self.target_temperature = temp
  File "/opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/eq3bt/eq3btsmart.py", line 267, in target_temperature
    self._conn.make_request(PROP_WRITE_HANDLE, value)
  File "/opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/eq3bt/connection.py", line 198, in make_request
    with self:
  File "/opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/eq3bt/connection.py", line 128, in __enter__
    conn_state = self._conn.getState()
  File "/opt/fhem/.local/lib/python3.9/site-packages/bluepy/btle.py", line 471, in getState
    status = self.status()
  File "/opt/fhem/.local/lib/python3.9/site-packages/bluepy/btle.py", line 378, in status
    self._writeCmd("stat\n")
  File "/opt/fhem/.local/lib/python3.9/site-packages/bluepy/btle.py", line 305, in _writeCmd
    self._helper.stdin.flush()
BrokenPipeError: [Errno 32] Broken pipe
2023-01-07 14:03:36,807 - ERROR    - Arbeitszimmer_Thermostat: Exception raised by task: <Task finished name='Task-53258' coro=<FhemModule._run_coro() done, defined at /opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/generic.py:194> exception=BrokenPipeError(32, 'Broken pipe') created at /usr/lib/python3.9/asyncio/tasks.py:361>
Traceback (most recent call last):
  File "/opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/generic.py", line 202, in _handle_task_result
    task.result()
  File "/opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/generic.py", line 196, in _run_coro
    await coro
  File "/opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/eq3bt/eq3bt.py", line 364, in set_and_update
    await utils.run_blocking(fct)
  File "/opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/utils.py", line 72, in run_blocking
    return await asyncio.get_event_loop().run_in_executor(pool, function)
  File "/usr/lib/python3.9/concurrent/futures/thread.py", line 52, in run
    result = self.fn(*self.args, **self.kwargs)
  File "/opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/eq3bt/eq3bt.py", line 538, in set_target_temperature
    self.target_temperature = temp
  File "/opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/eq3bt/eq3btsmart.py", line 267, in target_temperature
    self._conn.make_request(PROP_WRITE_HANDLE, value)
  File "/opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/eq3bt/connection.py", line 198, in make_request
    with self:
  File "/opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/eq3bt/connection.py", line 128, in __enter__
    conn_state = self._conn.getState()
  File "/opt/fhem/.local/lib/python3.9/site-packages/bluepy/btle.py", line 471, in getState
    status = self.status()
  File "/opt/fhem/.local/lib/python3.9/site-packages/bluepy/btle.py", line 378, in status
    self._writeCmd("stat\n")
  File "/opt/fhem/.local/lib/python3.9/site-packages/bluepy/btle.py", line 305, in _writeCmd
    self._helper.stdin.flush()
BrokenPipeError: [Errno 32] Broken pipe
2023-01-07 14:03:42,098 - ERROR    - Arbeitszimmer_Thermostat: Failed to update, retry in 60s
2023-01-07 14:04:03,620 - ERROR    - Wohnzimmer_Thermostat_Klein: Failed to update, retry in 60s
2023-01-07 14:04:03,629 - ERROR    - Kinderzimmer_Thermostat: Failed to update, retry in 60s
2023-01-07 14:04:03,632 - ERROR    - Wohnzimmer_Thermostat_Gross: Failed to update, retry in 60s
2023-01-07 14:04:23,338 - INFO     - fhempy.lib.fhem_pythonbinding: Starting fhempy 0.1.543...
2023-01-07 14:04:23,348 - INFO     - fhempy.lib.fhem_pythonbinding: Waiting for FHEM connection
2023-01-07 14:04:23,436 - INFO     - websockets.server: server listening on 0.0.0.0:15733
2023-01-07 14:04:28,816 - INFO     - websockets.server: connection open
2023-01-07 14:04:28,822 - INFO     - fhempy.lib.fhem_pythonbinding: Incoming FHEM connection: 127.0.0.1
2023-01-07 14:10:53,861 - INFO     - fhempy.lib.fhem_pythonbinding: Shutdown initiated...
2023-01-07 14:10:53,912 - ERROR    - Wohnzimmer_Thermostat_Gross: Failed to update, retry in 60s
2023-01-07 14:10:54,003 - INFO     - fhempy.lib.fhem_pythonbinding: All modules successfully undefined!
2023-01-07 14:10:54,010 - INFO     - websockets.server: server closing
2023-01-07 14:11:04,055 - INFO     - websockets.server: connection closed
2023-01-07 14:11:04,057 - INFO     - websockets.server: server closed
2023-01-07 14:11:04,063 - INFO     - fhempy.lib.fhem_pythonbinding: Exit 0
2023-01-07 14:11:06,022 - INFO     - fhempy.lib.fhem_pythonbinding: Starting fhempy 0.1.543...
2023-01-07 14:11:06,033 - INFO     - fhempy.lib.fhem_pythonbinding: Waiting for FHEM connection
2023-01-07 14:11:06,098 - INFO     - websockets.server: server listening on 0.0.0.0:15733
2023-01-07 14:11:30,903 - INFO     - fhempy.lib.fhem_pythonbinding: Starting fhempy 0.1.543...
2023-01-07 14:11:30,914 - INFO     - fhempy.lib.fhem_pythonbinding: Waiting for FHEM connection
2023-01-07 14:11:31,010 - WARNING  - asyncio: Executing <Task pending name='Task-1' coro=<async_main() running at /opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/fhem_pythonbinding.py:616> wait_for=<_GatheringFuture pending cb=[<TaskWakeupMethWrapper object at 0x7f8edf5df0>()] created at /usr/lib/python3.9/asyncio/tasks.py:704> cb=[_run_until_complete_cb() at /usr/lib/python3.9/asyncio/base_events.py:184] created at /usr/lib/python3.9/asyncio/base_events.py:621> took 0.107 seconds
2023-01-07 14:11:31,014 - INFO     - websockets.server: server listening on 0.0.0.0:15733
2023-01-07 14:11:32,939 - INFO     - websockets.server: connection open
2023-01-07 14:11:32,944 - INFO     - fhempy.lib.fhem_pythonbinding: Incoming FHEM connection: 127.0.0.1
2023-01-07 14:11:33,102 - ERROR    - fhempy.lib.fhem: Failed to get github fhempy data
Traceback (most recent call last):
  File "/opt/fhem/.local/lib/python3.9/site-packages/aiohttp/connector.py", line 1154, in _create_direct_connection
    hosts = await asyncio.shield(host_resolved)
  File "/opt/fhem/.local/lib/python3.9/site-packages/aiohttp/connector.py", line 880, in _resolve_host
    addrs = await self._resolver.resolve(host, port, family=self._family)
  File "/opt/fhem/.local/lib/python3.9/site-packages/aiohttp/resolver.py", line 33, in resolve
    infos = await self._loop.getaddrinfo(
  File "/usr/lib/python3.9/asyncio/base_events.py", line 856, in getaddrinfo
    return await self.run_in_executor(
  File "/usr/lib/python3.9/concurrent/futures/thread.py", line 52, in run
    result = self.fn(*self.args, **self.kwargs)
  File "/usr/lib/python3.9/asyncio/base_events.py", line 839, in _getaddrinfo_debug
    addrinfo = socket.getaddrinfo(host, port, family, type, proto, flags)
  File "/usr/lib/python3.9/socket.py", line 953, in getaddrinfo
    for res in _socket.getaddrinfo(host, port, family, type, proto, flags):
socket.gaierror: [Errno -3] Temporary failure in name resolution

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/fhem.py", line 283, in get_github_data
    async with session.get(
  File "/opt/fhem/.local/lib/python3.9/site-packages/aiohttp/client.py", line 1138, in __aenter__
    self._resp = await self._coro
  File "/opt/fhem/.local/lib/python3.9/site-packages/aiohttp/client.py", line 535, in _request
    conn = await self._connector.connect(
  File "/opt/fhem/.local/lib/python3.9/site-packages/aiohttp/connector.py", line 542, in connect
    proto = await self._create_connection(req, traces, timeout)
  File "/opt/fhem/.local/lib/python3.9/site-packages/aiohttp/connector.py", line 907, in _create_connection
    _, proto = await self._create_direct_connection(req, traces, timeout)
  File "/opt/fhem/.local/lib/python3.9/site-packages/aiohttp/connector.py", line 1166, in _create_direct_connection
    raise ClientConnectorError(req.connection_key, exc) from exc
aiohttp.client_exceptions.ClientConnectorError: Cannot connect to host api.github.com:443 ssl:default [Temporary failure in name resolution]
2023-01-07 14:11:33,132 - ERROR    - fhempy.lib.fhem: Failed to update latest release infos
Traceback (most recent call last):
  File "/opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/fhem.py", line 298, in send_latest_release
    "version_available": github_data["name"][1:],
KeyError: 'name'
2023-01-07 14:21:30,392 - ERROR    - Arbeitszimmer_Thermostat: Failed to update, retry in 60s


EDIT: Kann es evtl. damit zusammenhängen, dass ich sowohl das Raspi Bluetooth, als auch einen Bluetooth USB-Dongle parallel nutze?
Titel: Wiki-Artikel Titel
Beitrag von: mayonezo am 07 Januar 2023, 14:47:11
Hallo Frank,
du könntest dem Wiki-Artikel noch die Artikelbezeichnung hinzufügen: CC-RT-BLE-EQ

Ein Bild des Thermostats wäre noch toll und Eckdaten in einer Vorschaubox rechts.

Hier ein Beispiel:
https://wiki.fhem.de/wiki/HM-Sec-SCo_T%C3%BCr-Fensterkontakt,_optisch (https://wiki.fhem.de/wiki/HM-Sec-SCo_T%C3%BCr-Fensterkontakt,_optisch)

Auf deine Initiative mit dem Artikel hin habe ich gerade einen Wiki-Benutzeraccount beantragt. Wenn du nichts dagegen hast, kann ich den Artikel dann auch selbst ergänzen.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: F_Klee am 07 Januar 2023, 15:13:14
@mayonezo: Nur zu, das ist das Prinzip des Wiki. Auch ich bin neu und habe bislang vorhandene Artikel ergänzt. Dies ist mein erster neue Artikel. Bei dem Bild sind natürlich die Bildrechte zu beachten, also am besten selbst machen. Ich hatte auch schon darüber nachgedacht, es aber erst einmal zurück gestellt. Das Problem ist, dass die Thermostate alle gleich aussehen, egal ob mit oder ohne Bluetooth. Deshalb auch der Hinweis. Die Typbezeichnung habe ich hinzu gefügt.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 19 Januar 2023, 21:50:51
Für alle die ein fhempy Update machen:

Ihr müsst eure Bluetooth Thermostate leider nochmals pairen. Dies gilt auch für Thermostate mit Firmware 120! Bitte folgt dieser Anleitung:
Press and hold wheel on thermostat until Pair will be displayed. Remember or write it.

$ sudo bluetoothctl
[bluetooth]# power on
[bluetooth]# agent on
[bluetooth]# default-agent
[bluetooth]# scan on
[bluetooth]# scan off
[bluetooth]# pair 00:1A:22:06:A7:83
[agent] Enter passkey (number in 0-999999): <enter pin>
[bluetooth]# trust 00:1A:22:06:A7:83
[bluetooth]# disconnect 00:1A:22:06:A7:83
[bluetooth]# exit

Optional steps:
[bluetooth]# devices - to list all bluetooth devices
[bluetooth]# info 00:1A:22:06:A7:83
Device 00:1A:22:06:A7:83 (public)
Name: CC-RT-BLE
Alias: CC-RT-BLE
Paired: yes
Trusted: yes
Blocked: no
Connected: no
LegacyPairing: no
UUID: Generic Access Profile    (00001800-0000-1000-8000-00805f9b34fb)
UUID: Generic Attribute Profile (00001801-0000-1000-8000-00805f9b34fb)
UUID: Device Information        (0000180a-0000-1000-8000-00805f9b34fb)
UUID: Vendor specific           (3e135142-654f-9090-134a-a6ff5bb77046)
UUID: Vendor specific           (9e5d1e47-5c13-43a0-8635-82ad38a1386f)
ManufacturerData Key: 0x0000
ManufacturerData Value:
  00 00 00 00 00 00 00 00 00                       .........


Warum ist das notwendig?
Ich habe von der bluepy Library auf bleak gewechselt. bluepy wurde nicht mehr weiterentwickelt und daher war sowieso ein Wechsel irgendwann notwendig. Nachdem mayonezo das Problem mit der 100% CPU Last reported hat, habe ich nun fhempy für nahezu alle Module auf bleak umgestellt. Die Library ist sehr stabil, wird laufend weiterentwickelt und hat auch sonst noch ein paar Vorteile in der Entwicklung.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: denis.robel am 20 Januar 2023, 21:41:33
Hallo Dominik,

ich habe neu gepaired aber es funktioniert nun nichts mehr:

File "/opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/core/bluetoothle.py", line 123, in connect_once
    await self._client.connect()
  File "/opt/fhem/.local/lib/python3.9/site-packages/bleak/__init__.py", line 471, in connect
    return await self._backend.connect(**kwargs)
  File "/opt/fhem/.local/lib/python3.9/site-packages/bleak/backends/bluezdbus/client.py", line 190, in connect
    assert_reply(reply)
  File "/opt/fhem/.local/lib/python3.9/site-packages/bleak/backends/bluezdbus/utils.py", line 20, in assert_reply
    raise BleakDBusError(reply.error_name, reply.body)
bleak.exc.BleakDBusError: [org.bluez.Error.Failed] Disconnected early
2023-01-20 21:38:56,121 - ERROR    - eg_bad.handtuchtrockner: Device disconnected, reconnect now
2023-01-20 21:39:20,930 - ERROR    - eg_bad.handtuchtrockner: Failed to connect
Traceback (most recent call last):
  File "/opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/core/bluetoothle.py", line 75, in connect_loop
    await self.connect_once(timeout, max_retries)
  File "/opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/core/bluetoothle.py", line 109, in connect_once
    self.adapter_details[adapter]["manufacturer"]
TypeError: unsupported operand type(s) for +: 'NoneType' and 'str'
2023-01-20 21:39:31,040 - ERROR    - bluetooth_adapters.systems.linux: Unexpected error setting up device hci<usb_devices.BluetoothDevice object at 0xb443a348>
Traceback (most recent call last):
  File "/opt/fhem/.local/lib/python3.9/site-packages/bluetooth_adapters/systems/linux.py", line 66, in _create_bluetooth_devices
    dev.setup()
  File "/opt/fhem/.local/lib/python3.9/site-packages/usb_devices/__init__.py", line 55, in setup
    path = self.device_path.readlink()
  File "/usr/lib/python3.9/pathlib.py", line 1281, in readlink
    path = self._accessor.readlink(self)
  File "/usr/lib/python3.9/pathlib.py", line 451, in readlink
    return os.readlink(path)
PermissionError: [Errno 13] Permission denied: '/sys/class/bluetooth/hci1/device'
2023-01-20 21:39:31,041 - ERROR    - bluetooth_adapters.systems.linux: Unexpected error setting up device hci<usb_devices.BluetoothDevice object at 0xb443ad08>
Traceback (most recent call last):
  File "/opt/fhem/.local/lib/python3.9/site-packages/bluetooth_adapters/systems/linux.py", line 66, in _create_bluetooth_devices
    dev.setup()
  File "/opt/fhem/.local/lib/python3.9/site-packages/usb_devices/__init__.py", line 55, in setup
    path = self.device_path.readlink()
  File "/usr/lib/python3.9/pathlib.py", line 1281, in readlink
    path = self._accessor.readlink(self)
  File "/usr/lib/python3.9/pathlib.py", line 451, in readlink
    return os.readlink(path)
PermissionError: [Errno 13] Permission denied: '/sys/class/bluetooth/hci0/device'
2023-01-20 21:39:35,202 - ERROR    - eg_bad.handtuchtrockner: Failed to connect
Traceback (most recent call last):
  File "/opt/fhem/.local/lib/python3.9/site-packages/fhempy/lib/core/bluetoothle.py", line 123, in connect_once
    await self._client.connect()
  File "/opt/fhem/.local/lib/python3.9/site-packages/bleak/__init__.py", line 471, in connect
    return await self._backend.connect(**kwargs)
  File "/opt/fhem/.local/lib/python3.9/site-packages/bleak/backends/bluezdbus/client.py", line 190, in connect
    assert_reply(reply)
  File "/opt/fhem/.local/lib/python3.9/site-packages/bleak/backends/bluezdbus/utils.py", line 20, in assert_reply
    raise BleakDBusError(reply.error_name, reply.body)
bleak.exc.BleakDBusError: [org.bluez.Error.Failed] Disconnected early
2023-01-20 21:39:35,208 - ERROR    - eg_bad.handtuchtrockner: Device disconnected, reconnect now


:o :o :o

Wo kann ich ansetzen um das Problem zu lösen?
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 20 Januar 2023, 21:43:29
Versuch mal bluetooth nochmals neu starten
sudo systemctl restart bluetooth

oder auch mal
sudo hciconfig hci0 down
sudo hciconfig hci0 reset
sudo hciconfig hci0 up
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: denis.robel am 21 Januar 2023, 19:30:36
danke, funktioniert
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: F_Klee am 23 Januar 2023, 14:09:34
Hallo Dominik,
noch läuft meine Heizungssteuerung nur als Teststellung. Ich habe aber die Lieferung Thermostate bekommen und das erste auch angemeldet. Danach habe ich dann das Update durchgeführt und nichts ging mehr. Natürlich hatte ich beide Thermostate gepaired. Auch Resets brachten nichts.
Ich habe dann einen B+ mit USB-Adapter aufgesetzt und das zweite Thermostat damit gepaired. Es funktionierte nicht. Gestern abend habe ich dann ein Update des Peer durchgeführt, obwohl er schon die aktuelle Version hatte, und ging ins Bett. Heute morgen stand die Verbindung. Updates beim Zero für das erste Thermostat brachten allerdings nichts. Hier mal ein Auszug aus dem Syslog:
Jan 23 13:41:00 zero-01 fhempy[8152]: 2023-01-23 13:41:00,724 - ERROR    - HZ_th_Waschkueche: Failed to connect
Jan 23 13:41:00 zero-01 fhempy[8152]: Traceback (most recent call last):
Jan 23 13:41:00 zero-01 fhempy[8152]:   File "/home/pi/.local/lib/python3.9/site-packages/fhempy/lib/core/bluetoothle.py", line 75, in connect_loop
Jan 23 13:41:00 zero-01 fhempy[8152]:     await self.connect_once(timeout, max_retries)
Jan 23 13:41:00 zero-01 fhempy[8152]:   File "/home/pi/.local/lib/python3.9/site-packages/fhempy/lib/core/bluetoothle.py", line 109, in connect_once
Jan 23 13:41:00 zero-01 fhempy[8152]:     self.adapter_details[adapter]["manufacturer"]
Jan 23 13:41:00 zero-01 fhempy[8152]: TypeError: unsupported operand type(s) for +: 'NoneType' and 'str'
Jan 23 13:41:11 zero-01 fhempy[8152]: 2023-01-23 13:41:11,772 - ERROR    - HZ_th_Waschkueche: Failed to connect
Jan 23 13:41:11 zero-01 fhempy[8152]: Traceback (most recent call last):
Jan 23 13:41:11 zero-01 fhempy[8152]:   File "/home/pi/.local/lib/python3.9/site-packages/fhempy/lib/core/bluetoothle.py", line 75, in connect_loop
Jan 23 13:41:11 zero-01 fhempy[8152]:     await self.connect_once(timeout, max_retries)
Jan 23 13:41:11 zero-01 fhempy[8152]:   File "/home/pi/.local/lib/python3.9/site-packages/fhempy/lib/core/bluetoothle.py", line 109, in connect_once
Jan 23 13:41:11 zero-01 fhempy[8152]:     self.adapter_details[adapter]["manufacturer"]
Jan 23 13:41:11 zero-01 fhempy[8152]: TypeError: unsupported operand type(s) for +: 'NoneType' and 'str'
Jan 23 13:41:18 zero-01 fhempy[8152]: 2023-01-23 13:41:18,437 - ERROR    - HZ_th_Waschkueche: Timeout on update, retry in 60s
Jan 23 13:41:22 zero-01 fhempy[8152]: 2023-01-23 13:41:22,736 - ERROR    - HZ_th_Waschkueche: Failed to connect
Jan 23 13:41:22 zero-01 fhempy[8152]: Traceback (most recent call last):
Jan 23 13:41:22 zero-01 fhempy[8152]:   File "/home/pi/.local/lib/python3.9/site-packages/fhempy/lib/core/bluetoothle.py", line 75, in connect_loop
Jan 23 13:41:22 zero-01 fhempy[8152]:     await self.connect_once(timeout, max_retries)
Jan 23 13:41:22 zero-01 fhempy[8152]:   File "/home/pi/.local/lib/python3.9/site-packages/fhempy/lib/core/bluetoothle.py", line 109, in connect_once
Jan 23 13:41:22 zero-01 fhempy[8152]:     self.adapter_details[adapter]["manufacturer"]
Jan 23 13:41:22 zero-01 fhempy[8152]: TypeError: unsupported operand type(s) for +: 'NoneType' and 'str'
Jan 23 13:41:36 zero-01 fhempy[8152]: 2023-01-23 13:41:36,868 - ERROR    - HZ_th_Waschkueche: Failed to connect
Jan 23 13:41:36 zero-01 fhempy[8152]: Traceback (most recent call last):
Jan 23 13:41:36 zero-01 fhempy[8152]:   File "/home/pi/.local/lib/python3.9/site-packages/fhempy/lib/core/bluetoothle.py", line 75, in connect_loop
Jan 23 13:41:36 zero-01 fhempy[8152]:     await self.connect_once(timeout, max_retries)
Jan 23 13:41:36 zero-01 fhempy[8152]:   File "/home/pi/.local/lib/python3.9/site-packages/fhempy/lib/core/bluetoothle.py", line 109, in connect_once
Jan 23 13:41:36 zero-01 fhempy[8152]:     self.adapter_details[adapter]["manufacturer"]
Jan 23 13:41:36 zero-01 fhempy[8152]: TypeError: unsupported operand type(s) for +: 'NoneType' and 'str'
Jan 23 13:41:48 zero-01 fhempy[8152]: 2023-01-23 13:41:48,024 - ERROR    - HZ_th_Waschkueche: Failed to connect
Jan 23 13:41:48 zero-01 fhempy[8152]: Traceback (most recent call last):
Jan 23 13:41:48 zero-01 fhempy[8152]:   File "/home/pi/.local/lib/python3.9/site-packages/fhempy/lib/core/bluetoothle.py", line 75, in connect_loop
Jan 23 13:41:48 zero-01 fhempy[8152]:     await self.connect_once(timeout, max_retries)
Jan 23 13:41:48 zero-01 fhempy[8152]:   File "/home/pi/.local/lib/python3.9/site-packages/fhempy/lib/core/bluetoothle.py", line 109, in connect_once
Jan 23 13:41:48 zero-01 fhempy[8152]:     self.adapter_details[adapter]["manufacturer"]
Jan 23 13:41:48 zero-01 fhempy[8152]: TypeError: unsupported operand type(s) for +: 'NoneType' and 'str'
Jan 23 13:41:58 zero-01 fhempy[8152]: 2023-01-23 13:41:58,984 - ERROR    - HZ_th_Waschkueche: Failed to connect
Jan 23 13:41:58 zero-01 fhempy[8152]: Traceback (most recent call last):
Jan 23 13:41:58 zero-01 fhempy[8152]:   File "/home/pi/.local/lib/python3.9/site-packages/fhempy/lib/core/bluetoothle.py", line 75, in connect_loop
Jan 23 13:41:58 zero-01 fhempy[8152]:     await self.connect_once(timeout, max_retries)
Jan 23 13:41:58 zero-01 fhempy[8152]:   File "/home/pi/.local/lib/python3.9/site-packages/fhempy/lib/core/bluetoothle.py", line 109, in connect_once
Jan 23 13:41:58 zero-01 fhempy[8152]:     self.adapter_details[adapter]["manufacturer"]
Jan 23 13:41:58 zero-01 fhempy[8152]: TypeError: unsupported operand type(s) for +: 'NoneType' and 'str'



Hast du einen Tipp, wo ich ansetzen kann?
Ein paar Dinge sind mir noch aufgefallen. Das Reading presence scheint nicht mehr bedient zu werden. Statt dessen gibt es connection, connection_adapter und connection_adapter_details. Letzteres gibt es nur beim funktionierenden Thermostat. Das Reading connection_adapter wird bei beiden auf hci0 gesetzt. Beim nicht funktionierenden Thermostat steht das Reading connection auf connecting, wobei der Versuch regelmäßig wiederholt wird.

Ach so, beide Thermostate haben Softwareversion 120.

Gruß
Frank
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: F_Klee am 23 Januar 2023, 14:33:40
Noch etwas ist mir aufgefallen: Auf dem Zero wird regelmäßig Discovering: in bluetoothctl auf Yes gesetzt (und einmal alles gescannt) und kurz darauf wieder auf No. Das passiert etwa alle 10 Sekunden. Stoppe ich fhempy, so hört das auf und beginnt sofort wieder, wenn ich fhempy wieder starte. Beim B+ passiert das nicht.
Der Zero ist übrigens ein Rock Pi mit Armbian (64Bit), natürlich Bullseye.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 23 Januar 2023, 19:06:00
Poste bitte mal den Output von
sudo hciconfig -a
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: F_Klee am 23 Januar 2023, 19:10:12
Hier der Output
hci0:   Type: Primary  Bus: UART
        BD Address: AA:AA:AA:AA:AA:AA  ACL MTU: 1021:8  SCO MTU: 64:1
        UP RUNNING
        RX bytes:6382573 acl:19 sco:0 events:234670 errors:0
        TX bytes:539486 acl:17 sco:0 commands:65029 errors:0
        Features: 0xbf 0xfe 0xcf 0xfe 0xdb 0xff 0x7b 0x87
        Packet type: DM1 DM3 DM5 DH1 DH3 DH5 HV1 HV2 HV3
        Link policy: RSWITCH SNIFF
        Link mode: SLAVE ACCEPT
        Name: 'zero-01'
        Class: 0x000000
        Service Classes: Unspecified
        Device Class: Miscellaneous,
        HCI Version: 4.1 (0x7)  Revision: 0x0
        LMP Version: 4.1 (0x7)  Subversion: 0x6119
        Manufacturer: Broadcom Corporation (15)

Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 23 Januar 2023, 19:15:17
Aktualisier bitte mal auf 0.1.568 und teste es nochmals.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: F_Klee am 23 Januar 2023, 19:41:48
Hat leider nichts gebracht
Jan 23 19:17:02 zero-01 fhempy[8696]: 2023-01-23 19:17:02,180 - INFO     - fhempy.lib.fhem_pythonbinding: Start update...
Jan 23 19:17:02 zero-01 fhempy[8696]: 2023-01-23 19:17:02,183 - INFO     - fhempy.lib.pkg_installer: Attempting install of fhempy
Jan 23 19:17:21 zero-01 fhempy[8696]: 2023-01-23 19:17:21,736 - INFO     - fhempy.lib.pkg_installer: Successfully installed fhempy update!
Jan 23 19:17:21 zero-01 fhempy[8696]: 2023-01-23 19:17:21,804 - INFO     - fhempy.lib.fhem_pythonbinding: Restart initiated...
Jan 23 19:17:21 zero-01 fhempy[8696]: 2023-01-23 19:17:21,805 - INFO     - fhempy.lib.fhem_pythonbinding: All modules successfully undefined!
Jan 23 19:17:21 zero-01 fhempy[8696]: 2023-01-23 19:17:21,806 - INFO     - websockets.server: server closing
Jan 23 19:17:31 zero-01 fhempy[8696]: 2023-01-23 19:17:31,953 - INFO     - websockets.server: connection closed
Jan 23 19:17:31 zero-01 fhempy[8696]: 2023-01-23 19:17:31,954 - INFO     - websockets.server: server closed
Jan 23 19:17:31 zero-01 fhempy[8696]: 2023-01-23 19:17:31,959 - INFO     - fhempy.lib.fhem_pythonbinding: Exit 1
Jan 23 19:17:31 zero-01 systemd[1]: fhempy.service: Main process exited, code=exited, status=1/FAILURE
Jan 23 19:17:31 zero-01 systemd[1]: fhempy.service: Failed with result 'exit-code'.
Jan 23 19:17:31 zero-01 systemd[1]: fhempy.service: Consumed 53.431s CPU time.
Jan 23 19:17:32 zero-01 systemd[1]: fhempy.service: Scheduled restart job, restart counter is at 1.
Jan 23 19:17:32 zero-01 systemd[1]: Stopped fhempy.
Jan 23 19:17:32 zero-01 systemd[1]: fhempy.service: Consumed 53.431s CPU time.
Jan 23 19:17:32 zero-01 systemd[1]: Started fhempy.
Jan 23 19:17:33 zero-01 fhempy[9371]: 2023-01-23 19:17:33,927 - INFO     - fhempy.lib.fhem_pythonbinding: Starting fhempy 0.1.568...
Jan 23 19:17:33 zero-01 fhempy[9371]: 2023-01-23 19:17:33,934 - INFO     - fhempy.lib.fhem_pythonbinding: Advertise fhempy on local network with 192.168.0.134:15733
Jan 23 19:17:34 zero-01 fhempy[9371]: 2023-01-23 19:17:34,303 - INFO     - fhempy.lib.fhem_pythonbinding: Waiting for FHEM connection
Jan 23 19:17:34 zero-01 fhempy[9371]: 2023-01-23 19:17:34,359 - INFO     - websockets.server: server listening on 0.0.0.0:15733
Jan 23 19:17:42 zero-01 fhempy[9371]: 2023-01-23 19:17:42,193 - INFO     - websockets.server: connection open
Jan 23 19:17:42 zero-01 fhempy[9371]: 2023-01-23 19:17:42,195 - INFO     - fhempy.lib.fhem_pythonbinding: Incoming FHEM connection: 192.168.178.10
Jan 23 19:18:13 zero-01 fhempy[9371]: 2023-01-23 19:18:13,643 - ERROR    - HZ_th_Waschkueche: Timeout on update, retry in 60s
Jan 23 19:19:43 zero-01 fhempy[9371]: 2023-01-23 19:19:43,746 - ERROR    - HZ_th_Waschkueche: Timeout on update, retry in 60s
Jan 23 19:20:11 zero-01 systemd[1]: Starting system activity accounting tool...
Jan 23 19:20:11 zero-01 systemd[1]: sysstat-collect.service: Succeeded.
Jan 23 19:20:11 zero-01 systemd[1]: Finished system activity accounting tool.
Jan 23 19:21:13 zero-01 fhempy[9371]: 2023-01-23 19:21:13,846 - ERROR    - HZ_th_Waschkueche: Timeout on update, retry in 60s
Jan 23 19:22:43 zero-01 fhempy[9371]: 2023-01-23 19:22:43,975 - ERROR    - HZ_th_Waschkueche: Timeout on update, retry in 60s



Ich habe den Zero danach mal neu gestartet. Seitdem habe ich nichts mehr von ihm gehört. Jetzt muss ich erst einmal nachsehen, was da wieder los ist  >:(
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 23 Januar 2023, 19:48:15
Naja, der Fehler ist zumindest schon mal weg :)

Bluetooth pairing hast du wieder und auch
sudo systemctl restart bluetooth
sudo hciconfig hci0 down
sudo hciconfig hci0 reset
sudo hciconfig hci0 up
schon probiert?
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: F_Klee am 23 Januar 2023, 20:02:24
So, er lebt noch  :D
Er verbindet sich nun regelmäßig mit dem Thermostat und disconnected danach wieder. Hier das Syslog:

Jan 23 19:55:23 zero-01 fhempy[1809]: 2023-01-23 19:55:23,563 - ERROR    - HZ_th_Waschkueche: Device disconnected, reconnect now
Jan 23 19:55:33 zero-01 fhempy[1809]: 2023-01-23 19:55:33,027 - ERROR    - HZ_th_Waschkueche: Device disconnected, reconnect now
Jan 23 19:55:37 zero-01 fhempy[1809]: 2023-01-23 19:55:37,207 - ERROR    - HZ_th_Waschkueche: Failed to connect
Jan 23 19:55:37 zero-01 fhempy[1809]: Traceback (most recent call last):
Jan 23 19:55:37 zero-01 fhempy[1809]:   File "/home/pi/.local/lib/python3.9/site-packages/fhempy/lib/core/bluetoothle.py", line 126, in connect_once
Jan 23 19:55:37 zero-01 fhempy[1809]:     await self._client.connect()
Jan 23 19:55:37 zero-01 fhempy[1809]:   File "/home/pi/.local/lib/python3.9/site-packages/bleak/__init__.py", line 471, in connect
Jan 23 19:55:37 zero-01 fhempy[1809]:     return await self._backend.connect(**kwargs)
Jan 23 19:55:37 zero-01 fhempy[1809]:   File "/home/pi/.local/lib/python3.9/site-packages/bleak/backends/bluezdbus/client.py", line 190, in connect
Jan 23 19:55:37 zero-01 fhempy[1809]:     assert_reply(reply)
Jan 23 19:55:37 zero-01 fhempy[1809]:   File "/home/pi/.local/lib/python3.9/site-packages/bleak/backends/bluezdbus/utils.py", line 20, in assert_reply
Jan 23 19:55:37 zero-01 fhempy[1809]:     raise BleakDBusError(reply.error_name, reply.body)
Jan 23 19:55:37 zero-01 fhempy[1809]: bleak.exc.BleakDBusError: [org.bluez.Error.Failed] Software caused connection abort
Jan 23 19:56:08 zero-01 fhempy[1809]: 2023-01-23 19:56:08,383 - ERROR    - HZ_th_Waschkueche: Device disconnected, reconnect now
Jan 23 19:56:11 zero-01 fhempy[1809]: 2023-01-23 19:56:11,631 - ERROR    - HZ_th_Waschkueche: Failed to connect
Jan 23 19:56:11 zero-01 fhempy[1809]: Traceback (most recent call last):
Jan 23 19:56:11 zero-01 fhempy[1809]:   File "/home/pi/.local/lib/python3.9/site-packages/fhempy/lib/core/bluetoothle.py", line 126, in connect_once
Jan 23 19:56:11 zero-01 fhempy[1809]:     await self._client.connect()
Jan 23 19:56:11 zero-01 fhempy[1809]:   File "/home/pi/.local/lib/python3.9/site-packages/bleak/__init__.py", line 471, in connect
Jan 23 19:56:11 zero-01 fhempy[1809]:     return await self._backend.connect(**kwargs)
Jan 23 19:56:11 zero-01 fhempy[1809]:   File "/home/pi/.local/lib/python3.9/site-packages/bleak/backends/bluezdbus/client.py", line 190, in connect
Jan 23 19:56:11 zero-01 fhempy[1809]:     assert_reply(reply)
Jan 23 19:56:11 zero-01 fhempy[1809]:   File "/home/pi/.local/lib/python3.9/site-packages/bleak/backends/bluezdbus/utils.py", line 20, in assert_reply
Jan 23 19:56:11 zero-01 fhempy[1809]:     raise BleakDBusError(reply.error_name, reply.body)
Jan 23 19:56:11 zero-01 fhempy[1809]: bleak.exc.BleakDBusError: [org.bluez.Error.Failed] Software caused connection abort
Jan 23 19:56:43 zero-01 fhempy[1809]: 2023-01-23 19:56:43,000 - ERROR    - HZ_th_Waschkueche: Device disconnected, reconnect now



Das hatte ich natürlich gemacht. Ich habe das Pairing aber nicht wieder aufgehoben und noch einmal gemacht.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: F_Klee am 23 Januar 2023, 20:40:28
Irgendwie will der Zero in der Bastelecke nicht laufen. Auf meinem Sofa läuft er jetzt stabil  ;D
Das Thermostat ist jetzt auch stabil connected. Im Syslog habe ich noch folgendes gefunden:
/home/pi/.local/lib/python3.9/site-packages/fhempy/lib/core/bluetoothle.py:150: FutureWarning: This method will be removed future version, use the services property instead.
Nur, falls du das nicht sowieso schon gesehen hast. Aktuell scheint es zu laufen. Danke!
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 23 Januar 2023, 20:48:48
Super :)

Danke für den Hinweis, das wird beim nächsten Update umgestellt.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: F_Klee am 24 Januar 2023, 09:48:40
Hallo Dominik,
heute morgen ist mein Thermostat zwar connected, reagiert aber scheinbar nicht. Im Syslog habe ich folgendes gefunden:
Jan 24 09:34:13 zero-01 fhempy[2631]: 2023-01-24 09:34:13,736 - ERROR    - HZ_th_Waschkueche: Exception raised by task: <Task finished name='Task-733262' coro=<FhemModule._run_coro() done,>
Jan 24 09:34:13 zero-01 fhempy[2631]: Traceback (most recent call last):
Jan 24 09:34:13 zero-01 fhempy[2631]:   File "/home/pi/.local/lib/python3.9/site-packages/fhempy/lib/generic.py", line 202, in _handle_task_result
Jan 24 09:34:13 zero-01 fhempy[2631]:     task.result()
Jan 24 09:34:13 zero-01 fhempy[2631]:   File "/home/pi/.local/lib/python3.9/site-packages/fhempy/lib/generic.py", line 196, in _run_coro
Jan 24 09:34:13 zero-01 fhempy[2631]:     await coro
Jan 24 09:34:13 zero-01 fhempy[2631]:   File "/home/pi/.local/lib/python3.9/site-packages/fhempy/lib/eq3bt/eq3bt.py", line 345, in set_and_update
Jan 24 09:34:13 zero-01 fhempy[2631]:     await fct
Jan 24 09:34:13 zero-01 fhempy[2631]: TypeError: object method can't be used in 'await' expression

Da scheint es wohl noch ein Problem zu geben.

Gruß
Frank
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: F_Klee am 24 Januar 2023, 10:31:45
Noch eine Ergänzung: "set comfort" scheint nicht zu funktionieren. "set eco" oder "set desiredTemperature" funktioniert.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 24 Januar 2023, 16:50:53
Danke für die Info. Sollte in 0.1.572 behoben sein.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: F_Klee am 24 Januar 2023, 17:25:45
Super, funktioniert. Das ging aber fix. Danke!
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: mayonezo am 29 Januar 2023, 17:56:33
Bei mir ist die Verbindung leider sehr unzuverlässig. Ich hab mal die fhempy Logs der letzten 3 Tage angehängt.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 29 Januar 2023, 20:12:27
Das sieht für mich so aus, als hätte die Verbindung überhaupt noch nie existiert, oder?

Hast du neu gepaired und danach deinen RPi neu gestartet:
https://github.com/rytilahti/python-eq3bt#pairing
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: mayonezo am 29 Januar 2023, 22:47:08
Ja, es waren auch schon vorher alle auf die Weise gepairt. Als du von bluepy zu bleak gewechselt hattest, hatte ich dann nochmals alle Thermostate gepairt und geschrieben, dass es funktioniert. Es funktioniert auch immer mal wieder und dann wieder nicht.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 29 Januar 2023, 23:04:25
Kannst du vielleicht den Abstand zu den Devices verringern und testen ob es daran liegt?
Die bleak Connection ist bei mir sogar viel stabiler als bluepy. Check auch noch mit apt ob deine bluez Library aktuell ist.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: mayonezo am 30 Januar 2023, 23:50:18
Also die zwei Thermostate im Wohnzimmer sind 5m Sichtweite zum Bluetooth Dongle entfernt und zicken trotzdem immer wieder herum. Als ich mal alle manuell gepairt hatte, funktionierten ja sogar die Thermostate 3 Zimmer weiter und sporadisch tun sie das auch immer mal wieder. Ich glaube nicht, dass es was mit der Entfernung zu tun hat. Aus irgendeinem Grund verlieren die Thermostate die Verbindung, obwohl das Attribut keep_connected gesetzt ist.

Apt gibt mir folgendes aus:
bluez is already the newest version (5.55-3.1+rpt2).

Kann ich noch mehr tun, außer dir die fhempy Logs zu schicken?
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 30 Januar 2023, 23:57:42
Hast du auch schon versucht die Batterie zu entfernen? Vielleicht hilft das noch.

Probier bitte trotzdem mal näher zum Thermostat zu rücken um zu prüfen ob das hilft.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: F_Klee am 01 Februar 2023, 13:50:24
Hallo Dominik,
wäre es vielleicht möglich, ein Reading RSSI einzurichten. Das würde vielleicht helfen um zu erkennen, wenn Thermostate an der Reichweitengrenze sind.
Ich habe mal einen RockPiS bestellt. Für den gibt es auch ein Gehäuse für Wandmontage. In der Theorie prima als Peer. Schauen wir mal, wie das in der Praxis aussieht.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 01 Februar 2023, 16:38:42
RSSI Reading sollte möglich sein. Ich werde das in die BLE Implementierung mit aufnehmen, dass ist es gleich für alle Geräte drin.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 01 Februar 2023, 21:36:29
Ist ab Version 0.1.586 mit drin. Es gibt ein neues Reading rssi.

Dieses wird nur beim connect aktualisiert und nicht laufend. Eine laufende Aktualisierung müsste nämlich durch einen dauernd laufenden BLE Scan gemacht werden, was aus meiner Sicht nicht unbedingt sein muss.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: F_Klee am 01 Februar 2023, 22:21:39
Super, werde ich morgen ausprobieren.

Wäre es vielleicht möglich, die Aktualisierung manuell anzustoßen? Zum Beispiel per "get xxx rssi" oder "set xxx update_rssi"?
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 01 Februar 2023, 22:57:47
Aktuell nicht. Da muss ich noch ziemlich viel umbauen damit das möglich ist.

Hintergrund: Es ist nicht sinnvoll, dass für jedes Device ein Scan läuft. Bin mir gar nicht sicher, ob mehrere Scans auf einem Hardware Device überhaupt unterstützt werden. Daher müsste ich einen zentralen Scanprozess bauen, der entweder immer läuft oder eben alle X Sekunden automatisch angestoßen wird. Dort können dann die einzelnen Devices die aktuellen rssi Werte abholen.
Das ist ein Thema was ich beim Umbau vom ble_presence Modul umsetzen werde. Das läuft nämlich aktuell noch auf bluepy und muss auch noch auf bleak migriert werden.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: F_Klee am 02 Februar 2023, 17:04:05
RSSI funktioniert. Wie ich gesehen habe wird der Wert dann, wenn das Thermostat nicht "connected" ist, regelmäßig aktualisiert. Prima Sache für meine Tests. Dabei habe ich festgestellt, dass die Reichweite trotz externer Antenne alles andere als berauschend ist. Bei Werten um -70dB (schwankt um +-5dB) connected das Thermostat nicht. Da werden wohl eine Menge Peers fällig  :o
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 02 Februar 2023, 17:40:00
Wenn es nicht gleich connected, einfach ein paar Minuten warten....teilweise braucht es etwas Zeit für den 1. Aufbau.

Ich habe bei mir ein Thermostat mit rssi -89 problemlos verbunden (der dauert bei der 1. Verbindung manchmal 30min oder so). Es verliert zwar manchmal die Verbindung, die baut sich dann aber innerhalb weniger Sekunden gleich wieder auf. Alles mit RPi internen BT.
Die anderen Thermostate liegen bei mir zwischen -70 und -77 und sind über einen billigen USB BT Adapter (diese ganz kleinen) angebunden.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: F_Klee am 02 Februar 2023, 18:22:09
Danke für die Info. Ich habe zwar länger gewartet, eine halbe Stunde war es aber nicht. Werde ich mal testen.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: mayonezo am 03 Februar 2023, 15:07:57
Ich habe jetzt endlich alle Thermostate wieder verbinden können. Neustart des Raspi hatte nichts gebracht, aber die folgenden Befehle:

hciconfig hci0 down
rmmod btusb
modprobe btusb
hciconfig hci0 up

Quelle: https://unix.stackexchange.com/questions/602730/bluetooth-intermittently-disconnects/602739#602739 (https://unix.stackexchange.com/questions/602730/bluetooth-intermittently-disconnects/602739#602739)

Scheint da wohl ab und zu Schluckauf zu geben. Ich schaue mal, wie lange das jetzt so läuft.

Hier auch noch die RSSI Werte:

Arbeitszimmer_Thermostat:rssi -80 2023-02-03 14:57:13
Kinderzimmer_Thermostat:rssi -75 2023-02-03 14:57:53
Wohnzimmer_Thermostat_Gross:rssi -64 2023-02-03 14:57:33
Wohnzimmer_Thermostat_Klein:rssi -127 2023-02-03 14:57:03

Bis auf Thermostat_Klein passt die Reihenfolge der Entfernungen zum USB-Dongle. Bei Thermostat_Klein habe ich schon länger die Vermutung, dass da ein Hardwarefehler vorliegt. Auch das werde ich nun beobachten.
@F_Klee Danke, dass du um die RSSI Werte gebeten hast und natürlich
@dominik vielen Dank für die gewohnt flotte Implementierung!

EDIT: Mit Thermostat_Klein ist alles in Ordnung, mittlerweile zeigt es mir bessere Werte an. Aber die Akkus waren schon fast leer, die habe ich jetzt noch getauscht.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: mayonezo am 04 Februar 2023, 12:37:40
So, ich habe mich gestern Nacht dazu entschieden BlueZ auf die neueste Version 5.66 zu bringen. Version 5.55 scheint ja nicht so der Bringer zu sein.

Die Debian Bookworm Version konnte ich nicht nehmen, weil es mir sonst alle möglichen Dependencies zerschossen hätte. Ich habe es dann nach einer Schritt für Schritt Anleitung selbst kompiliert, was recht einfach ging. Bisher läuft alles stabil, drückt mir die Daumen!  ;)
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: F_Klee am 04 Februar 2023, 14:18:16
Wow, ich ziehe den Hut. Wenn ich so etwas lese komme ich mir mit meinen Kenntnissen richtig klein vor.

Ich habe meine Teststellung mittlerweile auf drei Thermostate über zwei Peers erweitert. Mit dem B+ mit Dongle komme ich bei einem Abstand von ca. 1m auf -64 (dient aber nur zu Experimenten). Mein RockPi Zero mit Stabantenne (+5dB) versorgt die beiden anderen jeweils durch eine Wand, einmal mit etwa 2m, das zweite mit etwa 6m Abstand. Beim zweiten ist die Antennenausrichtung äußerst wichtig. Den Stab flach gelegt und mit der Seite Richtung Thermostat steht die Verbindung (bei -67). Das ist bei mir aber die äußerste Grenze. Darüber hinaus geht es nicht. Über bluetoothctl sieht man regelmäßig ein "connected: yes" gefolgt von einem "connected: no". Vielleicht mache ich ja noch etwas falsch oder die Umgebung hier ist so verseucht, dass man etwas mehr Power für eine sichere Verbindung benötigt. Bei mir im Haus ist aber mit Sicherheit weniger los. Bin also noch optimistisch  ;)
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: denis.robel am 04 Februar 2023, 18:52:38
@Dominik

Eine Frage: wie ist das bei fhempy, wenn ich mehrere USB Dongles an einem Raspi betreibe, ist das Pairing abhängig vom USB-BT Device?

Beim alten EQ3B-Modul hat sich das Modul immer gekümmert und ein verfügbares USB-BT Device ausgewählt, aber da gabs noch kein Pairing ...

Sprich wenn ein Thermostat mit hci0 gepaired wurde, geht es nicht mit hci1?
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 04 Februar 2023, 21:47:03
Das ist egal. Einmal gepaired kümmert sich fhempy um die Verbindung. Es wechselt die hci Devices immer durch und man muss nix konfigurieren.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: denis.robel am 04 Februar 2023, 22:11:11
ok danke. Ich war mir nicht ganz sicher, ob das noch so funktioniert.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: F_Klee am 18 Februar 2023, 14:33:09
Hallo Dominik,
du betreust ja eine Menge Module. Solltest du aber trotzdem Langeweile haben, so hätte ich noch eine Idee  ;D
Die Thermostate haben ja einen Wochenplan eingebaut, den man zwar auslesen, mit dem Modul aber nicht beschreiben kann. Das Problem bei einem Wochenplanmodul für eq-3 dürfte das UI sein. Vielleicht wäre es ja möglich, ein Modul zu schreiben, dass sich auf User-Seite so verhält wie das WeekdayTimer-Modul von FHEM. Dann könnte man es auch mit dem wdtimer-Widget von TabletUI steuern. Das Modul würde dann den Wochenplan entgegen nehmen, in das Format von eq-3 wandeln und über das Modul eq3bt an das Thermostat senden. Einfach mal so in den Raum geworfen.

Ich selbst habe das WeekdayTimer-Modul für die Steuerung eingerichtet. Kleiner Haken: Sollte zum Umschaltzeitpunkt das Thermostat nicht connected sein, so bekommt es scheinbar nichts davon mit. Gibt es da keine Warteschlange?

Die Idee ist eben auch, dass die Thermostate möglichst autark arbeiten sollten. Dann muss nur valvePosition ab und zu aktualisiert werden. Es macht dann auch nichts, wenn die Verbindung häufiger weg ist.

Gruß
Frank
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 19 Februar 2023, 22:21:01
Hi Frank,

Langeweile? Das kenne ich nicht ;)

Eigentlich sollte das Thermostat dauerhaft connected sein, wenn nicht, ist die Distanz vielleicht ein Stück zu groß. Eine richtige Warteschlange gibt es nicht, das wäre etwas zu kritisch. Weil wenn du auf 12 Grad stellst und die Verbindung erst um 8 Uhr Früh wieder aufgebaut wird, wird wahrscheinlich eine zuvor anders gesetzte Temperatur überschrieben. Daher wird bei jedem Befehl nur max. 30s auf eine Verbindung gewartet. Wenn keine Verbindung in dieser Zeit zustande kommt, dann wird der Befehl verworfen.

Wegen Wochenplan: Generell eine gute Idee, nur würde mir das in der Implementierung aktuell wirklich zu viel Zeit kosten sich da genau einzulesen. Ich glaube da warte ich auf den nächsten Winter ;) Sorry, aber im Moment stehen noch paar andere Themen an die ich implementieren möchte.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: F_Klee am 19 Februar 2023, 22:51:41
War von mir auch nur erst einmal in den Raum geworfen. Meine Mieterin hat keinen NineToFive-Job und stellt die Thermostate je nach aktuellem Bedarf. Auch eine automatische Nachtabsenkung nutzt sie nicht. Den WeekdayTimer habe ich nur der Vollständigkeit halber eingebaut und weil ich aktuell ja noch lerne und teste.

Das mit dem zu großen Abstand habe ich schon befürchtet. Der Rock Pi S, den ich gerade als günstigen und lieferbaren Peer ausprobiere, will noch nicht mit eq3bt. Es gibt da eine lange Fehlermeldung in STATE:
Module failed to load: eq3bt
Maybe you need to update fhempy on this or remote peer.

Stacktrace:
Traceback (most recent call last):
  File "/home/pi/.local/lib/python3.7/site-packages/fhempy/lib/fhem_pythonbinding.py", line 332, in handle_function
    module_object = await self.import_module(hash)
  File "/home/pi/.local/lib/python3.7/site-packages/fhempy/lib/fhem_pythonbinding.py", line 538, in import_module
    functools.partial(importlib.import_module, pymodule)
  File "/home/pi/.local/lib/python3.7/site-packages/fhempy/lib/utils.py", line 72, in run_blocking
    return await asyncio.get_event_loop().run_in_executor(pool, function)
  File "/usr/lib/python3.7/concurrent/futures/thread.py", line 57, in run
    result = self.fn(*self.args, **self.kwargs)
  File "/usr/lib/python3.7/importlib/__init__.py", line 127, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
  File "<frozen importlib._bootstrap>", line 1006, in _gcd_import
  File "<frozen importlib._bootstrap>", line 983, in _find_and_load
  File "<frozen importlib._bootstrap>", line 967, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 677, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 728, in exec_module
  File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
  File "/home/pi/.local/lib/python3.7/site-packages/fhempy/lib/eq3bt/eq3bt.py", line 7, in <module>
    from . import eq3btsmart as eq3
  File "/home/pi/.local/lib/python3.7/site-packages/fhempy/lib/eq3bt/eq3btsmart.py", line 32, in <module>
    from ..core import bluetoothle
  File "/home/pi/.local/lib/python3.7/site-packages/fhempy/lib/core/bluetoothle.py", line 7, in <module>
    import bluetooth_adapters
ModuleNotFoundError: No module named 'bluetooth_adapters'

Dir sagt das bestimmt mehr als mir. Der Pi S ist sehr klein und nutzt ein sehr abgespecktes Linux Buster. Bluetooth selbst funktioniert und das Thermostat ist gepaired. Es kann natürlich sein, dass da trotzdem etwas fehlt und nachinstalliert werden muss. Nur was?

Momentan bin ich aber mit der Restaurierung eines anderen SmartHome-Servers beschäftigt, dessen Festplatte sich verabschiedet hatte. Das nötigste läuft, aber es wartet noch viel Arbeit auf mich.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 19 Februar 2023, 23:26:24
Uij, Linux buster ist wirklich keine gute Idee. Mach bitte gleich ein Update auf bullseye. Bluetooth wird mit buster nicht supported, da es Python 3.9 erfordert welches mit bullseye geliefert wird.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: F_Klee am 20 Februar 2023, 09:33:00
Leider nicht so einfach. Der SoC des Pi S ist letztes Jahr verändert worden. Für den neuen gibt es ein Armbian bullseye. Ich habe aber noch einen alten erwischt. Da auch die Rock Pi genau wie die Raspberry Pi von den Lieferschwierigkeiten betroffen, der Pi S aber zu bekommen ist so denke ich, dass es da noch größere Lagerbestände mit dem alten SoC gibt.

Fazit: Der Rock Pi S ist aktuell nicht zu empfehlen. Schade.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: F_Klee am 20 Februar 2023, 12:34:13
Mir ist gerade aufgefallen, dass im Wiki die Installation von fhempy unter "alle Anderen" beschrieben ist. Das scheint sich ja inzwischen erledigt zu haben. Ich werde das bei Gelegenheit mal löschen. Das Pairing werde ich bei der Gelegenheit auch nach oben verschieben.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 20 Februar 2023, 16:38:22
Und auf bullseye aktualisieren geht auch nicht?
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: F_Klee am 20 Februar 2023, 17:11:54
Leider nicht
ZitatFor non RK3308B-S variant, please use the legacy Radxa debos image.
Ich habe die Variante ohne S. Das Radxa debos geht nur bis buster. Aber mal schauen. Momentan kämpfe ich (mal wieder) mit dem Unifi-Controller  >:(
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: F_Klee am 25 Februar 2023, 21:29:13
So, ich habe die Installationsanweisung für Buster aus dem Wiki entfernt und das Pairing nach oben gerückt, da es ja jetzt auf jeden Fall erforderlich ist.

Mein Rock Pi S läuft insofern, dass ich Armbian-Bullseye installiert und einen Bluetooth-Dongle gesteckt habe. Schade, dass das eingebaute Bluetooth nicht funktioniert, aber so geht es auch. Vielleicht gibt es von Radxa ja noch einen Tipp. Anfrage läuft.
Interessant ist, dass rssi bei -74 liegt, obwohl der Dongle nur etwa 1,5m vom Thermostat entfernt ist. Die Verbindung scheint aber stabil zu sein. Ich glaube, die Werte sind zwischen den verschiedenen Bluetooth-Chips nicht vergleichbar.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 25 Februar 2023, 22:04:31
Danke für die Aktualisierung im Wiki!

Ich prüfe noch über welchen Weg ich das direkt in den Code mit einfügen kann, damit man das nicht manuell machen muss.
Titel: Antw:Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: F_Klee am 13 März 2023, 12:49:11
Hallo Dominik,
ich teste ja immer noch den Rock Pi S. Dabei ist mir gestern das WLAN abgekackt. Der Server meldete aber wacker, der Peer wäre online. Nachdem ich dann mal spaßeshalber Update angeklickt hatte, meldete der Server zwar, dass der Peer offline ist, das Thermostat stand aber immer noch auf connected. Das stimmte zwar, weil ja nur das WLAN weg war, aber woher wusste das der Server?  ;D
Früher gab es das Reading presence online/offline. Wäre es vielleicht möglich eine Überwachung einzubauen die anzeigt, dass das Thermostat steuerbar ist (online) oder irgendeine Störung vorliegt (offline)? Dann könnte man per ReadingsGroup alle Thermostate anzeigen und bei einem längeren Ausfall eine Nachricht absetzen lassen.

Ich vermute, dass bei einer leeren Batterie sich das Reading von "ok" nach "low" ändert.

Hat keine Eile, wäre aber vielleicht etwas für die ToDo-Liste.

Gruß
Frank
Titel: Aw: Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: dominik am 23 März 2023, 22:11:44
Hi Frank,

der Thermostat sollte dann eigentlich den state "fhempy server offline" erhalten. Das ist quasi die Indikation dafür, dass die Readings Werte nicht mehr passen, weil keine Verbindung besteht.

Zum presence Reading:
Das presence Reading wäre in dem Fall auch auf online geblieben. Wenn der Peer weg ist, hat man quasi ein größeres Problem :) Zur Absicherung könntest du den Peer überwachen ob der auf disconnected geht. Das müsste eigentlich immer passieren.
Das presence Reading war ziemlich ungenau, da es nur alle 60s den Status geprüft hat. Das Reading connection ist weitaus genauer. Sobald die Verbindung weg ist, geht es in der Sekunde auf disconnected. Kannst mal probieren in dem du die Batterien entfernst. Daher ist auf connection zu schauen sehr sicher und besser als presence früher.

Leere Batterie wird vom Thermostat gemeldet und das Reading geht daher von "ok" auf "low".

Ich überlege noch folgendes Feature für die To-do Liste:
Wenn Reading Batterie "low" und das Device kurzfristig "disconnected" war (also Batteriewechsel), dann überspiele beim nächsten connected die Einstellungen aus FHEM auf das Device - mindestens auto/manual und die zuletzt eingestellte Temperatur.

Ich ärgere mich nämlich jedes mal, wenn ich vergesse von auto auf manual zu stellen ;)
Titel: Aw: Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: F_Klee am 23 März 2023, 22:33:51
Super Sache mit dem Batteriewechsel.
Titel: Aw: Neues Modul: EQ3 Bluetooth Thermostat (10_EQ3BT)
Beitrag von: F_Klee am 24 März 2023, 13:23:58
Habe noch mal über den Batteriewechsel nachgedacht. Musste gerade zum wiederholten Mal ein Thermostat resetten, weil es sich aufgehängt hatte. Ein set-Kommando, das man nach dem Wechsel bzw. Reset anklickt und dann die Daten einmal zurück schickt, würde ja schon reichen. Ist vielleicht einfacher und auch flexibler als eine Automatik.