diff --git a/rust/src/hal/esp.rs b/rust/src/hal/esp.rs index 4a70d3e..3e087fb 100644 --- a/rust/src/hal/esp.rs +++ b/rust/src/hal/esp.rs @@ -47,6 +47,7 @@ use portable_atomic::AtomicBool; use sntpc::{NtpContext, NtpTimestampGenerator, NtpUdpSocket, get_time}; use super::shared_flash::MutexFlashStorage; +use crate::network::net_task; #[esp_hal::ram(unstable(rtc_fast), unstable(persistent))] static mut LAST_WATERING_TIMESTAMP: [i64; PLANT_COUNT] = [0; PLANT_COUNT]; @@ -732,11 +733,6 @@ impl Esp<'_> { } -#[embassy_executor::task(pool_size = 2)] -async fn net_task(mut runner: Runner<'static, Interface<'static>>) { - runner.run().await; -} - #[embassy_executor::task] async fn run_dhcp(stack: Stack<'static>, ip: Ipv4Addr) { use core::net::SocketAddrV4; diff --git a/rust/src/network.rs b/rust/src/network.rs index 48500a5..c27a03d 100644 --- a/rust/src/network.rs +++ b/rust/src/network.rs @@ -1,5 +1,7 @@ use alloc::string::String; use chrono::{DateTime, Utc}; +use embassy_net::Runner; +use esp_radio::wifi::Interface; use serde::Serialize; #[derive(Serialize, Debug, PartialEq)] @@ -17,3 +19,8 @@ pub enum NetworkMode { }, OFFLINE, } + +#[embassy_executor::task(pool_size = 2)] +pub(crate) async fn net_task(mut runner: Runner<'static, Interface<'static>>) { + runner.run().await; +}