cancel
Showing results for 
Search instead for 
Did you mean: 

NUCLEO-H723ZG Issue with ETH and ping

SDeha.2
Associate II

Hello,

Sorry if i'm asking a dumb question or if someone already ask it, but I have some problem pinging my NUCLEO-H723ZG using Ethernet and lwIP without FreeRTOS.

  • I already tried the tutorial to create a project with Ethernet and lwIP step by step , it didn't turn out well (I have some question about this tutorial on memory layout of the DMA Descriptors) and I couldn't ping over the MCU.
  • I also tried the github example provided on the same article and more precisely I tried the STM32H723_Nucleo_ETH example. It worked very well, but it use FreeRTOS which I do not want to use for now.
  • I tried to create a project from the .IOC of STM32H723_Nucleo_ETH example, I modified it to disable FreeRTOS and disable ETH global interruption. It didn't work (I still couldn't ping over the MCU).

So I have multiple questions :

  1. Does lwIP must be used with FreeRTOS on the MCU of the H7 series or other kind of RTOS ? (I already use lwIP without a RTOS on a NUCLEO-F429ZI and I didn't have any issue with it).
  2. On the article to create a project, specifically on memory layout for STM32H72x/H73x devices. DMARxDscrTab & DMATxDscrTab have a size of 96, so if each DMA block is 32 bits in size and the DMA of the first Rx Descriptor (DMARxDscrTab) is 0x30000000, then the address of the first Tx Descriptor (DMATxDscrTab) should be at least 0x30000C00 (32*96=3072=>0xC00)?
    1. Maybe I did not understand the size of the descriptor. Could you care explain it ?

I think that's all the question for now.

Thanks in advance.

1 ACCEPTED SOLUTION

Accepted Solutions
SDeha.2
Associate II

EDIT: It’s solved. The problem was due to a careless mistake in the configuration of one of the MPU regions. It was 32 kB, not 32 B. I didn’t have a HardFault IRQ so I didn’t think that it was a memory issue. Sorry for all.

View solution in original post

3 REPLIES 3
SDeha.2
Associate II

EDIT: It’s solved. The problem was due to a careless mistake in the configuration of one of the MPU regions. It was 32 kB, not 32 B. I didn’t have a HardFault IRQ so I didn’t think that it was a memory issue. Sorry for all.

ArkadiuszRycyk
Associate

If it worked for you, would you mind sharing working example project please? I am using the exact same NUCLEO-H723ZG+Lwip+HAL. I am having weird issues where I can only ping the board 2 or 3 times after reset and then it stops pinging. It will however still detect link up/down changes just fine. I have done everything mentioned above with MPU, disabled global ETH interrupts and I am not using RTOS. This chip is giving me so many headaches, I think I will just switch to F2 as I see others have more luck with it. Such a bad code maintenance from ST.

Hi,

I am unable to ping nucleo-H723ZG could you plz help me.

 

Thanks