diff --git a/firmware/application/protocols/aprs.cpp b/firmware/application/protocols/aprs.cpp index 6f6a522bb..d0d326369 100644 --- a/firmware/application/protocols/aprs.cpp +++ b/firmware/application/protocols/aprs.cpp @@ -35,10 +35,11 @@ void make_aprs_frame(char * address_dest, char * address_src) { char address[14] = { 0 }; uint8_t info[7] = { 0 }; //{ 'F','U','R','R','T','E','K' }; + // Both SSIDs are 0 memcpy(&address[0], address_dest, 6); memcpy(&address[7], address_src, 6); - frame.make_ui_frame(address, 0x03, 0xF0, info, sizeof(info)); + frame.make_ui_frame(address, 0x03, protocol_id_t::NO_LAYER3, info, sizeof(info)); } } /* namespace aprs */ diff --git a/firmware/application/ui_about.hpp b/firmware/application/ui_about.hpp index e157dd4fd..ef4f72c05 100644 --- a/firmware/application/ui_about.hpp +++ b/firmware/application/ui_about.hpp @@ -96,7 +96,7 @@ private: {"Xy. infos", "cLx", TITLE_LF}, {"Thanks", "", SECTION}, {"Rainer Matla", "Keld Norman", TITLE}, - {"Giorgio Campiotti", "DC1RDB", TITLE}, + {"Giorgio C.", "DC1RDB", TITLE}, {"Sigmounte", "Waax", TITLE}, {"Windyoona", "Channels", TITLE_LF}, {"", "MMXVII", END} diff --git a/firmware/application/ui_navigation.cpp b/firmware/application/ui_navigation.cpp index 180764794..b4d1bfda5 100644 --- a/firmware/application/ui_navigation.cpp +++ b/firmware/application/ui_navigation.cpp @@ -277,65 +277,50 @@ void NavigationView::focus() { } } -/* TranspondersMenuView **************************************************/ +/* ReceiversMenuView *****************************************************/ -TranspondersMenuView::TranspondersMenuView(NavigationView& nav) { - add_items<4>({ { - { "ADS-B: Planes", ui::Color::grey(), &bitmap_icon_adsb, [&nav](){ nav.push(); }, }, - { "AIS: Boats", ui::Color::white(), &bitmap_icon_ais, [&nav](){ nav.push(); } }, - { "ERT: Utility Meters", ui::Color::white(), &bitmap_icon_ert, [&nav](){ nav.push(); } }, - { "TPMS: Cars", ui::Color::white(), &bitmap_icon_tpms, [&nav](){ nav.push(); } }, - } }); - on_left = [&nav](){ nav.pop(); }; -} - -/* ReceiverMenuView ******************************************************/ - -ReceiverMenuView::ReceiverMenuView(NavigationView& nav) { - add_items<6>({ { - // { "AFSK", ui::Color::grey(), nullptr, [&nav](){ nav.push(); } }, // AFSKRXView - { "Audio", ui::Color::green(), nullptr, [&nav](){ nav.push(false); } }, - { "CCIR", ui::Color::grey(), nullptr, [&nav](){ nav.push(); } }, - { "Nordic/BTLE", ui::Color::grey(), &bitmap_icon_nordic, [&nav](){ nav.push(); } }, - { "POCSAG", ui::Color::cyan(), &bitmap_icon_pocsag, [&nav](){ nav.push(); } }, - { "SIGFOX", ui::Color::grey(), &bitmap_icon_fox, [&nav](){ nav.push(); } }, // SIGFRXView - { "Transponders", ui::Color::green(), nullptr, [&nav](){ nav.push(); } }, - } }); - on_left = [&nav](){ nav.pop(); }; -} - -/* TransmitterCodedMenuView ******************************************************/ - -TransmitterCodedMenuView::TransmitterCodedMenuView(NavigationView& nav) { +ReceiversMenuView::ReceiversMenuView(NavigationView& nav) { add_items<9>({ { - { "ADS-B Mode S", ui::Color::orange(), &bitmap_icon_adsb, [&nav](){ nav.push(); } }, - { "BHT Xy/EP", ui::Color::green(), &bitmap_icon_bht, [&nav](){ nav.push(); } }, - { "Morse code", ui::Color::green(), &bitmap_icon_morse, [&nav](){ nav.push(); } }, - { "Nuoptix DTMF timecode", ui::Color::green(), &bitmap_icon_nuoptix, [&nav](){ nav.push(); } }, - { "NTTWorks burger pager", ui::Color::yellow(), &bitmap_icon_burger, [&nav](){ nav.push(); } }, - { "OOK remote encoders", ui::Color::green(), &bitmap_icon_remote, [&nav](){ nav.push(); } }, - { "POCSAG", ui::Color::green(), &bitmap_icon_pocsag, [&nav](){ nav.push(); } }, - { "RDS", ui::Color::green(), &bitmap_icon_rds, [&nav](){ nav.push(); } }, - { "TEDI/LCR AFSK", ui::Color::green(), &bitmap_icon_lcr, [&nav](){ nav.push(); } }, + { "ADS-B: Planes", ui::Color::grey(), &bitmap_icon_adsb, [&nav](){ nav.push(); }, }, + { "AIS: Boats", ui::Color::green(), &bitmap_icon_ais, [&nav](){ nav.push(); } }, + { "APRS", ui::Color::grey(), &bitmap_icon_aprs, [&nav](){ nav.push(); } }, + { "Audio", ui::Color::green(), nullptr, [&nav](){ nav.push(false); } }, + { "ERT: Utility Meters", ui::Color::green(), &bitmap_icon_ert, [&nav](){ nav.push(); } }, + { "POCSAG", ui::Color::green(), &bitmap_icon_pocsag, [&nav](){ nav.push(); } }, + { "SIGFOX", ui::Color::grey(), &bitmap_icon_fox, [&nav](){ nav.push(); } }, // SIGFRXView + { "SSTV", ui::Color::grey(), &bitmap_icon_sstv, [&nav](){ nav.push(); } }, + { "TPMS: Cars", ui::Color::green(), &bitmap_icon_tpms, [&nav](){ nav.push(); } }, } }); on_left = [&nav](){ nav.pop(); }; } -/* TransmitterAudioMenuView ******************************************************/ +/* TransmittersMenuView **************************************************/ -TransmitterAudioMenuView::TransmitterAudioMenuView(NavigationView& nav) { - add_items<4>({ { - { "Soundboard", ui::Color::green(), &bitmap_icon_soundboard, [&nav](){ nav.push(); } }, - { "Numbers station", ui::Color::yellow(),&bitmap_icon_numbers, [&nav](){ nav.push(); } }, - { "Microphone", ui::Color::green(), &bitmap_icon_microphone, [&nav](){ nav.push(); } }, - { "Whistle", ui::Color::green(), &bitmap_icon_whistle, [&nav](){ nav.push(); } }, +TransmittersMenuView::TransmittersMenuView(NavigationView& nav) { + add_items<16>({ { + { "ADS-B Mode S", ui::Color::orange(), &bitmap_icon_adsb, [&nav](){ nav.push(); } }, + { "APRS", ui::Color::grey(), &bitmap_icon_aprs, [&nav](){ nav.push(); } }, + { "BHT Xy/EP", ui::Color::green(), &bitmap_icon_bht, [&nav](){ nav.push(); } }, + { "Jammer", ui::Color::yellow(), &bitmap_icon_jammer, [&nav](){ nav.push(); } }, + { "Microphone", ui::Color::green(), &bitmap_icon_microphone, [&nav](){ nav.push(); } }, + { "Morse code", ui::Color::green(), &bitmap_icon_morse, [&nav](){ nav.push(); } }, + { "NTTWorks burger pager", ui::Color::yellow(), &bitmap_icon_burger, [&nav](){ nav.push(); } }, + { "Numbers station", ui::Color::orange(), &bitmap_icon_numbers, [&nav](){ nav.push(); } }, + { "Nuoptix DTMF timecode", ui::Color::green(), &bitmap_icon_nuoptix, [&nav](){ nav.push(); } }, + { "OOK remote encoders", ui::Color::yellow(), &bitmap_icon_remote, [&nav](){ nav.push(); } }, + { "POCSAG", ui::Color::green(), &bitmap_icon_pocsag, [&nav](){ nav.push(); } }, + { "RDS", ui::Color::green(), &bitmap_icon_rds, [&nav](){ nav.push(); } }, + { "Soundboard", ui::Color::green(), &bitmap_icon_soundboard, [&nav](){ nav.push(); } }, + { "SSTV", ui::Color::green(), &bitmap_icon_sstv, [&nav](){ nav.push(); } }, + { "TEDI/LCR AFSK", ui::Color::yellow(), &bitmap_icon_lcr, [&nav](){ nav.push(); } }, + { "Whistle", ui::Color::green(), &bitmap_icon_whistle, [&nav](){ nav.push(); } }, } }); on_left = [&nav](){ nav.pop(); }; } -/* UtilitiesView *****************************************************************/ +/* UtilitiesMenuView *****************************************************/ -UtilitiesView::UtilitiesView(NavigationView& nav) { +UtilitiesMenuView::UtilitiesMenuView(NavigationView& nav) { add_items<5>({ { { "Frequency manager", ui::Color::green(), &bitmap_icon_freqman, [&nav](){ nav.push(); } }, { "CW generator", ui::Color::green(), &bitmap_icon_cwgen, [&nav](){ nav.push(); } }, @@ -345,6 +330,7 @@ UtilitiesView::UtilitiesView(NavigationView& nav) { } }); on_left = [&nav](){ nav.pop(); }; } + /* SystemMenuView ********************************************************/ void SystemMenuView::hackrf_mode(NavigationView& nav) { @@ -358,22 +344,18 @@ void SystemMenuView::hackrf_mode(NavigationView& nav) { } SystemMenuView::SystemMenuView(NavigationView& nav) { - add_items<14>({ { - { "Play dead", ui::Color::red(), &bitmap_icon_playdead, [&nav](){ nav.push(); } }, - { "Receivers", ui::Color::cyan(), &bitmap_icon_receivers, [&nav](){ nav.push(); } }, - { "Capture", ui::Color::blue(), &bitmap_icon_capture, [&nav](){ nav.push(); } }, - { "Replay", ui::Color::grey(), &bitmap_icon_replay, [&nav](){ nav.push(); } }, // ReplayAppView - { "Audio transmitters", ui::Color::green(), &bitmap_icon_audiotx, [&nav](){ nav.push(); } }, - { "Code transmitters", ui::Color::green(), &bitmap_icon_codetx, [&nav](){ nav.push(); } }, - { "SSTV transmitter", ui::Color::dark_green(), &bitmap_icon_sstv, [&nav](){ nav.push(); } }, - { "APRS transmitter", ui::Color::grey(), &bitmap_icon_aprs, [&nav](){ nav.push(); } }, - { "Scanner/search", ui::Color::blue(), &bitmap_icon_closecall, [&nav](){ nav.push(); } }, - { "Jammer", ui::Color::orange(),&bitmap_icon_jammer, [&nav](){ nav.push(); } }, - { "Utilities", ui::Color::purple(),&bitmap_icon_utilities, [&nav](){ nav.push(); } }, - { "Setup", ui::Color::white(), &bitmap_icon_setup, [&nav](){ nav.push(); } }, + add_items<10>({ { + { "Play dead", ui::Color::red(), &bitmap_icon_playdead, [&nav](){ nav.push(); } }, + { "Receivers", ui::Color::cyan(), &bitmap_icon_receivers, [&nav](){ nav.push(); } }, + { "Transmitters", ui::Color::green(), nullptr, [&nav](){ nav.push(); } }, + { "Capture", ui::Color::blue(), &bitmap_icon_capture, [&nav](){ nav.push(); } }, + { "Replay", ui::Color::grey(), &bitmap_icon_replay, [&nav](){ nav.push(); } }, // ReplayAppView + { "Scanner/search", ui::Color::orange(), &bitmap_icon_closecall, [&nav](){ nav.push(); } }, + { "Utilities", ui::Color::purple(), &bitmap_icon_utilities, [&nav](){ nav.push(); } }, + { "Setup", ui::Color::white(), &bitmap_icon_setup, [&nav](){ nav.push(); } }, //{ "Debug", ui::Color::white(), nullptr, [&nav](){ nav.push(); } }, - { "HackRF mode", ui::Color::white(), &bitmap_icon_hackrf, [this, &nav](){ hackrf_mode(nav); } }, - { "About", ui::Color::white(), nullptr, [&nav](){ nav.push(); } } + { "HackRF mode", ui::Color::white(), &bitmap_icon_hackrf, [this, &nav](){ hackrf_mode(nav); } }, + { "About", ui::Color::white(), nullptr, [&nav](){ nav.push(); } } } }); set_highlighted(1); // Startup selection is "Receivers" diff --git a/firmware/application/ui_navigation.hpp b/firmware/application/ui_navigation.hpp index ba587bcea..67b6a9633 100644 --- a/firmware/application/ui_navigation.hpp +++ b/firmware/application/ui_navigation.hpp @@ -158,11 +158,6 @@ private: View* push_view(std::unique_ptr new_view); }; -class TranspondersMenuView : public MenuView { -public: - TranspondersMenuView(NavigationView& nav); -}; - class BMPView : public View { public: BMPView(NavigationView& nav); @@ -181,27 +176,21 @@ private: }; }; -class ReceiverMenuView : public MenuView { +class ReceiversMenuView : public MenuView { public: - ReceiverMenuView(NavigationView& nav); + ReceiversMenuView(NavigationView& nav); std::string title() const override { return "Receivers"; }; }; -class TransmitterCodedMenuView : public MenuView { +class TransmittersMenuView : public MenuView { public: - TransmitterCodedMenuView(NavigationView& nav); - std::string title() const override { return "Coded TX"; }; + TransmittersMenuView(NavigationView& nav); + std::string title() const override { return "Transmitters"; }; }; -class TransmitterAudioMenuView : public MenuView { +class UtilitiesMenuView : public MenuView { public: - TransmitterAudioMenuView(NavigationView& nav); - std::string title() const override { return "Audio TX"; }; -}; - -class UtilitiesView : public MenuView { -public: - UtilitiesView(NavigationView& nav); + UtilitiesMenuView(NavigationView& nav); std::string title() const override { return "Utilities"; }; };