From 77d12b81ced214a5d6b0a8d56a224a9dd7f6336a Mon Sep 17 00:00:00 2001 From: justme-1968 Date: Thu, 26 Dec 2013 17:31:58 +0000 Subject: [PATCH] fixed ramp-time git-svn-id: https://svn.fhem.de/fhem/trunk/fhem@4469 2b470e98-0d58-463d-a4d8-8e2adae1ed80 --- FHEM/31_HUEDevice.pm | 31 ++++++++++++++++--------------- 1 file changed, 16 insertions(+), 15 deletions(-) diff --git a/FHEM/31_HUEDevice.pm b/FHEM/31_HUEDevice.pm index 78b85803c..888c07b9e 100644 --- a/FHEM/31_HUEDevice.pm +++ b/FHEM/31_HUEDevice.pm @@ -236,20 +236,20 @@ HUEDevice_SetParam($$@) if($cmd eq 'on') { $obj->{'on'} = JSON::true; $obj->{'bri'} = 254 if( ReadingsVal($name,"bri","0") eq 0 ); - $obj->{'transitiontime'} = $value / 10 if( defined($value) ); + $obj->{'transitiontime'} = $value * 10 if( defined($value) ); } elsif($cmd eq 'off') { $obj->{'on'} = JSON::false; - $obj->{'transitiontime'} = $value / 10 if( defined($value) ); + $obj->{'transitiontime'} = $value * 10 if( defined($value) ); } elsif($cmd eq "pct") { $value = 3.5 if( $value < 3.5 && AttrVal($name, "model", "") eq "LWL001" ); $obj->{'on'} = JSON::true; $obj->{'bri'} = int(2.54 * $value); - $obj->{'transitiontime'} = $value2 / 10 if( defined($value2) ); + $obj->{'transitiontime'} = $value2 * 10 if( defined($value2) ); } elsif($cmd eq "bri") { $value = 8 if( $value < 8 && AttrVal($name, "model", "") eq "LWL001" ); $obj->{'on'} = JSON::true; $obj->{'bri'} = 0+$value; - $obj->{'transitiontime'} = $value2 / 10 if( defined($value2) ); + $obj->{'transitiontime'} = $value2 * 10 if( defined($value2) ); } elsif($cmd eq "dimUp") { my $bri = ReadingsVal($name,"bri","0"); $bri += 25; @@ -257,7 +257,7 @@ HUEDevice_SetParam($$@) $obj->{'on'} = JSON::true; $obj->{'bri'} = 0+$bri; $obj->{'transitiontime'} = 1; - #$obj->{'transitiontime'} = $value / 10 if( defined($value) ); + #$obj->{'transitiontime'} = $value * 10 if( defined($value) ); $defs{$name}->{helper}->{update_timeout} = 0; } elsif($cmd eq "dimDown") { my $bri = ReadingsVal($name,"bri","0"); @@ -266,25 +266,25 @@ HUEDevice_SetParam($$@) $obj->{'on'} = JSON::true; $obj->{'bri'} = 0+$bri; $obj->{'transitiontime'} = 1; - #$obj->{'transitiontime'} = $value / 10 if( defined($value) ); + #$obj->{'transitiontime'} = $value * 10 if( defined($value) ); $defs{$name}->{helper}->{update_timeout} = 0; } elsif($cmd eq "ct") { $obj->{'on'} = JSON::true; $obj->{'ct'} = 0+$value; - $obj->{'transitiontime'} = $value2 / 10 if( defined($value2) ); + $obj->{'transitiontime'} = $value2 * 10 if( defined($value2) ); } elsif($cmd eq "hue") { $obj->{'on'} = JSON::true; $obj->{'hue'} = 0+$value; - $obj->{'transitiontime'} = $value2 / 10 if( defined($value2) ); + $obj->{'transitiontime'} = $value2 * 10 if( defined($value2) ); } elsif($cmd eq "sat") { $obj->{'on'} = JSON::true; $obj->{'sat'} = 0+$value; - $obj->{'transitiontime'} = $value2 / 10 if( defined($value2) ); + $obj->{'transitiontime'} = $value2 * 10 if( defined($value2) ); } elsif($cmd eq "xy" && $value =~ m/^(.+),(.+)/) { my ($x,$y) = ($1, $2); $obj->{'on'} = JSON::true; $obj->{'xy'} = [0+$x, 0+$y]; - $obj->{'transitiontime'} = $value2 / 10 if( defined($value2) ); + $obj->{'transitiontime'} = $value2 * 10 if( defined($value2) ); } elsif( $cmd eq "rgb" && $value =~ m/^(..)(..)(..)/) { # calculation from http://www.everyhue.com/vanilla/discussion/94/rgb-to-xy-or-hue-sat-values/p1 my( $r, $g, $b ) = (hex($1)/255.0, hex($2)/255.0, hex($3)/255.0); @@ -790,17 +790,17 @@ HUEDevice_GetUpdate($) Note: the FS20 compatible dimXX% commands are also accepted.
  • color <value>
    set colortemperature to <value> kelvin.
  • -
  • bri <value>
    +
  • bri <value> [<ramp-time>]
    set brighness to <value>; range is 1-254.
  • dimUp
  • dimDown
  • -
  • ct <value>
    +
  • ct <value> [<ramp-time>]
    set colortemperature to <value> mireds; range is 154-500.
  • -
  • hue <value>
    +
  • hue <value> [<ramp-time>]
    set hue to <value>; range is 0-65535.
  • -
  • sat <value>
    +
  • sat <value> [<ramp-time>]
    set saturation to <value>; range is 0-254.
  • -
  • xy <x>,<y>
    +
  • xy <x>,<y> [<ramp-time>]
    set the xy color coordinates to <x>,<y>
  • alert [none|select|lselect]
  • effect [none|colorloop]
  • @@ -813,6 +813,7 @@ HUEDevice_GetUpdate($)
    Note: