diff --git a/fhem/CHANGED b/fhem/CHANGED index 4043972ba..a76c1d9e2 100644 --- a/fhem/CHANGED +++ b/fhem/CHANGED @@ -1,5 +1,6 @@ # Add changes at the top of the list. Keep it in ASCII, and 80-char wide. # Do not insert empty lines here, update check depends on it. + - feature: 10_SOMFY: new RTS commands 0x9 und 0xA (set wind_sun_9/wind_only_a) - bugfix: 93_DbRep: importFromFile format problem if UNIT-field wasn't set - feature: 98_fhemdebug, to aid "Error: >< no TYPE" debugging. - feature: 70_Jabber Added possibility to change componentname via diff --git a/fhem/FHEM/10_SOMFY.pm b/fhem/FHEM/10_SOMFY.pm index 16f6557ef..bb72ea32b 100644 --- a/fhem/FHEM/10_SOMFY.pm +++ b/fhem/FHEM/10_SOMFY.pm @@ -88,6 +88,7 @@ # 2016-10-30 viegener - FIX: remove wrong attribute up-time-to-close - typo in attr setter # 2016-10-14 viegener - FIX: Use of uninitialized value $updateState in concatenation # +# 2016-12-30 viegener - New sets / code-commands 9 / a - wind_sun_9 / wind_only_a # # ############################################################################### @@ -121,6 +122,8 @@ my %codes = ( "20" => "off", # go "up" "40" => "on", # go "down" "80" => "prog", # finish pairing + "90" => "wind_sun_9", # wind and sun (sun + flag) + "A0" => "wind_only_a", # wind only (flag) "100" => "on-for-timer", "101" => "off-for-timer", "XX" => "z_custom", # custom control code @@ -135,6 +138,8 @@ my %sets = ( "on-for-timer" => "textField", "off-for-timer" => "textField", "z_custom" => "textField", + "wind_sun_9" => "noArg", + "wind_only_a" => "noArg", "pos" => "0,10,20,30,40,50,60,70,80,90,100" ); @@ -144,7 +149,9 @@ my %sendCommands = ( "on" => "on", "close" => "on", "prog" => "prog", - "stop" => "stop" + "stop" => "stop", + "wind_sun_9" => "wind_sun_9", + "wind_only_a" => "wind_only_a", ); my %inverseCommands = ( @@ -779,7 +786,7 @@ sub SOMFY_InternalSet($@) { my $cmd = lc($args[0]); # just a number provided, assume "pos" command - if ($cmd =~ m/\d{1,3}/) { + if ($cmd =~ m/^\d{1,3}$/) { pop @args; push @args, "pos"; push @args, $cmd;