Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fixes perlcritic return undef in 14_SD_WS #1006

Merged
merged 3 commits into from
Aug 13, 2021
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
33 changes: 15 additions & 18 deletions FHEM/14_SD_WS.pm
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# $Id: 14_SD_WS.pm 21666 2021-08-10 19:51:16Z sidey79 $
# $Id: 14_SD_WS.pm 21666 2021-08-12 18:48:36Z elektron-bbs $
#
# The purpose of this module is to support serval
# weather sensors which use various protocol
Expand Down Expand Up @@ -106,17 +106,16 @@ sub SD_WS_Define($$)
$modules{SD_WS}{defptr}{$a[2]} = $hash;
$hash->{STATE} = "Defined";

my $name= $hash->{NAME};
return ;
my $name= $hash->{NAME};
return;
}

#############################
sub SD_WS_Undef($$)
{
my ($hash, $name) = @_;
delete($modules{SD_WS}{defptr}{$hash->{CODE}})
if(defined($hash->{CODE}) && defined($modules{SD_WS}{defptr}{$hash->{CODE}}));
return ;
my ($hash, $name) = @_;
delete($modules{SD_WS}{defptr}{$hash->{CODE}}) if(defined($hash->{CODE}) && defined($modules{SD_WS}{defptr}{$hash->{CODE}}));
return;
}

#############################
Expand Down Expand Up @@ -199,8 +198,6 @@ sub SD_WS_Parse($$)
id => sub {my (undef,$bitData) = @_; return SD_WS_binaryToNumber($bitData,4,11); }, # id
temp => sub {my (undef,$bitData) = @_; return ((SD_WS_binaryToNumber($bitData,12,23) - 2448) / 10); }, # temp
channel => sub {my (undef,$bitData) = @_; return SD_WS_binaryToNumber($bitData,26,27); }, # channel
hum => sub {return undef;},
bat => sub {return undef;},
},
27 =>
{
Expand Down Expand Up @@ -594,21 +591,21 @@ sub SD_WS_Parse($$)
if (substr($bitData,30,2) eq "01") { # message 1 thermo/hygro
return ((SD_WS_binaryToNumber($bitData,32,43) - 500) / 10.0);
} else {
return undef;
return;
}
},
hum => sub {my (undef,$bitData) = @_;
if (substr($bitData,30,2) eq "01") { # message 1 thermo/hygro
return SD_WS_binaryToNumber($bitData,48,55);
} else {
return undef;
return;
}
},
windspeed => sub {my (undef,$bitData) = @_;
if (substr($bitData,30,2) eq "10") { # message 2 windspeed
return (SD_WS_binaryToNumber($bitData,32,43) / 10.0);
} else {
return undef;
return;
}
},
} ,
Expand Down Expand Up @@ -739,16 +736,16 @@ sub SD_WS_Parse($$)
prematch => sub {my $rawData = shift; return 1 if ($rawData =~ /^[0-9A-F]{8}[0-9]{2}[0-9A-F]{1}[0-9]{3}[0-9A-F]{1}[0-9]{5}[0-9A-F]{1}[0-9]{1}/); },
id => sub {my ($rawData,undef) = @_; return substr($rawData,0,2); },
winddir => sub {my ($rawData,undef) = @_;
return undef if (substr($rawData,3,1) eq '9'); # Bresser Professional Rain Gauge
return if (substr($rawData,3,1) eq '9'); # Bresser Professional Rain Gauge
my $winddirraw = hex(substr($rawData,6,1));
return ($winddirraw * 22.5, $winddirtxtar[$winddirraw]);
},
windgust => sub {my ($rawData,undef) = @_;
return undef if (substr($rawData,3,1) eq '9'); # Bresser Professional Rain Gauge
return if (substr($rawData,3,1) eq '9'); # Bresser Professional Rain Gauge
return (hex(substr($rawData,7,1)) * 256 + hex(substr($rawData,4,2))) / 10;
},
windspeed => sub {my ($rawData,undef) = @_;
return undef if (substr($rawData,3,1) eq '9'); # Bresser Professional Rain Gauge
return if (substr($rawData,3,1) eq '9'); # Bresser Professional Rain Gauge
return (substr($rawData,11,1) . substr($rawData,8,2)) / 10;
},
temp => sub {my ($rawData,undef) = @_;
Expand All @@ -757,7 +754,7 @@ sub SD_WS_Parse($$)
return $rawTemp;
},
hum => sub {my ($rawData,undef) = @_;
return undef if (substr($rawData,3,1) eq '9'); # Bresser Professional Rain Gauge
return if (substr($rawData,3,1) eq '9'); # Bresser Professional Rain Gauge
return substr($rawData,16,2) + 0;
},
rain => sub {my ($rawData,undef) = @_;
Expand Down Expand Up @@ -1226,11 +1223,11 @@ sub SD_WS_Parse($$)
}
else {
Log3 $iohash, 2, "$name: SD_WS_Parse unknown message, please report. converted to bits: $bitData";
return undef;
return;
}

if (!defined($model)) {
return undef;
return;
}

my $deviceCode;
Expand Down
2 changes: 1 addition & 1 deletion controls_signalduino.txt
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ UPD 2020-10-03_11:48:15 11170 FHEM/14_SD_AS.pm
UPD 2021-07-13_20:29:34 29223 FHEM/14_SD_BELL.pm
UPD 2021-08-11_21:38:30 12573 FHEM/14_SD_RSL.pm
UPD 2021-08-08_19:14:43 167137 FHEM/14_SD_UT.pm
UPD 2021-08-11_21:38:30 95186 FHEM/14_SD_WS.pm
UPD 2021-08-12_20:33:53 95053 FHEM/14_SD_WS.pm
UPD 2020-04-13_23:15:56 18426 FHEM/14_SD_WS07.pm
UPD 2021-08-11_21:38:30 35313 FHEM/14_SD_WS09.pm
UPD 2020-04-13_23:15:56 14325 FHEM/14_SD_WS_Maverick.pm
Expand Down