From a2e9d9606005a7732f57622f966dc5b10e5498ba Mon Sep 17 00:00:00 2001 From: martinp876 Date: Wed, 7 May 2014 07:02:10 +0000 Subject: [PATCH] MD improve nextTr calculation git-svn-id: svn://svn.code.sf.net/p/fhem/code/trunk@5774 2b470e98-0d58-463d-a4d8-8e2adae1ed80 --- fhem/FHEM/10_CUL_HM.pm | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/fhem/FHEM/10_CUL_HM.pm b/fhem/FHEM/10_CUL_HM.pm index 66fe67db3..3b6db2937 100755 --- a/fhem/FHEM/10_CUL_HM.pm +++ b/fhem/FHEM/10_CUL_HM.pm @@ -1697,13 +1697,12 @@ sub CUL_HM_Parse($$) {######################################################### push @evtEt,[$shash,1,"battery:". (($err&0x80)?"low" :"ok" )]; } elsif($mTp eq "41") {#01 is channel - my($cnt,$bright,$nextTr) = (hex($mI[1]),hex($mI[2]), - ((@mI >2)?(hex($mI[3])>>4):0)); - my @nextVal = ("0x0","0x1","0x2","0x3","15" ,"30" ,"60" ,"120", - "240","0x9","0xa","0xb","0xc","0xd","0xe","0xf"); + my($cnt,$bright) = (hex($mI[1]),hex($mI[2])); + my $nextTr = (@mI >2)? (int((1<<((hex($mI[3])>>4)-1))/1.1)."s") + : "-"; push @evtEt,[$shash,1,"state:motion"]; push @evtEt,[$shash,1,"motion:on$target"]; - push @evtEt,[$shash,1,"motionCount:$cnt"."_next:$nextTr"."-$nextVal[$nextTr]"]; + push @evtEt,[$shash,1,"motionCount:$cnt"."_next:$nextTr"]; push @evtEt,[$shash,1,"brightness:$bright"]; } elsif($mTp eq "70" && $p =~ m/^7F(..)(.*)/) {