mirror of
https://github.com/fhem/fhem-mirror.git
synced 2025-05-03 13:45:36 +00:00
CUL_HM: dimmer allows explizit old
git-svn-id: https://svn.fhem.de/fhem/trunk@10910 2b470e98-0d58-463d-a4d8-8e2adae1ed80
This commit is contained in:
parent
4727ec2414
commit
859718bd5b
@ -1076,7 +1076,7 @@ sub CUL_HM_Parse($$) {#########################################################
|
|||||||
}
|
}
|
||||||
|
|
||||||
#----------CUL aesCommReq handling---------
|
#----------CUL aesCommReq handling---------
|
||||||
if ( $mh{devH}->{IODev}->{TYPE} eq "CUL"
|
if ( AttrVal($mh{devH}{IODev}{NAME},"rfmode","") eq "HomeMatic" # $mh{devH}->{IODev}->{TYPE} eq "CUL"
|
||||||
&& $cryptFunc == 1
|
&& $cryptFunc == 1
|
||||||
&& $ioId eq $mh{dst}
|
&& $ioId eq $mh{dst}
|
||||||
&& AttrVal($mh{devN},"aesCommReq",0)) { #aesCommReq enabled for device
|
&& AttrVal($mh{devN},"aesCommReq",0)) { #aesCommReq enabled for device
|
||||||
@ -2769,7 +2769,7 @@ sub CUL_HM_parseCommon(@){#####################################################
|
|||||||
my (undef,$challenge,$aesKeyNbr) = unpack'A2A12A2',$mhp->{p};
|
my (undef,$challenge,$aesKeyNbr) = unpack'A2A12A2',$mhp->{p};
|
||||||
push @evtEt,[$mhp->{devH},1,"aesKeyNbr:".$aesKeyNbr] if (defined $aesKeyNbr);# if ($mh{msgStat} =~ m/AESKey/)
|
push @evtEt,[$mhp->{devH},1,"aesKeyNbr:".$aesKeyNbr] if (defined $aesKeyNbr);# if ($mh{msgStat} =~ m/AESKey/)
|
||||||
|
|
||||||
if ($mhp->{devH}{IODev}->{TYPE} eq "CUL" && #IO is CUL
|
if (AttrVal($mhp->{devH}{IODev}{NAME},"rfmode","") eq "HomeMatic" &&
|
||||||
defined($aesKeyNbr)) {
|
defined($aesKeyNbr)) {
|
||||||
if ($cryptFunc == 1 && #AES is available
|
if ($cryptFunc == 1 && #AES is available
|
||||||
$mhp->{devH}{helper}{prt}{rspWait}{cmd}){ #There is a previously executed command
|
$mhp->{devH}{helper}{prt}{rspWait}{cmd}){ #There is a previously executed command
|
||||||
@ -4212,8 +4212,9 @@ sub CUL_HM_Set($@) {#+++++++++++++++++ set command+++++++++++++++++++++++++++++
|
|||||||
CUL_HM_UpdtReadSingle($hash,"inhibit","set_$a[2]",1);
|
CUL_HM_UpdtReadSingle($hash,"inhibit","set_$a[2]",1);
|
||||||
CUL_HM_PushCmdStack($hash,'++'.$flag.'11'.$id.$dst.$val.$chn); # SET_LOCK
|
CUL_HM_PushCmdStack($hash,'++'.$flag.'11'.$id.$dst.$val.$chn); # SET_LOCK
|
||||||
}
|
}
|
||||||
elsif($cmd =~ m/^(up|down|pct)$/) { #########################################
|
elsif($cmd =~ m/^(up|down|pct|old)$/) { #####################################
|
||||||
my ($lvl,$tval,$rval,$duration) = (($a[2]?$a[2]:0),"","",0);
|
my ($lvl,$tval,$rval,$duration) = (($cmd eq "old"?"old":($a[2]?$a[2]:0))
|
||||||
|
,"","",0);
|
||||||
my($lvlMin,$lvlMax) = split",",AttrVal($name, "levelRange", "0,100");
|
my($lvlMin,$lvlMax) = split",",AttrVal($name, "levelRange", "0,100");
|
||||||
my $lvlInv = (AttrVal($name, "param", "") =~ m /levelInverse/)?1:0;
|
my $lvlInv = (AttrVal($name, "param", "") =~ m /levelInverse/)?1:0;
|
||||||
|
|
||||||
@ -5331,7 +5332,7 @@ sub CUL_HM_Set($@) {#+++++++++++++++++ set command+++++++++++++++++++++++++++++
|
|||||||
|
|
||||||
my ($key1,$key2);
|
my ($key1,$key2);
|
||||||
|
|
||||||
if ($hash->{IODev}->{TYPE} eq "CUL") {
|
if (AttrVal($hash->{IODev}{NAME},"rfmode","") eq "HomeMatic" ) {
|
||||||
return "$cmd needs Crypt::Rijndael for updating keys with CUL"
|
return "$cmd needs Crypt::Rijndael for updating keys with CUL"
|
||||||
if ($cryptFunc != 1);
|
if ($cryptFunc != 1);
|
||||||
|
|
||||||
@ -6338,7 +6339,7 @@ sub CUL_HM_FWupdateEnd($){#end FW update
|
|||||||
sub CUL_HM_FWupdateSpeed($$){#set IO speed
|
sub CUL_HM_FWupdateSpeed($$){#set IO speed
|
||||||
my ($name,$speed) = @_;
|
my ($name,$speed) = @_;
|
||||||
my $hash = $defs{$name};
|
my $hash = $defs{$name};
|
||||||
if ($hash->{IODev}->{TYPE} ne "CUL"){
|
if (AttrVal($hash->{IODev}{NAME},"rfmode","") ne "HomeMatic"){
|
||||||
my $msg = sprintf("G%02X",$speed);
|
my $msg = sprintf("G%02X",$speed);
|
||||||
IOWrite($hash, "cmd",$msg);
|
IOWrite($hash, "cmd",$msg);
|
||||||
}
|
}
|
||||||
|
@ -160,14 +160,14 @@ sub HMinfo_Attr(@) {###########################################################
|
|||||||
my %culAH;
|
my %culAH;
|
||||||
foreach (split" ",$modules{CUL_HM}{AttrList}){
|
foreach (split" ",$modules{CUL_HM}{AttrList}){
|
||||||
my ($p,$v) = split(":",$_);
|
my ($p,$v) = split(":",$_);
|
||||||
$culAH{$p} = ",$v,";
|
$culAH{$p} = $v?",$v,":"";
|
||||||
}
|
}
|
||||||
|
|
||||||
foreach (split(",",$attrVal)){
|
foreach (split(",",$attrVal)){
|
||||||
my ($para,$val) = split(":",$_,2);
|
my ($para,$val) = split(":",$_,2);
|
||||||
return "no value defined for $para" if (!defined "val");
|
return "no value defined for $para" if (!defined "val");
|
||||||
return "param $para not allowed" if (!grep /$para/,@defpara);
|
return "param $para not allowed" if (!grep /$para/,@defpara);
|
||||||
return "param $para :$val not allowed, use $culAH{$para}" if ($culAH{$para} !~ m/,$val,/);
|
return "param $para :$val not allowed, use $culAH{$para}" if ($culAH{$para} && $culAH{$para} !~ m/,$val,/);
|
||||||
$modules{CUL_HM}{AttrListDef}{$para} = $val;
|
$modules{CUL_HM}{AttrListDef}{$para} = $val;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1458,8 +1458,9 @@ $culHmSubTypeDevSets{blindActuator} = $culHmSubTypeDevSets{switch};
|
|||||||
,"on-till" =>"-time- [-ramptime-]..."
|
,"on-till" =>"-time- [-ramptime-]..."
|
||||||
,on =>""
|
,on =>""
|
||||||
,off =>""
|
,off =>""
|
||||||
|
,old =>""
|
||||||
,toggle =>""
|
,toggle =>""
|
||||||
,pct =>"-value- ... [-ontime-] [-ramptime-]"
|
,pct =>"[-value-|old] ... [-ontime-] [-ramptime-]"
|
||||||
,stop =>""
|
,stop =>""
|
||||||
,press =>"[long|short] [on|off|-peer-] [-repCount(long only)-] [-repDelay-] ..."
|
,press =>"[long|short] [on|off|-peer-] [-repCount(long only)-] [-repDelay-] ..."
|
||||||
,up =>"[-changeValue-] [-ontime-] [-ramptime-] ..."
|
,up =>"[-changeValue-] [-ontime-] [-ramptime-] ..."
|
||||||
|
Loading…
x
Reference in New Issue
Block a user