From fb04a142271ce5dd1a7d1ea674f2c0070123fb85 Mon Sep 17 00:00:00 2001 From: zdmx <hi@zdmx.me> Date: Wed, 16 Aug 2023 23:20:23 +0200 Subject: [PATCH] fix badgenet send size 0 --- embassy-net-badgelink/src/lib.rs | 21 +++++++++------------ 1 file changed, 9 insertions(+), 12 deletions(-) diff --git a/embassy-net-badgelink/src/lib.rs b/embassy-net-badgelink/src/lib.rs index 3a40992..0722e9a 100644 --- a/embassy-net-badgelink/src/lib.rs +++ b/embassy-net-badgelink/src/lib.rs @@ -8,7 +8,6 @@ use embedded_hal_async::serial::Write; use esp32s3_hal::uart::Instance; use esp32s3_hal::Uart; use esp_println::println; -use heapless::Vec; use serial_line_ip::{Decoder, Encoder}; const MTU: usize = 1500; @@ -50,28 +49,26 @@ where .await { Either::First((r, p)) => { - let read_bytes = r.unwrap(); - println!("reading from uart {}", read_bytes); - match self.decoder.decode(&read_buf, p) { + let packet_size = r.unwrap(); + println!("got packet: {:?}", &read_buf[0..packet_size]); + match self.decoder.decode(&read_buf[0..packet_size], p) { Ok((num_bytes, _, end_of_packet)) => { - println!("decoded packet"); if end_of_packet { - println!("end of packet"); + println!("recieved packet"); rx_chan.rx_done(num_bytes); } } - Err(error) => println!("Error: {}", error), + Err(error) => println!("Cant decode packet: {}", error), } } Either::Second(p) => { - println!("sending packet"); - //println!("packet len {}", p.len()); + println!("sending packet: {:x?}", p); let mut enc = [0u8; 1500]; let mut encoder = Encoder::new(); - encoder.encode(p, &mut enc).unwrap(); - let num_bytes = encoder.finish(&mut enc).unwrap(); + let mut num_bytes = encoder.encode(p, &mut enc).unwrap(); + num_bytes += encoder.finish(&mut enc).unwrap(); + println!("sent packet: {:?}", &enc[0..num_bytes.written]); self.uart.write(&enc[0..num_bytes.written]).await.unwrap(); - //println!("packet written to uart"); tx_chan.tx_done(); } } -- GitLab