Ich habe dmx4all laufen und unter der V3 geht es problemlos. Vielleicht liegt es an der FadingTime.
Hier der Code da ist nicht viel falsch zu machen.
<?
function DMX_SET($DMX_Instance_ID,$Cannel,$Color,$FadingSeconds)
{
$R_Value = 0;
$G_Value = 0;
$B_Value = 0;
$ID_FadeTime = 47415 /*[Systeminstanzen\Variablen\DMX\DMXFadingTime]*/;
$ID_Stromversorgung_Schalten_AnAus = 21969 /*[Systeminstanzen\Variablen\DMX\Einstellungen\DMX LED Beleuchtung Stromversorgung schalten]*/ ;
$Farbeinstellungen = array (
13773 => array ( //[Systeminstanzen\DMX Instanzen\DMX Deckenbeleuchtung Party]
1 => array(255,255,255), //weiss
2 => array(255,0,0), //rot
3 => array(0,0,255), //blau
4 => array(255,215,0), //gelb
5 => array(0,255,0), //grün
6 => array(255,0,255), //pink
7 => array(255,100,0), //orange
8 => array(208,32,144), //violett
99 => 54041
),
42283 => array ( //Sockel Küche
1 => array(255,255,255), //weiss
2 => array(255,0,0), //rot
3 => array(0,0,255), //blau
4 => array(255,215,0), //gelb
5 => array(0,255,0), //grün
6 => array(255,0,255), //pink
7 => array(255,100,0), //orange
8 => array(208,32,144), //violett
99 => 43330
),
16454 => array( //Treppe Eingang
1 => array(255,255,255), //weiss
2 => array(255,0,0), //rot
3 => array(0,0,255), //blau
4 => array(255,215,0), //gelb
5 => array(0,255,0), //grün
6 => array(255,0,255), //pink
7 => array(255,30,0), //orange
8 => array(208,32,144), //violett
99 => 46818
),
46367 => array( //Schränke Küche
1 => array(255,255,255), //weiss
2 => array(255,0,0), //rot
3 => array(0,0,255), //blau
4 => array(255,215,0), //gelb
5 => array(0,255,0), //grün
6 => array(255,0,255), //pink
7 => array(255,30,0), //orange
8 => array(208,32,144), //violett
99 => 39889
),
43203 => array( //Decke Küche
1 => array(255,255,255), //weiss
2 => array(255,0,0), //rot
3 => array(0,0,255), //blau
4 => array(255,215,0), //gelb
5 => array(0,255,0), //grün
6 => array(255,0,255), //pink
7 => array(255,100,0), //orange
8 => array(208,32,144), //violett
99 => 14500
),
27219 => array( //Decke WZ
1 => array(255,255,255), //weiss
2 => array(255,0,0), //rot
3 => array(0,0,255), //blau
4 => array(255,100,0), //gelb
5 => array(0,255,0), //grün
6 => array(255,0,255), //pink
7 => array(255,50,0), //orange
8 => array(208,32,144), //violett
99 => 44726
),
51109 => array( //[Systeminstanzen\DMX Instanzen\DMX Deckenbeleuchtung Bad DG]
1 => array(255,255,255), //weiss
2 => array(255,0,0), //rot
3 => array(0,0,255), //blau
4 => array(255,215,0), //gelb
5 => array(0,255,0), //grün
6 => array(255,0,255), //pink
7 => array(255,100,0), //orange
8 => array(208,32,144), //violett
99 => 38585
),
39124 => array( //[Systeminstanzen\DMX Instanzen\DMX Wannenbeleuchtung Bad DG]
1 => array(255,255,255), //weiss
2 => array(255,0,0), //rot
3 => array(0,0,255), //blau
4 => array(255,215,0), //gelb
5 => array(0,255,0), //grün
6 => array(255,0,255), //pink
7 => array(255,100,0), //orange
8 => array(208,32,144), //violett
99 => 18766
),
10307 => array( //[Systeminstanzen\DMX Instanzen\Effektleuchten Terrasse]
1 => array(255,255,255), //weiss
2 => array(255,0,0), //rot
3 => array(0,0,255), //blau
4 => array(255,215,0), //gelb
5 => array(0,255,0), //grün
6 => array(255,0,255), //pink
7 => array(255,100,0), //orange
8 => array(208,32,144), //violett
99 => 28695
)
);
$Stromversorgung_Schalten_AnAus = getvalueboolean($ID_Stromversorgung_Schalten_AnAus);
if ($FadingSeconds < 0) $FadingSeconds = getvalueInteger($ID_FadeTime );
$R_Value = 0;
$G_Value = 0;
$B_Value = 0;
if ($DMX_Instance_ID > 0) {
if ($Color > 0){
if ($Farbeinstellungen[$DMX_Instance_ID][99] > 0) {
if (!getvalueboolean($Farbeinstellungen[$DMX_Instance_ID][99])) {
//Stromversorgung anschalten und warten
if ($Stromversorgung_Schalten_AnAus) HM_WriteBoolean(IPS_Getparent($Farbeinstellungen[$DMX_Instance_ID][99]),"STATE",true);
ips_sleep(1200);
}
}
$R_Value = $Farbeinstellungen[$DMX_Instance_ID][$Color][0];
$G_Value = $Farbeinstellungen[$DMX_Instance_ID][$Color][1];
$B_Value = $Farbeinstellungen[$DMX_Instance_ID][$Color][2];
} else {
$R_Value = 0;
$G_Value = 0;
$B_Value = 0;
}
if ($FadingSeconds > 0) {
//$FadingSeconds = 1;
DMX_FadeChannel($DMX_Instance_ID,$Cannel,$R_Value,$FadingSeconds);
DMX_FadeChannel($DMX_Instance_ID,$Cannel+1,$G_Value,$FadingSeconds);
DMX_FadeChannel($DMX_Instance_ID,$Cannel+2,$B_Value,$FadingSeconds);
} else {
DMX_SetChannel($DMX_Instance_ID,$Cannel,$R_Value);
DMX_SetChannel($DMX_Instance_ID,$Cannel+1,$G_Value);
DMX_SetChannel($DMX_Instance_ID,$Cannel+2,$B_Value);
}
if (($Farbeinstellungen[$DMX_Instance_ID][99] > 0) and ($Color == 0)){
//warten und danach Stromversorgung ausschalten
ips_sleep(2000);
if ($Stromversorgung_Schalten_AnAus) HM_WriteBoolean(IPS_Getparent($Farbeinstellungen[$DMX_Instance_ID][99]),"STATE",false);
}
}
}
//setvalue($_IPS['VARIABLE'],$_IPS['VALUE']);
//include(IPS_GetScriptIDByName("include_DMX_functions",42822 /*[Scripts\DMX]*/ ).".ips.php");
//$ObjectInfo = IPS_GetObject($_IPS['VARIABLE']);
//$ParentID = $ObjectInfo['ParentID'];
$ParentID = IPS_Getparent($_IPS['VARIABLE']);
$VarName = IPS_GetName($_IPS['VARIABLE']); // Object - Infos
$ID_DMX=0;
$Color=0;
$Var_ID = 0;
$Faktor=20;
$FadeTime = getvalueInteger(47415 /*[Systeminstanzen\Variablen\DMX\DMXFadingTime]*/ );
$Offset_Color = 0;
$VariableDMX_ID = IPS_GetVariableIDByName("ID_DMX",$ParentID); // ID ermitteln
if ($VariableDMX_ID>0)
{
$ID_DMX = GetValueInteger($VariableDMX_ID);
$Offset_Color_ID = IPS_GetVariableIDByName("OFFSET_COLOR",$ParentID);
$Offset_Color = GetValueInteger($Offset_Color_ID);
$ID_Cannel = 1;
}
if ($VarName == 'Farbe')
{
$Helligkeit = 10;
DMX_SET($ID_DMX,$ID_Cannel + $Offset_Color, $_IPS['VALUE'],$FadeTime);
}
?>