Heizungssteuerung mit FHT80B für absoluten Anfänger

Begonnen von romarira, 16 März 2013, 14:51:44

Vorheriges Thema - Nächstes Thema

romarira

Hallo,

ich möchte meine Heizung in der Wohnung über FHEM steuern. Diese Woche habe ich meine Geräte bekommen.
- FHT80B
- FHTTK
- FHT8V
- CUL V3

Nach vielen Mühen habe ich den CUL geflasht bekommen und er läuft jetzt an einer Fritzbox. Alle Geräte wurde erkannt.
Mit rename habe ich die Geräte umbenannt.
Mit attr habe ich die Geräte sowohl Räumen (z.B. Kinder1) und Gruppen (z.B. HeizKinder) zugeordnet.

Jetzt möchte ich eine Steuerung aufbauen und hier gehen meine Probleme los, da ich nicht programmieren kann.
Meine Kenntnisse erschöpfen sich dabei auf Grundkenntnisse in Basis, die ich mir beim Commodore 64 angeeignet habe.
Technisch bin ich eigentlich sehr versiert, so dass ich mir zutraue, mit etwas Unterstützung die Programmierung hinzubekommen.

Ich verstehe insbesondere nicht, was es mit den define und notify auf sich hat.

Ich habe es so verstanden, dass "define" dem System ein Gerät bekannt macht, was durch das autocreate und mein Umbenennen eigentlich schon geschehen ist.
Notify verstehe ich gar nicht.

Was möchte ich erreichen?

Ich möchte, dass die Heizkörper zu verschiedenen Zeiten die Temperatur hochfahren bzw. runterfahren.
Dabei soll an den Arbeitstagen Montag - Donnerstag ein anderes Programm laufen, als am Freitag, Samstag und Sonntag.
Das nach Möglichkeit auch für Räume von Gruppen (z.B. die beiden Kinderzimmer in einer Befehlssequenz).
Wenn das geregelt ist, möchte ich die Ferientermine und Feiertage einarbeiten.
Ferientage, an denen wir nicht da sind, sollen auf niedriger Temperatur laufen, Ferientage an denen wir zuhause sind, auf Wochenendprogramm.
Die Überwachung bzw. Einhaltung der Temperaturen sollen durch die FHT80B erfolgen.

Um die Ferientage und sonstige Tage bequem ändern zu können, wäre eine Dialogbox schön.

Ich habe im Wiki eine Datei gefunden, die evtl. hierzu angepasst werden kann (s. Link unten). Aber der Autor macht hier Anpassungen in verschiedenen Dateien und ich befürchte, dass ich hier die Konfiguration eher zerschieße als mein Ziel zu erreichen.

Kann mir jemand einen Tipp geben, wie der Beginn aussehen könnte mit define, notify, at und soweiter.
Oder einen Link, wo ich für einen blutigen Perl-Anfänger einfach verständliche Infos finde.

Ich würde dann gerne weiter machen und mein Ergebnis hier nochmal posten um auf Fehler checken zu lassen.

Hier mal ein erster Versuch auf Basis des WIKI-Eitnrags:

###########################################
##### Hier werden die Heizzeiten definiert
# 0-6 Wochentag beginnt mit Sonntag
# 00-23 Volle Stunde
# 00 oder 15 oder 30 oder 45 Minute
# PID-Name
# Dummy-Name
# gewünschte Temp. in vollen Graden
#### Wochenschaltzeiten####################
 # Sonntag
 0 09 00 HeizKinder HeizKinder_desired_temp 22  
 0 20 00 HeizKinder HeizKinder_desired_temp 17
 # Montag
 1 05 00 HeizKinder HeizKinder_desired_temp 22
 1 07 00 HeizKinder HeizKinder_desired_temp 17  
 #
 1 13 00 HeizKinder HeizKinder_desired_temp 22
 1 20 00 HeizKinder HeizKinder_desired_temp 17  
 # usw.
 # Freitag
 5 05 00 HeizKinder HeizKinder_desired_temp 22
 5 07 00 HeizKinder HeizKinder_desired_temp 17  
 #
 5 13 00 HeizKinder HeizKinder_desired_temp 22
 5 22 00 HeizKinder HeizKinder_desired_temp 17  
 # Samstag
 6 09 00 HeizKinder HeizKinder_desired_temp 22
 6 22 00 HeizKinder HeizKinder_desired_temp 17  
 ############################################

Hier fehlen auf jeden Fall noch die Protokolle und die Ferienzeiten, Feiertag und Dialogbox.
 
Hier mal die bisherigen Definition von mir:
FHT80B: HeizKind1, HeizKind2, HeizKind3 HeizBZoben, HeizBZunten, HeizWohnzimmer
FHTTK: Fenster_Kind1, Fenster_Kind2, Fenster_Kind3, Fenster_BZoben, Fenster_BZunten, Fenster_Wohnzimmer
Raum: RaumKind1, RaumKind2, RaumKind3, Wohnzimmer, Badezimmer_Oben, Badezimmer_Unten
Gruppe: HeizKinder,
FHTKKB: FHTKind1, FHTKind2, FHTKind3, FHTWohnzimmer, FHTBZoben, FHTBZunten

Muss ich in den FHT80B noch etwas einstellen, damit die Steuerung durch die FHEM-Programmierung läuft (z.B. ausschließlicher Betrieb auf manuell oder die Programmierung auf jeden Tag von 0-24 Uhr auf eine feste Zeit)?


Vielen Dank für die Hilfe.



Link auf den Eintrag im WIKI:

http://www.fhemwiki.de/wiki/FHT_8v_direkt_ansprechen

Zrrronggg!

Hast du das PDF
FHEM-Übersicht für Anfänger
gelesen?

Da wird das grob erklärt. Der Artikel FHT8v direkt ansteuern ist für dich falsch, das genau nicht machen willst, sondern über FHT80b verwendest.

Dies hier solltest du auch mal durcharbeiten:
http://fhem.de/commandref_DE.html


Kurz:

mit "define" wird FHEM irgendwas bekannt gemacht.
Ein Geräte
Eine Aktion
Eine Variable mit der man Programieren kann ("dummy")

"notify" hingegen löst eine (vorher "define"te) Aktion aus, wenn ein Ereigniss passiert ist.

Für eine ganz simple Heizungsteuerung brauchst du kein Notify.


Da zumindest ich jetzt nicht die Zeit habe, dir dein komplettes Wunschprogramm zu entwerfen, im folgenden mal ein paar "Brocken" mit denen du vielleicht spielen kannst.

Zunächst: Alles was in den Beispielen mit "my..." anfängt kannst du frei benennen. Wenn ich also schreibe "myheizung", dann ist das nur ein Name den du wählen kannst wie du willst, Der Name diehnt nur dazu, dass du dir leichter merken kannst worum es geht. Jedes define muss aber eine eigenen Namen haben.


So jetzt ein paar typische Aktionen einer Heizungssteuerung:
Eine Heizung immr um 8 uhr auf 22 Grad stellen, FHT_Kinderzimmer1 sei der Name des per Autocreate angelgten FHTs.

define myHeizungKinderzimmer_an at *08:00:00 set FHT_Kinderzimmer1 desired-temp 22



Das Selbe,  aber nur werktags:
define myHeizungKinderzimmer_an at *08:00:00  {if (!($we)) {fhem ("set FHT_Kinderzimmer1 desired-temp 22") }}

Am Wochenende später:
define myHeizungKinderzimmer_WE_an at *09:00:00  {if ($we)){fhem ("set FHT_Kinderzimmer1 desired-temp 22") }}

Mit einem Schlag nur Werktags mehrere Heizungen einschalten
define myHeizungAlle_an at *08:00:00  {if (!($we)) {fhem ("set FHT_Kinderzimmer1 desired-temp 22 ;; set FHT_Badezimmer1 desired-temp 23 ;; set FHT_Flur desired-temp 20") }}


Abends alle FHTs ausschalten:
define myHeizung_ausat *23:00:00 set FHT.* desired-temp 15

(An dem Beispiel kann man sehen, das es gut ist, alle FHTs am Anfang gleich zu benennen... Bei mir heissen sie nicht FHT, fangen aber alle mit "hzg_" an. Was ist egal, nur eben systematisch)

Spiel damit erstmal rum bitte und dann Stelle einzelne Fragen. Es ist vorteilhaft, wenn du je Post nur 1-2 konkrete Fragen stellst und nicht in einem Post mehr oder weniger:
"Kann mir mal einer FHEM komplett erklären und eine vollständige Heizungssteuerung schreiben bitte?"

Vor so einem Berg schreckt hier jeder zurück.
Also das Einsteiger PDF lesen, mit dem oben rumspielen und jeweils einige konkrete Fragen stellen.



FHEM auf Linkstation Mini, CUL 868 SlowRF, 2xCUL 868 RFR, CUL 433 für IT, 2xHMLAN-Configurator mit VCCU, ITV-100 Repeater, Sender und Aktoren von FHT, FS20, S300, HM, IT, RSL

romarira

Erst mal ganz herzlichen Dank für deine Antwort. Ich denke, das hilft mir schon unheimlich weiter. Ich werde das jetzt entsprechend anpassen und in meine fhem.cfg einbauen und testen.

ZitatHast du das PDF
FHEM-Übersicht für Anfänger
gelesen?

Ja, hatte ich - aber das war zum Teil ziemlich verwirrend für mich, insbesondere weil es sehr stark um Schaltvorgänge ging und Heizungsbefehle irgendwie etwas kurz kamen.

Eine Frage habe ich noch.

Muss ich im FHT80B noch etwas umprogrammieren? Wenn ich das Ding richtig verstehe, kann man die interne Programmierung dort gar nicht löschen?!

Puschel74

Hallo,

welche
Zitatinterne Programmierung
?

Grüße

Edith: Zu früh abgeschickt.
Der FHT80b kann intern programmiert werden, muss aber nicht.
Du könntest deine Tagesprogramme auch direkt in deinen FHT80b einstellen (geht auch über fhem).
Dann würden deine Heizkörperventile auch noch aufmachen (oder schliessen) wenn fhem mal nicht erreichbar ist.
Kommt halt immer drauf an wie die Heizung ein- und ausgeschaltet wird.
Zotac BI323 als Server mit DBLog
CUNO für FHT80B, 3 HM-Lan per vCCU, RasPi mit CUL433 für Somfy-Rollo (F2F), RasPi mit I2C(LM75) (F2F), RasPi für Panstamp+Vegetronix +SONOS(F2F)
Ich beantworte keine Supportanfragen per PM! Bitte im Forum suchen oder einen Beitrag erstellen.

Zrrronggg!

Ich bevorzuge, in die FHT80 eine Art Notprogramm einzuprogrammieren, aber die eigentliche Steuerung über Befehle wie oben durchzuführen.
FHEM auf Linkstation Mini, CUL 868 SlowRF, 2xCUL 868 RFR, CUL 433 für IT, 2xHMLAN-Configurator mit VCCU, ITV-100 Repeater, Sender und Aktoren von FHT, FS20, S300, HM, IT, RSL

romarira

Zitat von: Zrrronggg! schrieb am So, 17 März 2013 00:42Ich bevorzuge, in die FHT80 eine Art Notprogramm einzuprogrammieren, aber die eigentliche Steuerung über Befehle wie oben durchzuführen.

Welche Programmierung ist denn dabei bevorrechtigt?

Es wäre ja schlecht, wenn das "Notprogramm" die FHEM-Befehle wieder aufhebt.

ZitatDu könntest deine Tagesprogramme auch direkt in deinen FHT80b einstellen (geht auch über fhem).

Welche Befehle muss ich denn über FHEM senden, damit die Programmierung im FHT80b eingestellt wird?

Danke schon mal vorab.

Puschel74

Hallo,

führend ist natürlich das Programm im FHT.
Dieses wird auch ohne fhem ausgeführt/abgespult.

ZitatEs wäre ja schlecht, wenn das "Notprogramm" die FHEM-Befehle wieder aufhebt.

Das geschieht, aber nur zu den programmierten Schaltzeiten im FHT.

ZitatWelche Befehle muss ich denn über FHEM senden, damit die Programmierung im FHT80b eingestellt wird?

Das kommt drauf an welchen Wert im FHT du ändern willst.
Wenn du einen Schaltzeitpunkt einstellen willst geht das am einfachsten mit einem

set <Name_des_FHT> mon-from1 07:00

Nun hast du den ersten Punkt am Montag um 07:00 uhr eingestellt.
Zu diesem Zeitpunkt wechselt der FHT vom Nacht- zum Tagesprogramm und stellt die gewünschte day-temp ein.

Grüße
Zotac BI323 als Server mit DBLog
CUNO für FHT80B, 3 HM-Lan per vCCU, RasPi mit CUL433 für Somfy-Rollo (F2F), RasPi mit I2C(LM75) (F2F), RasPi für Panstamp+Vegetronix +SONOS(F2F)
Ich beantworte keine Supportanfragen per PM! Bitte im Forum suchen oder einen Beitrag erstellen.

Zrrronggg!

set <Name_des_FHT> mon-from1 07:00

Bitte diese Sachen nicht dazu verwenden, die FHTs normal zu steuern. Das führt meistens zu hoher Funklast und überschreiten der 1% Grenze.

Das wird dir beim Rumspielen noch oft genug passieren. Lies dir sicherheitshalber schonmal die Passenden Wikiartikel durch.

Ansonsten:

Man kann "Notprogramme" in die FHTs einprogrammieren (auch am FHT selbst) und das FHT dann auf "manuellen" Modus stellen. Dann werde die in den FHTs einprogramierten Sachen nicht ausgeführt.  Wenn FHEM jetzt ausfällt, muss man allerdingss an den FHTs lokal auf automatisch wechseln, damit das Notprogramm greift.

Ich hatte noch nie einen FHEM Ausfall übrigens.
FHEM auf Linkstation Mini, CUL 868 SlowRF, 2xCUL 868 RFR, CUL 433 für IT, 2xHMLAN-Configurator mit VCCU, ITV-100 Repeater, Sender und Aktoren von FHT, FS20, S300, HM, IT, RSL

Puschel74

Hallo,

Zitat Zrrronggg!!!
ZitatDas führt meistens zu hoher Funklast und überschreiten der 1% Grenze.

Jep. Das ist richtig und darf nicht übersehen werden.
Gerade bei den FHT hast du ganz schnell die 1%-Grenze erreicht und der CUL loggt dich mit LOVF voll.

Da im Eingangspost die Zeiten aber recht genau definiert sind kann man diese ja im jeweiligen FHT als Auto-Programm laufen lassen.

Vorteil:
1%-Grenze bleibt unberührt davon da die FHT selbst ihr Programm abfahren.

Eingriffsmöglichkeit mit fhem bleibt dennoch mittels

set <FHT_Device> mode manual

und kann dann spezifisch die FHT`s "überfahren".

Siehe Link (HCS-Modul).

Und jederzeit mit einem

set <FHT_Device> mode auto

in den Automatikmodus zurück wechseln.

Aber das ist dann ja schon etwas tiefer in der Materie ;-)

@romarira

Wenn du auf den FHT in fhem klickst kannst du dir in der nächsten Ansicht auch die Befehle anschauen.

Grüße

P.S.: Ausfall hatte ich bisher auch noch keinen.
Zotac BI323 als Server mit DBLog
CUNO für FHT80B, 3 HM-Lan per vCCU, RasPi mit CUL433 für Somfy-Rollo (F2F), RasPi mit I2C(LM75) (F2F), RasPi für Panstamp+Vegetronix +SONOS(F2F)
Ich beantworte keine Supportanfragen per PM! Bitte im Forum suchen oder einen Beitrag erstellen.

romarira

ZitatP.S.: Ausfall hatte ich bisher auch noch keinen.

Ich habe schon seit Jahren in der Wohnung einen alten FHT8R2, der leider nicht für FHEM genutzt werden kann. Aber das Ding läuft auch bei mir super zuverlässig. Wenn ich mich in die Thematik eingearbeitet habe, werde ich den auch noch austauschen, einen FHT80B und eine Fensterkontakt anschaffen.

Nach euren Ausführungen werde ich bis auf einen FHT80B die Geräte über den set-Befehl programmieren und die Steuerung den FHT80B überlassen. Mit einem Gerät werde ich die Steuerung über FHEM machen um in die Thematik reinzukommen. Wenn das funktioniert, werde ich dann versuchen die Ferienprogramme über FHEM zu regeln. Das müsste meinen Vorstellungen eigentlich ganz gut zupass kommen. Ich werde mich dann sicher nochmal wegen der Programmierung mit Fragen an euch wenden.

Eine Frage habe ich jetzt noch. Kann ich über die FHEM-Befehlszeile ein Skript aufrufen?
Hintergrund: Ich würde die Set-Befehle alle gerne in eine Datei packen und dann über einen Aufruf dieses Skripts abarbeiten lassen. Wenn ich dann einmal später die Programmierung der FHT80B ändern will, bräuchte ich nur die Zeiten in dem Skript anpassen.

romarira

Ich habe jetzt mal den Versuch gestartet zwei Skripte zu schreiben. Ich bitte euch einmal drauf zu schauen, ob die so funktionieren dürften. Außerdem wäre ich für einen Tipp dankbar, wie ich Skript 1 in FHEM einbinde (include-Befehl) bzw. wie ich Skript 2 einmalig (und bei Bedarf nach Anpassung) starten kann.

Skript 1 soll in FHEM in einen Raum die Heizung steuern (Badezimmer Oben). Ich habe bewusst auf den Wochenendbefehl verzichtet, da ich damit etwas flexibler bleibe, wenn ich mal nur einen Tag ändern will.

###########################################
##### Hier werden die Heizzeiten definiert
#### Wochenschaltzeiten####################
###########################################
##### Hier werden die Heizzeiten definiert
# 0-6 Wochentag beginnt mit Sonntag
# 00-23 Volle Stunde
# 00 oder 15 oder 30 oder 45 Minute
############################################
# hzg_BZ_oben auf manuell setzen
define Manuell_AN at *05:00:00 fhem ("set hzg_BZ_oben mode auto"}\
# Montag
define AN_BadezimmerOben at *05:30:00 {\
  if ($wday == 1) {\
  fhem ("set hzg_BZ_oben desired-temp 22";;\
  fehm ("define AUS_BadezimmerOben at *07:00:00 set hzg_BZ_oben desired-temp 17")\
  }\
define AN_BadezimmerOben at *13:00:00 {\
  if ($wday == 1) {\
  fhem ("set hzg_BZ_oben desired-temp 22";;\
  fehm ("define AUS_BadezimmerOben at *22:00:00 set hzg_BZ_oben desired-temp 17")\
  }\
# Dienstag
define AN_BadezimmerOben at *05:30:00 {\
  if ($wday == 2) {\
  fhem ("set hzg_BZ_oben desired-temp 22";;\
  fehm ("define AUS_BadezimmerOben at *07:00:00 set hzg_BZ_oben desired-temp 17")\
  }\
define AN_BadezimmerOben at *13:00:00 {\
  if ($wday == 2) {\
  fhem ("set hzg_BZ_oben desired-temp 22";;\
  fehm ("define AUS_BadezimmerOben at *22:00:00 set hzg_BZ_oben desired-temp 17")\
  }\
# Mittwoch
define AN_BadezimmerOben at *05:30:00 {\
  if ($wday == 3) {\
  fhem ("set hzg_BZ_oben desired-temp 22";;\
  fehm ("define AUS_BadezimmerOben at *07:00:00 set hzg_BZ_oben desired-temp 17")\
  }\
define AN_BadezimmerOben at *13:00:00 {\
  if ($wday == 3) {\
  fhem ("set hzg_BZ_oben desired-temp 22";;\
  fehm ("define AUS_BadezimmerOben at *22:00:00 set hzg_BZ_oben desired-temp 17")\
  }\
# Donnerstag
define AN_BadezimmerOben at *05:30:00 {\
  if ($wday == 4) {\
  fhem ("set hzg_BZ_oben desired-temp 22";;\
  fehm ("define AUS_BadezimmerOben at *07:00:00 set hzg_BZ_oben desired-temp 17")\
  }\
define AN_BadezimmerOben at *13:00:00 {\
  if ($wday == 4) {\
  fhem ("set hzg_BZ_oben desired-temp 22";;\
  fehm ("define AUS_BadezimmerOben at *22:00:00 set hzg_BZ_oben desired-temp 17")\
  }\
# Freitag
define AN_BadezimmerOben at *05:30:00 {\
  if ($wday == 5) {\
  fhem ("set hzg_BZ_oben desired-temp 22";;\
  fehm ("define AUS_BadezimmerOben at *07:00:00 set hzg_BZ_oben desired-temp 17")\
  }\
define AN_BadezimmerOben at *13:00:00 {\
  if ($wday == 5) {\
  fhem ("set hzg_BZ_oben desired-temp 22";;\
  fehm ("define AUS_BadezimmerOben at *22:00:00 set hzg_BZ_oben desired-temp 17")\
  }\
# Samstag
define AN_BadezimmerOben at *08:00:00 {\
  if ($wday == 6) {\
  fhem ("set hzg_BZ_oben desired-temp 22";;\
  fehm ("define AUS_BadezimmerOben at *22:00:00 set hzg_BZ_oben desired-temp 17")\
  }\
# Sonntag
define AN_BadezimmerOben at *08:00:00 {\
  if ($wday == 0) {\
  fhem ("set hzg_BZ_oben desired-temp 22";;\
  fehm ("define AUS_BadezimmerOben at *22:00:00 set hzg_BZ_oben desired-temp 17")\
  }\
#####################
# ENDE
#####################


Skript 2 - Skript um die FHT80B zu programmieren und die Steuerung hierüber laufen zu lassen:

###########################################
##### Hier werden die Heizzeiten definiert, die vom FHT80B selbst gesteuert werden
#### Übertragung in das FHT80B ####################
#############################################
# Raum Kind1
  #############################################
  # Temperaturen
  set hzg_Kind1 day-temp 22.0
  set hzg_Kind1 night-temp 17.0
  set hzg_Kind1 windowopen-temp 12.0
  #############################################
  # Montag
  set hzg_Kind1 mon-from1 05:30
  set hzg_Kind1 mon-to1 7:00
  set hzg_Kind1 mon-from2 14:30
  set hzg_Kind1 mon-to2 20:00
  # Dienstag
  set hzg_Kind1 tue-from1 05:30
  set hzg_Kind1 tue-to1 7:00
  set hzg_Kind1 tue-from2 13:00
  set hzg_Kind1 tue-to2 20:00
  # Mittwoch
  set hzg_Kind1 wed-from1 05:30
  set hzg_Kind1 wed-to1 7:00
  set hzg_Kind1 wed-from2 13:00
  set hzg_Kind1 wed-to2 20:00
  # Donnerstag
  set hzg_Kind1 thu-from1 05:30
  set hzg_Kind1 thu-to1 7:00
  set hzg_Kind1 thu-from2 13:00
  set hzg_Kind1 thu-to2 20:00
  # Freitag
  set hzg_Kind1 fri-from1 05:30
  set hzg_Kind1 fri-to1 7:00
  set hzg_Kind1 fri-from2 13:00
  set hzg_Kind1 fri-to2 22:00
  # Samstag
  set hzg_Kind1 sat-from1 09:00
  set hzg_Kind1 sat-to1 22:00
  # Sonntag
  set hzg_Kind1 sun-from1 09:00
  set hzg_Kind1 sun-to1 20:00
############################################
# Raum Kind2 Arbeitszimmer
  #############################################
  # Temperaturen
  set hzg_Kind2_AZ day-temp 22.0
  set hzg_Kind2_AZ night-temp 17.0
  set hzg_Kind2_AZ windowopen-temp 12.0
  #############################################
  #############################################
  # Montag
  set hzg_Kind2_AZ mon-from1 05:30
  set hzg_Kind2_AZ mon-to1 7:00
  set hzg_Kind2_AZ mon-from2 14:30
  set hzg_Kind2_AZ mon-to2 20:00
  # Dienstag
  set hzg_Kind2_AZ tue-from1 05:30
  set hzg_Kind2_AZ tue-to1 7:00
  set hzg_Kind2_AZ tue-from2 13:00
  # Mittwoch
  set hzg_Kind2_AZ wed-from1 05:30
  set hzg_Kind2_AZ wed-to1 7:00
  set hzg_Kind2_AZ wed-from2 13:00
  set hzg_Kind2_AZ wed-to2 20:00
  # Donnerstag
  set hzg_Kind2_AZ thu-from1 05:30
  set hzg_Kind2_AZ thu-to1 7:00
  set hzg_Kind2_AZ thu-from2 13:00
  set hzg_Kind2_AZ thu-to2 20:00
  # Freitag
  set hzg_Kind2_AZ fri-from1 05:30
  set hzg_Kind2_AZ fri-to1 7:00
  set hzg_Kind2_AZ fri-from2 13:00
  set hzg_Kind2_AZ fri-to2 22:00
  # Samstag
  set hzg_Kind2_AZ sat-from1 09:00
  set hzg_Kind2_AZ sat-to1 22:00
  # Sonntag
  set hzg_Kind2_AZ sun-from1 09:00
  set hzg_Kind2_AZ sun-to1 20:00
###############################################
# Raum Kind2 Schlafzimmer
  #############################################
  # Temperaturen
  set hzg_Kind2_SZ day-temp 22.0
  set hzg_Kind2_SZ night-temp 17.0
  set hzg_Kind2_SZ windowopen-temp 12.0
  #############################################
  #############################################
  # Montag
  set hzg_Kind2_SZ mon-from1 05:30
  set hzg_Kind2_SZ mon-to1 7:00
  set hzg_Kind2_SZ mon-from2 14:30
  set hzg_Kind2_SZ mon-to2 20:00
  # Dienstag
  set hzg_Kind2_SZ tue-from1 05:30
  set hzg_Kind2_SZ tue-to1 7:00
  set hzg_Kind2_SZ tue-from2 13:00
  set hzg_Kind2_SZ tue-to2 20:00
  # Mittwoch
  set hzg_Kind2_SZ wed-from1 05:30
  set hzg_Kind2_SZ wed-to1 7:00
  set hzg_Kind2_SZ wed-from2 13:00
  set hzg_Kind2_SZ wed-to2 20:00
  # Donnerstag
  set hzg_Kind2_SZ thu-from1 05:30
  set hzg_Kind2_SZ thu-to1 7:00
  set hzg_Kind2_SZ thu-from2 13:00
  set hzg_Kind2_SZ thu-to2 20:00
  # Freitag
  set hzg_Kind2_SZ fri-from1 05:30
  set hzg_Kind2_SZ fri-to1 7:00
  set hzg_Kind2_SZ fri-from2 13:00
  set hzg_Kind2_SZ fri-to2 22:00
  # Samstag
  set hzg_Kind2_SZ sat-from1 09:00
  set hzg_Kind2_SZ sat-to1 22:00
  # Sonntag
  set hzg_Kind2_SZ sun-from1 09:00
  set hzg_Kind2_SZ sun-to1 20:00
###############################################
# Raum Badezimmer Oben
  #############################################
  # Temperaturen
 #set hzg_BZ_oben day-temp 22.0
 #set hzg_BZ_oben night-temp 17.0
 #set hzg_BZ_oben windowopen-temp 12.0
  #############################################
  #############################################
  # Montag
 #set hzg_BZ_oben mon-from1 05:30
 #set hzg_BZ_oben mon-to1 7:00
 #set hzg_BZ_oben mon-from2 13:00
 #set hzg_BZ_oben mon-to2 22:00
  # Dienstag
 #set hzg_BZ_oben tue-from1 05:30
 #set hzg_BZ_oben tue-to1 7:00
 #set hzg_BZ_oben tue-from2 13:00
 #set hzg_BZ_oben tue-to2 22:00
  # Mittwoch
  set hzg_BZ_oben wed-from1 05:30
 #set hzg_BZ_oben wed-to1 7:00
 #set hzg_BZ_oben wed-from2 13:00
 #set hzg_BZ_oben wed-to2 22:00
  # Donnerstag
 #set hzg_BZ_oben thu-from1 05:30
 #set hzg_BZ_oben thu-to1 7:00
 #set hzg_BZ_oben thu-from2 13:00
 #set hzg_BZ_oben thu-to2 22:00
  # Freitag
 #set hzg_BZ_oben fri-from1 05:30
 #set hzg_BZ_oben fri-to1 7:00
 #set hzg_BZ_oben fri-from2 13:00
 #set hzg_BZ_oben fri-to2 22:00
  # Samstag
 #set hzg_BZ_oben sat-from1 09:00
 #set hzg_Kind2_AZ sat-to1 22:00
  # Sonntag
 #set hzg_BZ_oben sun-from1 09:00
 #set hzg_BZ_oben sun-to1 22:00
##############################################
# Alle FHT80B auf Auto stellen
##############################################
set hzg_Kind1 mode auto
set hzg_Kind2_AZ mode auto
set hzg_Kind2_SZ mode auto
#set hzg_BZ_oben mode auto
##############################################
# Ende
##############################################

Zrrronggg!

Nimm's mir bitte nicht übel, aber hier ganze Konfigurationen durchsehen macht keiner gern, das ist echte Arbeit.

Du solltest bitte einfach 1-2 Tage hier vorstellen und den kann man dann kurz ansehen und kommentieren und dann musst du schon die Erweiterung auf mehrer Tage selber machen.  Auf den ersten Blick kann ich aber sagen, dass es NICHT gehen wird, weil deine Defines alle gleich heissen. Es kann "AN_BadezimmerOben " z.b. nur EINMAL geben. D.H. du muss die alle unterschiedlich nennen.

Ausserdem köntest du gleiche Zeiten an unterschiedlichen Tagen zusammenfassen:

Zitatdefine AN_BadezimmerOben at *05:30:00 {\
if ($wday == 1) || ($wday == 2) || ($wday == 3) {\
fhem ("set hzg_BZ_oben desired-temp 22";;\
fehm ("define AUS_BadezimmerOben at *07:00:00 set hzg_BZ_oben desired-temp 17")\
}\

||  = oder


Ferner: Ich weiss dass es hier in letzter Zeit Mode geworden ist, jedes FHEM Commando in eine eigene "fhem(" ") -Klammer einzupacken, das ist aber nicht nötig.

Dies geht auch:

define AN_BadezimmerOben at *05:30:00 {\
if ($wday == 1) || ($wday == 2) || ($wday == 3) {\
fhem ("set hzg_BZ_oben desired-temp 22";; define AUS_BadezimmerOben at *07:00:00 set hzg_BZ_oben desired-temp 17")\
}\


Und ausserdem hast du zumindest bisher für 5 Wochentage wie es mir scheint immer die selben Uhrzeiten. Warum machst du dann für jeden Tag einzelne defines?

Einfacher wäre da doch auf Wochenende zu testen:

{if (!($we)) {fhem ("...  (kein Wochenende, da  ! = nicht)
oder
{if ($we) {fhem (" ... Wochenende  



ZitatAußerdem wäre ich für einen Tipp dankbar, wie ich Skript 1 in FHEM einbinde

Na einfach in die fhem.cfg reinschreiben.

Zitatwie ich Skript 2 einmalig (und bei Bedarf nach Anpassung) starten kann.

Besser nicht! Wenn du alles das was da drin steht mit einem mal losschiebst, gibt's 100% LOVF und EOB Fehlermeldungen, da das die 1% Grenze überschreitet.
Das ist genau DIE Methode, wie man sich Funklastprobleme mit FHTs einhandelt.  Wir haben hier und in der alten google Group immer wieder Threads gehabt, wo Leute das trotzdem gemacht haben und dann sich gewundert haben, was alles nicht mehr geht.

Das habe ich doch weiter oben schon ausgeführt und auch Puschl74 hat davor gewarnt.
Nicht gesehen?



Lies die diversen Wikiartikel dazu:

http://www.fhemwiki.de/wiki/1%25_Regel
http://www.fhemwiki.de/wiki/LOVF
http://www.fhemwiki.de/wiki/Kommunikationsprobleme_mit_FHT





FHEM auf Linkstation Mini, CUL 868 SlowRF, 2xCUL 868 RFR, CUL 433 für IT, 2xHMLAN-Configurator mit VCCU, ITV-100 Repeater, Sender und Aktoren von FHT, FS20, S300, HM, IT, RSL

romarira

ZitatNimm's mir bitte nicht übel, aber hier ganze Konfigurationen durchsehen macht keiner gern, das ist echte Arbeit.

Sorry, ich hatte auch nicht erwartet, dass Zeile für Zeile geprüft wird. Ging mir mehr darum, einen Gesamteindruck zu verschaffen. Insofern war es im Endeffekt auch ganz gut, da sonst wohl der Fehler mit der mehrfach verwendeten Variable nicht von dir entdeckt worden wäre.

Habe den Code jetzt so umgestellt:

# Badezimmer oben an Wochentagen zwei Schaltprogramme, am Wochenende nur ein Schaltprogramm
define AN_1_BadezimmerOben at *05:30:00 {\
   if (!($we)) {fhem ("set hzg_BZ_oben desired-temp 22";; define AUS_1_BadezimmerOben at *07:00:00 set hzg_BZ_oben desired-temp 17")\
   }\
define AN_2_BadezimmerOben at *13:00:00 {\
   if (!($we))) fhem ("set hzg_BZ_oben desired-temp 22";; define AUS_2_BadezimmerOben at *22:00:00 set hzg_BZ_oben desired-temp 17")\
}\
#  Badezimmer Oben Wochenende Samstag-Sonntag
define AN_WE_BadezimmerOben at *08:00:00 {\
   if ($we) {fhem ("set hzg_BZ_oben desired-temp 22";; define AUS_1_BadezimmerOben at *22:00:00 set hzg_BZ_oben desired-temp 17")\
   }\
# hzg_BZ_oben auf manuell setzen
define Manuell_AN_1 at *05:00:00 fhem ("set hzg_BZ_oben mode auto"}\
#####################
# ENDE
#####################


ZitatBesser nicht! Wenn du alles das was da drin steht mit einem mal losschiebst, gibt's 100% LOVF und EOB Fehlermeldungen, da das die 1% Grenze überschreitet.
Das ist genau DIE Methode, wie man sich Funklastprobleme mit FHTs einhandelt. Wir haben hier und in der alten google Group immer wieder Threads gehabt, wo Leute das trotzdem gemacht haben und dann sich gewundert haben, was alles nicht mehr geht.

Das habe ich doch weiter oben schon ausgeführt und auch Puschl74 hat davor gewarnt.
Nicht gesehen?

Um die 1%-Regelung zu umgehen, hatte ich ja gerade den Weg gewählt, die Steuerung den FHT zu überlassen. Ich hatte mir den Artikel zur 1%-Regel durchgelesen. Da stand, dass das ungefähr 36 Sekunden Signal pro Stunde wären. Die wären ja niemals durch diese Zeilen ausgeschöpft worden.

Dank deiner weiteren Links habe ich das mit dem Funkverkehr aber jetzt besser verstanden. Es gibt da halt mehrere Probleme:
1. Die Dinger senden permanent irgendetwas zurück
2. Ein FHT kann nur alle zwei Minuten einen Befehl empfangen. Damit würde alles in den Buffer gehen und möglicherweise nie abgearbeitet werden.

Also ist es tatsächlich kein guter Vorschlag, mit einem Skript alle Befehle hochzuschicken. Ich mache das jetzt häppchenweise und fasse in einer Befehlszeitel max. 8 Befehle zusammen. Lt. Wiki müsste das gehen.

Beim ausprobieren des Befehls get CUL_0 raw T02 um den Buffer auszulesen, ist mir aufgefallen, dass acht Befehle in der Warteschlange waren. Alle Befehle waren für zwei alte FHT von ELV, die noch nicht bidirektional arbeiten. Die wurden vom CUL automatisch erkannt. Ich habe Buffer für die beiden Geräte gelöscht und jetzt ist die Warteschlange auch leer.

Da ich die ohnehin nicht steuern kann, möchte ich die gerne "unpairen". Wie kriege ich das hin, ohne dass die über autocreate sofort wieder auftauchen?

ZitatFerner: Ich weiss dass es hier in letzter Zeit Mode geworden ist, jedes FHEM Commando in eine eigene "fhem(" ") -Klammer einzupacken, das ist aber nicht nötig.

Möglicherweise kommt das daher, so Menschen wie ich, sich in das Thema einarbeiten und dabei bei anderen abschreiben. Wenn man die Beispiele so findet, übernimmt sie halt. :-)

Puschel74

Hallo,

ZitatDa ich die ohnehin nicht steuern kann, möchte ich die gerne "unpairen". Wie kriege ich das hin, ohne dass die über autocreate sofort wieder auftauchen?

Ein "unpair" in diesem Sinne gibt es nur bei HM (soweit ich weiß) aber nicht bei FS20.
Da die Geräte evtl. deinem Nachbar zuzuordnen sind hast du 2 Möglichkeiten:

a) alle Geräte durch autocreate anlegen lassen und dann jedes Gerät das NICHT zu dir gehört per
attr <Device> ignore
zu ignorieren oder

b) autocreate auszuschalten und deine Devices von Hand anlegen.

Grüße

P.S.: Einen "Gesamteindruck" kann man sich, glaube ich, nur bei einem Kunstwerk verschaffen und nicht bei einem "Programmcode" ;-)
Diesen muss man sich schon Zeile für Zeile durchlesen um sagen zu können - Ja, kann gehen oder Nein, geht so nicht.
Ausser offensichtliche "Fehler/Ausrutscher" springen einem, wie Zrrronggg!!!, ins Auge.

Edith:
ZitatUm die 1%-Regelung zu umgehen, hatte ich ja gerade den Weg gewählt, die Steuerung den FHT zu überlassen.
Wenn du Steuerung, also die Zeiten, in den FHT hinterlegst brauchst du diese in fhem nicht nochmals zu programmieren.
Mit fhem kannst du die Daten aus den FHT auslesen - sprich deine "FHT-Programme" hast du dann als Reading zum jeweiligen FHT in fhem hinterlegt.
Zotac BI323 als Server mit DBLog
CUNO für FHT80B, 3 HM-Lan per vCCU, RasPi mit CUL433 für Somfy-Rollo (F2F), RasPi mit I2C(LM75) (F2F), RasPi für Panstamp+Vegetronix +SONOS(F2F)
Ich beantworte keine Supportanfragen per PM! Bitte im Forum suchen oder einen Beitrag erstellen.

romarira

ZitatDa die Geräte evtl. deinem Nachbar zuzuordnen sind hast du 2 Möglichkeiten:

Das waren schon meine. Aber der Befehl attr <DEVICE> ignore das war es was ich gesucht habe.

Vielen Dank!

Zrrronggg!

Ich würde grundsäzlich immer empfehlen, Autocreate abzuschalten wenn man es nicht braucht.

Ich geh sogar soweit , Autocreate gar nicht zu verwenden, ausser es handelt sich um "exotische" Devices, wo man die richtige Definition gerade nicht zur Hand hat oder die richtig gepairt werden muss wie bei HM.

Ansonsten wenn ich Puschel74 ausnahmesweise mal wiedersprechen darf:

ignore ist nur eine halb gute Idee. Denn die FHT8b (die du ja wohl hast) senden ja durchaus TValvemessages (bzw die Ventile amchen das), die man ja vielleicht brauchen kann. Ignore blendet die aber weg.

Im FHT Modul gibts daher extra für diese Dinger das Attribut DUMMY.

Dummy als attr im Zusammenhang mit FHTs, FS20 und was auch immer bedeutet ja: NIX SENDEN, nur empfangen.

Ich darf dazu mal kurz die commandref zittieren:

FHT attributes
dummy
Note:It makes sense to define an FHT device even for an FHT8b, else you will receive "unknown FHT device, please define one" message for each FHT8b as the CUL is reporting the 8b valve messages. But you should set the dummy attribute for these devices, else the internal FHT buffer of the CUL will be filled with data for the 8b's which is never consumed. If the buffer is full, you'll get "EOB" messages from the CUL, and you cannot transmit any data to the 80b's

Also: Ganz normal als FHT anlegen (lassen)

und dann
attr FHT8b_name dummy

an die definiton anfügen

sollte helfen.


Zitat
ZitatUm die 1%-Regelung zu umgehen, hatte ich ja gerade den Weg gewählt, die Steuerung den FHT zu überlassen.

Wenn du Steuerung, also die Zeiten, in den FHT hinterlegst brauchst du diese in fhem nicht nochmals zu programmieren.

Alles richtig. Man muss eben nur aufpassen, bei solchen Aktionen, wie Lesen der Wochenprgramme (aka set report1 255) oder dem neusetzen der Wochenprogramme  schön gestreckt vorzugehen. Wenn man das bei mehr als 2-3 FHTs auf einmal versucht, dann ist Feirabend. Wenn die Programme erstmal übertragen sind ist alles gut.
FHEM auf Linkstation Mini, CUL 868 SlowRF, 2xCUL 868 RFR, CUL 433 für IT, 2xHMLAN-Configurator mit VCCU, ITV-100 Repeater, Sender und Aktoren von FHT, FS20, S300, HM, IT, RSL

romarira

So, in dem letzten Posting von mir, waren noch Fehler für die Steuerung des Heizkörpers im Badezimmer drin.
Ich kam nicht damit klar, mehrere Befehle in eine Zeile zu packen :-( daher habe ich es mit mehreren fhem-Anweisungen gemacht.
So läuft es jetzt (zumindest bis jetzt). Für diejenigen die im Forum stöbern und gerne Beispiele haben daher hier der Code:

################################################################
# Badezimmer oben an Wochentagen zwei Schaltprogramme,
# am Wochenende nur ein Schaltprogramm
#################################################################
define AN_1_BadezimmerOben at *05:30:00 {\
   if (!($we)) {fhem ("set hzg_BZ_oben desired-temp 22")\
   }}
define AUS_1_BadezimmerOben at *07:00:00 {\
   if (!($we)) {fhem ("set hzg_BZ_oben desired-temp 17")\
   }}
define AUS_2_BadezimmerOben at *22:00:00 {\
   if (!($we)) {fhem ("set hzg_BZ_oben desired-temp 17")\
   }}
#################################################################
#  Badezimmer Oben Wochenende Samstag-Sonntag
#################################################################
define AN_WE_BadezimmerOben at *08:00:00 {\
   if ($we) {fhem ("set hzg_BZ_oben desired-temp 22")\
   }}
define AUS_WE_BadezimmerOben at *22:00:00 {\
   if ($we) {fhem ("set hzg_BZ_oben desired-temp 17")\
   }}
#################################################################
# hzg_BZ_oben auf manuell setzen
#################################################################
define Manuell_AN_1 at *05:00:00 {fhem ("set hzg_BZ_oben mode manual")}
#################################################################
define AN_2_BadezimmerOben at *13:00:00 {\
   if (!($we)) {fhem ("set hzg_BZ_oben desired-temp 22")\
   }}
#################################################################
# Ende Badezimmer Oben
#################################################################


romarira

Mittlerweile konnte ich auch alle anderen FHT80b über den SET-Befehl programmieren.

Wenn man das per Telnet verfolgt (get CUL_0 raw FT02) sieht man gut, wie die Befehle in die Warteschlange gehen und im ca. 2-Minuten-Rhytmus dort abgearbeitet werden.

Wahrscheinlich werde ich da so schnell nichts mehr ändern müssen. Dennoch würde mich interessieren, wie man die einzelnen Befehle mit einer automatischen Zeitverzögerung absenden könnte, so dass man nicht jede Zeile einzeln schicken müsste.

Bsp.:
        set hzg_Kind.* mon-from1 05:30 mon-to1 07:00 mon-from2 13:00 mon-to2 20:00
   hier jetzt der Befehl, warte bitte 3 Minuten
        set hzg_Kind.* tue-from1 05:30 tue-to1 07:00 tue-from2 13:00 tue-to2 20:00
        hier jetzt der Befehl, warte bitte 3 Minuten
   set hzg_Kind.* wed-from1 05:30 wed-to1 07:00 wed-from2 13:00 wed-to2 20:00
        hier jetzt der Befehl, warte bitte 3 Minuten

Ist das machbar und wie würde ein solcher Befehl lauten?

romarira

ZitatBsp.:
set hzg_Kind.* mon-from1 05:30 mon-to1 07:00 mon-from2 13:00 mon-to2 20:00
hier jetzt der Befehl, warte bitte 3 Minuten

Ich glaube so könnte es gehen ?!

set hzg_Kind.* mon-from1 05:30 mon-to1 07:00 mon-from2 13:00 mon-to2 20:00
sleep 180000


Sleep wird in Millisekunden angegeben, also müssten 180000 Millisekunden = 3 Minuten sein.

Zrrronggg!

3 Minuten reicht eventuell nicht aus. Und sleep ist nicht ganz ungefährlich. Und wird sleep nicht in Sekunden angegeben?

Ich würde lieber folgendes machen:

define hzg_set_1 at  17:00:00 set hzg_Kind.* mon-from1 05:30 mon-to1 07:00 mon-from2 13:00 mon-to2 20:00
define hzg_set_2 at  17:15:00 set hzg_Kind.* tue-from1 05:30 tue-to1 07:00 tue-from2 13:00 tue-to2 20:00
define hzg_set_3 at  17:30:00 set hzg_Kind.* wed-from1 05:30 wed-to1 07:00 wed-from2 13:00 wed-to2 20:00
FHEM auf Linkstation Mini, CUL 868 SlowRF, 2xCUL 868 RFR, CUL 433 für IT, 2xHMLAN-Configurator mit VCCU, ITV-100 Repeater, Sender und Aktoren von FHT, FS20, S300, HM, IT, RSL

romarira

ZitatIch würde lieber folgendes machen:

define hzg_set_1 at 17:00:00 set hzg_Kind.* mon-from1 05:30 mon-to1 07:00 mon-from2 13:00 mon-to2 20:00
define hzg_set_2 at 17:15:00 set hzg_Kind.* tue-from1 05:30 tue-to1 07:00 tue-from2 13:00 tue-to2 20:00

Das ist prima und gefällt mir auch viel besser.

Das kann ich dann komplett in einer Datei zusammenfassen. In der fhem.cfg mache ich dann einen Verweis auf diese Datei, der auskommentiert ist und wenn ich die Datei dann mal laufen lassen muss, wird kurz die Auskommentierung herausgenommen und anschließend wieder reingenommen.

so z.B.

# FHT80b intern programmieren
# include /etc/fhem/prog_fht80b.cfg


Dann nur das # raus bzw. reinnehmen.

Ich gehe mal davon aus, dass ich die prog_fht80b.cfg vorher mit chmod 777 prog_fht80b.cfg die Datei ausführbar machen muss.

Puschel74

Hallo,

du kannst das mit dem einbinden deiner Codes natürlich halten wie du willst.
Das steht jedem frei.

Aber ein kurzer Gedankenstoss vllt.

Definier dir doch einen Dummy den du betätigst wenn der Code ausgeführt werden soll.
Ob du die fhem.cfg bearbeitest oder den Dummy betätigst - ich weiß was mir zumindest lieber wäre ;-)

Auslagern kannst du den Code ja dennoch und per include einbinden.
Du erstparst dir nur das jeweilige neu einlesen der Config wenn du das include auskommentierst.

Grüße
Zotac BI323 als Server mit DBLog
CUNO für FHT80B, 3 HM-Lan per vCCU, RasPi mit CUL433 für Somfy-Rollo (F2F), RasPi mit I2C(LM75) (F2F), RasPi für Panstamp+Vegetronix +SONOS(F2F)
Ich beantworte keine Supportanfragen per PM! Bitte im Forum suchen oder einen Beitrag erstellen.

Zrrronggg!

Jenau:

define hzg_set_1 at *17:00:00 {if (Value("FHT_Update") eq "on" ) { fhem("set hzg_Kind.* mon-from1 05:30 mon-to1 07:00 mon-from2 13:00 mon-to2 20:00") } }

...
...
...

define hzg_set_7 at *19:00:00 {if (Value("FHT_Update") eq "on" ) { fhem("set hzg_letzter_Raum.* mon-from1 05:30 mon-to1 07:00 mon-from2 13:00 mon-to2 20:00 ;; set FHT_Update off ") } }


Und wenn du das so machst, kannst du die Zeiten sogar nacht legen, damit es sonstigem Kram besonders wenig in die Quere kommt.
FHEM auf Linkstation Mini, CUL 868 SlowRF, 2xCUL 868 RFR, CUL 433 für IT, 2xHMLAN-Configurator mit VCCU, ITV-100 Repeater, Sender und Aktoren von FHT, FS20, S300, HM, IT, RSL

Puschel74

Hallo,

achso, bezgl. dieser Frage noch

ZitatIch gehe mal davon aus, dass ich die prog_fht80b.cfg vorher mit chmod 777 prog_fht80b.cfg die Datei ausführbar machen muss.

Die Datei brauchst du nicht ausführbar machen.
FHEM liest diese ein wenn du sie mit

include ./prog_fht80b.cfg

einbindest - den Pfad evtl. noch anpassen aber ich denke der sollte so passen.

Um den Rest kümmert sich dann schon FHEM bzw. Perl.

Grüße
Zotac BI323 als Server mit DBLog
CUNO für FHT80B, 3 HM-Lan per vCCU, RasPi mit CUL433 für Somfy-Rollo (F2F), RasPi mit I2C(LM75) (F2F), RasPi für Panstamp+Vegetronix +SONOS(F2F)
Ich beantworte keine Supportanfragen per PM! Bitte im Forum suchen oder einen Beitrag erstellen.

romarira

ZitatOb du die fhem.cfg bearbeitest oder den Dummy betätigst - ich weiß was mir zumindest lieber wäre ;-)

Ich bestimmt auch, wenn ich wüsste was ein Dummy ist und wie ich den dann starte ;-)
Aber ich habe in den letzten Tage soviel gelernt, das werde ich durch Suche im Forum und googlen herausfinden.

Zitatdefine hzg_set_1 at *17:00:00 {if (Value("FHT_Update") eq "on" ) { fhem("set hzg_Kind.* mon-from1 05:30 mon-to1 07:00 mon-from2 13:00 mon-to2 20:00") } }

Das wird wohl ein Dummy sein. Aber wie "starte" ich den?

Und danke noch hierfür:
Zitatinclude ./prog_fht80b.cfg

Zrrronggg!

Du startest den Dummy gar nicht. Der Dummy ist eine Art Schalter. Der kann auf ON oder OFF sein (oder eigentlich auf beliebige Werte, aber hier ist on und off sinnvoll)


"FHT_Update" ist der hier der dummy

Den legst du so an:

define FHT_Update dummy
attr FHT_Update webcmd on:off
attr FHT_Update room Blunz


Dann findest du den auf der Weboberfläche im Zimmer Blunz.


Und "define hzg_set_1 at *17:00:00" starte jeden Tag um 17 Uhr und testet, ob dieser Schalter/dummy  auf ON ist. Und wenn ja wird die Änderung gesendet und wenn nicht eben nicht.

Und die Tempänderung des letzten Raumes schaltet den wieder aus:
... 2 20:00 ;; set FHT_Update off


Dummys sind also prima Methoden, Aktionen in FHEM davon abhängig zu machen, ob irgendwas geschaltet ist oder nicht oder bestimmte Werte vorliegen oder nicht.

Also so Sachen wie:
- Nur heizen wenn dummy "Frühschicht" auf ON ist.
- Heizung nicht anmchen wenn Dummy "Jahrezeit"  auf SOMMER steht.

Und all  so Kram

FHEM auf Linkstation Mini, CUL 868 SlowRF, 2xCUL 868 RFR, CUL 433 für IT, 2xHMLAN-Configurator mit VCCU, ITV-100 Repeater, Sender und Aktoren von FHT, FS20, S300, HM, IT, RSL

romarira

Hallo Zrrronggg!

Vielen Dank für deine Erklärungen zum Dummy.

ZitatOb du die fhem.cfg bearbeitest oder den Dummy betätigst - ich weiß was mir zumindest lieber wäre ;-)

Jetzt sehe ich es hunderprozentig genauso wie du, dass der Dummy die deutlich elegantere Methode ist das Update zu starten.

Danke für die Hilfe in den letzten Tagen :-)

romarira

Noch eine Ergänzung zum Include-Befehl.

Der müsste in diesem Fall so lauten:

include ./FHEM/prog_fht80b.cfg

Puschel74

Hallo und guten morgen,

das kommt drauf an wo du die Dateien speicherst ;-)

include ./Konfig/Erdgeschoss.cfg

ist es bei mir ;-)

Grüße
Zotac BI323 als Server mit DBLog
CUNO für FHT80B, 3 HM-Lan per vCCU, RasPi mit CUL433 für Somfy-Rollo (F2F), RasPi mit I2C(LM75) (F2F), RasPi für Panstamp+Vegetronix +SONOS(F2F)
Ich beantworte keine Supportanfragen per PM! Bitte im Forum suchen oder einen Beitrag erstellen.

romarira

Zitat von: Puschel74 schrieb am Mi, 20 März 2013 09:17das kommt drauf an wo du die Dateien speicherst ;-)

include ./Konfig/Erdgeschoss.cfg

ist es bei mir ;-)

Hallo Puschel74,

da habe ich es mir ganz einfach gemacht. Einfach eine aufgelistete Datei mit "Save as" unter dem gewünschten Namen gespeichert, die aufgerufen, den Inhalt gelöscht und meinen Inhalt eingefügt - und natürlich neue abgespeichert.

Und anscheinend speichert FHEM die in dem von mir beschriebenen Verzeichnis.

... ich wusste nämlich nicht, wie ich eine Datei von der Festplatte auf die Fritzbox in eine "Wahlverzeichnis" kopiere :-(

Puschel74

Hallo,

Zitat... ich wusste nämlich nicht, wie ich eine Datei von der Festplatte auf die Fritzbox in eine "Wahlverzeichnis" kopiere :-(

Einfach im Explorer ein Netzlaufwerk verbinden zu FRITZ.NAS und du kannst Dateien und Verzeichnisse bequem hin und her kopieren.

Grüße
Zotac BI323 als Server mit DBLog
CUNO für FHT80B, 3 HM-Lan per vCCU, RasPi mit CUL433 für Somfy-Rollo (F2F), RasPi mit I2C(LM75) (F2F), RasPi für Panstamp+Vegetronix +SONOS(F2F)
Ich beantworte keine Supportanfragen per PM! Bitte im Forum suchen oder einen Beitrag erstellen.

romarira

ZitatEinfach im Explorer ein Netzlaufwerk verbinden zu FRITZ.NAS und du kannst Dateien und Verzeichnisse bequem hin und her kopieren.

Oh Gott, es kann so einfach sein :-)