From c976d330d26cac230f15413f26aea0e6fd073c26 Mon Sep 17 00:00:00 2001 From: Paul Date: Thu, 28 May 2020 23:40:47 +0200 Subject: [PATCH] change tx_mode without needing a restart --- src/emsesp.cpp | 3 +++ src/system.cpp | 4 +--- src/system.h | 2 -- 3 files changed, 4 insertions(+), 5 deletions(-) diff --git a/src/emsesp.cpp b/src/emsesp.cpp index b42a2d5f5..f7d9cb2b2 100644 --- a/src/emsesp.cpp +++ b/src/emsesp.cpp @@ -700,6 +700,9 @@ void EMSESP::console_commands(Shell & shell, unsigned int context) { settings.ems_tx_mode(tx_mode); settings.commit(); shell.printfln(F_(tx_mode_fmt), settings.ems_tx_mode()); + // reset the UART + EMSuart::stop(); + EMSuart::start(tx_mode); } else { shell.println(F("Must be 1 for EMS generic, 2 for EMS+, 3 for HT3, 4 for experimental")); } diff --git a/src/system.cpp b/src/system.cpp index 08a7be18b..eacf4075b 100644 --- a/src/system.cpp +++ b/src/system.cpp @@ -45,8 +45,6 @@ uuid::log::Logger System::logger_{F_(logger_name), uuid::log::Facility::KERN}; uuid::syslog::SyslogService System::syslog_; #endif -EMSuart System::emsuart_; - #if defined(ESP8266) RTCVars System::state_; #endif @@ -170,7 +168,7 @@ void System::start() { if (safe_mode()) { } else { save_safe_mode(false); // next time boot up in normal mode - emsuart_.start(settings.ems_tx_mode()); + EMSuart::start(settings.ems_tx_mode()); } #endif } diff --git a/src/system.h b/src/system.h index b1396752f..3d69ac658 100644 --- a/src/system.h +++ b/src/system.h @@ -105,8 +105,6 @@ class System { static uint32_t heap_start_; static int reset_counter_; - static EMSuart emsuart_; - #if defined(ESP8266) static RTCVars state_; #endif