diff options
author | Christian Pointner <equinox@mur.at> | 2011-07-29 13:19:27 +0000 |
---|---|---|
committer | Christian Pointner <equinox@mur.at> | 2011-07-29 13:19:27 +0000 |
commit | f9e3c761e4d856a2a47c02502e7278c55cd88a75 (patch) | |
tree | 120641cf2dd237164fcc4c700e313f9b1d1b9f1e /software/tests/beacon/decode.pl | |
parent | tiny refactoring (diff) |
moved software tests to tools
git-svn-id: https://svn.spreadspace.org/mur.sat@70 7de4ea59-55d0-425e-a1af-a3118ea81d4c
Diffstat (limited to 'software/tests/beacon/decode.pl')
-rwxr-xr-x | software/tests/beacon/decode.pl | 48 |
1 files changed, 0 insertions, 48 deletions
diff --git a/software/tests/beacon/decode.pl b/software/tests/beacon/decode.pl deleted file mode 100755 index 28bf82b..0000000 --- a/software/tests/beacon/decode.pl +++ /dev/null @@ -1,48 +0,0 @@ -#!/usr/bin/perl -w - -use strict; -use MIME::Base32 qw( RFC ); - -my @beacons; -if(!$ARGV[0] || $ARGV[0] eq "-") { - @beacons = <STDIN>; -} else { - open(my $fh, "<", $ARGV[0]) or die "Unable to open file " . $ARGV[0]; - @beacons = <$fh>; - close($fh) -} - -foreach(@beacons) { - my $beacon = $_; - $beacon =~ s/\s*$//g; - $beacon =~ s/^\s*//g; - - if($beacon =~ /([^ ]+) ([A-Z2-7]{3}) ([A-Z2-7])/) { - my $preamble = $1; - my $cnt = $2; - my $checksum = $3; - - my $cntval = unpack("n", MIME::Base32::decode($cnt . "=")) >> 1; - my $csval_recv = unpack("C", MIME::Base32::decode($checksum . "=")) >> 3; - - my $csval_calc = ord('N') - ord(' '); - my @values = unpack("C*", $preamble); - @values = (@values, unpack("C*", $cnt)); - foreach(@values) { $csval_calc ^= $_ - ord(' '); } - $csval_calc = ($csval_calc & 0x1F) ^ (($csval_calc & 0x20) >> 5); - - print $beacon . " -> cnt: " . $cntval; - if($csval_calc != $csval_recv) { - print " checksom wrong! (" . sprintf("%02X", $csval_recv) . " vs. " . sprintf("%02X", $csval_calc) . ")\n"; - } else { - print " checksom ok! (" . sprintf("%02X", $csval_recv) . ")\n"; - } - - - } else { - print $beacon . " -> Beacon format error!\n"; - } - - -} - |