This commit is contained in:
Dimitrios Kouros
2026-08-05 15:03:28 +03:00
parent 68194e336c
commit 069453e154
+9 -8
View File
@@ -17,7 +17,7 @@ use esp_hal::{
delay::Delay,
gpio::{DriveMode, Flex, OutputConfig, Pull},
interrupt::software::SoftwareInterruptControl,
rtc_cntl::{Rtc, reset_reason, sleep::TimerWakeupSource, wakeup_cause},
rtc_cntl::{reset_reason, sleep::{LowPower, TimerWakeupSource}, wakeup_cause},
system::Cpu,
timer::timg::TimerGroup,
};
@@ -131,8 +131,8 @@ async fn main(_spawner: Spawner) -> ! {
.unwrap();
let delay = Delay::new();
let mut rtc = Rtc::new(peripherals.LPWR);
//let mut rtc = Rtc::new(peripherals.RTC_TIMER);//LPWR);
let mut lpwr = LowPower::new(peripherals.LPWR);
let reason = reset_reason(Cpu::ProCpu);
let wake_reason = wakeup_cause();
@@ -157,7 +157,7 @@ async fn main(_spawner: Spawner) -> ! {
}
Err(error) => {
esp_println::dbg!("An error occurred while trying to read sensor: {:?}", error);
deep_sleep(&mut rtc, &delay, 30);
deep_sleep(&mut lpwr, &delay, 30);
}
}
@@ -180,13 +180,14 @@ async fn main(_spawner: Spawner) -> ! {
.send_async(&peer.peer_address, (data + fill.as_str()).as_bytes())
.await;
println!("Send status: {:?}", status);
deep_sleep(&mut rtc, &delay, DEEP_SLEEP_TIME);
deep_sleep(&mut lpwr, &delay, DEEP_SLEEP_TIME);
}
}
fn deep_sleep(rtc: &mut Rtc, delay: &Delay, time : u64) {
let timer = TimerWakeupSource::new(core::time::Duration::from_secs(time));
fn deep_sleep(lpwr: &mut LowPower, delay: &Delay, time : u64) {
let timer = TimerWakeupSource::new(esp_hal::time::Duration::from_secs(time));
println!("Going sleep for {} seconds", time);
delay.delay_millis(100);
rtc.sleep_deep(&[&timer]);
//rtc.sleep_deep(&[&timer]);
lpwr.sleep_deep(&[&timer]);
}