HMCCU 5.0 im SVN verfügbar

Begonnen von zap, 26 Oktober 2021, 19:01:00

Vorheriges Thema - Nächstes Thema

oduudo

#195
Zitat von: zap am 26 November 2021, 20:28:13
Ok, an den Timeout hatte ich nicht mehr gedacht. Die andere Methode schickt alles in einem Rutsch an die CCU, ist tatsächlich also effektiver

Die Variante "set HMCCU3 datapoint HMIP_PS_(05|06) 3.STATE=on" funktioniert ja.

Der Filter "set HMCCU3 datapoint HMIP_PS_(05|06):FILTER=3.STATE=off 3.STATE=on" klappt halt nicht.

Bei normalen FHEM Befehlen funktioniert der Filter ja.
Hast jemand eine Idee??

Danke für jeden Tipp,
Udo
RPI4b mit FHEM
CCU3
HM, HmIP diverse Komponenten (Fenster, Rolladen, Themostate, Steckdosen, Fernsteuerungen ...)

zap

HMCCU verwendet das erweiterte Kommandozeilen-Parsing von FHEM. Da sind Gleichheitszeichen der Trenner zwischen Parameter und Wert.
2xCCU3, Fenster, Rollläden, Themostate, Stromzähler, Steckdosen ...)
Entwicklung: FHEM auf AMD NUC (Ubuntu)
Produktiv inzwischen auf Home Assistant gewechselt.
Maintainer: FULLY, Meteohub, HMCCU, AndroidDB

oduudo

Zitat von: zap am 27 November 2021, 14:10:36
HMCCU verwendet das erweiterte Kommandozeilen-Parsing von FHEM. Da sind Gleichheitszeichen der Trenner zwischen Parameter und Wert.

Mhh, aber in der FHEM Referenz steht bei der Beschreibung von <devspec> "Falls die Spezifikation von :FILTER=NAME=WERT gefolgt wird, dann wird die zuvor gefundene Liste durch diesen neuen Ausdruck gefiltert"
"list HMIP_PS_(05|06|07|08|09|10|11):FILTER=3.STATE=on" funktioniert ja auch bzw.
"set HMIP_PS_(05|06):FILTER=3.STATE=on off" tuts auch...

Bin ja auch nur drauf gekommen, weil in Deiner Kommandobeschreibung <FHEM-DevSpec> steht und ich deshalb bei der Beschreibung von <devspec> nachgeschaut hab...
RPI4b mit FHEM
CCU3
HM, HmIP diverse Komponenten (Fenster, Rolladen, Themostate, Steckdosen, Fernsteuerungen ...)

zap

Ja, aber: Bei set Befehlen greift zuerst das erweiterte Commandline Parsing. Die devspec kommt so gar nicht komplett in HMCCU an.
2xCCU3, Fenster, Rollläden, Themostate, Stromzähler, Steckdosen ...)
Entwicklung: FHEM auf AMD NUC (Ubuntu)
Produktiv inzwischen auf Home Assistant gewechselt.
Maintainer: FULLY, Meteohub, HMCCU, AndroidDB

Dirk070

Hi zap,

vielen Dank, so langsam kriege ich meine Devices durch Deine Änderungen in den Griff.

Bei meinen beiden HmIP-BSL habe ich noch das Problem, dass die LEVEL-Readings nur on und off liefern.
Die Helligkeit der Farben im Taster lässt sich ja dimmen und ich habe Abfragen auf den Level des Dimmwertes.
Das klappt natürlich jetzt nicht mehr. Ich habe das Device nicht neu angelegt, nur ein set defaults reset

Ist das noch ein Fehler oder lässt sich das beeinflussen, damit ich wieder die Dimmwerte als numerischen Wert bekomme?

Danke und schöne Grüße
Dirk

oduudo

Zitat von: zap am 27 November 2021, 17:41:04
Ja, aber: Bei set Befehlen greift zuerst das erweiterte Commandline Parsing. Die devspec kommt so gar nicht komplett in HMCCU an.

Ok.
Damit dann nicht noch einer in die Falle läuft, vielleicht ein HInweis bei Deiner Kommandobeschreibung zur Syntax der <FHEM-DevSpec>

Trotzdem Danke für Deine Mühe, werde sicher auch ohne den Filter leben können..  8)

Danke und viele Grüße,
Udo
RPI4b mit FHEM
CCU3
HM, HmIP diverse Komponenten (Fenster, Rolladen, Themostate, Steckdosen, Fernsteuerungen ...)

zap

Zitat von: Dirk070 am 27 November 2021, 18:05:09
Hi zap,

vielen Dank, so langsam kriege ich meine Devices durch Deine Änderungen in den Griff.

Bei meinen beiden HmIP-BSL habe ich noch das Problem, dass die LEVEL-Readings nur on und off liefern.
Die Helligkeit der Farben im Taster lässt sich ja dimmen und ich habe Abfragen auf den Level des Dimmwertes.
Das klappt natürlich jetzt nicht mehr. Ich habe das Device nicht neu angelegt, nur ein set defaults reset

Ist das noch ein Fehler oder lässt sich das beeinflussen, damit ich wieder die Dimmwerte als numerischen Wert bekomme?

Danke und schöne Grüße
Dirk

Vermutlich hast Du alles in einem Device. Das ist ungünstig, da die Beleuchtung der Tasten über separate Kanäle gesteuert wird.

Wenn Du das Gerät mit "get createDev" neu anlegen lässt, legt Dir HMCCU 3 HMCCUDEVs an:

2 x Steuerung Beleuchtung der beiden Tasten
1 x Schalten

Es wird HMCCUDEV statt HMCCUCHN verwendet, da jedes Device nocht Zugriff auf das Wochenprofil bietet.
2xCCU3, Fenster, Rollläden, Themostate, Stromzähler, Steckdosen ...)
Entwicklung: FHEM auf AMD NUC (Ubuntu)
Produktiv inzwischen auf Home Assistant gewechselt.
Maintainer: FULLY, Meteohub, HMCCU, AndroidDB

Dirk070

Ok, Danke, haben die Devices für die Tasten dann den LEVEL wieder numerisch?

aski71

Ich stelle fest, dass man ein HM-Sec-Win (Fenstermotor) nur noch öffnen und schließen, aber nicht mehr verriegeln kann.
Verriegelt wird das Ding über einen 1.LEVEL Wert von -0.005
Das geht aber nicht mehr. :-(

nog76

Ich erhalte beim Schalten von HMIP-WTH2 (Wandthermostat) über die FHEM Oberfläche sporadisch die Fehlermeldung "HMCCUCHN: HmIP_WTH_2_000XXXXXXXXXXX Execution of CCU script or command failed" angezeigt.

Im Logfile steht dann sowas:
2021.11.27 21:28:03 3: HMCCUCHN [HmIP_WTH_2_000XXXXXXXXXXX] set HmIP_WTH_2_000XXXXXXXXXXX on
2021.11.27 21:28:03 4: HMCCU [d_ccu] Build URL = http://a.b.c.d:8181/tclrega.exe
2021.11.27 21:28:07 2: HMCCU [d_ccu] Error during HTTP request: http://a.b.c.d:8181/tclrega.exe: Select timeout/error:
2021.11.27 21:28:07 1: HMCCUCHN [HmIP_WTH_2_000XXXXXXXXXXX] HMCCUCHN: HmIP_WTH_2_000XXXXXXXXXXX Execution of CCU script or command failed



Das zu schaltende Kommando wird aber trotzdem problemlos ausgeführt.

Ich konnte das Problem bisher nur bei diesen Wandthermostaten nachstellen. Laut alter Logs trat der Fehler vor der HMCCU5.0 Version nicht auf.

Der Fehler tritt manchmal sofort - manchmal erst nach 4-5 Schaltvorgängen auf.

Eine Idee, wie ich das noch weiter eingrenzen kann?

zap

#205
Zitat von: aski71 am 27 November 2021, 19:48:59
Ich stelle fest, dass man ein HM-Sec-Win (Fenstermotor) nur noch öffnen und schließen, aber nicht mehr verriegeln kann.
Verriegelt wird das Ding über einen 1.LEVEL Wert von -0.005
Das geht aber nicht mehr. :-(

Also ein "set datapoint 1.LEVEL -0.5 geht nicht? Der Wert -0.005 muss mit 100 multipliziert werden.

Hast Du das Attribut ccuscaleval gesetzt? Ggf. löschen

Hilfreich wäre auch die Ausgabe von "get paramsetDesc", damit ich sehen kann, welche MIN/MAX Werte bei LEVEL definiert sind.
2xCCU3, Fenster, Rollläden, Themostate, Stromzähler, Steckdosen ...)
Entwicklung: FHEM auf AMD NUC (Ubuntu)
Produktiv inzwischen auf Home Assistant gewechselt.
Maintainer: FULLY, Meteohub, HMCCU, AndroidDB

zap

@nog76

Mehr Infos gibt es mit ccuflags = trace (für das Thermostat)

Nutzt Du den NonBlockingMode für die Ausführung? Mal versuchsweise abschalten.

Ansonsten solltest Du wenn möglich immer die Direktverknüpfung zwischen Wandthermostat, Heizthermostat und Fenstersensoren verwenden. Das ist wesentlich schneller und verlässlicher. Mann kann ja in den Wandthermostaten in der CCU so gut wie jede Situation über die Parameter nachbilden/einstellen

2xCCU3, Fenster, Rollläden, Themostate, Stromzähler, Steckdosen ...)
Entwicklung: FHEM auf AMD NUC (Ubuntu)
Produktiv inzwischen auf Home Assistant gewechselt.
Maintainer: FULLY, Meteohub, HMCCU, AndroidDB

nog76

Zitat von: zap am 28 November 2021, 10:13:51
@nog76

Mehr Infos gibt es mit ccuflags = trace (für das Thermostat)

Nutzt Du den NonBlockingMode für die Ausführung? Mal versuchsweise abschalten.

Ansonsten solltest Du wenn möglich immer die Direktverknüpfung zwischen Wandthermostat, Heizthermostat und Fenstersensoren verwenden. Das ist wesentlich schneller und verlässlicher. Mann kann ja in den Wandthermostaten in der CCU so gut wie jede Situation über die Parameter nachbilden/einstellen

Angehängt die Trace-Logs für ein "set HmIP_WTH_2_000XXXXXXXXXXX desired-temp 18.0".
Hier fällt mir spontan nur diese Message auf:
[main::HMCCU_ScaleValue] Can't get parameter definion for addr=000XXXXXXXXXXX:1 chn=0
Diese wird aber jedes Mal gelogged - auch wenn die Fehlermeldung nicht auftritt.

Mit "Schalten" meinte ich in meinem Ausgangspost somit eher das Setzen einer Temperatur am Thermostat.
Thermostat und Aktor sind bereits in der CCU per Direktverknüpfung verbunden.

ccuflags steht nur auf "procrpc,reconnect" - also kein nonBlocking aktiv.

zap

Der Befehl an sich sieht gut aus, allerdings scheint es beim Zugriff auf die CCU zu einem Timeout zu kommen:

URL=http://192.168.6.151:8181/tclrega.exe, cmd=(datapoints.Get("HmIP-RF.000XXXXXXXXXXX:1.SET_POINT_TEMPERATURE")).State(18.0);
2021.11.28 11:47:00 2 : HMCCU [d_ccu] Error during HTTP request: http://192.168.6.151:8181/tclrega.exe: Select timeout/error:

Erhöhe mal den Timeout für Requests:

attr d_ccu ccuReqTimeout 8

Ist das eine CCU2 oder 3?

2xCCU3, Fenster, Rollläden, Themostate, Stromzähler, Steckdosen ...)
Entwicklung: FHEM auf AMD NUC (Ubuntu)
Produktiv inzwischen auf Home Assistant gewechselt.
Maintainer: FULLY, Meteohub, HMCCU, AndroidDB

nog76

Zitat von: zap am 28 November 2021, 12:52:35
Erhöhe mal den Timeout für Requests:

attr d_ccu ccuReqTimeout 8

Ist das eine CCU2 oder 3?

Das Erhöhen des Timeouts (zu einer CCU3/Raspberrymatic) scheint wirklich zu helfen, konnte den Fehler seitdem nicht mehr reproduzieren.
Aber warum kommt der Fehler erst seit dem Update auf die 5.0?