From 85a22d95a60f4467a957b7ce4e51fe97c2a5a0a1 Mon Sep 17 00:00:00 2001 From: rudolfkoenig Date: Thu, 16 Dec 2010 08:00:32 +0000 Subject: [PATCH] Removed log from CUL, added HM Duplicate checking git-svn-id: https://svn.fhem.de/fhem/trunk@766 2b470e98-0d58-463d-a4d8-8e2adae1ed80 --- fhem/FHEM/00_CUL.pm | 2 -- fhem/FHEM/10_CUL_HM.pm | 11 ++++++++++- 2 files changed, 10 insertions(+), 3 deletions(-) diff --git a/fhem/FHEM/00_CUL.pm b/fhem/FHEM/00_CUL.pm index 3487d59b7..c330f7813 100755 --- a/fhem/FHEM/00_CUL.pm +++ b/fhem/FHEM/00_CUL.pm @@ -171,7 +171,6 @@ sub CUL_RemoveHMPair($) { my $hash = shift; -Log 1, "CUL_RemoveHMPair"; delete($hash->{hmPair}); } @@ -916,7 +915,6 @@ CUL_SimpleWrite(@) $hash->{USBDev}->write($msg . "\n") if($hash->{USBDev}); syswrite($hash->{TCPDev}, $msg) if($hash->{TCPDev}); -Log 1, "CUL_SimpleWrite >$msg<"; select(undef, undef, undef, 0.001); } diff --git a/fhem/FHEM/10_CUL_HM.pm b/fhem/FHEM/10_CUL_HM.pm index f2d032471..c616cdf55 100755 --- a/fhem/FHEM/10_CUL_HM.pm +++ b/fhem/FHEM/10_CUL_HM.pm @@ -238,6 +238,7 @@ CUL_HM_Parse($$) my $btn = int((($button&0x3f)+1)/2); my $state = ($button&1 ? "off" : "on") . ($button & 0x40 ? "Long" : ""); my $add = ($dst eq $id) ? "" : " (to $dname)"; + push @event, "state:Btn$btn:$state$add"; if($id eq $dst) { CUL_HM_SendCmd($shash, "++8002".$id.$src."0101". # Send Ack. @@ -263,6 +264,12 @@ CUL_HM_Parse($$) my $tn = TimeNow(); for(my $i = 0; $i < int(@event); $i++) { next if($event[$i] eq ""); + + if($shash->{lastMsgNr} && $shash->{lastMsgNr} eq $msgcnt) { + Log GetLogLevel($name,4), "CUL_HM $name dup mesg"; + next; + } + my ($vn, $vv) = split(":", $event[$i], 2); Log GetLogLevel($name,2), "CUL_HM $name $vn:$vv" if($vn eq "unknown"); @@ -279,7 +286,8 @@ CUL_HM_Parse($$) $shash->{READINGS}{$vn}{VAL} = $vv; } - + + $shash->{lastMsgNr} = $msgcnt; return $name; } @@ -461,6 +469,7 @@ CUL_HM_Pair(@) if($isSender) { $hash->{pairButtons} =~ m/(..)(..)/; my ($b1, $b2, $cmd) = ($1, $2, ""); + delete($hash->{cmdStack}); CUL_HM_SendCmd($hash, "++A001$id$src${b1}05$src${b1}04", 1, 1); CUL_HM_PushCmdStack($hash, "++A001$id$src${b1}07020201"); CUL_HM_PushCmdStack($hash, "++A001$id$src${b1}06");