Can't Receive Ethernet packets in STM32H750VB
Hi all,
I have used the Ethernet in my custom design board based on STM32H750VB and using STM32CubeIDE with the latest updates. It has an RMII connection to a PHY and I could successfully send UDP packets to the PC both with both polling and interrupt based methods. Unfortunately, I can't receive any packet from PC. Below are my observations:
- I am sure that PC is sending UDP broadcast packets because I see them on the Wireshark!.
- I have also seen that RXD[1:0] and CRS_DV signals are toggling and connected to the Microcontroller. hence there is not any problem with the PHY chip (LAN8742A).
- I have also configured the filters to pass all broadcast messages and every other filter settings to make sure that nothing is filtered in any layer.
- When I connect cable and immediately after initialization I see that MTLQICSR register changes to a state that shows receive overflow in MTL buffer happened and also MTLRQDR register shows that RX Queue is half or Full!. This happens even if I activate filters of MAC!. This is kind a strange because when all filters are nabled MAC should only pass specific packets to MTL!. while I am not sending any packets.
Regarding above descriptions I don't know why no packet is received or why HAL_ETH_IsRxDataAvailable() function can't find any received message.
I have also some questions I don't know why the automatic generated code doesn't use or initialize Rx_Buff array? Isn't it needed for the polling or interrupt mode?
I would really appreciate any help on this issue.
Thanks in advance,
Hossein
