2021-06-05 07:47 AM
I have a working H743zi2 FW 1.7 which does a ping and web respond and works great.
I moved to FW 1.9 and a new project now fails to even ping.
The interesting part is that if I run the project based on FW1.7 first, keep power on, then run the one based on FW1.9 the new project works.
If I power down then back up it then stops working.
It looks like FW1.9 is now not initiallising something properly. Its pretty clear as its completely repeatable.
I have checked the IO (as it now defaults to Slow on ETH pins) and forced it to Very High. Still not a fix.
Has anyone any ideas. Clearly something got broken from FW 1.7 to 1.9, which is frustrating.
If I can get it working then I have a working solution that from reading other posts I'm sure would be useful!
2021-06-07 01:10 PM
UPDATE: I think I found one issue. @Pavel A. and @Piranha thank you for your examples. As .ioc had set the IO speed to Low I had set it to Very High. It needed to be just High.
I thought this had fixed it but I am now not sure as removing the USB_OTG from the .ioc caused a fail with the settings....... I will continue to try and figure this edge-case out.
2021-06-07 03:20 PM
I have now narrowed it down to the following line of code which will probably help some people:
__HAL_RCC_USB_OTG_FS_CLK_ENABLE();
I found that even if I select CubeIDE to setup the default perherphials, they do not show as configured in the .ioc. However in MX_GPIO_Init() the code is still produced to configure and setup the pins for the default perhephials of the USB OTG and UART3.
I have not yet tried just selecting a bare chip and starting totally from scratch.
At the least this is a useable work-around. But really I'd like to know why I need to enable the USB CLK to get the ETH working properly.
Hopefully this thread will be of use and once this is done, so far I haven't broken the ping or web even with a heavy use pattern. I'll leave it running overnight and see if I can break it.
2021-11-26 02:18 PM
Hi @MEdgerton ,
I tried your project successfully, but if I open the Cube to change the pinout by trying to open the .ioc file, it asks me to migrate the project:
If I choose to continue, I get a blank cube application, and if I migrate the project, I am unable to compile the project.
So I tried opening new project using you .ioc file, and add all the .c files to then project, no I am able to compile, but I get hardware fault. I tried looking through all the files and there is no diff. Any idea what I may be doing wrong?
I have attached the migrated project file
Any insight is appreciated.