diff --git a/firmware/rust1/src/rs485.rs b/firmware/rust1/src/rs485.rs index 4b0c800baee63a79dd1790b7bed9141ed0063ce4..3aa39a2b7db8931dd490868006c16f92d321aa84 100644 --- a/firmware/rust1/src/rs485.rs +++ b/firmware/rust1/src/rs485.rs @@ -266,6 +266,13 @@ impl<H: RS485Handler> RS485<H> { pin_pad(&self.rx_pin).modify(|w| w.set_pue(true)); } + // This switching of RX function might have caused an error to be received. Let's skip that. + if true { + let mut rx_buf_one = [0; 1]; + let rx_future = self.rx.read(&mut rx_buf_one); + let _ = select(rx_future, Timer::after(Duration::from_micros(10))).await; + } + info!("Program size for auto-baud: {}, for tx: {}, wait_for_not_idle is at: {}", prg_autobaud.program.code.len(), prg_tx.program.code.len(), prg_autobaud.public_defines.wait_for_not_idle);