IPS-868 RGBW wie nur ein Kanal ansteuern, die Kanäle sollen bleiben gleich bleiben?

Hallo,

ich habe den RGBW Controller nicht für eine RGBW Lampe genutzt, sondern 4 einzelne Lampen. Wie kann ich denn einen Kanal von denen ansteuern ohne die restlichen zu verändern?
Ich habe mit dem folgenden Script den 4. Kanal eingeschaltet, aber die anderen 3 gehen logischer weise aus, da dort ja der Wert 0 in 0 sek gesendet wird.

<?

if ($IPS_SENDER == "TimerEvent")
			{
			IPS_SetScriptTimer($IPS_SELF, 0);
			PJ_DimRGBW(53101 /*[System-868\RGBW-868-c (Treppe)]*/,0,0,0,0,0,0,0,10); //Kanal 4 runter dimmen
         }

else
		   {
			IPS_SetScriptTimer($IPS_SELF,90);
			PJ_DimRGBW(53101 /*[System-868\RGBW-868-c (Treppe)]*/,0,0,0,0,0,0,255,2); //Kanal 4 rauf dimmen
			}
?>

Gibt es evt. einen Befehl in dem ich den Kanal angebe und nicht duch die Stelle der Zahl?

Jan

Das ist beim IPS-868 RGBW wirklich etwas umständlich. Dir bleib nichts weiter übrig als die Color und White Variablen einzulesen und Color in R+G+B umzuwandeln. Dann die Werte die bleiben sollen im PJ_DimRGBW Befehl eintragen.

//hole alten Wert
$alt_rgb = GetValue(47688 /*[ProJet (868)\RGBW-868 (ID144)\Color]*/);
$alt_white = GetValue(45118 /*[ProJet (868)\RGBW-868 (ID144)\White]*/);
// in RGB zerlegen
$bl = ($alt_rgb & 255);
$gn = (($alt_rgb >> 8) & 255);
$rt = (($alt_rgb >> 16) & 255);

PJ_DimRGBW ($id, $rt, 0, $gn, 0, $bl, 0, $alt_white, 0);
 

Danke, hat funktioniert.:slight_smile:

Nur wenn einer der nicht zu ändernden Kanäle gerade am dimmen ist bleibt er dann glaube an dem abgefragten Punkt stehen (kanns gerade nicht testen da allein zu hause und die Bewegungsmelder zu weit auseinander), ist in meiner Anwendung nicht so tragisch, aber mit einem Befehl „Port X, Wert Y, Zeit Z“ wäre es da bestimmt besser.

Jan