2
0
mirror of https://github.com/fhem/fhem-mirror.git synced 2025-01-31 18:59:33 +00:00

10_ZWave.pm: impement swm SWITCH_MULTILEVEL_START_LEVEL_CHANGE (Forum #49568)

git-svn-id: https://svn.fhem.de/fhem/trunk@10909 2b470e98-0d58-463d-a4d8-8e2adae1ed80
This commit is contained in:
rudolfkoenig 2016-02-21 17:51:10 +00:00
parent 395754aa1a
commit 4727ec2414

View File

@ -74,6 +74,7 @@ my %zwave_class = (
"..2601ff.."=> "state:setOn",
"..260420" => "state:swmBeginUp",
"..260460" => "state:swmBeginDown",
"..2604(..)(..)(..)(..)" => 'ZWave_swmParse($1,$2,$3,$4)',
"..2605" => "state:swmEnd" } },
SWITCH_ALL => { id => '27',
set => { swaIncludeNone => "0100",
@ -1995,6 +1996,18 @@ ZWave_SetClasses($$$$)
return "";
}
sub
ZWave_swmParse($$$$)
{
my ($fl, $sl, $dur, $step)=@_;
my $fl1 = (hex($fl) & 0x18)>>3;
my $fl2 = (hex($fl) & 0xc0)>>6;
$fl = ($fl1==0 ? "Increment": $fl1==1 ? "Decrement" : "")." ".
($fl2==0 ? "Up": $fl1==1 ? "Down" : "");
return sprintf("state:swm %s Start: %d Duration: %d Step: %d",
$fl, hex($sl), hex($dur), hex($step));
}
sub
ZWave_sceneParse($)
{
@ -5206,6 +5219,8 @@ s2Hex($)
<li>state:dim value</li>
<li>state:swmBeginUp</li>
<li>state:swmBeginDown</li>
<li>state:swm [Decrement|Increment] [Up|Down]
Start: $sl Duration: $dur Step: $step</li>
<li>state:swmEnd</li>
<br><br><b>Class THERMOSTAT_MODE</b>