2
0
mirror of https://github.com/fhem/fhem-mirror.git synced 2025-04-22 08:11:44 +00:00
git-svn-id: https://svn.fhem.de/fhem/trunk@3494 2b470e98-0d58-463d-a4d8-8e2adae1ed80
This commit is contained in:
martinp876 2013-07-24 12:40:46 +00:00
parent 18799a6177
commit 6d19ff82c0
2 changed files with 20 additions and 7 deletions

View File

@ -567,7 +567,7 @@ sub CUL_HM_Parse($$) {##############################
if($mTp eq "70" && $p =~ m/^(....)(..)/) { # weather event if($mTp eq "70" && $p =~ m/^(....)(..)/) { # weather event
$chn = '01'; # fix definition $chn = '01'; # fix definition
my ( $t, $h) = (hex($1), hex($2));# temp is 15 bit signed my ( $t, $h) = (hex($1), hex($2));# temp is 15 bit signed
$t = ($t & 0x3fff)/10*(($t & 0x4000)?-1:1); $t = sprintf("%2.1f",($t & 0x3fff)/10*(($t & 0x4000)?-1:1));
my $chnHash = $modules{CUL_HM}{defptr}{$src.$chn}; my $chnHash = $modules{CUL_HM}{defptr}{$src.$chn};
push @entities,CUL_HM_UpdtReadBulk($chnHash,1,"state:T: $t H: $h", push @entities,CUL_HM_UpdtReadBulk($chnHash,1,"state:T: $t H: $h",
"measured-temp:$t", "measured-temp:$t",
@ -2388,12 +2388,10 @@ sub CUL_HM_Set($@) {
} }
$msgBytes .= sprintf("%02X",$color{$led}); $msgBytes .= sprintf("%02X",$color{$led});
} }
$msgBytes .= "01" if ($itemCnt == 1 && $repeat == 1);#add pause to term LED
# need to fill up empty locations for LED channel # need to fill up empty locations for LED channel
$msgBytes = substr($msgBytes."000000000000000000",0,(10+2)*2); $msgBytes = substr($msgBytes."000000000000000000",0,(10+2)*2);
CUL_HM_PushCmdStack($hash,'++'.$flag.'11'.$id.$dst.'80'.$chn.$msgBytes); CUL_HM_PushCmdStack($hash,'++'.$flag.'11'.$id.$dst.'80'.$chn.$msgBytes);
CUL_HM_PushCmdStack($hash,'++'.$flag.'11'.$id.$dst.'80'.$chn.
"010101010000000000000000")
if ($itemCnt == 1);
} }
else{ else{
return "device for command cannot be identified"; return "device for command cannot be identified";
@ -4214,7 +4212,7 @@ sub CUL_HM_putHash($) {# provide data for HMinfo
</li> </li>
<li><B>inhibit [on|off]</B><br> <li><B>inhibit [on|off]</B><br>
Block / unblock all changes to the actor channel, i.e. actor state is frozen Block / unblock all changes to the actor channel, i.e. actor state is frozen
untill inhibit is set off again. Inhibit can be executed on any actor channel until inhibit is set off again. Inhibit can be executed on any actor channel
but obviously not on sensors - would not make any sense.<br> but obviously not on sensors - would not make any sense.<br>
Practically it can be used to suspend any notifies as well as peered channel action Practically it can be used to suspend any notifies as well as peered channel action
temporarily without the need to delete them. <br> temporarily without the need to delete them. <br>
@ -4731,7 +4729,7 @@ sub CUL_HM_putHash($) {# provide data for HMinfo
Recommended work-order for device 'HMdev':<br> Recommended work-order for device 'HMdev':<br>
set HMdev clear msgEvents # clear old events to better check flow<br> set HMdev clear msgEvents # clear old events to better check flow<br>
set HMdev getConfig # read device & channel inforamtion<br> set HMdev getConfig # read device & channel inforamtion<br>
# wait untill operation is complete<br> # wait until operation is complete<br>
# protState should be CMDs_done<br> # protState should be CMDs_done<br>
# there shall be no warnings amongst prot... variables<br> # there shall be no warnings amongst prot... variables<br>
get configSave myActorFile<br> get configSave myActorFile<br>

View File

@ -756,7 +756,13 @@ my %tpl = (
,BlJtRefOff =>"off" ,BlJtRefOff =>"off"
,BlJtRefOn =>"rampOn" ,BlJtRefOn =>"rampOn"
}} }}
,BlStopUpSh => {p=>"" ,t=>"Blind: stop drive on any key - for short drive up" ,BlStopUpSh => {p=>"" ,t=>"Blind: stop drive on
reload 10_CUL_HM
reload 98_HMinfo
any key - for short drive up"
,reg=>{ ActionType =>"jmpToTarget" ,reg=>{ ActionType =>"jmpToTarget"
,BlJtDlyOff =>"dlyOn" ,BlJtDlyOff =>"dlyOn"
,BlJtDlyOn =>"refOn" ,BlJtDlyOn =>"refOn"
@ -777,6 +783,15 @@ sub HMinfo_templateDef(@){#####################################################
delete $tpl{$name}; delete $tpl{$name};
return; return;
} }
# get description if marked wir ""
if ($desc =~ m/^"/){
foreach (@regs){
$desc .= " ".(shift @regs);
last if ($desc =~ m/"$/);
}
$desc =~ s/"//g;
}
return "$name already defined, delete it first" if($tpl{$name}); return "$name already defined, delete it first" if($tpl{$name});
return "insufficient parameter" if(@regs < 1); return "insufficient parameter" if(@regs < 1);
$tpl{$name}{p} = ""; $tpl{$name}{p} = "";