mirror of
https://github.com/fhem/fhem-mirror.git
synced 2025-03-10 03:06:37 +00:00
problem with multiple conditional devices improved
git-svn-id: https://svn.fhem.de/fhem/trunk@3960 2b470e98-0d58-463d-a4d8-8e2adae1ed80
This commit is contained in:
parent
7ffb317e21
commit
e2670ca931
@ -877,6 +877,11 @@ sub CUL_HM_Parse($$) {##############################
|
||||
)
|
||||
if ($tHash);
|
||||
}
|
||||
elsif($mTp eq "3F" && $id eq $dst) { # Timestamp request
|
||||
my $s2000 = sprintf("%02X", CUL_HM_secSince2000());
|
||||
push @ack,$shash,"++803F$id${src}0204$s2000";
|
||||
push @event, "time-request";
|
||||
}
|
||||
}
|
||||
elsif($md =~ m/^(HM-Sen-Wa-Od|HM-CC-SCD)$/){ ################################
|
||||
if (($mTp eq "02" && $p =~ m/^01/) || # handle Ack_Status
|
||||
@ -923,7 +928,7 @@ sub CUL_HM_Parse($$) {##############################
|
||||
}
|
||||
}
|
||||
elsif($st eq "THSensor") { ##################################################
|
||||
if ($mTp eq "70"){
|
||||
if ($mTp eq "70"){
|
||||
my $chn = 1;
|
||||
$chn = 5 if ($md eq "HM-WDS30-OT2-SM");
|
||||
$chn = 10 if ($md =~ m/^(WS550|WS888|HM-WDC7000)/);#todo use channel correct
|
||||
@ -2840,7 +2845,7 @@ sub CUL_HM_Set($@) {
|
||||
elsif($cmd eq "sysTime") { ##################################################
|
||||
$state = "";
|
||||
my $s2000 = sprintf("%02X", CUL_HM_secSince2000());
|
||||
CUL_HM_PushCmdStack($hash,"++803F$id${dst}0204$s2000");
|
||||
CUL_HM_PushCmdStack($hash,"++A03F$id${dst}0204$s2000");
|
||||
}
|
||||
elsif($cmd eq "valvePos") { #################################################
|
||||
return "only number <= 100 or 'off' allowed"
|
||||
@ -2985,7 +2990,7 @@ sub CUL_HM_Set($@) {
|
||||
my $pHash = CUL_HM_id2Hash($peer);
|
||||
my $peerFlag = $peer eq '00000000'?'A4':CUL_HM_getFlag($pHash);
|
||||
$peerFlag =~ s/0/4/;# either 'A4' or 'B4'
|
||||
CUL_HM_SndCmd($hash, "++B412$dst".substr($peer,0,6))
|
||||
CUL_HM_SndCmd($hash, "++B112$dst".substr($peer,0,6))
|
||||
if (CUL_HM_getRxType($pHash) & 0x80);
|
||||
CUL_HM_SndCmd($hash, sprintf("++%s41%s%s%02X%02X%02X"
|
||||
,$peerFlag,$dst,$peer
|
||||
@ -3108,7 +3113,7 @@ sub CUL_HM_Set($@) {
|
||||
!$devHash->{helper}{respWait}{cmd} &&
|
||||
!$devHash->{helper}{respWait}{Pending}
|
||||
){
|
||||
CUL_HM_SndCmd($devHash,"++B412$id$dst");
|
||||
CUL_HM_SndCmd($devHash,"++B112$id$dst");
|
||||
}
|
||||
return ("",1);# no not generate trigger outof command
|
||||
}
|
||||
|
@ -190,7 +190,7 @@ my %culHmModel=(
|
||||
"0092" => {name=>"Schueco_263-144" ,st=>'switch' ,cyc=>'' ,rxt=>'c' ,lst=>'4' ,chn=>"",}, # HM Switch Interface 3 switches
|
||||
"0093" => {name=>"Schueco_263-158" ,st=>'THSensor' ,cyc=>'00:10' ,rxt=>'c:w:f' ,lst=>'p' ,chn=>"",}, #
|
||||
"0094" => {name=>"IS-WDS-TH-OD-S-R3" ,st=>'THSensor' ,cyc=>'00:10' ,rxt=>'c:w' ,lst=>'p' ,chn=>"",}, #
|
||||
"0095" => {name=>"HM-CC-RT-DN" ,st=>'thermostat' ,cyc=>'00:10' ,rxt=>'c:w:f' ,lst=>'p:1p.2p.5p.6p,3:3p.6p,7:4'
|
||||
"0095" => {name=>"HM-CC-RT-DN" ,st=>'thermostat' ,cyc=>'00:10' ,rxt=>'c:w:f' ,lst=>'p:1p.2p.5p.6p,3:3p.6p,1,7:4'
|
||||
,chn=>"Weather:1:1,Climate:2:2,WindowRec:3:3,ClimRT_tr:4:4,ClimaTeam:5:5,remote:6:6"}, #
|
||||
"0096" => {name=>"WDF-solar" ,st=>'blindActuatorSol' ,cyc=>'' ,rxt=>'b' ,lst=>'1,3' ,chn=>"win:1:1,blind_2:3",}, #
|
||||
"009B" => {name=>"Schueco_263-xxx" ,st=>'tipTronic' ,cyc=>'28:00' ,rxt=>'c:w' ,lst=>'1:1.2,3:1p.3p',chn=>"act:1:1,sen:2:2,sec:3:3",}, #
|
||||
@ -1218,8 +1218,10 @@ my %culHmBits = (
|
||||
"58" => { txt => "ClimateEvent", params => {
|
||||
CMD => "00,2",
|
||||
ValvePos => '02,2,$val=(hex($val))', } },
|
||||
"59" => { txt => "Climate unknown", params => {
|
||||
CMD => "00,2", } },
|
||||
"59" => { txt => "setTeamTemp" , params => {
|
||||
CMD => "00,2",
|
||||
desTemp => '02,2,$val=((hex($val)>>2) /2)',
|
||||
mode => '02,2,$val=(hex($val) & 0x3)',} },
|
||||
"70" => { txt => "WeatherEvent", params => {
|
||||
TEMP => '00,4,$val=((hex($val)&0x3FFF)/10)*((hex($val)&0x4000)?-1:1)',
|
||||
HUM => '04,2,$val=(hex($val))', } },
|
||||
|
Loading…
x
Reference in New Issue
Block a user