Hallo,
kann ich FS20-Komponenten per CUL in FHEM betreiben und gleichzeitig über den selben CUL auch bspw. auf die Statusänderungen meiner MAX! Fensterkontakte lauschen?
Was wäre bei der Konfiguration zu beachten?
Danke
Im MAX Modus kann der CUL nichts anderes hören, aber man kann trotzdem IT und FS20 Kommandos absetzen. Dafür
schaltet der CUL dann automatisch kurz in den slowRf Modus, und danach wieder zurück.
Hmmm, gut und auch wieder nicht.
Ich nutze ja auch PIRAs und die HMS100TFs. Die senden ja auch per FS20 die Bewegungserkennung bzw. Temperaturen.
Kann/muss ich dann einen 2ten CUL in meine FritzBox stecken, um MAX! zu lauschen und FS20 zu senden und empfangen?
Zitat von: Matthias Gehre schrieb am Do, 24 Januar 2013 00:16Im MAX Modus kann der CUL nichts anderes hören, aber man kann trotzdem IT und FS20 Kommandos absetzen. Dafür
schaltet der CUL dann automatisch kurz in den slowRf Modus, und danach wieder zurück.
Ich würde gerne primär bei FS20 bleiben und nur ab und zu den MAX Wandthermostat auf eine neue Temperatur setzen.
Kann man den CUL generell auf FS20 lassen und nur bei bestimmten Befehlen in den MAX-Modus gehen?
Müsste gehen, hast du es probiert?
Zitat von: Matthias Gehre schrieb am Di, 12 Februar 2013 02:01Müsste gehen, hast du es probiert?
Ich habe ehrlich gesagt keine Idee, wie ich das von der Syntax her machen kann. Ich habe die entsprechenden Hilfeseiten (Wiki...) angeschaut. Aber wie kann ich denn für ein Gerät das MAX-Protokoll angeben (und es anlernen), ohne generell "attr CUL0 rfmode MAX" zu setzen?
Wäre nett, wenn du mir einen Tip oder einen Hinweis auf eine Informationsquelle geben könntest, dann probiere ich das sehr gerne mal aus und poste meine Erfahrungen.
Einen "normale" fhem.cfg für MAX nehmen und dann
attr CUL0 rfmode MAX
löschen.
Sobald man z.B.
set EineHeizung desiredTemperature 21.0
macht, geht der CUL automatisch kurz in den MAX Modus.
Wahrscheinlich klappt das Verlassen aber nicht besonders gut,
im Zweifel würde ich nach dem "set" noch ein
attr CUL0 rfmode slowRf
absetzen.
Hallo Matthias,
erst einmal danke für die Antwort. Ich habe das jetzt mal probiert.
Zitat von: Matthias Gehre schrieb am Di, 12 Februar 2013 15:16Einen "normale" fhem.cfg für MAX nehmen
Habe ich gemacht und ein Wandthermostat (Factory-Resetted) angelernt. Das kann ich dann problemlos steuern.
Zitatund dann
attr CUL0 rfmode MAX
löschen.
Sobald man z.B.
set EineHeizung desiredTemperature 21.0
macht, geht der CUL automatisch kurz in den MAX Modus.
Leider geht es nach dem Entfernen des "attr CUL1 rfmode MAX" (ist bei mir CUL1, nicht wundern) gar nichts mehr, ich bekomme nur noch "CUL_MAX cm packetsLost:" mit steigender Anzahl. :-(
Ich habe dann direkt in meinem Probe-"notify" noch eine Sequenz probiert:
attr CUL1 rfmode MAX;;\
set MAX_hhhhhh desiredTemperature 22.0 ;;\
attr CUL1 rfmode slowRf
Das macht aber auch keinen Unterschied. Was kann ich denn da noch probieren?
Das kann nach meinem Verständnis nicht funktionieren:
MAX erwartet im Gegensatz zu SlowRF (FS20) auf einen Acknowledge.
Das läuft allerdings asyncron ab.
Also:
-> Sende Kommando an eine Max Komponente.
-> Merke dir, dass wir ein ACK brauchen.
-> mach was anderes, um die Wartezeit zu nutzen
-> Im Hintergrund wird das ACK erwartet, wenn es nach ca. 3 Sekunden nicht erscheint,
kommt es zur Fehlermeldung.
Meine Meinung zum Thema:
es gibt auch ohne die von Dir gewünschte komplexe Funktionalität noch genug "normale" Probleme/Fehler im MAX-Bereich
deren Lösung vorrangig ist.
Der sauberste und zielführende Ansatz wäre 2 CULs einzusetzen, dann gehen keine Pakete /Informationen verloren.
In der Zeit, in der der CUL im MAX-Modus arbeitet, kann er kein SlowRF erfassen und umgekehrt.
Ich hab dies genauso gelöst, es funktioniert gut und es kostet nicht die "Welt".
(Wir brauchen die Power von Matthias um die grundlegenden Probleme zu lösen)
Natürlich kriegt man immer "Missing Ack", wenn man nicht im rfmode MAX ist, aber
das kann einem ja egal sein, denn die Befehle werden trotzdem vom Thermostat umgesetzt.
Zitat von: John schrieb am Di, 12 Februar 2013 23:06es gibt auch ohne die von Dir gewünschte komplexe Funktionalität noch genug "normale" Probleme/Fehler im MAX-Bereich
deren Lösung vorrangig ist.
Ich hätte vermutet, dass es einige FHEM-User gibt, die schon länger FS20 einsetzen und MAX dazu nutzen wollen. Aber auf keinen Fall will ich irgendwelche Entwicklungsprioritäten ändern. Aber nett fragen, ob es eine Lösung gibt, darf ich ja trotzdem, oder? ;-)
Zitat von: John schrieb am Di, 12 Februar 2013 23:06Das kann nach meinem Verständnis nicht funktionieren:
Der sauberste und zielführende Ansatz wäre 2 CULs einzusetzen, dann gehen keine Pakete /Informationen verloren.
In der Zeit, in der der CUL im MAX-Modus arbeitet, kann er kein SlowRF erfassen und umgekehrt.
Ich hab dies genauso gelöst, es funktioniert gut und es kostet nicht die "Welt".
(Wir brauchen die Power von Matthias um die grundlegenden Probleme zu lösen)
Da ich nur einen Wandthermostat mit zwei Reglern verwende würde ein zweiter CUL die Kosten für MAX in meinem Fall verdoppeln. Du hast aber recht, wenn man das ganze Haus damit ausgestattet hat ist ein zweiter CUL vom Verhältnis her ok.
Zitat von: Matthias Gehre schrieb am Mi, 13 Februar 2013 01:58Natürlich kriegt man immer "Missing Ack", wenn man nicht im rfmode MAX ist, aber
das kann einem ja egal sein, denn die Befehle werden trotzdem vom Thermostat umgesetzt.
Das wäre mir tatsächlich egal. Aber sobald die attr-Zeile entfernt ist wird das Thermostat gar nicht mehr angesteuert. Ich nutze einen CUL v3 mit FW v1.52 und auch FHEM habe ich vorhin noch einmal aktualisiert.
Auch eine Abfolge (manuell eingegeben mit Pausen) hilft nicht:
attr CUL1 rfmode MAX
set MAX_0315c5 desiredTemperature 16.5
Wieder keine Reaktion des Thermostats und ein verlorenes Paket.
Es sieht so aus, als wenn der CUL nur dann in den MAX-Modus geht, wenn das "attr" gleich am Anfang in der fhem.cfg steht. Merkwürdig, oder?
(Kleiner Nachtrag:)
Ich hatte den CUL jetzt nach obiger manueller Sequenz so gelassen. Und es kommen ("inform on") jetzt Statusmeldungen vom MAX Thermostat an. Aber steuern kann ich ihn weiterhin nicht.
Für mich sieht es fast so aus, als wenn der CUL bei einem Wechsel "mittendrin" zwar MAX empfängt aber nicht sendet.
Das ist tatsächlich ein Bug.
Bitte versuch, das beide Fälle (klappt/klappt nicht)
mit einer minimalen Anzahl von Schritten/minimaler fhem.cfg
zu reproduzieren.
Zitat von: Matthias Gehre schrieb am Mi, 13 Februar 2013 20:00Das ist tatsächlich ein Bug.
Bitte versuch, das beide Fälle (klappt/klappt nicht)
mit einer minimalen Anzahl von Schritten/minimaler fhem.cfg
zu reproduzieren.
Sehr gerne.
Mit der fhem.ok.cfg kann ich "trigger test1" (in einer fhem-telnet-Session) ohne Probleme ausführen, der Thermostat reagiert.
Mit der fhem.not_ok.cfg löst der Befehl "trigger test1" keine Reaktion des Thermostats aus und gibt "CUL_MAX cm packetsLost: 1".
Auch diese Sequenz macht keinen Unterschied:
attr CUL1 rfmode MAX
trigger test1
Guten Tag,
ich hänge mich mal hier an und hoffe, dass es passt.
Ich habe über eine FB7270 und einen CUL V3
auch mehrere FHT80B und FHT80TF-2 und FS20FMS in Betrieb,
das soll primär auch so bleiben.
Zusätzlich und gleichzeitig würde ich gern
die Meldungen von MAX-Fensterkontakten (wegen der sofortigen Meldung)
empfangen wollen.
Meine Fragen:
Habe ich aus den vorherigen Beiträgen es richtig verstanden, dass
1. der gleichzeitige Parallel-Empfang von rfmode slowRf und rfmode MAX mit nur einem CUL nicht möglich ist ?
2. mit einem 2ten CUL ( jeder CUL macht einen Mode ) es aber möglich wäre ?
@ThomasHB:
Das Problem besteht darin, dass beim "define cm CUL_MAX 123456"
nach einem CUL in rfmode MAX gesucht wird, der dann das Backend des CUL_MAX bildet.
Da kein solcher CUL gefunden wird, bleibt das Backend leer. Auch nachdem später
der CUL in den rfmode MAX geschaltet wird.
Lösung:
Füge
attr cm IODev CUL1
in die fhem.cfg
(Und warte bis zum nächsten Update, welches diesbezüglich einen Bug fixt)
@Ralph
1. Genau
2. Genau
Zitat von: Matthias Gehre schrieb am Di, 19 Februar 2013 02:02@ThomasHB:
Lösung:
Füge
attr cm IODev CUL1
in die fhem.cfg
(Und warte bis zum nächsten Update, welches diesbezüglich einen Bug fixt)
Hallo Matthias,
vielen Dank für deine Unterstützung. Es funktioniert jetzt - hat aber eine Nebenwirkung.
Ich bin im Branch Development und habe heute ein Update ausgeführt, natürlich auch neu gestartet.
Ich kann jetzt per FS20 Sender den MAX-Thermostat ändern. Super. Allerdings scheint der CUL dann nicht korrekt zurück zu schalten. Nach dem ersten MAX-Befehl empfängt FHEM keine FS20-Signale mehr. Wenn ich aber von Hand einen FS20-Befehl absetze wird der übertragen.
Mein Workaround: nach dem Steuern des MAX einen Moment warten und den CUL resetten. Die Sequenz in meinem notify sieht dann so aus:
set MAX_0315c5 desiredTemperature 21.0;; sleep 5;; get CUL1 raw B00
Danach funktioniert FS20 wieder wie gehabt. Für mich ist diese Lösung gut tragbar, da ich MAX nur wenige Male pro Tag aus FHEM steuere. Und vielleicht geht es ja irgendwann auch ohne den Reset ;-)
Ein "attr CUL1 rfmode SlowRF" anstelle des Resets reicht übrigens nicht aus, habe ich auch probiert.
Gruß
Thomas
Mein Patch für die culfw wird unter
Link (http://forum.fhem.de/index.php?topic=11301.0)
diskutiert.
(Damit man nicht mehr
set MAX_0315c5 desiredTemperature 21.0;; sleep 5;; get CUL1 raw B00
machen muss.)
Moin zusammen,
ich hänge mich hier auch noch mal dran. Wer nicht lesen kann, gibt meist zuviel Geld aus!
Also, ich habe zu meinem CUL FS20 Komponenten( zwei Rolloschalter und ein Zwischenschalter). Jetzt hab ich mir 5 QMax Fensterkontakte gekauft und eben nicht gelesen, dass das so nicht geht.
Nehme ich den CUL in den Max Modus zeigt er mir die Fensterkontakte an, zweitgesteuerte Schaltungen der FS20 Sachen gehen nicht. Oder eben anders herum.
Ihr schreibt, das vor einem Set befehl der CUL in den slow Modus gebracht werden kann. Und danach wieder in den Max Modus.
Da ich nicht ganz so firm bin, könnt ihr mir das an einer Syntax erklären?
define CUL_0 CUL /dev/ttyACM0@9600 1034
#attr CUL_0 rfmode MAX (Hier müsste der Maxmode aktiviert sein, richtig?)
define myDbLog DbLog /opt/fhem/db.conf .*:.*
define Rolladen_EZ FS20 1234 01
attr Rolladen_EZ model fs20rsu
define Rolladen_WZ FS20 1234 02
define Licht_Treppe FS20 1234 03
#attr FS20 IODev CUL_0 (???)
define Rolladen_EZ_hoch at *06:00 set Rolladen_EZ off
define Rolladen_WZ_hoch at *06:00 set Rolladen_WZ off
define Rolladen_EZ_runter at *{sunset(0,"17:00","21:30")} set Rolladen_EZ on
define Rolladen_WZ_runter at *{sunset(0,"17:00","21:30")} set Rolladen_WZ on
define Stufenbeleuchtung at *{sunset("REAL",0,"16:00","18:00")} set Licht_Treppe on-till 23:59
***Und hier wieder auf Max umschalten?***