2023-07-10 12:25 PM
What is the theoretical maximum data throughput for the 10/100 Ethernet port on an MCU running lightweight IP (lwIP) on baremetal? I am simply looking to receive UDP data and write it directly to local memory as fast as possible.
I am using STM32H723, but I imagine that the answer will be similar for different MCU.
Thank you.
2023-07-11 04:26 AM - edited 2023-07-11 04:27 AM
With the exact same STM32H723 I get about 90 Mbit/s transmit rate with TCP, with lwIP, bare metal.
I haven't really checked the receive rate, it was about 70 Mbit/s or so, which is far above what I need, so I didn't go into more detail.
So that's all with TCP, so you should get at least the same with UDP.
I do NOT use the ethernet HAL libraries, but from what I've read here they also reach the maximum bit rate.
2023-07-11 04:29 AM
For extra RAM, I recommend using the OCTOSPI with HyperRAM, works like a charm, with at least 400 Mbit/s.
2023-07-24 05:59 PM
Got 91-95M when runing perf on Lwip+Freertos. Board is NUCLEO-H723ZG.
2024-07-04 02:22 AM
Hello!
Could you please explain a bit how to configure lwip and rtos parameters to reach that speed? I have already reach high speed on the data send, but I am not being able to receive that message on other board. I think that this may be because of the memory configuration...
Thank you !!!
2024-07-04 02:45 AM
I'm not using RTOS, and I'm not using the ethernet HAL drivers.
Although these high data rates should be possible with both, from what I've seen here from other users.