MAX! und FS20 per gemeinsamen CUL?

Begonnen von stobor, 23 Januar 2013, 13:23:07

Vorheriges Thema - Nächstes Thema

stobor

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
Intel NUC (Ubuntu 22.04.2 LTS (GNU/Linux 5.15.0-73-generic x86_64))  mit CUL V3.2 (Firmware 1.57 CUL868) für FS20 und CUL V3.4 (Firmware 1.57 CUL868) für HM + Arduino Mega
FHEM Revision: 27642
FS20-Schalter und Dimmer
HM Fensterkontakte, Heizungsthermostate, Temperatursensoren

Matthias Gehre

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.

stobor

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?
Intel NUC (Ubuntu 22.04.2 LTS (GNU/Linux 5.15.0-73-generic x86_64))  mit CUL V3.2 (Firmware 1.57 CUL868) für FS20 und CUL V3.4 (Firmware 1.57 CUL868) für HM + Arduino Mega
FHEM Revision: 27642
FS20-Schalter und Dimmer
HM Fensterkontakte, Heizungsthermostate, Temperatursensoren

ThomasHB

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?

Matthias Gehre

Müsste gehen, hast du es probiert?

ThomasHB

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.

Matthias Gehre

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.

ThomasHB

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?



John

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)


CubieTruck Docker Node-Red Tasmota Shelly Homematic-IP

Matthias Gehre

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.

ThomasHB

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.


Matthias Gehre

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.

ThomasHB

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

Ralph

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 ?



FHEM auf RaspberryPi3 mit Geekworm USV und SignalDUINO 433MHz und HM-MOD-RPI-PCB mit 3 HM-Sec-SD-2, 5 FHT, 2 RM 100-2 Uni S, 2 HMS100, 6 CUL_WS, 6 CUL_FHTTK, 11 FS20 und 7 FS20V Spannungsüberwachungen

Matthias Gehre

@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