More ADC fixes
timeout: Forgot to restart counter
timeout: Catch double-schedulings
Rework charging modes
Ensure we don't double-schedule
charge: Fix feedback period
charge: Ensure we reset last_power
usart: Non-blocking tx