Brauche mal Anfang Hilfe RT-DN controlMode

Begonnen von Freddy, 31 Oktober 2014, 00:26:47

Vorheriges Thema - Nächstes Thema

Freddy

Hallo

Ich möchte bei Änderung des controlMode eines HM Wandthermo, die Thermostate überall z.B. Auf Urlaub schalten. Und die Urlaub Zeitspanne übertragen. Das setzen der Werte geht aber das Auslesen habe ich noch nicht hinbekommen

Und sollte ich watchdog oder notify nehmen?

Um ein Code Beispiel für den Anfang wäre ich erfreut. Danke

Hollo

Ist das eine Klausuraufgabe: "Es ist nichts gegeben, bitte ermitteln Sie alle fehlenden Werte" ?  ;)

Im Ernst, es gibt hier im Forum mittlerweile wohl 100 Threads zu den HM-Thermostaten.
Wenn Du Dich dort bereits ein wenig umgeschaut hast (alles lesen ist wirklich viel), solltest Du zumindest mehr Infos geben...

- was ist womit gepaired/gepeered ?
- was möchtest Du genau machen ?
- was davon geht, und wie hast Du es gemacht ?
- was davon geht nicht, und wie hast Du es versucht ?

Wenn Du den Wandthermostaten mit den Heizungsthermostaten gepaired hast, sollte das automatisch gehen.
Hast Du die nicht direkt verknüpft, weil Du nicht immer alle beeinflussen willst, dann solltest Du das über fhem machen.

Wenn das Setzen funktioniert, solltest Du nach einigen Minuten auch bei den verbundenen Thermostaten das Ergebnis in den Readings sehen.
Was meinst Du mit Auslesen?

Gruß,
Hollo
FHEM 6.x auf RPi 3B Buster
Protokolle: Homematic, Z-Wave, MQTT, Modbus
Temp/Feuchte: JeeLink-Clone und LGW mit LaCrosse/IT
sonstiges: Linux-Server, Dreambox, "RSS-Tablet"

chris1284

#2
so wie es sich liest hast du den Wandthermostaten  nicht mit ( allen ) Thermostaten verbunden und willst auf den partymode am Wandthermostaten in fhem reagieren.

dafür brauchst du ein notify welches auf [Name Wandthermostaten]:controlMode triggert (wenn denn das Readings am Wandthermostaten  so heisst, habe selbst keinen)

wenn conrtolMode = party dann musst du aus dem Wandthermostaten die Readings partyEnd partyStart und partyTemp auslesen. Das geht zb mit der Funktion "ReadingsVal"

Diese Werte verteilst du dann an die anderen Thermostate per "set [namedesthermostaten]_Clima controlParty [partyTemp des Wandthermo] [partyStart des Wandthermo]  [partyEnd des Wandthermo]"

so in etwa aus dem Kopf ohne Syntaxgarantie

define ntf_wandthermo notify wandthermo:controlMode.* {
if ( ReadingsVal("Wandthermo","controlMode","") eq "party")
{
           my $startdate = ReadingsVal("Wandthermo","partyStart","");
           my $enddate= ReadingsVal("Wandthermo","partyEnd","");
           my $temp= ReadingsVal("Wandthermo","partyTemp","");
           fhem("set [Thermostatname]_Clima controlParty $temp $startdate  $enddate");}
}

MadMax-FHEM

Hallo Freddy, chris1284,

@Freddy: hmm, klingt so ähnlich wie das was ich vorhabe:

ich will von einem zentralen (so nenne ich ihn mal) Wandthermostaten (z.B. an der Tür) beim verlassen in den "Party-Modus" schalten. Dies soll dann auf alle Wandthermostate in den anderen Räumen übertragen werden (die sich im automatic Modus befinden). Finde ich besser als "nur" den "Sparschalter", der einfach "runter regelt", denn mit dem Party-Modus kann ich ja auch wieder sagen wann wieder normal geregelt werden soll, dann ist's warm wenn ich zurück komme statt: ich drücke wieder den Schalter und erst dann ist wieder "normal Modus"...

@chris1284 (und Freddy):

was ich habe ist ein notify wie du sagts, d.h. auf controlMode "party" wollte ich die partyStart, partyEnd Werts usw. des zentralen Wandthermostaten auslesen und denn den party Modus bei den anderen Wandthermostaten schalten.
Prinzipiell funktioniert mein code auch ABER: bei dem Wandthermostaten stehen KEINE Werte für partyStart usw. in den Readings obwohl der Modus eingestellt ist (per Hand am Thermostaten selbst).
Wenn ich die Werte dann per "set <Wandthermostat> controlParty Temp partyStart partyEnd" mal gesetzt habe, kann ich sie auslesen ABER sie ändern sich dann NICHT mehr durch einstellen am Wandthermostaten selbst sondern es bleiben die Werte die mal per set gesetzt wurden...
Daher funktioniert zwar der Code und der notify usw. aber wenn ich keine aktuellen Werte für partyStart usw. bekomme dann macht das so keinen Sinn.
Auch längeres Warten bringt nichts die Werte bleiben.
Allerdings habe ich gesehen, dass an einem Wandthermostat mit gepeertem Heizkörperthermostat dieser (also der Heizkörperthermostat) die Werte partyStart usw. zyklisch sendet. Bringt mir aber nichts, da ich ja an dem zentralen Wandthermostat KEINEN Heizkörperthermostat peeren will, sondern diesen quasi als "intelligenten Schalter" nutzen will (und evtl. parallel noch aufzeichnen was die Temperatur da so macht)...

Hat da jemand noch eine Idee??

Kann man einen "dummy-Thermostat" mit dem zentralen Wandthermostat peeren um dann dort die Werte zu haben?
Denn ein gepeerter Heizkörperthermostat bekommt offensichtlich die per Hand eingestellten Partywerte...
Wobei ich jetzt mit dummy-Thermostat keinen echten Thermostat meine, der dann halt "nur" in der Ecke liegt und zum Zweck des Auslesens gepeert ist...
...sondern einen SW-dummy...

Danke, Joachim
FHEM PI3B+ Bullseye: HM-CFG-USB, 40x HM, ZWave-USB, 13x ZWave, EnOcean-PI, 15x EnOcean, HUE/deCONZ, CO2, ESP-Multisensor, Shelly, alexa-fhem, ...
FHEM PI2 Buster: HM-CFG-USB, 25x HM, ZWave-USB, 4x ZWave, EnOcean-PI, 3x EnOcean, Shelly, ha-bridge, ...
FHEM PI3 Buster (Test)