From 30743dc6b7fd26350e8c41a7e3ebb22070ce9604 Mon Sep 17 00:00:00 2001 From: Benjamin Koch <bbbsnowball@gmail.com> Date: Tue, 27 Jun 2023 23:26:54 +0200 Subject: [PATCH] skip UART error that is caused by startup --- firmware/rust1/src/rs485.rs | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/firmware/rust1/src/rs485.rs b/firmware/rust1/src/rs485.rs index 4b0c800..3aa39a2 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); -- GitLab