2024-06-25 10:58 PM
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.
Solved! Go to Solution.
2024-07-30 04:10 AM
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
2024-07-30 04:10 AM
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