mirror of
https://github.com/fhem/fhem-mirror.git
synced 2025-03-03 16:56:54 +00:00
Create shadow device even in dummy mode
git-svn-id: https://svn.fhem.de/fhem/trunk@868 2b470e98-0d58-463d-a4d8-8e2adae1ed80
This commit is contained in:
parent
d652801c91
commit
dac0506ab5
@ -63,7 +63,7 @@ HMLAN_Define($$)
|
||||
my $name = $a[0];
|
||||
my $dev = $a[2];
|
||||
$dev .= ":1000" if($dev !~ m/:/);
|
||||
$attr{$name}{hmId} = sprintf("%06X", time()&0xffffff);
|
||||
$attr{$name}{hmId} = sprintf("%06X", time() % 0xffffff);
|
||||
|
||||
if($dev eq "none") {
|
||||
Log 1, "$name device is none, commands will be echoed only";
|
||||
@ -200,12 +200,12 @@ HMLAN_Write($$$)
|
||||
|
||||
my $dst = substr($msg, 16, 6);
|
||||
if(!$lhash{$dst} && $dst ne "000000") {
|
||||
HMLAN_SimpleWrite($hash, "+$dst,00,00,\r\n+$dst,00,00,\r\n+112A29");
|
||||
HMLAN_SimpleWrite($hash, "+$dst,00,00,\r\n+$dst,00,00,\r\n+$dst");
|
||||
HMLAN_SimpleWrite($hash, "-$dst");
|
||||
HMLAN_SimpleWrite($hash, "+$dst,00,00,\r\n+$dst,00,00,\r\n+112A29");
|
||||
HMLAN_SimpleWrite($hash, "+$dst,00,00,\r\n+$dst,00,00,\r\n+$dst");
|
||||
$lhash{$dst} = 1;
|
||||
}
|
||||
my $tm = int(gettimeofday()*1000) & 0xffffffff;
|
||||
my $tm = int(gettimeofday()*1000) % 0xffffffff;
|
||||
$msg = sprintf("S%08X,00,00000000,01,%08X,%s",
|
||||
$tm, $tm, substr($msg, 4));
|
||||
HMLAN_SimpleWrite($hash, $msg);
|
||||
|
@ -360,7 +360,7 @@ CUL_HM_Parse($$)
|
||||
}
|
||||
|
||||
|
||||
} elsif($model eq "KS550" || $model eq "HM-WDS100-C6-O") {
|
||||
} elsif($model eq "KS550" || $model eq "HM-WDS100-C6-O") { ############
|
||||
|
||||
if($cmd eq "8670" && $p =~ m/^(....)(..)(....)(....)(..)(..)(..)/) {
|
||||
|
||||
@ -392,7 +392,7 @@ CUL_HM_Parse($$)
|
||||
|
||||
}
|
||||
|
||||
} elsif($model eq "HM-CC-TC") {
|
||||
} elsif($model eq "HM-CC-TC") { ####################################
|
||||
|
||||
if($cmd eq "8670" && $p =~ m/^(....)(..)/) {
|
||||
my ( $t, $h) =
|
||||
@ -430,7 +430,7 @@ CUL_HM_Parse($$)
|
||||
if($id eq $dst && $cmd ne "8002");
|
||||
|
||||
|
||||
} elsif($st eq "KFM" && $model eq "KFM-Sensor") {
|
||||
} elsif($st eq "KFM" && $model eq "KFM-Sensor") { ###################
|
||||
|
||||
if($p =~ m/814(.)0200(..)(..)(..)/) {
|
||||
my ($k_cnt, $k_v1, $k_v2, $k_v3) = ($1,$2,$3,$4);
|
||||
@ -731,6 +731,19 @@ CUL_HM_Pair(@)
|
||||
"CUL_HM pair: $name $stt, model $attr{$name}{model} ".
|
||||
"serialNr $attr{$name}{serialNr}";
|
||||
|
||||
# Create shadow device for multi-channel
|
||||
if($stn eq "switch" &&
|
||||
$attr{$name}{devInfo} =~ m,(..)(..)(..), ) {
|
||||
my ($b1, $b2, $b3) = (hex($1), hex($2), $3);
|
||||
for(my $i = $b2+1; $i<=$b1; $i++) {
|
||||
my $nSrc = sprintf("%s%02X", $src, $i);
|
||||
if(!defined($modules{CUL_HM}{defptr}{$nSrc})) {
|
||||
delete($defs{"global"}{INTRIGGER}); # Hack
|
||||
DoTrigger("global", "UNDEFINED ${name}_CHN_$i CUL_HM $nSrc");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
# Abort if we are not authorized
|
||||
if($dst eq "000000") {
|
||||
if(!$iohash->{hmPair}) {
|
||||
@ -767,19 +780,6 @@ CUL_HM_Pair(@)
|
||||
|
||||
}
|
||||
|
||||
# Create shadow device for multi-channel
|
||||
if($stn eq "switch" &&
|
||||
$attr{$name}{devInfo} =~ m,(..)(..)(..), ) {
|
||||
my ($b1, $b2, $b3) = (hex($1), hex($2), $3);
|
||||
for(my $i = $b2+1; $i<=$b1; $i++) {
|
||||
my $nSrc = sprintf("%s%02X", $src, $i);
|
||||
if(!defined($modules{CUL_HM}{defptr}{$nSrc})) {
|
||||
delete($defs{"global"}{INTRIGGER}); # Hack
|
||||
DoTrigger("global", "UNDEFINED ${name}_CHN_$i CUL_HM $nSrc");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return "";
|
||||
}
|
||||
|
||||
@ -834,6 +834,7 @@ CUL_HM_Resend($)
|
||||
{
|
||||
my $hash = shift;
|
||||
my $name = $hash->{NAME};
|
||||
return if(!$hash->{ackCmdSent}); # Double timer?
|
||||
if($hash->{ackCmdSent} == 3) {
|
||||
delete($hash->{ackCmdSent});
|
||||
delete($hash->{ackWaiting});
|
||||
|
Loading…
x
Reference in New Issue
Block a user