readingsGroup commands mit Dropdown und regSet

Begonnen von c-graeser, 21 Oktober 2018, 20:02:54

Vorheriges Thema - Nächstes Thema

c-graeser

Hallo zusammen,

mir stellt sich folgende Herausforderung, die ich trotz intensiver Recherche im Forum leider bisher nicht alleine lösen konnte:

In einer readingsGroup möchte ich eine Kombination der commands aus den im WIKI aufgeführten Beispielen "heatingInfo machen:
attr heatingInfo commands {
'heatingInfo.sollsetz'=>'desired-temp:5.0,12.0,18.0,19.0,20.0,20.5,21.0,21.5,22.0,22.5,23.0,23.5,24.0',
"controlMode.manual"=>"set %DEVICE controlMode auto","controlMode.auto"=>"set %DEVICE controlMode manual",
"R-globalBtnLock.on"=>"set %DEVICE regSet globalBtnLock off",
"R-globalBtnLock.off"=>"set %DEVICE regSet globalBtnLock on"}

Mir geht es darum, eine Drop-Down-Liste zu haben, bei gleichzeitiger Verwendung des Befehls "set %DEVICE regSet Auswahl aus Drop-Down"

Hintergrund ist, dass ich den Registerwert "valveMaxPos" meiner Homemativ Heizungs-Ventile übersichtlich anpassen möchte.

Ist das möglich, und wenn ja wie?
Raspberry Pi, HMUART, LaCrossGW, myJeeLink

JensS

Wie hast du heatingInfo definiert?

list heatingInfo

Gruß Jens
Debian auf APU2C4, HM-CFG-USB2, SIGNALduino, HM-ES-PMSw1-Pl, TFA 30.3121, TFA 30.3125, ITS-150, PIR-5000, configurable Firmata USB & LAN, 1-wire: DS-18B20, DS-18S20, DS-2408, DS-2413, diverse I2C-Komponenten, zigbee2mqtt, ESPEasy etc.

c-graeser

Hallo,

vielen Dank für die Antwort!
Ich habe es wie folgt definiert, aber so funktioniert es natürlich nicht:

Internals:
   CFGFN     
   DEF        HM_45592B_Clima:R-valveMaxPos,<MaxValve>
   NAME       rg_Ventilwegbegrenzung
   NR         11211
   NTFY_ORDER 50-rg_Ventilwegbegrenzung
   STATE      Initialized
   TYPE       readingsGroup
   mayBeVisible 1
   CONTENT:
     HM_45592B_Clima 1
   CONTENT2:
   DEVICES:
     ARRAY(0x5527258)
   Helper:
     DBLOG:
       HM_45592B_Clima.R-valveMaxPos:
         logdb:
           TIME       1540142137.38422
           VALUE      <html>50 %</html>
   fhem:
     lastDefChange 86
     last_update 1540143855.88453
   helper:
     DEF       
     commands:
       rg_Ventilwegbegrenzung.MaxValve R-valveMaxPos:60,70
     positions:
       HM_45592B_Clima.R-valveMaxPos 1:1
     values:
       formated:
         undef
         ARRAY(0x545fb28)
       orig:
         undef
         ARRAY(0x5a05f28)
       prefixsuffix:
         undef
         ARRAY(0x56b3a80)
Attributes:
   commands   {  'rg_Ventilwegbegrenzung.MaxValve'=>"set %DEVICE regSet valveMaxPos",'rg_Ventilwegbegrenzung.MaxValve'=>'R-valveMaxPos:60,70' }
   room       !Bastelecke
Raspberry Pi, HMUART, LaCrossGW, myJeeLink

c-graeser

Der Hintergrund meines Vorhabens ist, dass ich eine übersichtliche Möglichkeit haben möchte, um die maximale Öffnung der Ventile der HM-Heizungsregler zu begrenzen.
Wir haben Fernwärme und das Wasser kommt mit nahezu 100°C durch die Heizkörper. Daher gibt es bei Sollwertänderungen oder auch im normalen Betrieb regelmäßig Überschwinger in der Raumtemperatur.
Ich habe mein Problem im Moment so gelöst, dass ich in der readingsGroup in 10%-Schritten feste Kommandos hinterlegt habe. Jedes Kommando setzt dann den Wert des entsprechenden Ventils.
{'rg_Ventilwegbegrenzung.V10' => "set $DEVICE regSet valveMaxPos 10 ",'rg_Ventilwegbegrenzung.V20' => "set $DEVICE regSet valveMaxPos 20 ",...}
Das sieht dann so aus wie das Bild im Anhang.

Viel besser wäre die Lösung mit Drop Down Auswahllisten, aber das bekomme ich nicht hin, weil ich, wenn ich die Drop Down Funktion integriere, das Kommando zum Setzen des Wertes im Ventil nicht integriert bekomme.
Vielleicht liest ja ein Perl Experte mit, der mir da noch auf die Sprünge helfen kann.
Raspberry Pi, HMUART, LaCrossGW, myJeeLink