From 1e34a48be924b7899f44a4eefc5e5e285058d174 Mon Sep 17 00:00:00 2001 From: furrtek Date: Mon, 26 Dec 2016 16:15:54 +0100 Subject: [PATCH] Fixed proc_tones skipping last tone Split ui_bht to bht --- firmware/application/CMakeLists.txt | 3 +- firmware/application/Makefile | 30 +++++ firmware/application/bht.cpp | 147 ++++++++++++++++++++++ firmware/application/bht.hpp | 67 ++++++++++ firmware/application/main.cpp | 1 - firmware/application/ui_bht_tx.cpp | 149 ++++------------------- firmware/application/ui_bht_tx.hpp | 162 +------------------------ firmware/application/ui_navigation.cpp | 4 +- firmware/baseband/baseband_tones.img | Bin 11572 -> 11572 bytes firmware/baseband/proc_tones.cpp | 4 +- firmware/portapack-h1-havoc.bin | Bin 805016 -> 803288 bytes 11 files changed, 277 insertions(+), 290 deletions(-) create mode 100644 firmware/application/bht.cpp create mode 100644 firmware/application/bht.hpp diff --git a/firmware/application/CMakeLists.txt b/firmware/application/CMakeLists.txt index ed48f7db0..1b144c283 100644 --- a/firmware/application/CMakeLists.txt +++ b/firmware/application/CMakeLists.txt @@ -138,8 +138,9 @@ set(CPPSRC audio.cpp adsb.cpp afsk.cpp - rds.cpp + bht.cpp ctcss.cpp + rds.cpp freqman.cpp ${COMMON}/lcd_ili9341.cpp ${COMMON}/ui.cpp diff --git a/firmware/application/Makefile b/firmware/application/Makefile index 1a7bcd33c..853f5ee11 100644 --- a/firmware/application/Makefile +++ b/firmware/application/Makefile @@ -2948,6 +2948,33 @@ baseband_cpld.cpp.s: cd /home/furrtek/portapack-hackrf && $(MAKE) -f firmware/application/CMakeFiles/application.elf.dir/build.make firmware/application/CMakeFiles/application.elf.dir/baseband_cpld.cpp.s .PHONY : baseband_cpld.cpp.s +bht.obj: bht.cpp.obj + +.PHONY : bht.obj + +# target to build an object file +bht.cpp.obj: + cd /home/furrtek/portapack-hackrf && $(MAKE) -f firmware/application/CMakeFiles/application.elf.dir/build.make firmware/application/CMakeFiles/application.elf.dir/bht.cpp.obj +.PHONY : bht.cpp.obj + +bht.i: bht.cpp.i + +.PHONY : bht.i + +# target to preprocess a source file +bht.cpp.i: + cd /home/furrtek/portapack-hackrf && $(MAKE) -f firmware/application/CMakeFiles/application.elf.dir/build.make firmware/application/CMakeFiles/application.elf.dir/bht.cpp.i +.PHONY : bht.cpp.i + +bht.s: bht.cpp.s + +.PHONY : bht.s + +# target to generate assembly for a file +bht.cpp.s: + cd /home/furrtek/portapack-hackrf && $(MAKE) -f firmware/application/CMakeFiles/application.elf.dir/build.make firmware/application/CMakeFiles/application.elf.dir/bht.cpp.s +.PHONY : bht.cpp.s + capture_app.obj: capture_app.cpp.obj .PHONY : capture_app.obj @@ -5376,6 +5403,9 @@ help: @echo "... baseband_cpld.obj" @echo "... baseband_cpld.i" @echo "... baseband_cpld.s" + @echo "... bht.obj" + @echo "... bht.i" + @echo "... bht.s" @echo "... capture_app.obj" @echo "... capture_app.i" @echo "... capture_app.s" diff --git a/firmware/application/bht.cpp b/firmware/application/bht.cpp new file mode 100644 index 000000000..5014903aa --- /dev/null +++ b/firmware/application/bht.cpp @@ -0,0 +1,147 @@ +/* + * Copyright (C) 2015 Jared Boone, ShareBrained Technology, Inc. + * Copyright (C) 2016 Furrtek + * + * This file is part of PortaPack. + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2, or (at your option) + * any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; see the file COPYING. If not, write to + * the Free Software Foundation, Inc., 51 Franklin Street, + * Boston, MA 02110-1301, USA. + */ + +#include "bht.hpp" + +#include "portapack.hpp" +#include "portapack_persistent_memory.hpp" + +#include +#include + +std::string gen_message_ep(uint8_t city_code, size_t family_code_ep, uint32_t relay_state_A, uint32_t relay_state_B) { + size_t c; + const encoder_def_t * um3750_def; + uint8_t bit[12]; + std::string ep_symbols; + char ook_bitstream[256]; + char ep_message[13] = { 0 }; + + // EP frame + // Repeated 2x 26 times + // Whole frame + space = 128ms, data only = 64ms + + um3750_def = &encoder_defs[8]; + + for (c = 0; c < 8; c++) + bit[c] = (city_code >> c) & 1; + + bit[8] = family_code_ep >> 1; + bit[9] = family_code_ep & 1; + bit[10] = 0; // R1 first + if (relay_state_A) + bit[11] = relay_state_A - 1; + else + bit[11] = 0; + + for (c = 0; c < 12; c++) + ep_message[c] = bit[c] + '0'; + + //text_message.set(ep_message); + + c = 0; + for (auto ch : um3750_def->word_format) { + if (ch == 'S') + ep_symbols += um3750_def->sync; + else + ep_symbols += um3750_def->bit_format[bit[c++]]; + } + + c = 0; + for (auto ch : ep_symbols) { + if (ch != '0') + ook_bitstream[c >> 3] |= (1 << (7 - (c & 7))); + c++; + } + + return ep_message; +} + +std::string gen_message_xy(size_t header_code_a, size_t header_code_b, size_t city_code, size_t family_code, + bool subfamily_wc, size_t subfamily_code, bool id_wc, size_t receiver_code, + size_t relay_state_A, size_t relay_state_B, size_t relay_state_C, size_t relay_state_D) { + size_t c; + uint8_t ccir_message[20]; + + // Xy CCIR frame + + // Header + ccir_message[0] = (header_code_a / 10); + ccir_message[1] = (header_code_a % 10); + ccir_message[2] = (header_code_b / 10); + ccir_message[3] = (header_code_b % 10); + + // Addresses + ccir_message[4] = (city_code / 10); + ccir_message[5] = (city_code % 10); + ccir_message[6] = family_code; + + if (subfamily_wc) + ccir_message[7] = 10; // Wildcard + else + ccir_message[7] = subfamily_code; + + if (id_wc) { + ccir_message[8] = 10; // Wildcard + ccir_message[9] = 10; // Wildcard + } else { + ccir_message[8] = (receiver_code / 10); + ccir_message[9] = (receiver_code % 10); + } + + ccir_message[10] = 11; // B + + // Relay states + ccir_message[11] = relay_state_A; + ccir_message[12] = relay_state_B; + ccir_message[13] = relay_state_C; + ccir_message[14] = relay_state_D; + + ccir_message[15] = 11; // B + + // End + for (c = 16; c < 20; c++) + ccir_message[c] = 0; + + // Replace repeats with E code + for (c = 1; c < 20; c++) + if (ccir_message[c] == ccir_message[c - 1]) ccir_message[c] = 14; + + // Copy for baseband + memcpy(shared_memory.bb_data.tones_data.message, ccir_message, 20); + + // Return as text + return ccir_to_ascii(ccir_message); +} + +std::string ccir_to_ascii(uint8_t * ccir) { + std::string ascii; + + for (size_t c = 0; c < 20; c++) { + if (ccir[c] > 9) + ascii += (char)(ccir[c] - 10 + 'A'); + else + ascii += (char)(ccir[c] + '0'); + } + + return ascii; +} diff --git a/firmware/application/bht.hpp b/firmware/application/bht.hpp new file mode 100644 index 000000000..17849b375 --- /dev/null +++ b/firmware/application/bht.hpp @@ -0,0 +1,67 @@ +/* + * Copyright (C) 2015 Jared Boone, ShareBrained Technology, Inc. + * Copyright (C) 2016 Furrtek + * + * This file is part of PortaPack. + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2, or (at your option) + * any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; see the file COPYING. If not, write to + * the Free Software Foundation, Inc., 51 Franklin Street, + * Boston, MA 02110-1301, USA. + */ + +#include "ui.hpp" +#include "ui_widget.hpp" +#include "ui_navigation.hpp" + +#include "encoders.hpp" +#include "portapack.hpp" + +using namespace encoders; + +#define CCIR_TONE_LENGTH (153600-1) // 1536000*0.1 +#define CCIR_DELTA_COEF (43.691) // (65536*1024)/1536000 +#define CCIR_SILENCE (614400-1) // 400ms + +struct bht_city { + std::string name; + uint8_t freq_index; + bool recent; +}; + +const uint32_t ccir_deltas[16] = { + (uint32_t)(1981 * CCIR_DELTA_COEF), + (uint32_t)(1124 * CCIR_DELTA_COEF), + (uint32_t)(1197 * CCIR_DELTA_COEF), + (uint32_t)(1275 * CCIR_DELTA_COEF), + (uint32_t)(1358 * CCIR_DELTA_COEF), + (uint32_t)(1446 * CCIR_DELTA_COEF), + (uint32_t)(1540 * CCIR_DELTA_COEF), + (uint32_t)(1640 * CCIR_DELTA_COEF), + (uint32_t)(1747 * CCIR_DELTA_COEF), + (uint32_t)(1860 * CCIR_DELTA_COEF), + (uint32_t)(2400 * CCIR_DELTA_COEF), + (uint32_t)(930 * CCIR_DELTA_COEF), + (uint32_t)(2247 * CCIR_DELTA_COEF), + (uint32_t)(991 * CCIR_DELTA_COEF), + (uint32_t)(2110 * CCIR_DELTA_COEF), + (uint32_t)(1055 * CCIR_DELTA_COEF) +}; + +const rf::Frequency bht_freqs[7] = { 31325000, 31387500, 31437500, 31475000, 31687500, 31975000, 88000000 }; + +std::string gen_message_ep(uint8_t city_code, size_t family_code_ep, uint32_t relay_state_A, uint32_t relay_state_B); +std::string gen_message_xy(size_t header_code_a, size_t header_code_b, size_t city_code, size_t family_code, + bool subfamily_wc, size_t subfamily_code, bool id_wc, size_t receiver_code, + size_t relay_state_A, size_t relay_state_B, size_t relay_state_C, size_t relay_state_D); +std::string ccir_to_ascii(uint8_t * ccir); diff --git a/firmware/application/main.cpp b/firmware/application/main.cpp index 24c7f2930..3045d4020 100755 --- a/firmware/application/main.cpp +++ b/firmware/application/main.cpp @@ -28,7 +28,6 @@ //TEST: Jammer //TEST: Frequency manager + save/load -//BUG: Xylos doesn't play last tone ? //TODO: Morse coder for foxhunts //TODO: Finish EPAR tx //TODO: Test dual tone in proc_tones and remove proc_dtmf_tx diff --git a/firmware/application/ui_bht_tx.cpp b/firmware/application/ui_bht_tx.cpp index 824bf28eb..9859ae198 100644 --- a/firmware/application/ui_bht_tx.cpp +++ b/firmware/application/ui_bht_tx.cpp @@ -22,7 +22,6 @@ #include "ui_bht_tx.hpp" -#include "portapack.hpp" #include "baseband_api.hpp" #include "portapack_persistent_memory.hpp" @@ -43,110 +42,27 @@ BHTView::~BHTView() { } void BHTView::generate_message() { - size_t c; - const encoder_def_t * um3750_def; - uint8_t bit[12]; - uint8_t city_code; - std::string ep_symbols; - char ook_bitstream[256]; - char ep_message[13] = { 0 }; - if (!_mode) { - // Xy CCIR frame - - // Header - ccir_message[0] = (header_code_a.value() / 10) + '0'; - ccir_message[1] = (header_code_a.value() % 10) + '0'; - ccir_message[2] = (header_code_b.value() / 10) + '0'; - ccir_message[3] = (header_code_b.value() % 10) + '0'; - - // Addresses - ccir_message[4] = (city_code_xy.value() / 10) + '0'; - ccir_message[5] = (city_code_xy.value() % 10) + '0'; - ccir_message[6] = family_code_xy.value() + '0'; - - if (!checkbox_wcsubfamily.value()) - ccir_message[7] = subfamily_code.value() + '0'; - else - ccir_message[7] = 'A'; // Wildcard - - if (!checkbox_wcid.value()) { - ccir_message[8] = (receiver_code.value() / 10) + '0'; - ccir_message[9] = (receiver_code.value() % 10) + '0'; - } else { - ccir_message[8] = 'A'; // Wildcard - ccir_message[9] = 'A'; // Wildcard - } - - ccir_message[10] = 'B'; - - // Relay states - for (c = 0; c < 4; c++) - ccir_message[c + 11] = relay_states[c].selected_index() + '0'; - - ccir_message[15] = 'B'; - - // End - for (c = 16; c < 20; c++) - ccir_message[c] = '0'; - - ccir_message[20] = 0; - - // Replace repeats with E code - for (c = 1; c < 20; c++) - if (ccir_message[c] == ccir_message[c - 1]) ccir_message[c] = 'E'; - - // Display as text - text_message.set(ccir_message); - - ascii_to_ccir(ccir_message); + text_message.set( + gen_message_xy(header_code_a.value(), header_code_b.value(), city_code_xy.value(), subfamily_code.value(), + checkbox_wcsubfamily.value(), subfamily_code.value(), checkbox_wcid.value(), receiver_code.value(), + relay_states[0].selected_index(), relay_states[1].selected_index(), + relay_states[2].selected_index(), relay_states[3].selected_index()) + ); } else { - // EP frame - // Repeated 2x 26 times - // Whole frame + space = 128ms, data only = 64ms - - um3750_def = &encoder_defs[8]; - - city_code = city_code_ep.value(); - - for (c = 0; c < 8; c++) - bit[c] = (city_code >> c) & 1; - - bit[8] = family_code_ep.selected_index_value() >> 1; - bit[9] = family_code_ep.selected_index_value() & 1; - bit[10] = 0; // R1 first - if (relay_states[0].selected_index()) - bit[11] = relay_states[0].selected_index() - 1; - else - bit[11] = 0; - - for (c = 0; c < 12; c++) - ep_message[c] = bit[c] + '0'; - - text_message.set(ep_message); - - c = 0; - for (auto ch : um3750_def->word_format) { - if (ch == 'S') - ep_symbols += um3750_def->sync; - else - ep_symbols += um3750_def->bit_format[bit[c++]]; - } - - c = 0; - for (auto ch : ep_symbols) { - if (ch != '0') - ook_bitstream[c >> 3] |= (1 << (7 - (c & 7))); - c++; - } + text_message.set( + gen_message_ep(city_code_ep.value(), family_code_ep.selected_index_value(), + relay_states[0].selected_index(), relay_states[1].selected_index()) + ); } } void BHTView::start_tx() { - if (speaker_enabled && !_mode) audio::headphone::set_volume(volume_t::decibel(90 - 99) + audio::headphone::volume_range().max); - + + generate_message(); + transmitter_model.set_tuning_frequency(bht_freqs[options_freq.selected_index()]); transmitter_model.set_baseband_configuration({ .mode = 0, @@ -159,25 +75,14 @@ void BHTView::start_tx() { transmitter_model.set_baseband_bandwidth(1750000); transmitter_model.enable(); - memcpy(shared_memory.bb_data.tones_data.message, ccir_message, 20); - + // Setup for Xy for (uint8_t c = 0; c < 16; c++) { shared_memory.bb_data.tones_data.tone_defs[c].delta = ccir_deltas[c]; shared_memory.bb_data.tones_data.tone_defs[c].duration = CCIR_TONE_LENGTH; } audio::set_rate(audio::Rate::Hz_24000); - baseband::set_tones_data(10000, CCIR_SILENCE, 20, false, checkbox_speaker.value()); -} - -// ASCII to frequency LUT index -void BHTView::ascii_to_ccir(char * ascii) { - for (size_t c = 0; c < 20; c++) { - if (ascii[c] > '9') - ascii[c] -= 0x37; - else - ascii[c] -= '0'; - } + baseband::set_tones_data(6000, CCIR_SILENCE, 20, false, checkbox_speaker.value()); } void BHTView::on_tx_progress(const int progress, const bool done) { @@ -248,11 +153,13 @@ BHTView::BHTView(NavigationView& nav) { &text_cligno } }); - options_mode.set_selected_index(0); // Xy + options_mode.set_selected_index(0); // Start up in Xy mode header_code_a.set_value(0); header_code_b.set_value(0); city_code_xy.set_value(18); + city_code_ep.set_value(220); family_code_xy.set_value(1); + family_code_ep.set_selected_index(2); subfamily_code.set_value(1); receiver_code.set_value(1); options_freq.set_selected_index(0); @@ -389,19 +296,13 @@ BHTView::BHTView(NavigationView& nav) { generate_message(); button_transmit.on_select = [this, &nav](Button&) { - if (tx_mode == IDLE) { - //auto modal_view = nav.push("TX", "TX ?", true); - //modal_view->on_choice = [this](bool choice) { - // if (choice) { - if (speaker_enabled && _mode) - audio::headphone::set_volume(volume_t::decibel(90 - 99) + audio::headphone::volume_range().max); - tx_mode = SINGLE; - button_transmit.set_style(&style_cancel); - button_transmit.set_text("Wait"); - generate_message(); - start_tx(); - // } - //}; + if ((tx_mode == IDLE) && (!_mode)) { // DEBUG + if (speaker_enabled && _mode) + audio::headphone::set_volume(volume_t::decibel(90 - 99) + audio::headphone::volume_range().max); + tx_mode = SINGLE; + button_transmit.set_style(&style_cancel); + button_transmit.set_text("Wait"); + start_tx(); } }; } diff --git a/firmware/application/ui_bht_tx.hpp b/firmware/application/ui_bht_tx.hpp index 226a94bf7..67a7eb570 100644 --- a/firmware/application/ui_bht_tx.hpp +++ b/firmware/application/ui_bht_tx.hpp @@ -29,20 +29,14 @@ #include "bmp_bulb_off.hpp" #include "bmp_bulb_ignore.hpp" +#include "bht.hpp" #include "message.hpp" #include "volume.hpp" #include "audio.hpp" #include "transmitter_model.hpp" #include "encoders.hpp" -//#include "receiver_model.hpp" #include "portapack.hpp" -using namespace encoders; - -#define CCIR_TONE_LENGTH (153600-1) // 1536000*0.1 -#define CCIR_DELTA_COEF (43.691) // (65536*1024)/1536000 -#define CCIR_SILENCE (614400-1) // 400ms - namespace ui { class BHTView : public View { @@ -55,25 +49,6 @@ public: std::string title() const override { return "BHT transmit"; }; private: - const uint32_t ccir_deltas[16] = { - (uint32_t)(1981 * CCIR_DELTA_COEF), - (uint32_t)(1124 * CCIR_DELTA_COEF), - (uint32_t)(1197 * CCIR_DELTA_COEF), - (uint32_t)(1275 * CCIR_DELTA_COEF), - (uint32_t)(1358 * CCIR_DELTA_COEF), - (uint32_t)(1446 * CCIR_DELTA_COEF), - (uint32_t)(1540 * CCIR_DELTA_COEF), - (uint32_t)(1640 * CCIR_DELTA_COEF), - (uint32_t)(1747 * CCIR_DELTA_COEF), - (uint32_t)(1860 * CCIR_DELTA_COEF), - (uint32_t)(2400 * CCIR_DELTA_COEF), - (uint32_t)(930 * CCIR_DELTA_COEF), - (uint32_t)(2247 * CCIR_DELTA_COEF), - (uint32_t)(991 * CCIR_DELTA_COEF), - (uint32_t)(2110 * CCIR_DELTA_COEF), - (uint32_t)(1055 * CCIR_DELTA_COEF) - }; - enum tx_modes { IDLE = 0, SINGLE, @@ -82,144 +57,9 @@ private: tx_modes tx_mode = IDLE; - struct bht_city { - std::string name; - uint8_t freq_index; - bool recent; - }; - - const bht_city bht_cities[122] = { - { "Aizenay", 0, false }, - { "Albertville", 3, false }, - { "Ales", 3, false }, - { "Artannes/Indre", 5, false }, - { "Avignon", 3, true }, - { "Azay-le-Rideau", 5, false }, - { "Baux Ste. Croix", 0, false }, - { "Beaugency", 4, false }, - { "Beaune", 4, false }, - { "Betton", 2, false }, - { "Bihorel", 0, true }, - { "Blanquefort", 4, true }, - { "Bobigny", 5, false }, - { "Bouffere", 4, true }, - { "Boulogne/Mer", 0, true }, - { "Bourg-en-Bresse", 3, false }, - { "Bourges", 0, false }, - { "Bouscat", 0, false }, - { "Carquefou", 5, false }, - { "St. Cast", 0, false }, - { "Caudebec/Caux", 3, true }, - { "Cercy-la-Tour", 5, false }, - { "Chamalieres", 5, false }, - { "St. Chamond", 5, false }, - { "Chapelle/Fgrtz", 2, false }, - { "Charite/Loire", 3, false }, - { "Charleville-Mzr", 1, false }, - { "Chilly Mazarin", 5, false }, - { "Clermont Frrd.", 5, false }, - { "Cluses", 2, false }, - { "Compiegne", 4, false }, - { "Coulanges/Nevers", 5, false }, - { "Cour Cheverny", 5, false }, - { "Cournon Auvergne", 5, false }, - { "Crolles", 5, true }, - { "Cublize", 4, true }, - { "Donges", 5, false }, - { "Emalleville", 0, false }, - { "Etrepagny", 0, false }, - { "Fecamp", 0, false }, - { "Ferriere", 0, false }, - { "Ferte Imbault", 5, false }, - { "Fontaine", 5, true }, - { "Forbach", 3, false }, - { "Fourchambault", 5, false }, - { "Fresnay/Sarthe", 3, false }, - { "St Fulgent", 5, true }, - { "Gaillac", 3, true }, - { "St. Georges/Grs", 0, false }, - { "St. Gervais/Frt", 5, false }, - { "Givors", 5, false }, - { "Guichen", 2, false }, - { "Guildo", 0, false }, - { "Guipry", 2, false }, - { "St Hilaire/Riez", 0, false }, - { "Hossegor/Capbrtn", 0, true }, - { "Houlbec-Cocherel", 0, false }, - { "Huisseau/Cosson", 5, false }, - { "Huningue", 5, false }, - { "Iffendic", 2, false }, - { "La Croix St. Ouen", 4, false }, - { "Langrune/Mer", 0, false }, - { "Le Neubourg", 2, true }, - { "St Leger/Vignes", 5, false }, - { "Levallois-Perret", 5, false }, - { "Lille", 5, true }, - { "Limoges", 5, false }, - { "Longueil-Anel", 4, false }, - { "Lormont", 5, true }, - { "Mantes-la-Jolie", 5, false }, - { "Martigues", 0, true }, - { "Marzy", 5, false }, - { "Ste. Memmie", 3, false }, - { "Menton", 0, true }, - { "Metz", 3, false }, - { "Mezidon Canon", 1, false }, - { "Millau", 5, false }, - { "Miniac-Morvan", 2, false }, - { "Mt. Pres Chambord", 5, false }, - { "Montesson", 5, false }, - { "Monts", 5, false }, - { "Noisy-le-Grand", 4, true }, - { "St Ouen", 5, false }, - { "Ozoir/Ferriere", 5, false }, - { "Pace", 2, false }, - { "Pelussin", 5, false }, - { "Petite Foret", 1, false }, - { "Plestin/Greves", 0, false }, - { "Pleumeur Bodou", 5, true }, - { "Pont Audemer", 0, false }, - { "Pontcharra", 5, true }, - { "Pontchateau", 5, false }, - { "Pressagny L'Org.", 0, false }, - { "Remiremont", 4, true }, - { "Ribeauville", 5, false }, - { "La Roche sur Yon", 0, false }, - { "Romorantin-Lant.", 5, false }, - { "Rueil Malmaison", 5, false }, - { "Sault-les-Rethel", 3, false }, - { "Selles-St-Denis", 5, false }, - { "Selles/Cher", 5, false }, - { "Sens", 4, false }, - { "Sezanne", 3, false }, - { "Sommesous", 3, false }, - { "Ste. Suzanne", 2, true }, - { "Talence", 3, true }, - { "Thionville", 3, false }, - { "Thonon-les-Bains", 2, false }, - { "Tours en Sologne", 5, true }, - { "Trelaze", 5, true }, - { "Trouville/Mer", 0, false }, - { "Tulle", 2, false }, - { "Ussel", 2, false }, - { "Valberg", 5, true }, - { "Valence", 5, false }, - { "Velizy", 5, false }, - { "Vesoul", 5, false }, - { "Ville S. la Ferte", 0, false }, - { "Villefrance/Saone", 5, false }, - { "Villers Cotterets", 3, false }, - { "Vitre", 2, false }, - { "Vitry-le-Francois", 4, true } - }; - - const rf::Frequency bht_freqs[7] = { 31325000, 31387500, 31437500, 31475000, 31687500, 31975000, 88000000 }; - - char ccir_message[21]; bool speaker_enabled = false; size_t _mode = 0; - void ascii_to_ccir(char * ascii); void start_tx(); void generate_message(); void on_tx_progress(const int progress, const bool done); diff --git a/firmware/application/ui_navigation.cpp b/firmware/application/ui_navigation.cpp index b15862055..fe036560c 100644 --- a/firmware/application/ui_navigation.cpp +++ b/firmware/application/ui_navigation.cpp @@ -278,7 +278,7 @@ ReceiverMenuView::ReceiverMenuView(NavigationView& nav) { add_items<6>({ { // { "AFSK", ui::Color::grey(), [&nav](){ nav.push(); } }, // AFSKRXView { "Audio", ui::Color::green(), [&nav](){ nav.push(); } }, - { "CCIR", ui::Color::grey(), [&nav](){ nav.push(); } }, // XylosRXView + { "CCIR", ui::Color::grey(), [&nav](){ nav.push(); } }, { "Nordic/BTLE", ui::Color::grey(), [&nav](){ nav.push(); } }, { "POCSAG 1200", ui::Color::cyan(), [&nav](){ nav.push(); } }, { "SIGFOX", ui::Color::grey(), [&nav](){ nav.push(); } }, // SIGFRXView @@ -292,7 +292,7 @@ ReceiverMenuView::ReceiverMenuView(NavigationView& nav) { TransmitterCodedMenuView::TransmitterCodedMenuView(NavigationView& nav) { add_items<7>({ { { "ADS-B Mode S", ui::Color::orange(), [&nav](){ nav.push(); } }, - { "BHT EPAR/Xylos", ui::Color::yellow(), [&nav](){ nav.push(); } }, + { "BHT Xy/EP", ui::Color::yellow(), [&nav](){ nav.push(); } }, { "Morse beacon", ui::Color::yellow(), [&nav](){ nav.push(); } }, { "Nuoptix DTMF timecode", ui::Color::green(), [&nav](){ nav.push(); } }, { "OOK remote encoders", ui::Color::green(), [&nav](){ nav.push(); } }, diff --git a/firmware/baseband/baseband_tones.img b/firmware/baseband/baseband_tones.img index d47fa5ad68a852ef01f9fa59bf45453c26c07c3b..9a246ffb9a94645a53ed1fda82f9e54b91c5fcee 100644 GIT binary patch delta 303 zcmV+~0nq-mTC`fQP67colTQK{0oIde0yP1Ylbr%Jf1!ZX_>eIGE5*^&_>_^k@c<8K z(R@pk_>2+L_yC~P_?RII>j47;^@~#sGYa*9RvUPP_>D13`>_>Ca}Gao91_>3_H*aYi>07Gv8 zD?sp~Ab<+>i(1kTD-BjM$X;brIC~gfYpx)cAZMT9a=BMK@~a3Gx3kl=zJy z#Q2mk%ja4il=!R>l=!VNg!rx@bLYhPv=IjJ5CER%)cAlQ)cAa1)cA-2JCo}JgC(Q+ z0h=&rN=5_g3jqS~ocX`=UyrkB4l}c00Pq$6Fh&9JdihS1lLRFJ&Xc(W9kbX3TqqPt Bj{E=s delta 280 zcmV+z0q6d-TC`fQP67cnlTQK{0o9Xd0yP1Xlbr%Jf1rTW_>eIGE5*^&_>_^k@c<8J z(R@mj_>3{q_yC~P_?RII>jMD+^@~vfGuyHZF@*SxF$s8t_>BCbSDh1dC>w*A7ZvZPm z@S=bU9`%b_+V}`C#Q2agA1aO5l=yWK)cAxk$-C6}d?8ztaRWsGYm>JF9T{}z#Q3x^ z2JsL8qvzE4fFacQd|}l1hygs4?E`})r1=4xFlb6f1M3R`0`Q&rzw=*@vuF-8vtR)5 e7XL6t0q}eIQ~Tqy96Bq0Kc=?1Y9V7rGH}p diff --git a/firmware/baseband/proc_tones.cpp b/firmware/baseband/proc_tones.cpp index a4d9e3c86..2f6d0db79 100644 --- a/firmware/baseband/proc_tones.cpp +++ b/firmware/baseband/proc_tones.cpp @@ -49,7 +49,7 @@ void TonesProcessor::execute(const buffer_c8_t& buffer) { im = 0; } else { if (!sample_count) { - digit = shared_memory.bb_data.tones_data.message[digit_pos++]; + digit = shared_memory.bb_data.tones_data.message[digit_pos]; if (digit_pos >= message_length) { configured = false; txdone_message.done = true; @@ -59,6 +59,8 @@ void TonesProcessor::execute(const buffer_c8_t& buffer) { shared_memory.application_queue.push(txdone_message); } + digit_pos++; + if ((digit >= 32) || (tone_deltas[digit] == 0)) { silence_count = shared_memory.bb_data.tones_data.silence; } else { diff --git a/firmware/portapack-h1-havoc.bin b/firmware/portapack-h1-havoc.bin index 865fa5d78595a9d723e58288217d38b3a3cd36d3..bf8ae5a4b74cf630ec5ac31ef5760e274b7484f9 100644 GIT binary patch delta 69887 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 Hgj4-L%2lQz