mirror of
https://github.com/esphome/esphome.git
synced 2026-02-27 17:34:22 -07:00
[factory_reset] Optimize memory by storing interval as uint16_t seconds (#12462)
This commit is contained in:
@@ -8,8 +8,7 @@
|
||||
|
||||
#if !defined(USE_RP2040) && !defined(USE_HOST)
|
||||
|
||||
namespace esphome {
|
||||
namespace factory_reset {
|
||||
namespace esphome::factory_reset {
|
||||
|
||||
static const char *const TAG = "factory_reset";
|
||||
static const uint32_t POWER_CYCLES_KEY = 0xFA5C0DE;
|
||||
@@ -33,10 +32,10 @@ void FactoryResetComponent::dump_config() {
|
||||
this->flash_.load(&count);
|
||||
ESP_LOGCONFIG(TAG, "Factory Reset by Reset:");
|
||||
ESP_LOGCONFIG(TAG,
|
||||
" Max interval between resets %" PRIu32 " seconds\n"
|
||||
" Max interval between resets: %u seconds\n"
|
||||
" Current count: %u\n"
|
||||
" Factory reset after %u resets",
|
||||
this->max_interval_ / 1000, count, this->required_count_);
|
||||
this->max_interval_, count, this->required_count_);
|
||||
}
|
||||
|
||||
void FactoryResetComponent::save_(uint8_t count) {
|
||||
@@ -61,8 +60,8 @@ void FactoryResetComponent::setup() {
|
||||
}
|
||||
this->save_(count);
|
||||
ESP_LOGD(TAG, "Power on reset detected, incremented count to %u", count);
|
||||
this->set_timeout(this->max_interval_, [this]() {
|
||||
ESP_LOGD(TAG, "No reset in the last %" PRIu32 " seconds, resetting count", this->max_interval_ / 1000);
|
||||
this->set_timeout(static_cast<uint32_t>(this->max_interval_) * 1000, [this]() {
|
||||
ESP_LOGD(TAG, "No reset in the last %u seconds, resetting count", this->max_interval_);
|
||||
this->save_(0); // reset count
|
||||
});
|
||||
} else {
|
||||
@@ -70,7 +69,6 @@ void FactoryResetComponent::setup() {
|
||||
}
|
||||
}
|
||||
|
||||
} // namespace factory_reset
|
||||
} // namespace esphome
|
||||
} // namespace esphome::factory_reset
|
||||
|
||||
#endif // !defined(USE_RP2040) && !defined(USE_HOST)
|
||||
|
||||
Reference in New Issue
Block a user