cancel
Showing results for 
Search instead for 
Did you mean: 

Azure NetXDuo WebServer

fernandes
Associate II

Hi people,

I'm using a STM32H7 with a NetXduo web server example. I implementend a http get endpoint to get some data and a http put endpoint to reset the mcu. Sometimes, after the reset, the network stops to work. The http get, put and even the ping doesn't respond. The others threads continue to working fine

 

It appears that this problem is more frequent when I send a get or a put immediately after a reset, but it can be only my impression. How can I debug this problem? I'm a novice on Azure RTOS. 

6 REPLIES 6
OSAKE.1
ST Employee

Hello @fernandes

 

Could you please provide the reset process you are using? Also, could you provide the Ethernet handle state when the issue occurs?

 

Thanks 

Omar

If your question is answered, please close this topic by clicking "Accept as Solution".

Thanks
Omar
Pavel A.
Evangelist III

Could be related to reset of the PHY. If the PHY is already alive and link established, there's no need to reset it. If you still reset it, need to do it properly and wait for the link again (IIRC, not quite sure about details).

Also, stale data can be left in the memory of DMA descriptors, buffers... - it is not zeroed by default.

 

Hello, OSAKE

 

The process use NVIC system reset.

fernandes_0-1713286767386.png

The ethernet handler shows an error on DMA
fernandes_1-1713286807168.png

 

The DMA error appears on ethernet handler even when the application works. On the SFRs its possible to see the RBU bit. This bit indicates that the application owns the next descriptor in the Receive list, and the
DMA cannot acquire it. Why this is happening?

I putted the SCB_CleanInvalidateDCache at the program beginning, but has not effetc.

 

fernandes_0-1713893483091.png

 

Pavel A.
Evangelist III

The ethernet handler shows an error on DMA

You're going to reset anyway. Disable the ETH and its DMA after http_server_stop() ?

 

ASEHST
ST Employee

Hello @fernandes,

Would you please share the whole project you have used to reproduce the issue in order to allow a better analysis of the problem.

With regards,

If your question is answered, please close this topic by clicking "Accept as Solution".