Wandthermostat leitet BOOST-Befehl nicht weiter

Begonnen von Dennis B., 12 März 2013, 10:07:49

Vorheriges Thema - Nächstes Thema

Dennis B.

Es funktioniert, wenn man Flag 04 verwendet und die groupId setzt. Habe alle Geräte im Wohnzimmer auf die gleiche ID gesetzt und dann den Befehl mit der groupId und Flag 04 abgesetzt und alle Geräte im Wohnzimmer haben reagiert und die anderen blieben unverändert. Nur bei groupId 00 fühlen sich alle MAX! komponenten im Haus angesprochen.

mickym

Hallo Dennis,

hört sich ja gut an und was habe ich dann bei der Syntax verkehrt eingegeben - ich hatte den Befehl doch direkt via copy & paste + fehlendes Anführungszeichen am Ende eingegeben. Kannst Du die Zeile noch mal posten und wo die groupid genau steht?

Gruss Mic :)

Dennis B.

Habe folgendes in Zeile 270 der 10_MAX.pm stehen: return ($hash->{IODev}{Send})->($hash->{IODev},"SetTemperature",$hash->{addr},$payload, groupId => "07", flags => "04");

Das eingebettete if ( $hash->{groupid} ? "04" : "00") funktioniert nicht, weil $hash->{groupid} zu false evaluiert. Deswegen haben ich den flags-wert und die groupId fest gesetzt.

Bei allen Komponenten hatte ich vorher "set <name> groupid 7" abgesetzt.

Hatte mal testweise auch das HT im Badezimmer auf groupId 7 gesetzt und dann hat das auch immer auf die Befehle mit groupId und Flag 04 gehört. Das HT im Badezimmer war mit keiner Komponente im Wohnzimmer assoziiert. Hatte dann probiert die groupId für das HT im Badezimmer auf 4 zu setzen, aber es hat weiterhin auf die Befehle mit groupId 7 und Flag 04 reagiert. Erst nach einem Reset hat es nicht mehr auf die Befehle reagiert. Fand ich ein wenig komisch...

mickym

Hallo Dennis und Matthias,

Klasse - ja so funktioniert es. Mit diesem Code geht es. Es werden wie standardmässig - alle Geräte nur in dem einen Raum, wie gewünscht super synchronisert.

Die Max- Software weisst ja jedem Gerät sowie so mit jedem Raum eine group- ID zu - deswegen musste ich nicht setzen.
bei mir ist Büro=1, WZ=2, SZ=4 und Bad =3.
Ich habe dann mal mit groupid 2 - einmal den linken HT ein Kommando geschickt und wurde super schnell auf den WT und den rechten HT synchronisiert. Das gleiche mit dem rechten HT im WZ und linker HT und WT synchron. Dann noch WT und die beiden HT's im WZ auch.

Dann schnell group id auf 1 gesetzt und einmal HT angesprochen im Büro und einmal WT im Büro - super schnell synchron.

Fazit: Es muss eigentlich nur generell, wenn groupid >0, diese mit diesem Flag 04 geschickt werden und schon funktioniert es wie es soll. Klasse.

Dann kann ich mir meine Hilfsstrukturen sparen und muss nicht immer abprüfen, wann die Geräte wieder synchron laufen, bevor ein neuer Befehl geschickt wird.
Wenn das implementiert ist, dann ist das in meinen Augen ein grosser Schritt.

Also vielen Dank Euch beiden und eine gute N8. ;)
Gruss Mic.

Matthias Gehre

Ist commited. Ihr müsste die groupid aber nochmal setzen, da die bisher nicht in den READINGS gespeichert wurde.

Dennis B.

Bin heute erst dazu gekommen, die committeten Sachen zu testen. Scheint alles zu funktionieren! Vielen Dank!