diff --git a/firmware/application/apps/acars_app.cpp b/firmware/application/apps/acars_app.cpp index 108a673a2..06f42819f 100644 --- a/firmware/application/apps/acars_app.cpp +++ b/firmware/application/apps/acars_app.cpp @@ -98,9 +98,11 @@ ACARSAppView::ACARSAppView(NavigationView& nav) { logging = v; }; + std::string folder = "LOGS"; + make_new_directory(folder); logger = std::make_unique(); if (logger) - logger->append("acars.txt"); + logger->append("LOGS/ACARS.TXT"); } ACARSAppView::~ACARSAppView() { diff --git a/firmware/application/apps/ais_app.cpp b/firmware/application/apps/ais_app.cpp index d45efc0d4..fc7f7bb94 100644 --- a/firmware/application/apps/ais_app.cpp +++ b/firmware/application/apps/ais_app.cpp @@ -397,9 +397,11 @@ AISAppView::AISAppView(NavigationView& nav) : nav_ { nav } { this->on_show_list(); }; + std::string folder = "LOGS"; + make_new_directory(folder); logger = std::make_unique(); if( logger ) { - logger->append(u"ais.txt"); + logger->append(u"LOGS/AIS.TXT"); } } diff --git a/firmware/application/apps/ert_app.cpp b/firmware/application/apps/ert_app.cpp index 447286efd..1b93d7039 100644 --- a/firmware/application/apps/ert_app.cpp +++ b/firmware/application/apps/ert_app.cpp @@ -130,9 +130,11 @@ ERTAppView::ERTAppView(NavigationView&) { static_cast(receiver_model.vga()), }); */ + std::string folder = "LOGS"; + make_new_directory(folder); logger = std::make_unique(); if( logger ) { - logger->append(u"ert.txt"); + logger->append(u"LOGS/ERT.TXT"); } } diff --git a/firmware/application/apps/pocsag_app.cpp b/firmware/application/apps/pocsag_app.cpp index 0c5580b8a..898528596 100644 --- a/firmware/application/apps/pocsag_app.cpp +++ b/firmware/application/apps/pocsag_app.cpp @@ -129,9 +129,11 @@ POCSAGAppView::POCSAGAppView(NavigationView& nav) { ignore_address /= 10; } + std::string folder = "LOGS"; + make_new_directory(folder); logger = std::make_unique(); if (logger) - logger->append("pocsag.txt"); + logger->append("LOGS/POCSAG.TXT"); audio::output::start(); audio::output::unmute(); diff --git a/firmware/application/apps/tpms_app.cpp b/firmware/application/apps/tpms_app.cpp index 5f3a0d095..f20020ec6 100644 --- a/firmware/application/apps/tpms_app.cpp +++ b/firmware/application/apps/tpms_app.cpp @@ -194,9 +194,11 @@ TPMSAppView::TPMSAppView(NavigationView&) { options_temperature.set_selected_index(0, true); + std::string folder = "LOGS"; + make_new_directory(folder); logger = std::make_unique(); if( logger ) { - logger->append(u"tpms.txt"); + logger->append(u"LOGS/TMPS.TXT"); } } diff --git a/firmware/application/apps/ui_adsb_rx.cpp b/firmware/application/apps/ui_adsb_rx.cpp index ca899ffc9..b6057c5e7 100644 --- a/firmware/application/apps/ui_adsb_rx.cpp +++ b/firmware/application/apps/ui_adsb_rx.cpp @@ -117,6 +117,12 @@ ADSBRxAircraftDetailsView::ADSBRxAircraftDetailsView( std::unique_ptr logger { }; + logger = std::make_unique(); + std::string folder = "LOGS"; + make_new_directory(folder); + if (logger) + logger->append(u"LOGS/ADSB.TXT"); + icao_code = to_string_hex(entry_copy.ICAO_address, 6); text_icao_address.set(to_string_hex(entry_copy.ICAO_address, 6)); @@ -351,7 +357,6 @@ void ADSBRxView::sort_entries_by_state() } void ADSBRxView::on_frame(const ADSBFrameMessage * message) { - logger = std::make_unique(); rtc::RTC datetime; std::string callsign; std::string str_info; @@ -432,7 +437,6 @@ void ADSBRxView::on_frame(const ADSBFrameMessage * message) { } // frame.get_DF() == DF_ADSB if (logger) { - logger->append(u"adsb.txt"); // will log each frame in format: // 20171103100227 8DADBEEFDEADBEEFDEADBEEFDEADBEEF ICAO:nnnnnn callsign Alt:nnnnnn Latnnn.nn Lonnnn.nn logger->log_str(logentry); diff --git a/firmware/application/apps/ui_afsk_rx.cpp b/firmware/application/apps/ui_afsk_rx.cpp index e8daa261b..2a0d7de0b 100644 --- a/firmware/application/apps/ui_afsk_rx.cpp +++ b/firmware/application/apps/ui_afsk_rx.cpp @@ -107,9 +107,11 @@ AFSKRxView::AFSKRxView(NavigationView& nav) { nav.push(); }; + std::string folder = "LOGS"; + make_new_directory(folder); logger = std::make_unique(); if (logger) - logger->append("AFSK_LOG.TXT"); + logger->append("LOGS/AFSK.TXT"); // Auto-configure modem for LCR RX (will be removed later) baseband::set_afsk(persistent_memory::modem_baudrate(), 8, 0, false); diff --git a/firmware/application/apps/ui_aprs_rx.cpp b/firmware/application/apps/ui_aprs_rx.cpp index c1f168939..d5390548a 100644 --- a/firmware/application/apps/ui_aprs_rx.cpp +++ b/firmware/application/apps/ui_aprs_rx.cpp @@ -141,9 +141,11 @@ APRSRxView::APRSRxView(NavigationView& nav, Rect parent_rect) : View(parent_rect options_region.set_selected_index(0, true); + std::string folder = "LOGS"; + make_new_directory(folder); logger = std::make_unique(); if (logger) - logger->append("APRS_RX_LOG.TXT"); + logger->append("LOGS/APRS.TXT"); baseband::set_aprs(1200); diff --git a/firmware/application/apps/ui_sonde.cpp b/firmware/application/apps/ui_sonde.cpp index 5ddf157e5..0f3fedce2 100644 --- a/firmware/application/apps/ui_sonde.cpp +++ b/firmware/application/apps/ui_sonde.cpp @@ -133,12 +133,13 @@ SondeView::SondeView(NavigationView& nav) { 999); //set a dummy heading out of range to draw a cross...probably not ideal? }; + std::string folder = "LOGS"; + make_new_directory(folder); logger = std::make_unique(); if (logger) - logger->append(u"sonde.txt"); + logger->append(u"LOGS/SONDE.TXT"); // initialize audio: - field_volume.set_value((receiver_model.headphone_volume() - audio::headphone::volume_range().max).decibel() + 99); field_volume.on_change = [this](int32_t v) { diff --git a/firmware/application/ui_navigation.cpp b/firmware/application/ui_navigation.cpp index 1870b126f..bd1f9090b 100644 --- a/firmware/application/ui_navigation.cpp +++ b/firmware/application/ui_navigation.cpp @@ -367,7 +367,11 @@ void SystemStatusView::on_bias_tee() { }*/ void SystemStatusView::on_camera() { - auto path = next_filename_stem_matching_pattern(u"SCR_????"); + + std::string folder = "SCREENSHOTS"; + make_new_directory(folder); + + auto path = next_filename_stem_matching_pattern(u"SCREENSHOTS/SCR_????"); if( path.empty() ) { return; }