cancel
Showing results for 
Search instead for 
Did you mean: 

lwip on STM32H7 does not transmit anything due to timeout

HMüll.4
Senior

Hi,

I'm running a (custom) board that makes use of an STM32H723VET and a LAN8742. A project is set up in CubeMX that makes use of lwIP together with this LAN-chip (there is an issue in CubeMX which deselects the LAN8742 on loading the CubeMX file, but this is something I have already catched). lwIP is configured to make use of a static IP.

Now when I run my code in CubeIDE, I can see the interface is set up properly and it detects a 100 MBit duplex connection.

Unfortunately that's all what works. In call of netif_set_link_up(), an ARP-request is tried to be transmitted. Some layers deeper, within the HAL-functions, this ARP-request can not be sent. Function HAL_ETH_Transmit() ends up in an timeout while waiting for these ARP-data being transmitted.

That lets me assume, something wents wrong with the hardware initialisation. However, functions HAL_ETH_Init() and LAN8742_Init() go through without any error and function LAN8742_GetLinkState() returns a proper link state LAN8742_STATUS_100MBITS_FULLDUPLEX.

So...what could be the reason for the transmission timeout? Any idea where to look/what to check?

Thanks!

 

 

0 REPLIES 0