Skip to main content
Explorer
April 4, 2024
Question

Azure NetXDuo WebServer

  • April 4, 2024
  • 4 replies
  • 1733 views

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. 

    This topic has been closed for replies.

    4 replies

    Technical Moderator
    April 16, 2024

    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

    fernandesAuthor
    Explorer
    April 16, 2024

    Hello, OSAKE

     

    The process use NVIC system reset.

    fernandes_0-1713286767386.png

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

     

    fernandesAuthor
    Explorer
    April 23, 2024

    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

     

    Super User
    April 16, 2024

    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.

     

    Super User
    April 23, 2024

    The ethernet handler shows an error on DMA

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

     

    ST Employee
    April 25, 2024

    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,