STM32H750B-DK Ethernet Not Responding to Ping
Hello everyone,
I am working on Ethernet communication using the STM32H750B-DK with STM32CubeIDE and LwIP. I am using the onboard LAN8742 Ethernet PHY and a direct Ethernet connection between the PC and the board. LwIP is configured with NO_SYS = 1, and I am continuously calling MX_LWIP_Process() in the main loop. When I check the Ethernet traffic in Wireshark, the PC continuously sends ARP requests asking for the STM32 MAC address, but the STM32 does not send an ARP reply. While debugging the gnetif structure, I see PHYLinkState = 0, speed = 0, and duplex = 0. I also checked the STM32H750B-DK documentation and found that the onboard Ethernet PHY is connected through MII. My CubeMX project was initially configured for RMII, so I changed the Ethernet configuration to MII. I am also checking the Ethernet DMA/LwIP memory configuration and moved the Ethernet descriptor and RX buffer sections to D2 SRAM using the linker script. However, I still cannot get a ping response from the board.
Current observations:
-
PC sends ARP requests continuously.
-
No ARP reply is received from the STM32.
-
PHYLinkState = 0 -
speed = 0 -
duplex = 0 -
CubeMX Ethernet configuration was changed from RMII to MII.
-
MX_LWIP_Process()is running continuously. -
Ethernet DMA/RX sections were moved to D2 SRAM.
Questions:
-
How can I properly verify that the LAN8742 PHY is working?
-
How can I check whether the STM32 Ethernet MAC/DMA is receiving the ARP packets?
-
Is the MII configuration correct for the STM32H750B-DK?
-
Is the D2 SRAM linker configuration correct for Ethernet DMA?
-
Is there any recommended reference project or configuration for STM32H750B-DK + LAN8742 + MII + LwIP?
Any suggestions or guidance would be greatly appreciated. Thank you.
