cancel
Showing results for 
Search instead for 
Did you mean: 

STM32F7 problem with ETH on high UDP load

GoranDragovic
Associate

Hello everyone. 

I'm developing Ethernet on NuceloF746ZG board. 

I'm listening to the UDP on port 1001,where there is datagram incoming every 2ms, but my callback function gets called 96 times, before it stops, and resumes for next 96 times, and so on.This is happening with lwIP and Mongoose.

I followed example code, which in the end worked the same. Changing any parameter from increasing Descriptors number, to RxBuffer didn't have impact.
I tracked that HAL_ETH_ReadData also gets called 98 times and hangs until it repeats itself. 

Bellow are attached layout and configurations.
I suspect something with ETH_DMA default setup or memory alignment but wasn't unable to track it so far. 

Any help will be welcomed.

2 REPLIES 2
GoranDragovic
Associate

Sidenote:

with Cache ON or OFF, same results, MPU across memory also.

STackPointer64
ST Employee

Hello @GoranDragovic, and welcome to the ST community!

Thank you for your patience. I have tried to recreate your use case using the same configuration and code you provided, but I did not encounter any issues. I am attaching my project, which was developed for the STM32F756—sharing the same architecture as the STM32F746, with the only difference being the addition of crypto modules. Additionally, I included a Python script I created to simulate your use case and added a debug message that displays the counter value when the user button is clicked and an interrupt is triggered.

Please feel free to compare both projects and share your feedback. I would be happy to assist further.

Best regards,

To improve visibility of answered topics, please click Accept as Solution on the reply that resolved your issue or answered your question.