From 04cdafe3875e28af72f5061cfafdb7f4599e5535 Mon Sep 17 00:00:00 2001 From: furrtek Date: Wed, 24 Aug 2016 14:44:57 +0200 Subject: [PATCH] Bugfix: POCSAG alphanum messages not showing Bugfix: Range limit for afsk config --- firmware/application/pocsag_app.cpp | 48 ++++++++++-------- firmware/application/pocsag_app.hpp | 3 +- firmware/baseband/proc_pocsag.cpp | 48 ++++++++++-------- firmware/baseband/proc_pocsag.hpp | 1 + .../common/portapack_persistent_memory.cpp | 5 +- .../common/portapack_persistent_memory.hpp | 1 + firmware/portapack-h1-havoc.bin | Bin 766988 -> 767212 bytes 7 files changed, 62 insertions(+), 44 deletions(-) diff --git a/firmware/application/pocsag_app.cpp b/firmware/application/pocsag_app.cpp index 52024973..b57bf62e 100644 --- a/firmware/application/pocsag_app.cpp +++ b/firmware/application/pocsag_app.cpp @@ -59,8 +59,13 @@ void POCSAGLogger::on_packet(const pocsag::POCSAGPacket& packet, const uint32_t log_file.write_entry(packet.timestamp(), entry); } -void POCSAGLogger::on_decoded(const pocsag::POCSAGPacket& packet, const std::string text) { - log_file.write_entry(packet.timestamp(), text); +void POCSAGLogger::on_decoded( + const pocsag::POCSAGPacket& packet, + const std::string text, + const uint32_t address, + const uint32_t function) { + + log_file.write_entry(packet.timestamp(), to_string_hex(address, 8) + "(" + to_string_dec_uint(function) + "): " + text); } namespace ui { @@ -145,15 +150,12 @@ void POCSAGAppView::on_packet(const POCSAGPacketMessage * message) { bool eom = false; uint32_t codeword; std::string alphanum_text = ""; - std::string output_text = "MSG:"; char ascii_char; - if( logger ) logger->on_packet(message->packet, target_frequency()); - for (size_t i = 0; i < 16; i++) { codeword = message->packet[i]; - if (codeword & 0x80000000) { + if (codeword & 0x80000000U) { // Message ascii_data |= ((codeword >> 11) & 0xFFFFF); // 20 bits ascii_idx += 20; @@ -185,35 +187,39 @@ void POCSAGAppView::on_packet(const POCSAGPacketMessage * message) { alphanum_text += ascii_char; } ascii_data = ascii_data << 20; - - // Todo: same code in ui_lcr, make function in string_format ! - for(const auto c : alphanum_text) { - if ((c < 32) || (c > 126)) - output_text += "[" + to_string_dec_uint(c) + "]"; - else - output_text += c; - } - } else { // Address if (codeword == POCSAG_IDLE) { eom = true; } else { - function = (codeword >> 11) & 3; - address = ((codeword >> 10) & 0x1FFFF8) | ((codeword >> 1) & 7); + if (eom == false) { + function = (codeword >> 11) & 3; + address = ((codeword >> 10) & 0x1FFFF8) | ((codeword >> 1) & 7); + } } } } + + if( logger ) logger->on_packet(message->packet, target_frequency()); + + // Todo: same code in ui_lcr, make function in string_format ! + for(const auto c : alphanum_text) { + if ((c < 32) || (c > 126)) + output_text += "[" + to_string_dec_uint(c) + "]"; + else + output_text += c; + } if (eom) { - if (address || function) { - console.writeln(output_text); - if (logger) logger->on_decoded(message->packet, output_text); + if ((address != 0) || (function != 0)) { + if (logger) logger->on_decoded(message->packet, output_text, address, function); console.writeln(to_string_time(message->packet.timestamp()) + " ADDR:" + to_string_hex(address, 6) + " F:" + to_string_dec_uint(function) + " "); + if (output_text != "") console.writeln("MSG:" + output_text); } else { console.writeln(to_string_time(message->packet.timestamp()) + " Tone only "); } - + + output_text = ""; ascii_idx = 0; ascii_data = 0; batch_cnt = 0; diff --git a/firmware/application/pocsag_app.hpp b/firmware/application/pocsag_app.hpp index 06c650bd..2a42b1aa 100644 --- a/firmware/application/pocsag_app.hpp +++ b/firmware/application/pocsag_app.hpp @@ -42,7 +42,7 @@ public: } void on_packet(const pocsag::POCSAGPacket& packet, const uint32_t frequency); - void on_decoded(const pocsag::POCSAGPacket& packet, const std::string text); + void on_decoded(const pocsag::POCSAGPacket& packet, const std::string text, const uint32_t address, const uint32_t function); private: LogFile log_file; @@ -71,6 +71,7 @@ private: uint32_t batch_cnt = 0; uint32_t address, function; uint32_t ascii_data, ascii_idx; + std::string output_text = ""; MessageHandlerRegistration message_handler_packet { Message::ID::POCSAGPacket, diff --git a/firmware/baseband/proc_pocsag.cpp b/firmware/baseband/proc_pocsag.cpp index b4fa467c..94ba9c65 100644 --- a/firmware/baseband/proc_pocsag.cpp +++ b/firmware/baseband/proc_pocsag.cpp @@ -90,6 +90,7 @@ void POCSAGProcessor::execute(const buffer_c8_t& buffer) { rx_state = SYNC; frame_counter = 0; rx_bit = 0; + msg_timeout = 0; } else if (rx_data == POCSAG_IDLE) { rx_state = WAITING; } @@ -100,29 +101,36 @@ void POCSAGProcessor::execute(const buffer_c8_t& buffer) { break; case SYNC: - rx_bit++; - if (rx_bit >= 32) { - rx_bit = 0; - - //pocsag_brute_repair(&s->l2.pocsag, &rx_data); - - packet.set(frame_counter, rx_data); - - if (rx_data == POCSAG_IDLE) { - rx_state = WAITING; + if (msg_timeout < 600) { + msg_timeout++; + rx_bit++; + if (rx_bit >= 32) { + rx_bit = 0; - packet.set_timestamp(Timestamp::now()); - //packet.rate = pocsag::SignalRate::FSK1200; - - const POCSAGPacketMessage message(packet); - shared_memory.application_queue.push(message); + //pocsag_brute_repair(&s->l2.pocsag, &rx_data); - } else { - if (frame_counter < 15) - frame_counter++; - else - rx_state = WAITING; + packet.set(frame_counter, rx_data); + + if (rx_data == POCSAG_IDLE) { + //rx_state = WAITING; // DEBUG + } else { + if (frame_counter < 15) { + frame_counter++; + } else { + // DEBUG + packet.set_timestamp(Timestamp::now()); + const POCSAGPacketMessage message(packet); + shared_memory.application_queue.push(message); + rx_state = WAITING; + } + } } + } else { + // DEBUG + packet.set_timestamp(Timestamp::now()); + const POCSAGPacketMessage message(packet); + shared_memory.application_queue.push(message); + rx_state = WAITING; // Abort } break; diff --git a/firmware/baseband/proc_pocsag.hpp b/firmware/baseband/proc_pocsag.hpp index 76c5a860..40b9369a 100644 --- a/firmware/baseband/proc_pocsag.hpp +++ b/firmware/baseband/proc_pocsag.hpp @@ -78,6 +78,7 @@ private: dsp::demodulate::FM demod; uint32_t sync_timeout; + uint32_t msg_timeout; uint32_t dcd_shreg; uint32_t sphase; diff --git a/firmware/common/portapack_persistent_memory.cpp b/firmware/common/portapack_persistent_memory.cpp index 668c805a..c7910e6c 100644 --- a/firmware/common/portapack_persistent_memory.cpp +++ b/firmware/common/portapack_persistent_memory.cpp @@ -1,5 +1,6 @@ /* * Copyright (C) 2015 Jared Boone, ShareBrained Technology, Inc. + * Copyright (C) 2016 Furrtek * * This file is part of PortaPack. * @@ -52,7 +53,7 @@ constexpr afsk_bitrate_range_t afsk_bitrate_range { 600, 9600 }; constexpr int32_t afsk_bitrate_reset_value { 1200 }; using afsk_bw_range_t = range_t; -constexpr afsk_bw_range_t afsk_bw_range { 1, 40 }; +constexpr afsk_bw_range_t afsk_bw_range { 1, 50 }; constexpr int32_t afsk_bw_reset_value { 15 }; /* struct must pack the same way on M4 and M0 cores. */ @@ -156,7 +157,7 @@ uint32_t afsk_config() { } uint8_t afsk_format() { - return ((data->afsk_config >> 16) & 0xFF); + return ((data->afsk_config >> 16) & 3); } uint8_t afsk_repeats() { diff --git a/firmware/common/portapack_persistent_memory.hpp b/firmware/common/portapack_persistent_memory.hpp index b8455fa0..97b5ab2d 100644 --- a/firmware/common/portapack_persistent_memory.hpp +++ b/firmware/common/portapack_persistent_memory.hpp @@ -1,5 +1,6 @@ /* * Copyright (C) 2015 Jared Boone, ShareBrained Technology, Inc. + * Copyright (C) 2016 Furrtek * * This file is part of PortaPack. * diff --git a/firmware/portapack-h1-havoc.bin b/firmware/portapack-h1-havoc.bin index ad7786d1d16928b10b54c6170004f9bcc7c75de9..4b300d88da569d80276b55adecbdd4cc87862505 100644 GIT binary patch delta 33767 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 IG&3^*0Hq3%sQ>@~