``` use embassy_executor::Spawner; use esp_backtrace as _; use esp_hal::{ clock::CpuClock, delay::Delay, gpio::{Level, Output}, rng::Rng, time, timer::timg::TimerGroup, }; use esp_println::println; use esp_wifi::{ble::controller::BleConnector, init, EspWifiController}; macro_rules! mk_static { ($t:ty, $val:expr) => {{ static STATIC_CELL: static_cell::StaticCell<$t> = static_cell::StaticCell::new(); let x = STATIC_CELL.uninit().write($val); x }}; } #[esp_hal_embassy::main] async fn main(spawner: Spawner) { let config = esp_hal::Config::default().with_cpu_clock(CpuClock::max()); let peripherals = esp_hal::init(config); esp_alloc::heap_allocator!(72 * 1024); let timg0 = TimerGroup::new(peripherals.TIMG0); let init = &*mk_static!( EspWifiController<'static>, init( timg0.timer0, Rng::new(peripherals.RNG), peripherals.RADIO_CLK, ) .unwrap() ); let timg1 = TimerGroup::new(peripherals.TIMG1); esp_hal_embassy::init(timg1.timer0); let led = Output::new(peripherals.GPIO2, Level::Low); spawner.spawn(blink(led)).unwrap(); let mut bluetooth = peripherals.BT; let connector = BleConnector::new(&init, &mut bluetooth); let now = || time::now().duration_since_epoch().to_millis(); let mut _ble = Ble::new(connector, now); println!("Connector created"); println!("Embassy initialized!"); loop {} } #[embassy_executor::task] pub async fn blink(mut led: Output<'static>) { let delay = Delay::new(); loop { led.toggle(); delay.delay_millis(500); } } ``` Why doesn't "blink task" work and also embassy_time::Timer doesn't throw any error but doesn't introduce any delay as well. I cloned my project from [here](https://github.com/esp-rs/esp-hal/blob/v0.23.1/examples/src/bin/wifi_embassy_ble.rs).