Seit dem Update lassen sich FS20 Statusvariablen nicht mehr ändern.

Hallo Dirk,


....bleibt nur der Weg per SetScriptTimer und dem Setzen der Statusvariablen auf False

Der Regensensor sendet entsprechend der eingestellten Zeit immer einen Ein Impuls. Wenn dieser nicht mehr gesendet wird, kannst Du auch hier eine Hilfsvariable auf False setzen und diese in Deinen Scripten oder Visualisierungen verwenden.

Hallo Thomas,
stimmt, gehen „tut das“ - nur wird langsam der Aufwand der Anpassungen bei der Migration von V1 zu V2 immer größer - und die Komplexität auch durch derlei Klimmzüge, wenn man nicht alles neu schreibt.

Mir tut mehr das „Masteradressen-Problem“ weh - denn ich verwende Masteradressen intensiv, um FS20 Schaltgruppen effizient zu schalten ; wenn man dies tun will und gleichzeitig natuerlich auch die Schaltbarkeit der einzelnen Aktoren per IPS aufrecht erhalten will, kommt man am Setzen der Statusvariablen nicht vorbei. Es sei denn, man setzt dann eben doch wieder eine Kaskade von FS20 Switch Kommandos ab, nur um die Stati anzupassen. Womit allerdings wieder jede Menge unnötiger Funkmüll produziert wird.

Masteradressen sind wirklich eine leistungsfähige Geschichte, was aber mit der derzeitigen Version nicht mehr vernünftig möglich ist :mad:.

Daher von meiner Seite: bitte Setzen von StatusVaraiablen wieder ermöglichen, auch wenn es über einen speziellen Befehl sein muss!!

Viele Grüße
Dirk

Das ist dann ein anderes Problem, welches ich als IPS Bug bezeichnen würde.

Ich werde Support für Master Adressen einbinden. Wenn du dann also eine Instanz mit Master Adresse anlegst, werden alle Status Variablen der Unteradressen korrekt aktualisiert.

paresy

Hallo Paresy, das wäre super - danke! Gut, dass ich da noch nicht mit Unmengen von Hilfsvariablen losgepfriemelt habe … :slight_smile:
Viele Grüße
Dirk

Nein, da es einfach nicht stimmt. Der Dimmer ist nicht aus und er verbraucht mehr Strom als, wenn er wirklich aus wäre. (Es gab dazu mal einen Thread hier im Forum)

paresy

OK, ist also so wie die guten alten Drehdimmer.
Draufdrücken macht AN/AUS (SwitchMode), drehen macht Hell/Dunkel aber eben nicht AN/AUS (SetInensity).

Das mit der dritten Statusvariablen in Script geht leider doch nicht.
Da ich in der Abwesenheitssimulation die Dimmer auch mit SwitchDuration schalte ist ein setzen der Variablen ohne zusätlichen Timer nicht machbar.

Das Lichtszenenscript wird langsam zum Abenteuer, zumindest als nicht PHP Guru :slight_smile:
Und nach einem halben Jahr weiss ich garantiert nicht mehr warum ich das so gemacht habe.:frowning:

Ich habe jetzt eine Version die das Setzten eines FS20 Dimmerstatus am Dimmer selber fest macht, so das in den eigendlichen Scripten ein Status nicht mehr gesetzt werden muss.

Hier mal als Workaround:

Zusätlich zu jedem FS20 Dimmer braucht man eine Boolean Variable als Status.
Diese stellt da ob das Licht Dunkel = 0% oder Hell >0% <=100% ist. Aber nicht AN oder AUS.

Jetzt brauchen man noch einen Script der je nach Zustand des „echten“ Status oder dem Intensity Wert die obrige Variable auf True oder False setzt.
Dieser Script wird durch zwei Events getriggert. Einmal bei Änderung des Intensity Wertes und einmal bei Änderung des „echten“ Status.

Hier der Script:

$Intensity  = GetValueInteger(21190 /*Gästezimmer\Deckenleuchte Dim FS20 DI20-2 4211\Intensity*/);
$AnAus      = GetValueBoolean(10359 /*Gästezimmer\Deckenleuchte Dim FS20 DI20-2 4211\Status*/);


if ($Intensity > 0)
	{
	   SetValueBoolean(29587  /*Gästezimmer\Deckenleuchte Dim FS20 DI20-2 4211 Status*/, true);
	}

if ($Intensity == 0)
	{
		SetValueBoolean(29587  /*Gästezimmer\Deckenleuchte Dim FS20 DI20-2 4211 Status*/, false);
	}
	
if ($AnAus == true)
	{
		SetValueBoolean(29587  /*Gästezimmer\Deckenleuchte Dim FS20 DI20-2 4211 Status*/, true);
	}

if ($AnAus == false)
	{
		SetValueBoolean(29587  /*Gästezimmer\Deckenleuchte Dim FS20 DI20-2 4211 Status*/, false);
	}

So habe ich einen Staus um einen Button oder ein Image für Hell/Dunkel darzustellen.
Im eigendlichen Script welches die Dimmer schaltet, brauch ich mich nicht mehr um den Status zu kümmern.
SetIntensity, SwitchMode und SwitchDuration funktionieren.

Einen schönen Sonntag noch
Ralf

@darx: Feature ist im aktuellen Update dabei. Gilt aber nur für Status/Intesity Variablen. Nicht für die Data/Timer Variable!

@Rallofax: Warum änderst du nicht einfach die anderen Skripte, sodass diese einen Intensity<>0 vergleich machen und garnicht auf die Status Variable zugreifen?

paresy

Hallo Paresy,
stehe wohl auf dem Schlauch: wie verwende ich das Master Adress feature?

Beispiel:

Zwei FS20 Aktoren, jeweils mit eindeutiger Adresse angelernt sowie mit gemeinsamer Gruppenadresse/Masteradresse

Also so angelernt:
FS20 A: EA1 Hauscode+1422 und MA Hauscode+4433
FS20 B: EA2 Hauscode+1423 und MA Hauscode+4433

In IPS diese beiden Aktoren jeweils mit ihrer EA sowie ein „virtueller Aktor“ mit der MA

Per MA kann ich beide gleichzeitig schalten, per EA einzeln.
Wie bilde ich nun die MA in IPS ab, so, dass sich auch die Statusvariablen der Aktoren verändert werden, nicht nur der Status des virtuellen Aktors?

Danke für Deine Hilfe
Dirk

@paresy

Danke fuer das schnelle Update. Habe ein wenig getestet - glaube, dass da mit dem feature noch einiges schieflaeuft.

Momentan scheint es so zu sein, dass z.B. ein Aktor mit der Adresse Hauscode+yy44 (z.B. +1144) ALLE anderen Aktoren bzw. deren Statusvariablen setzt, die einen BELIEBIGEN Hauscode+yyxx (z.B. +11xx) als Adresse haben …
Das endet natuerlich im Chaos…

Paresy, da muesstest Du nochmal drueber schauen …

Die Sache ist aus FS20 Perspektive ja auch anders in der Semantik: jeder Aktor kann eine IndividualAdresse + Gruppenadresse + … haben, in toto max. 4 Adressen pro Aktor. Damit lassen sich also die Aktoren in Schaltgruppen zusammenfassen - aber: die Gruppierung leitet sich nicht automatisch aus den Adressen ab (wie im Beispiel oben, das eben falsch ist) , sondern aus der Zuordnung der Adressen zu den Aktoren.
Nur wenn 2 Aktoren mit jeweils einer individuellen Einzeladresse ZUSAETZLICH noch jeweils eine - gleiche - Funktionsgruppenadresse (Hauscode+44xx) zugeordnet wird, bilden sie eine Gruppe.

Apropos: Intensity Werte etc. werden bei einem simplen EIN/AUS Befehl nicht fuer alle gleich in der Gruppe, sondern es werden die individuellen Werte behalten (Kommando EIN auf alter Wert). Nur bei explizitem Dimm-Kommando wird der Dimmwert fuer alle Aktoren in der Gruppe gleich.

Denke daher, dass die Abbildung der Funktionsgruppen und MAster nicht ganz trivial zu implementieren ist. In reiner Lehre müsste jeder Aktor max. 4 Adressen zugeordnet bekommen können, statt der einen wie aktuell in IPS.

Der einfachere Weg, wenn auch nicht so puristisch, waere - ceterum censeo - das Setzen der Statusvariablen wieder zu erlauben: virtueller Aktor fuer den MAster und nachziehen der STatusvariablen bei den „realen“ Aktoren per Script …

[edit]

konkretes Beispiel:

Dieser Aktor
1434 1333 11 44

schaltet die Statusvariablen der nachfolgenden (unterschiedliche Hauscodes, aber Adressgruppe 11)
1434 1313 11 13
1434 1333 11 23

Viele Grüße
Dirk

@Rallofax: Warum änderst du nicht einfach die anderen Skripte, sodass diese einen Intensity<>0 vergleich machen und garnicht auf die Status Variable zugreifen?

paresy

Hatte ich auch schon probiert.
Aber bei SwitchMode true oder SwitchDuration true bleibt der Intensity Wert bei 0%. Damit ist der Status wieder nicht richtig :frowning:

Ralf

Hiho,
gibts bei dem Master-Thema was Neues?
Hab gestern meine Aktoren im Haus mal als ersten Schritt alles als Instanzen geaddet. Habe in jedem Zimmer einen TC6 an der Tür hängen. Wovon das unter Paar den Globalen Master schaltet. Drück ich auf den Master-Taster ist mein Status, wie beschrieben, überall falsch!

Sag aber dabei, dass ich ausser Aktoren und Schalter als Instanzen zu adden noch nichts gemacht hab.

Wäre es nicht möglich, direkt beim Anlegen der Instanz die programmierten Masteradressen mit zu hinterlegen? Damit sollte doch dann der Aktorstatus immer aktuell sein, oder hab ich einen Denkfehler.

Gruß

Kai

Hi Folks,

gibts hier mal was Neues in Sachen Masteradressen, damit meine 868Mhz Traffic bissl sinkt? :smiley:

Gruß

Kai

p.s.: wollte den Thread mal wieder hochpushen damit er nicht vergessen wird :wink: