mirror of
https://github.com/MarekZegare4/MeshCore-Solo.git
synced 2026-07-26 14:58:12 +00:00
Reduced time drift from 60s/day to 7s/day for ESP32-based repeaters with power saving.
This commit is contained in:
@@ -154,10 +154,10 @@ void loop() {
|
||||
|
||||
if (the_mesh.getNodePrefs()->powersaving_enabled && !the_mesh.hasPendingWork()) {
|
||||
#if defined(NRF52_PLATFORM)
|
||||
board.sleep(1800); // nrf ignores seconds param, sleeps whenever possible
|
||||
board.sleep(0); // nrf ignores seconds param, sleeps whenever possible
|
||||
#else
|
||||
if (the_mesh.millisHasNowPassed(POWERSAVING_FIRSTSLEEP_SECS * 1000)) { // To check if it is time to sleep
|
||||
board.sleep(1800); // Sleep. Wake up after 30 minutes or when receiving a LoRa packet
|
||||
board.sleep(30); // Sleep. Wake up after a while or when receiving a LoRa packet
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
||||
@@ -73,18 +73,6 @@ public:
|
||||
return;
|
||||
}
|
||||
|
||||
// Use more accurate clock in sleep
|
||||
#if SOC_RTC_SLOW_CLK_SUPPORT_RC_FAST_D256
|
||||
if (rtc_clk_slow_src_get() != SOC_RTC_SLOW_CLK_SRC_RC_FAST) {
|
||||
|
||||
// Switch slow clock source to RC_FAST / 256 (~31.25 kHz)
|
||||
rtc_clk_slow_src_set(SOC_RTC_SLOW_CLK_SRC_RC_FAST);
|
||||
|
||||
// Calibrate slow clock
|
||||
esp_clk_slow_boot_cal(1024);
|
||||
}
|
||||
#endif
|
||||
|
||||
// Set GPIO wakeup
|
||||
gpio_num_t wakeupPin = (gpio_num_t)getIRQGpio();
|
||||
|
||||
|
||||
Reference in New Issue
Block a user