TVZ Tecalor 170 etc. (LWZ Stiebel Eltron) KWL Lüftung per TAE in FHEM einbinden

Begonnen von minierm, 17 Januar 2025, 18:44:13

Vorheriges Thema - Nächstes Thema

minierm

Hallo zusammen,
wer eine einfache Anbindung einer TVZ Tecalor 170 etc. (LWZ Stiebel Eltron) KWL Lüftung an FHEM möchte benötigt nur folgendes:
  • Ein RJ12 (TAE) Kabel 6-adrig (z.B. von der Fernbedienung)
    • Wer auf "Aus" und LED verzichten kann benötigt ggf. nur ein 4 adriges Kabel, wenn es von der Belegung passt
    • TAE Verlängerung über 10m funktioniert auch
  • Ein 4 Kanal 12/24V ZigBee Relais Schalter (z.B. von MHCOZY )
    • Wer auf "Aus" verzichten kann benötigt nur ein 2 Kanal Relais
    • Alternativ irgendein Relaisschalter für 24V DC Gleichstrom. Die Tecalor bringt 24 Volt Spannungsversorgung mit, daher bietet sich an, diese zu nutzen. Wer noch ein Relais mit anderer Spannungsversorgung rumliegen hat kann natürlich auch das verwenden.
    • Wer ein Relais mit Schalter-Eingang findet kann auch die Filter-LED anschliessen und abfragen.

Kurzfassung:
  • Kabel in die entsprechende Buchse an der KWL stecken
  • 0V und 24V an die Spannungsversorgung des Boards anschliessen
  • Steuerleitungen (14V) und 0V an die Schalter anschliessen
  • Funktion wird durch Einschalten aktiviert

Priorität:
  • Aus
  • Party
  • Tag
  • Nacht = kein Ausgang aktiv.
Achtung: "Aus/Standby" reagiert nur verzögert.
Das MHCOZY bietet wohl auch die Option, immer nur einen Ausgang aktiv zu haben, die Funktionalität könnte man also auch nutzen. Ich nutze sie nicht, dadurch kann man mal kurz auf Party stellen und beim Zurücknehmen ist der vorherige Zustand wieder aktiv.

Belegung des Kabels der Fernbedienung:
LeitungsNr (Ohne Gewähr) - Beschriftung - Funktion
1 = 24V  (weiß) = Spannungsversorgung 24V
2 = P (schwarz)  = 0V (Neutralleiter)
3 = 0 (rot)= Aus/Standby
4 = 2 (grün) = Tag
5 = 3 (orange/gelb) = Party
6 = LED (blau) = LED

Siehe z.B. Handbuch TVZ 170 E Plus oder Fernbedienung FEZ

Beispiel Definition Lüftungsmodus Tagschaltung:
define deCONZ_HUEDevice22 HUEDevice 22  IODev=deCONZ
attr deCONZ_HUEDevice22 IODev deCONZ
attr deCONZ_HUEDevice22 alias Lüftung Tag 22
attr deCONZ_HUEDevice22 color-icons 2
attr deCONZ_HUEDevice22 devStateIcon {(HUEDevice_devStateIcon($name),"toggle")}
attr deCONZ_HUEDevice22 event-on-change-reading state,DeadOrAlive,alert
attr deCONZ_HUEDevice22 group HUEDevice,Lüftung
attr deCONZ_HUEDevice22 icon vent_ventilation_level_2
attr deCONZ_HUEDevice22 model TS0004
attr deCONZ_HUEDevice22 readingsWatcher 6000,?,state
attr deCONZ_HUEDevice22 room Keller,Lüftung,Schalter,Strom,ZigBee,_KG
attr deCONZ_HUEDevice22 subType switch
attr deCONZ_HUEDevice22 webCmd on:off

Wochenschaltung ("$we" steht für Feiertag am Werktag, da "sa" und "so" schon vorher behandelt wurden, "!$we" ist ein normaler Werktag:)
define wdLueftungTimer WeekdayTimer LueftungStatus de\
  sa|10:30|Tag    sa|11:00|Party    sa|11:30|Tag    sa|14:30|Party    sa|15:00|Tag    sa|22:30|Party    sa|23:00|Nacht\
  so|10:30|Tag    so|11:00|Party    so|11:30|Tag    so|14:30|Party    so|15:00|Tag    so|21:30|Party    so|22:00|Nacht\
 $we|10:30|Tag|w $we|11:00|Party|w $we|11:30|Tag|w $we|14:30|Party|w $we|15:00|Tag|w $we|21:30|Party|w $we|22:00|Nacht|w\
!$we|08:00|Tag  !$we|09:00|Party  !$we|09:30|Tag  !$we|12:30|Party  !$we|13:00|Tag  !$we|21:30|Party  !$we|22:00|Nacht\
{SetLueftung("$EVENT");;}
attr wdLueftungTimer commandTemplate set $NAME  $EVENT
attr wdLueftungTimer group UG,Zeitschaltuhr
attr wdLueftungTimer room Keller,Lüftung,Zeitschaltuhren

Oder als DOIF mit dem Vorteil "Arbeitstag morgen" und der Nachteil der etwas schlechteren Darstellung:
define di_Lueftung DOIF ([08:80|AT]) {SetLueftung("Tag")}\
DOELSEIF ([09:00|AT]) {SetLueftung("Party")}\
DOELSEIF ([09:30|AT]) {SetLueftung("Tag")}\
DOELSEIF ([10:30|WE]) {SetLueftung("Tag")}\
DOELSEIF ([11:00|WE]) {SetLueftung("Party")}\
DOELSEIF ([11:30|WE]) {SetLueftung("Tag")}\
DOELSEIF ([12:30|AT]) {SetLueftung("Party")}\
DOELSEIF ([13:00|AT]) {SetLueftung("Tag")}\
DOELSEIF ([14:30|WE]) {SetLueftung("Party")}\
DOELSEIF ([15:00|WE]) {SetLueftung("Tag")}\
DOELSEIF ([21:30|MAT]) {SetLueftung("Party")}\
DOELSEIF ([22:00|MAT]) {SetLueftung("Nacht")}\
DOELSEIF ([22:30|MWE]) {SetLueftung("Party")}\
DOELSEIF ([23:00|MWE]) {SetLueftung("Nacht")}
attr di_Lueftung comment [<time>|So Mo Di Mi Do Fr Sa WE AT MWE MAT] \
WE entspricht der Ziffer 7, AT der Ziffer 8, MWE der Ziffer 9, MAT dem Buchstaben X
attr di_Lueftung group Lüftung,Zeitschaltuhr
attr di_Lueftung room Lüftung,Zeitschaltuhren

Setze Lüftungsmodus:
sub SetLueftung($) {
my ($Status) = @_;
if ($Status eq "Aus")
{
fhem("set deCONZ_HUEDevice24 on");
fhem("set deCONZ_HUEDevice22 off");
fhem("set deCONZ_HUEDevice23 off");
}
elsif ($Status eq "Tag")
{
fhem("set deCONZ_HUEDevice22 on");
fhem("set deCONZ_HUEDevice23 off");
fhem("set deCONZ_HUEDevice24 off");
}
elsif ($Status eq "Party")
{
fhem("set deCONZ_HUEDevice23 on");
fhem("set deCONZ_HUEDevice22 off");
fhem("set deCONZ_HUEDevice24 off");
}
else #Nacht
{
fhem("set deCONZ_HUEDevice22 off");
fhem("set deCONZ_HUEDevice23 off");
fhem("set deCONZ_HUEDevice24 off");
}
return $Status;
}

HGButte

Ich habe eine Tecalor Version der Lüftung und einen Raspberry 1 mit selbstgebauter Relaisplatine + schaltbare Steckdose im Einsatz um das Gleiche zu machen.

Die Tecalor hat über dem Display noch eine verdeckte Stiftleiste. Könnte mir vorstellen dass das eine serielle Service-Schnittstelle ist. Hat da jemand vielleicht weiter Infos drüber?