From ceced966738db3e034ddbc233672be84190d0c95 Mon Sep 17 00:00:00 2001 From: furrtek Date: Sat, 28 May 2016 01:59:13 +0200 Subject: [PATCH] Started fixing RDS and adding more group types --- firmware/application/ui_closecall.cpp | 1 - firmware/application/ui_rds.cpp | 134 +++++++++++++++++--------- firmware/application/ui_rds.hpp | 109 +++++++++++---------- firmware/application/ui_xylos.cpp | 6 +- firmware/portapack-h1-firmware.bin | Bin 475248 -> 476784 bytes 5 files changed, 147 insertions(+), 103 deletions(-) diff --git a/firmware/application/ui_closecall.cpp b/firmware/application/ui_closecall.cpp index 69120f891..695cb7f8b 100644 --- a/firmware/application/ui_closecall.cpp +++ b/firmware/application/ui_closecall.cpp @@ -21,7 +21,6 @@ */ #include "ui_closecall.hpp" -#include "ui_receiver.hpp" #include "msgpack.hpp" #include "ch.h" diff --git a/firmware/application/ui_rds.cpp b/firmware/application/ui_rds.cpp index e5e1aa9fc..16b0d4809 100644 --- a/firmware/application/ui_rds.cpp +++ b/firmware/application/ui_rds.cpp @@ -1,5 +1,6 @@ /* * Copyright (C) 2015 Jared Boone, ShareBrained Technology, Inc. + * Copyright (C) 2016 Furrtek * * This file is part of PortaPack. * @@ -47,9 +48,9 @@ RDSView::~RDSView() { } std::string to_string_bin(const uint32_t n, const uint8_t l) { - char p[32]; + char p[33]; for (uint8_t c = 0; c < l; c++) { - if ((n<>15) ^ (CRC>>9); + doinv = (((blockdata << i) & 0x8000) >> 15) ^ (CRC >> 9); if (doinv) CRC ^= 0b0011011100; - CRC = ((CRC<<1) | doinv) & 0x3FF; + CRC = ((CRC << 1) | doinv) & 0x3FF; } - return (blockdata<<10) | (CRC ^ offset); + return (blockdata << 10) | (CRC ^ offset); } -//Make PI -//Set frequency -//TA/TP flags -//Group selection -//RST SNCF -//Jammer -//Microphone troll -//CTCSS +// Todo: +// Make PI +// Set frequency +// TA/TP flags +// Group selection + +uint8_t RDSView::b2b(const bool in) { + if (in) + return 1; + else + return 0; +} + +void RDSView::make_0B_group(uint32_t group[], const uint16_t PI_code, const bool TP, const uint8_t PTY, const bool TA, + const bool MS, const bool DI, const uint8_t C, char * chars) { + + group[0] = PI_code; + group[1] = (0x0 << 12) | (1 << 11) | (b2b(TP) << 10) | (PTY << 5) | (b2b(TA) << 4) | (b2b(MS) << 3) | (b2b(DI) << 2) | (C & 3); + group[2] = PI_code; + group[3] = (chars[0] << 8) | chars[1]; +} void RDSView::paint(Painter& painter) { uint8_t c; + uint32_t group[4][4] = { 0 }; + + make_0B_group(&group[0][0], 0xF849, true, 7, false, true, false, 0, &psname[0]); + make_0B_group(&group[1][0], 0xF849, true, 7, false, true, false, 1, &psname[2]); + make_0B_group(&group[2][0], 0xF849, true, 7, false, true, false, 2, &psname[4]); + make_0B_group(&group[3][0], 0xF849, true, 7, false, true, false, 3, &psname[6]); - uint32_t group[4][4] = { - {0b1111100001001001, //PI - 0b0000110011101000, //Address - 0b1111100001001001, //PI - 0b0000000000000000}, //Replaced - {0b1111100001001001, //PI - 0b0000110011101001, //Address - 0b1111100001001001, //PI - 0b0000000000000000}, //Replaced - {0b1111100001001001, //PI - 0b0000110011101010, //Address - 0b1111100001001001, //PI - 0b0000000000000000}, //Replaced - {0b1111100001001001, //PI - 0b0000110011101011, //Address - 0b1111100001001001, //PI - 0b0000000000000000}, //Replaced + /*uint32_t group[4][4] = { + { + 0b1111100001001001, //PI + 0b0000110011101000, //Address + 0b1111100001001001, //PI + 0b0000000000000000 //Replaced + }, + + { + 0b1111100001001001, //PI + 0b0000110011101001, //Address + 0b1111100001001001, //PI + 0b0000000000000000 //Replaced + }, + + { + 0b1111100001001001, //PI + 0b0000110011101010, //Address + 0b1111100001001001, //PI + 0b0000000000000000 //Replaced + }, + + { + 0b1111100001001001, //PI + 0b0000110011101011, //Address + 0b1111100001001001, //PI + 0b0000000000000000 //Replaced + }, }; //Insert PSN data in groups - group[0][3] = (psname[0]<<8) | psname[1]; - group[1][3] = (psname[2]<<8) | psname[3]; - group[2][3] = (psname[4]<<8) | psname[5]; - group[3][3] = (psname[6]<<8) | psname[7]; - + group[0][3] = (psname[0] << 8) | psname[1]; + group[1][3] = (psname[2] << 8) | psname[3]; + group[2][3] = (psname[4] << 8) | psname[5]; + group[3][3] = (psname[6] << 8) | psname[7]; + */ + //Generate checkbits for (c = 0; c < 4; c++) { - group[c][0] = makeblock(group[c][0], 0b0011111100); - group[c][1] = makeblock(group[c][1], 0b0110011000); - group[c][2] = makeblock(group[c][2], 0b1101010000); //C' - group[c][3] = makeblock(group[c][3], 0b0110110100); + group[c][0] = makeblock(group[c][0], RDS_OFFSET_A); + group[c][1] = makeblock(group[c][1], RDS_OFFSET_B); + group[c][2] = makeblock(group[c][2], RDS_OFFSET_Cp); //C' + group[c][3] = makeblock(group[c][3], RDS_OFFSET_D); } const Point offset = { @@ -137,21 +169,35 @@ RDSView::RDSView( NavigationView& nav ) { - transmitter_model.set_tuning_frequency(93000000); strcpy(psname, "TEST1234"); add_children({ { - &text_title, + &field_frequency, + &options_pty, &button_setpsn, &button_transmit, &button_exit } }); - button_setpsn.on_select = [this,&nav](Button&){ - nav.push(psname, 8); + field_frequency.set_value(transmitter_model.tuning_frequency()); + field_frequency.set_step(100000); + field_frequency.on_edit = [this, &nav]() { + auto new_view = nav.push(transmitter_model.tuning_frequency()); + new_view->on_changed = [this](rf::Frequency f) { + this->field_frequency.set_value(f); + }; }; - button_transmit.on_select = [&transmitter_model](Button&){ + options_pty.set_selected_index(0); + + button_setpsn.on_select = [this,&nav](Button&){ + auto an_view = nav.push(psname, 8); + an_view->on_changed = [this](char *value) { + memcpy(psname, value, 9); + }; + }; + + button_transmit.on_select = [this](Button&){ transmitter_model.enable(); }; diff --git a/firmware/application/ui_rds.hpp b/firmware/application/ui_rds.hpp index 245866477..257710639 100644 --- a/firmware/application/ui_rds.hpp +++ b/firmware/application/ui_rds.hpp @@ -1,5 +1,6 @@ /* * Copyright (C) 2015 Jared Boone, ShareBrained Technology, Inc. + * Copyright (C) 2016 Furrtek * * This file is part of PortaPack. * @@ -20,11 +21,10 @@ */ #include "ui.hpp" -#include "ui_widget.hpp" -#include "ui_painter.hpp" #include "ui_menu.hpp" #include "ui_navigation.hpp" #include "ui_font_fixed_8x16.hpp" +#include "ui_receiver.hpp" #include "clock_manager.hpp" #include "message.hpp" #include "rf_path.hpp" @@ -32,62 +32,19 @@ #include "volume.hpp" #include "transmitter_model.hpp" +#define RDS_OFFSET_A 0b0011111100 +#define RDS_OFFSET_B 0b0110011000 +#define RDS_OFFSET_C 0b0101101000 +#define RDS_OFFSET_Cp 0b1101010000 +#define RDS_OFFSET_D 0b0110110100 + namespace ui { -/* -class AlphanumView : public View { -public: - std::function on_changed; - AlphanumView(NavigationView& nav, char txt[], uint8_t max_len); - - void focus() override; - - char * value(); - - uint8_t txtidx; - - //void set_value(char * new_txtinput); - void char_add(const char c); - void char_delete(); - - //rf::Frequency value() const; - //void set_value(const rf::Frequency new_value); - -private: - uint8_t _max_len; - bool _lowercase = false; - static constexpr size_t button_w = 240 / 5; - static constexpr size_t button_h = 28; - char txtinput[9]; - - void set_lowercase(); - void set_uppercase(); - - Text text_input { - { 88, 0, 240, 16 } - }; - - std::array buttons; - - Button button_lowercase { - { 88+64+16, 270, 32, 24 }, - "UC" - }; - - Button button_done { - { 88, 270, 64, 24 }, - "Done" - }; - - void on_button(Button& button); - - void update_text(); -}; -*/ class RDSView : public View { public: RDSView(NavigationView& nav); ~RDSView(); + std::string title() const override { return "RDS transmit"; }; void focus() override; void paint(Painter& painter) override; @@ -95,9 +52,51 @@ public: private: char psname[9]; - Text text_title { - { 76, 16, 88, 16 }, - "RDS toolbox" + uint8_t b2b(const bool in); + void make_0B_group(uint32_t group[], const uint16_t PI_code, const bool TP, const uint8_t PTY, const bool TA, + const bool MS, const bool DI, const uint8_t C, char * TWOCHARs); + + FrequencyField field_frequency { + { 1 * 8, 1 * 16 }, + }; + + OptionsField options_pty { + { 1 * 8, 3 * 16 }, + 32, + { + { "None ", 0 }, + { "News ", 1 }, + { "Affairs ", 2 }, + { "Info ", 3 }, + { "Sport ", 4 }, + { "Educate ", 5 }, + { "Drama ", 6 }, + { "Culture ", 7 }, + { "Science ", 8 }, + { "Varied ", 9 }, + { "Pop ", 10 }, + { "Rock ", 11 }, + { "Easy ", 12 }, + { "Light ", 13 }, + { "Classics", 14 }, + { "Other ", 15 }, + { "Weather ", 16 }, + { "Finance ", 17 }, + { "Children", 18 }, + { "Social ", 19 }, + { "Religion", 20 }, + { "PhoneIn ", 21 }, + { "Travel ", 22 }, + { "Leisure ", 23 }, + { "Jazz ", 24 }, + { "Country ", 25 }, + { "National", 26 }, + { "Oldies ", 27 }, + { "Folk ", 28 }, + { "Docs ", 29 }, + { "AlarmTst", 30 }, + { "Alarm ", 31 } + } }; Button button_setpsn { diff --git a/firmware/application/ui_xylos.cpp b/firmware/application/ui_xylos.cpp index 21c644d76..54e150019 100644 --- a/firmware/application/ui_xylos.cpp +++ b/firmware/application/ui_xylos.cpp @@ -163,9 +163,9 @@ void XylosView::upd_message() { ccirmessage[18] = '0'; ccirmessage[19] = '0'; - // Stuffing - for (c=1; c<20; c++) { - if (ccirmessage[c] == ccirmessage[c-1]) ccirmessage[c] = 'E'; + // Repeats elimination + for (c = 1; c < 20; c++) { + if (ccirmessage[c] == ccirmessage[c - 1]) ccirmessage[c] = 'E'; } ccirmessage[20] = 0; diff --git a/firmware/portapack-h1-firmware.bin b/firmware/portapack-h1-firmware.bin index a853a72c29bd1216428f43c7c81f6405f373f88a..93c8b6b72ebe1bfa298ce3761ded3995464bdc95 100644 GIT binary patch delta 36499 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 delta 35055 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