mirror of
https://github.com/esphome/esphome.git
synced 2024-11-25 00:18:11 +01:00
dump config after logging CDC port is opened by host (#6169)
This commit is contained in:
parent
6a46548a8b
commit
d4489ac373
2 changed files with 22 additions and 1 deletions
|
@ -3,6 +3,7 @@
|
||||||
|
|
||||||
#include "esphome/core/hal.h"
|
#include "esphome/core/hal.h"
|
||||||
#include "esphome/core/log.h"
|
#include "esphome/core/log.h"
|
||||||
|
#include "esphome/core/application.h"
|
||||||
|
|
||||||
namespace esphome {
|
namespace esphome {
|
||||||
namespace logger {
|
namespace logger {
|
||||||
|
@ -128,6 +129,24 @@ Logger::Logger(uint32_t baud_rate, size_t tx_buffer_size) : baud_rate_(baud_rate
|
||||||
this->tx_buffer_ = new char[this->tx_buffer_size_ + 1]; // NOLINT
|
this->tx_buffer_ = new char[this->tx_buffer_size_ + 1]; // NOLINT
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#ifdef USE_LOGGER_USB_CDC
|
||||||
|
void Logger::loop() {
|
||||||
|
#ifdef USE_ARDUINO
|
||||||
|
if (this->uart_ != UART_SELECTION_USB_CDC) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
static bool opened = false;
|
||||||
|
if (opened == Serial) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
if (false == opened) {
|
||||||
|
App.schedule_dump_config();
|
||||||
|
}
|
||||||
|
opened = !opened;
|
||||||
|
#endif
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
void Logger::set_baud_rate(uint32_t baud_rate) { this->baud_rate_ = baud_rate; }
|
void Logger::set_baud_rate(uint32_t baud_rate) { this->baud_rate_ = baud_rate; }
|
||||||
void Logger::set_log_level(const std::string &tag, int log_level) {
|
void Logger::set_log_level(const std::string &tag, int log_level) {
|
||||||
this->log_levels_.push_back(LogLevelOverride{tag, log_level});
|
this->log_levels_.push_back(LogLevelOverride{tag, log_level});
|
||||||
|
|
|
@ -56,7 +56,9 @@ enum UARTSelection {
|
||||||
class Logger : public Component {
|
class Logger : public Component {
|
||||||
public:
|
public:
|
||||||
explicit Logger(uint32_t baud_rate, size_t tx_buffer_size);
|
explicit Logger(uint32_t baud_rate, size_t tx_buffer_size);
|
||||||
|
#ifdef USE_LOGGER_USB_CDC
|
||||||
|
void loop() override;
|
||||||
|
#endif
|
||||||
/// Manually set the baud rate for serial, set to 0 to disable.
|
/// Manually set the baud rate for serial, set to 0 to disable.
|
||||||
void set_baud_rate(uint32_t baud_rate);
|
void set_baud_rate(uint32_t baud_rate);
|
||||||
uint32_t get_baud_rate() const { return baud_rate_; }
|
uint32_t get_baud_rate() const { return baud_rate_; }
|
||||||
|
|
Loading…
Reference in a new issue