Hauptmenü

Wert für Slider

Begonnen von wolliballa73, 11 Februar 2023, 14:41:48

Vorheriges Thema - Nächstes Thema

wolliballa73

Hallo zusammen,

für meine Heizungssteuerung verwende ich einen Slider, um die gewünschte Temperatur (tempSollKomfort) einzustellen. Das funktioniert auch soweit; auch wenn der Wert über andere Wege (KNX) geändert wird, springt der Slider erstmal auf den neuen Wert.
Mein Problem ist jetzt, dass der Slider nicht auf diesem Wert bleibt, sondern bei jeder Änderung irgendeines Readings den Wert von "state" annimmt.

Was mach ich falsch?

defmod 24RTR KNX 4/1/240:dpt9.001:tempSollKomfort:set 4/1/241:dpt9.001:tempIstRaum:listenonly 4/1/242:dpt9.001:tempIstBoden:listenonly 4/2/241:dpt1.001:sperren 4/2/242:dpt20.102:baVorwahl:set 4/2/243:dpt9.001:swVerschiebung:listenonly 4/2/245:dpt1.002:betrKomfort 4/2/246:dpt1.002:betrNacht 4/2/247:dpt1.002:betrFrost 4/2/249:dpt1.002:zwangstellung 4/4/241:dpt5.001:statusStellwert:get 4/4/242:dpt20.102:HVACStatus:get 4/4/243:dpt20.102:RHCCStatus:get 4/4/244:dpt9.001:aktSollwert:get
attr 24RTR IODev tul
attr 24RTR devStateIcon { "<div align=left>" . FW_makeImage("temp_temperature") . ReadingsVal($name,"tempIstRaum-get",0) . "<br/>" . FW_makeImage("sani_floor_heating") . "&nbsp". ReadingsVal($name,"tempIstBoden-set",0) . "<br/>" . "soll: ". ReadingsVal($name,"aktSollwert-get",0) . " | Stellwert: ". ReadingsVal($name,"statusStellwert-get",0) . "</div>" }
attr 24RTR group RTR
attr 24RTR room Heizung,OG->Gast
attr 24RTR webCmd tempSollKomfort
attr 24RTR widgetOverride tempSollKomfort:slider,0,0.5,255


Der Wertebereich des Sliders ist gerade nur deswegen so groß, damit ich meine obige Behauptung besser beobachten konnte 8)

Vielen Dank für sachdienliche Hinweise :)
CU,
Matze

erwin

Hi,
Ändere die definition von:
defmod 24RTR KNX 4/1/240:dpt9.001:tempSollKomfort:set 4/1/241:.....
auf:
defmod 24RTR KNX 4/1/240:dpt9.001:tempSollKomfort:set:nosuffix 4/1/241:.....
l.g erwin
PS: mit einem list <device> wärs einfacher!
FHEM aktuell auf RaspberryPI Mdl 1-4
Maintainer: 00_KNXIO.pm 10_KNX.pm
User: CUNO2 (868 SLOWRF) - HMS100xx, FS20, FHT, 1-Wire  - 2401(iButton), 18x20, 2406, 2413 (AVR), 2450,..,MQTT2, KNX, SONOFF, mySENSORS,....
Hardware:  Busware ROT, Weinzierl IP731, 1-Wire GW,...

wolliballa73

Hallo Erwin,

vielen Dank - scheint zu funktionieren.
Ich versuch jetzt grad noch zu verstehen, wieso das so ist. Meine Erklärung wäre, dass es vorher kein Reading "tempSollKomfort" gab und der Slider deshalb auf alle Readings reagiert. Mit der Änderung gibt's das Reading und der Slider verwendet deshalb nur noch dieses.
Liege ich da halbwegs richtig? Man will ja was lernen 8)

Und deshalb der Vollständigkeit halber die Ausgabe von list 24RTR :)
Internals:
   DEF        4/1/240:dpt9.001:tempSollKomfort:set:nosuffix 4/1/241:dpt9.001:tempIstRaum 4/1/242:dpt9.001:tempIstBoden 4/2/241:dpt1.001:sperren 4/2/242:dpt20.102:baVorwahl:set 4/2/243:dpt9.001:swVerschiebung:listenonly 4/2/245:dpt1.002:betrKomfort 4/2/246:dpt1.002:betrNacht 4/2/247:dpt1.002:betrFrost 4/2/249:dpt1.002:zwangstellung 4/4/241:dpt5.001:statusStellwert:get 4/4/242:dpt20.102:HVACStatus:get 4/4/243:dpt20.102:RHCCStatus:get 4/4/244:dpt9.001:aktSollwert:get
   DEVNAME    24RTR
   FIRSTGADNAME tempSollKomfort
   FUUID      5f72bfcc-f33f-46a8-2eb8-03ff48c8be7956c6
   GETSTRING  RHCCStatus:noArg betrFrost:noArg betrNacht:noArg betrKomfort:noArg HVACStatus:noArg sperren:noArg statusStellwert:noArg tempIstBoden:noArg tempIstRaum:noArg zwangstellung:noArg aktSollwert:noArg
   IODev      tul
   LASTInputDev tul
   MSGCNT     4823
   NAME       24RTR
   NR         125
   SETSTRING  betrFrost:false,true betrNacht:false,true betrKomfort:false,true sperren:on,off,toggle tempSollKomfort:slider,-274,6710,670760 tempIstBoden:slider,-274,6710,670760 tempIstRaum:slider,-274,6710,670760 baVorwahl:Auto,Comfort,Standby,Economy,Protection zwangstellung:false,true
   STATE      30 %
   TYPE       KNX
   model      dpt9
   tul_MSGCNT 4823
   tul_RAWMSG C01136w044f14d
   tul_TIME   2023-02-12 18:54:04
   GADDETAILS:
     HVACStatus:
       CODE       044f2
       GROUP      4/4/242
       MODEL      dpt20.102
       NO         12
       OPTION     get
       RDNAMEGET  HVACStatus-get
       RDNAMEPUT  HVACStatus-put
       RDNAMESET  HVACStatus-set
       SETLIST    :Auto,Comfort,Standby,Economy,Protection
     RHCCStatus:
       CODE       044f3
       GROUP      4/4/243
       MODEL      dpt20.102
       NO         13
       OPTION     get
       RDNAMEGET  RHCCStatus-get
       RDNAMEPUT  RHCCStatus-put
       RDNAMESET  RHCCStatus-set
       SETLIST    :Auto,Comfort,Standby,Economy,Protection
     aktSollwert:
       CODE       044f4
       GROUP      4/4/244
       MODEL      dpt9.001
       NO         14
       OPTION     get
       RDNAMEGET  aktSollwert-get
       RDNAMEPUT  aktSollwert-put
       RDNAMESET  aktSollwert-set
       SETLIST    :slider,-274,6710,670760
     baVorwahl:
       CODE       042f2
       GROUP      4/2/242
       MODEL      dpt20.102
       NO         5
       OPTION     set
       RDNAMEGET  baVorwahl-get
       RDNAMEPUT  baVorwahl-put
       RDNAMESET  baVorwahl-set
       SETLIST    :Auto,Comfort,Standby,Economy,Protection
     betrFrost:
       CODE       042f7
       GROUP      4/2/247
       MODEL      dpt1.002
       NO         9
       OPTION     
       RDNAMEGET  betrFrost-get
       RDNAMEPUT  betrFrost-put
       RDNAMESET  betrFrost-set
       SETLIST    :false,true
     betrKomfort:
       CODE       042f5
       GROUP      4/2/245
       MODEL      dpt1.002
       NO         7
       OPTION     
       RDNAMEGET  betrKomfort-get
       RDNAMEPUT  betrKomfort-put
       RDNAMESET  betrKomfort-set
       SETLIST    :false,true
     betrNacht:
       CODE       042f6
       GROUP      4/2/246
       MODEL      dpt1.002
       NO         8
       OPTION     
       RDNAMEGET  betrNacht-get
       RDNAMEPUT  betrNacht-put
       RDNAMESET  betrNacht-set
       SETLIST    :false,true
     sperren:
       CODE       042f1
       GROUP      4/2/241
       MODEL      dpt1.001
       NO         4
       OPTION     
       RDNAMEGET  sperren-get
       RDNAMEPUT  sperren-put
       RDNAMESET  sperren-set
       SETLIST    :on,off,toggle
     statusStellwert:
       CODE       044f1
       GROUP      4/4/241
       MODEL      dpt5.001
       NO         11
       OPTION     get
       RDNAMEGET  statusStellwert-get
       RDNAMEPUT  statusStellwert-put
       RDNAMESET  statusStellwert-set
       SETLIST    :slider,0,1,100
     swVerschiebung:
       CODE       042f3
       GROUP      4/2/243
       MODEL      dpt9.001
       NO         6
       OPTION     listenonly
       RDNAMEGET  swVerschiebung-get
       RDNAMEPUT  swVerschiebung-put
       RDNAMESET  swVerschiebung-set
       SETLIST    :slider,-274,6710,670760
     tempIstBoden:
       CODE       041f2
       GROUP      4/1/242
       MODEL      dpt9.001
       NO         3
       OPTION     
       RDNAMEGET  tempIstBoden-get
       RDNAMEPUT  tempIstBoden-put
       RDNAMESET  tempIstBoden-set
       SETLIST    :slider,-274,6710,670760
     tempIstRaum:
       CODE       041f1
       GROUP      4/1/241
       MODEL      dpt9.001
       NO         2
       OPTION     
       RDNAMEGET  tempIstRaum-get
       RDNAMEPUT  tempIstRaum-put
       RDNAMESET  tempIstRaum-set
       SETLIST    :slider,-274,6710,670760
     tempSollKomfort:
       CODE       041f0
       GROUP      4/1/240
       MODEL      dpt9.001
       NO         1
       OPTION     set
       RDNAMEGET  tempSollKomfort
       RDNAMEPUT  tempSollKomfort
       RDNAMESET  tempSollKomfort
       SETLIST    :slider,-274,6710,670760
     zwangstellung:
       CODE       042f9
       GROUP      4/2/249
       MODEL      dpt1.002
       NO         10
       OPTION     
       RDNAMEGET  zwangstellung-get
       RDNAMEPUT  zwangstellung-put
       RDNAMESET  zwangstellung-set
       SETLIST    :false,true
   GADTABLE:
     041f0      tempSollKomfort
     041f1      tempIstRaum
     041f2      tempIstBoden
     042f1      sperren
     042f2      baVorwahl
     042f3      swVerschiebung
     042f5      betrKomfort
     042f6      betrNacht
     042f7      betrFrost
     042f9      zwangstellung
     044f1      statusStellwert
     044f2      HVACStatus
     044f3      RHCCStatus
     044f4      aktSollwert
   OLDREADINGS:
   READINGS:
     2023-02-12 18:53:44   HVACStatus-get  reserved
     2023-02-12 18:20:03   IODev           tul
     2023-02-11 15:38:43   RHCCStatus-get  Auto
     2023-02-12 18:53:44   aktSollwert-get 22.00 &deg;C
     2023-02-11 15:38:43   betrFrost-get   false
     2023-02-11 15:38:43   betrKomfort-get true
     2023-02-12 18:53:43   betrKomfort-set true
     2023-02-11 15:38:43   betrNacht-get   false
     2023-02-11 15:38:43   betrNacht-set   false
     2023-02-12 18:54:04   last-sender     1.1.54
     2023-02-12 18:54:04   state           30 %
     2023-02-12 18:54:04   statusStellwert-get 30 %
     2023-02-11 15:38:43   swVerschiebung-get 0.00 &deg;C
     2023-02-12 18:43:56   tempIstRaum-get 20.50 &deg;C
     2023-02-12 18:52:45   tempSollKomfort 22 &deg;C
     2023-02-11 15:38:43   tempSollKomfort-get 23.00 &deg;C
     2023-02-12 02:48:18   tempSollKomfort-set 19 &deg;C
Attributes:
   IODev      tul
   devStateIcon {"<div align=left>".FW_makeImage("temp_temperature").ReadingsVal($name,"tempIstRaum-get",0)."<br/>"."soll: ".ReadingsVal($name,"aktSollwert-get",0)." | Stellwert: ".ReadingsVal($name,"statusStellwert-get",0)."</div>"}
   group      RTR
   room       Heizung,OG->Gast
   webCmd     tempSollKomfort
   widgetOverride tempSollKomfort:slider,18,0.5,25


CU,
Matze

erwin

ZitatLiege ich da halbwegs richtig?
Ja völlig   8) , das ist auch nicht KNX-spezifisch,
das Attr widgetoverride will (als ersten Param) einen "set-Namen".... den aktuellen Wert holt es sich aus einem gleichnamigen reading (falls es eines gibt...)
Sorry, ich war am Nachmittag kurz, weil unterwegs...
l.g. erwin
PS: du kannst jetzt die readings tempSollKomfort-get/set löschen, , diese werden nicht mehr verwendet!
PS2: wann hast du das letzte mal ein update gemacht? Das reading für dpt9.001 schaut mittlerweile so aus:
11.87 °C
FHEM aktuell auf RaspberryPI Mdl 1-4
Maintainer: 00_KNXIO.pm 10_KNX.pm
User: CUNO2 (868 SLOWRF) - HMS100xx, FS20, FHT, 1-Wire  - 2401(iButton), 18x20, 2406, 2413 (AVR), 2450,..,MQTT2, KNX, SONOFF, mySENSORS,....
Hardware:  Busware ROT, Weinzierl IP731, 1-Wire GW,...