mirror of
https://github.com/fhem/fhem-mirror.git
synced 2025-05-01 20:20:10 +00:00
98_PHC.pm: small changes
git-svn-id: https://svn.fhem.de/fhem/trunk/fhem@19980 2b470e98-0d58-463d-a4d8-8e2adae1ed80
This commit is contained in:
parent
88d70446c3
commit
131ddcf027
@ -23,6 +23,7 @@
|
|||||||
# 2017-02-11 started initial PoC version
|
# 2017-02-11 started initial PoC version
|
||||||
# 2017-08-08 optimized logging, silentReconnect, singleLastCommand
|
# 2017-08-08 optimized logging, silentReconnect, singleLastCommand
|
||||||
# 2017-08-18 ping command, reset / config, sendRaw
|
# 2017-08-18 ping command, reset / config, sendRaw
|
||||||
|
# 2019-06-02 don't do event / lastcommmand reading for CLK
|
||||||
#
|
#
|
||||||
#
|
#
|
||||||
# Todo / Ideas:
|
# Todo / Ideas:
|
||||||
@ -78,7 +79,7 @@ sub PHC_ParseFrames($);
|
|||||||
sub PHC_HandleSendQueue($);
|
sub PHC_HandleSendQueue($);
|
||||||
sub PHC_TimeoutSend($);
|
sub PHC_TimeoutSend($);
|
||||||
|
|
||||||
my $PHC_Version = '0.42 - 31.8.2018';
|
my $PHC_Version = '0.43 - 2.6.2019';
|
||||||
|
|
||||||
|
|
||||||
my %PHC_AdrType = (
|
my %PHC_AdrType = (
|
||||||
@ -664,11 +665,13 @@ sub PHC_ParseCommands($$)
|
|||||||
return if (!PHC_ParseCode($hash, $command));
|
return if (!PHC_ParseCode($hash, $command));
|
||||||
PHC_ParseOptions($hash, $command);
|
PHC_ParseOptions($hash, $command);
|
||||||
PHC_LogCommand($hash, $command, "", ($command->{MTYPE} eq "CLK" ? 5:4));
|
PHC_LogCommand($hash, $command, "", ($command->{MTYPE} eq "CLK" ? 5:4));
|
||||||
|
|
||||||
readingsBeginUpdate($hash);
|
|
||||||
readingsBulkUpdate($hash, 'LastCommand', PHC_CmdText($hash, $command));
|
|
||||||
|
|
||||||
DoTrigger($name, PHC_ChannelText($hash, $command, $command->{CHANNEL}) . ": " . $command->{FNAME});
|
readingsBeginUpdate($hash);
|
||||||
|
|
||||||
|
if ($command->{MTYPE} ne "CLK") {
|
||||||
|
readingsBulkUpdate($hash, 'LastCommand', PHC_CmdText($hash, $command));
|
||||||
|
DoTrigger($name, PHC_ChannelText($hash, $command, $command->{CHANNEL}) . ": " . $command->{FNAME});
|
||||||
|
}
|
||||||
|
|
||||||
# channel bits aus Feedback / Ack verarbeiten
|
# channel bits aus Feedback / Ack verarbeiten
|
||||||
if ($command->{PARSEOPTS}{'cbm'} || $command->{PARSEOPTS}{'cba'}) {
|
if ($command->{PARSEOPTS}{'cbm'} || $command->{PARSEOPTS}{'cba'}) {
|
||||||
@ -750,7 +753,7 @@ sub PHC_ParseFrames($)
|
|||||||
|
|
||||||
($pld, $crc, $rest) = unpack ("a[$len]va*", $rest); # v = little endian unsigned short, n would be big endian
|
($pld, $crc, $rest) = unpack ("a[$len]va*", $rest); # v = little endian unsigned short, n would be big endian
|
||||||
@data = unpack ('C*', $pld);
|
@data = unpack ('C*', $pld);
|
||||||
$crc = 0 if (!$crc);
|
$crc = 0 if (!$crc);
|
||||||
$crc1 = crc($frame, 16, 0xffff, 0xffff, 1, 0x1021, 1, 0);
|
$crc1 = crc($frame, 16, 0xffff, 0xffff, 1, 0x1021, 1, 0);
|
||||||
my $fcrc = unpack ("H*", pack ("v", $crc));
|
my $fcrc = unpack ("H*", pack ("v", $crc));
|
||||||
my $fcrc1 = unpack ("H*", pack ("v", $crc1));
|
my $fcrc1 = unpack ("H*", pack ("v", $crc1));
|
||||||
@ -950,10 +953,10 @@ sub PHC_ReadAnswer($$$)
|
|||||||
sub PHC_Ready($)
|
sub PHC_Ready($)
|
||||||
{
|
{
|
||||||
my ($hash) = @_;
|
my ($hash) = @_;
|
||||||
if ($hash->{STATE} eq "disconnected") {
|
if ($hash->{STATE} eq "disconnected") {
|
||||||
$hash->{devioLoglevel} = (AttrVal($hash->{NAME}, "silentReconnect", 0) ? 4 : 3);
|
$hash->{devioLoglevel} = (AttrVal($hash->{NAME}, "silentReconnect", 0) ? 4 : 3);
|
||||||
return DevIo_OpenDev($hash, 1, undef);
|
return DevIo_OpenDev($hash, 1, undef);
|
||||||
}
|
}
|
||||||
|
|
||||||
# This is relevant for windows/USB only
|
# This is relevant for windows/USB only
|
||||||
my $po = $hash->{USBDev};
|
my $po = $hash->{USBDev};
|
||||||
@ -1209,7 +1212,7 @@ sub PHC_Caller()
|
|||||||
They also define the names of readings that are automatically created when the module listens to the PHC bus.
|
They also define the names of readings that are automatically created when the module listens to the PHC bus.
|
||||||
<br>
|
<br>
|
||||||
</ul>
|
</ul>
|
||||||
<br>
|
<br>
|
||||||
</ul>
|
</ul>
|
||||||
|
|
||||||
=end html
|
=end html
|
||||||
|
Loading…
x
Reference in New Issue
Block a user