Seite 1 von 1
HM-CC-RT-DN Modus per GUI
Verfasst: 20. Jan 2020 23:05
von goerdi
Hi
Umgesetzt habe ich es so wie hier
https://forum.homegear.eu/t/hg-hm-cc-rt ... ule/2447/2
Ich habe da noch 2 Probleme..
1. Der Manual mode geht nicht . lt. eventlog wird der switch zwar auf ON geschaltet (aber nimmer auf OFF) deswegen denke ich mal mein item passt nicht (obwohl ich es zigmal gegoogelt habe
Code: Alles auswählen
Switch T_KUE_MANU_MODE "Manual Kueche" { channel = "homematic:HM-CC-RT-DN:ccu2:MEQ0182466:4#MANU_MODE" }
2. Ist das script anscheinend nur "one way" funktioniert sprich wenn ich den Thermostat direkt an der hardware umschalte bleibt der Dummy switch auf dem eingestellten wert stehen. Und das ist sagen wir mal etwas unschoen... kann ich das script auch irgendwie umdrehen ?
Gruss Gerd
Re: HM-CC-RT-DN Modus per GUI
Verfasst: 21. Jan 2020 07:23
von mbs
Woher beziehst Du den Channel mit MANU_MODE in Deinem Link den Du umgesetzt hast, dort steht nichts zu diesem Channel.
Re: HM-CC-RT-DN Modus per GUI
Verfasst: 21. Jan 2020 07:42
von goerdi
Hi !
Ja der steht das nicht drin schon klar... Das script ist aber genau so erweiterbar
Aber Geben tut es ihn ja

Und im eventlog steht das T_KUE_MANU_MODE auf ON geht....
ergo auch der entsprechende Channel und den hab ich so ergoogelt
Gruss Gerd
Re: HM-CC-RT-DN Modus per GUI
Verfasst: 21. Jan 2020 07:57
von mbs
Re: HM-CC-RT-DN Modus per GUI rule
Verfasst: 21. Jan 2020 10:44
von goerdi
Ok das geht also nur mit Wert...
Ich hab jetzt mal ein script gebastelt aber irgendwie macht er nicht was ich will... die Auswahl AUTO/BOOST/MANU schient zu funktionieren (AUTO und BOOS schalten um aber eben MANU nicht.
Code: Alles auswählen
import org.eclipse.smarthome.model.script.ScriptServiceUtil
rule "set modes"
when
Member of gSetHeatMode received command
then
val setitem = triggeringItem
val switchitem = ScriptServiceUtil.getItemRegistry.getItem(setitem.name.split("_").get(0) + "_" + setitem.state.toString)
if(setitem.name.contains("*MODE_MANU")){
switchitem.postUpdate(20)
}
else{
switchitem.sendcommand(ON)
}
end
Irgendwie klappt das mit der Auswahl nicht und ich weiss auch nicht wie ich einem Number itdem in einem script was schicken soll.
die Augangsvariable sind TKUE_AUTO_MODE, TKUE_BOOST_MODE und TKUE_MANU_MODE (wobei TKUE ersetzbar ist) und vom Eingasitem welches ausloest der vordere Teil genommen wird.
Sprich aus TKUE_MODE_OK mit dem Wert AUTO_MODE wird TKUE_AUTO_MODE (welches wiederum der item fuer den Datenpunkt des Reglers ist)
Problem beim script ist aktuell
1. die Auswahl fuer den Zweig wie ich schau ob eine MODE_MANU im item steht oder nicht
2. wenn die auswahl klappen sollte was bzw. wie ich dem Item fuer MANU dann eine Zahle senden muss
Gruss Gerd
Re: HM-CC-RT-DN Modus per GUI
Verfasst: 21. Jan 2020 11:55
von goerdi
Ich antworte mir mal selbst....
So gehts.. es wird beim umschalten auf Manual die aktuell eingestellte Temperatur übernommen.
den 2. If Else hätte ich auch weglassen koennen und nur ein Else hinpflastern ohne Abfrage.... das waere dann wahrscheinlich auch gegangen
Items
Code: Alles auswählen
Number TKUE_SOLL_TEMP "Soll - Temperatur [%.1f °C]" <temperature> { channel="homematic:HM-CC-RT-DN:ccu2:MEQ0182466:4#SET_TEMPERATURE" }
Switch TKUE_AUTO_MODE "Auto Kueche" (gTAUTO) { channel = "homematic:HM-CC-RT-DN:ccu2:MEQ0182466:4#AUTO_MODE" }
Switch TKUE_BOOST_MODE "Boost Kueche" (gTBOOST){ channel = "homematic:HM-CC-RT-DN:ccu2:MEQ0182466:4#BOOST_MODE" }
Number TKUE_MANU_MODE "Manual Kueche" (gT_MANU) { channel = "homematic:HM-CC-RT-DN:ccu2:MEQ0182466:4#MANU_MODE" }
String TKUE_MODE_OH "Thermostat Mode Küche [%s]" (gSetHeatMode)
sitemap
rule
Code: Alles auswählen
rule "set modes"
when
Member of gSetHeatMode received command
then
val setitem = triggeringItem
val switchitem = ScriptServiceUtil.getItemRegistry.getItem(setitem.name.split("_").get(0) + "_" + setitem.state.toString)
val switchtemp = ScriptServiceUtil.getItemRegistry.getItem(setitem.name.split("_").get(0) + "_" + "SOLL_TEMP")
val temperature = switchtemp.state
if (triggeringItem.state.toString.contains ("MANU_MODE")){
switchitem.sendCommand(switchtemp.state as Number)
}
else if (triggeringItem.state.toString.contains ("AUTO_MODE")){
switchitem.sendCommand(ON)
}
else if (triggeringItem.state.toString.contains ("BOOST_MODE")){
switchitem.sendCommand(ON)
}
end
Re: HM-CC-RT-DN Modus per GUI
Verfasst: 22. Jan 2020 17:48
von goerdi
Hi !
So ich habe es mal gemacht (mit hilfe der community)
Diese Rules schalten den Modus der HM-CC-RT-DN via Webgui und wenn ich es am Thermostat direkt aendere wird es zurueckgeschrieben.
Die Variablen muessen bestimmten regeln folgen...
Wobei das alles vor dem _ egal ist... die rules sind so ausgelegt das es auf eine update eines gruppenmitglieds reagiert...
Ciao Gerd
HM-CC-RT-DN.rules
Hi !