From 6e509ba68fc6dcd38bf99d4f5020714e1060360f Mon Sep 17 00:00:00 2001 From: mgehre <> Date: Sat, 23 Feb 2013 18:31:47 +0000 Subject: [PATCH] MAX: Fix PushButtonState bits parsing git-svn-id: https://svn.fhem.de/fhem/trunk/fhem@2792 2b470e98-0d58-463d-a4d8-8e2adae1ed80 --- FHEM/10_MAX.pm | 7 ++++--- FHEM/MaxCommon.pm | 5 ----- 2 files changed, 4 insertions(+), 8 deletions(-) diff --git a/FHEM/10_MAX.pm b/FHEM/10_MAX.pm index c197f1a99..b3679e29e 100755 --- a/FHEM/10_MAX.pm +++ b/FHEM/10_MAX.pm @@ -664,13 +664,14 @@ MAX_Parse($$) readingsBulkUpdate($shash,"onoff",$isopen); }elsif($msgtype eq "PushButtonState") { - my ($bits2, $onoff) = unpack("CC",pack("H*",$args[0])); + my ($bits2, $onoff) = unpack("aC",pack("H*",$args[0])); #The meaning of $bits2 is completly guessed based on similarity to other devices, TODO: confirm - my $rferror = vec($bits2, 6, 1); #communication with link partner (what does that mean?) + my $gateway = vec($bits2, 4, 1); #Paired to a CUBE? + my $rferror = vec($bits2, 6, 1); #communication with link partner (1 if we did not sent an Ack) my $batterylow = vec($bits2, 7, 1); #1 if battery is low readingsBulkUpdate($shash, "battery", $batterylow ? "low" : "ok"); - readingsBulkUpdate($shash,"onoff",$onoff); + readingsBulkUpdate($shash, "onoff", $onoff); }elsif($msgtype eq "CubeClockState"){ my $clockset = $args[0]; diff --git a/FHEM/MaxCommon.pm b/FHEM/MaxCommon.pm index 08fed8dcf..2fe33ee7a 100644 --- a/FHEM/MaxCommon.pm +++ b/FHEM/MaxCommon.pm @@ -1,13 +1,8 @@ package MaxCommon; -#use vars qw(%device_types); -#use vars qw(%msgId2Cmd); -#use vars qw(%msgCmd2Id); - require Exporter; @ISA = qw(Exporter); @EXPORT = qw(%device_types %msgId2Cmd %msgCmd2Id $defaultWeekProfile); -#@EXPORT_OK = qw($Zeitstempel @Logdaten Besteller_ermitteln); %device_types = ( 0 => "Cube",