cancel
Showing results for 
Search instead for 
Did you mean: 

ethernet ping issue with cubemx 6.11.1 and firmware 1.10.0

saikumar
Associate III

i was tried with cubemx 5.4 and fw 1.5.0 ethernet ping is successfully done. 

but now im trying to ping with cubemx 6.11.1 and FW 1.10.0 but im not able ping . so anybody done with cubemx 6.1.0 and above version. plzz help me on this.... thanks,,,,,,,

 

and main problem when i use 6.1.0 version and above . i need to tap the run button 3 to 5 times to start the execute the program . and another one  after some time control goes  to hard fault.  

   

1 ACCEPTED SOLUTION

Accepted Solutions
STea
ST Employee

Hello @saikumar ,

after examination of your files, I have found the following:

-the stm32_hal_eth.c is not updated to the late version which can be found in https://github.com/STMicroelectronics/stm32h7xx_hal_driver/blob/b2b4c45001f1b6b72ae449713607896fd6ca4c6b/Src/stm32h7xx_hal_eth.c Release v1.11.3 maybe try to migrate to the latest version of cube Firmware to do this automatically 

-in your Ethernetif.c file i see that you are placing descriptors @0x30040000 and onwards so i assume that you are using a dual core H7 product if it is not the case this should be changed 
you can refer to the tutorial  How to create a project for STM32H7 with Ethernet ... - STMicroelectronics Community 
to properly configure Ethernet and its related memory configuration on a dual core device.

if you are not using RTOS you need to add the following in the while(1) loop of your main.c for periodic handling 

/* Read a received packet from the Ethernet buffers and send it
to the lwIP for handling */
ethernetif_input(&gnetif);

/* Handle timeouts */
sys_check_timeouts();

you can refer to the example in CubeFirmware as a reference .
Regards

In order to give better visibility on the answered topics, please click on Accept as Solution on the reply which solved your issue or answered your question.

View solution in original post

1 REPLY 1
STea
ST Employee

Hello @saikumar ,

after examination of your files, I have found the following:

-the stm32_hal_eth.c is not updated to the late version which can be found in https://github.com/STMicroelectronics/stm32h7xx_hal_driver/blob/b2b4c45001f1b6b72ae449713607896fd6ca4c6b/Src/stm32h7xx_hal_eth.c Release v1.11.3 maybe try to migrate to the latest version of cube Firmware to do this automatically 

-in your Ethernetif.c file i see that you are placing descriptors @0x30040000 and onwards so i assume that you are using a dual core H7 product if it is not the case this should be changed 
you can refer to the tutorial  How to create a project for STM32H7 with Ethernet ... - STMicroelectronics Community 
to properly configure Ethernet and its related memory configuration on a dual core device.

if you are not using RTOS you need to add the following in the while(1) loop of your main.c for periodic handling 

/* Read a received packet from the Ethernet buffers and send it
to the lwIP for handling */
ethernetif_input(&gnetif);

/* Handle timeouts */
sys_check_timeouts();

you can refer to the example in CubeFirmware as a reference .
Regards

In order to give better visibility on the answered topics, please click on Accept as Solution on the reply which solved your issue or answered your question.