WM
Omar Hiari Finally I figured out why the embassy_time::Delay does not work. It is implemented using embassy_time::Instant , which uses TIM2 ( time-driver-any feature). My selected PWM pin(TIM2_CH2) also uses the TIM2 timer, so the instant value resets at each PWM cycle, resulting in an unusable Instant . Never mind, cortex_m::delay::Delay works great.