2024-10-16 04:08 AM - last edited on 2024-10-16 05:12 AM by Amel NASRI
Hello
We are using STM32H563VIT6 in our project. When the PCB was designed, our design team used PB13 and PB14 as TXD1 and TX_EN pins (from what I know, they were using CubeMX when designing the board). When I have started working on the board I was using Zephyr RTOS and noticed that `stm32h563vitx-pinctrl.dtsi` was missing those bindings. So I have modified it myself by mapping TXD1 and TX_EN into PB13 AF11 and PB14 AF11. Ethernet was working and I was able to both receive and transmit data.
Now, recently I got back to this project, upgraded to newest Zephyr RTOS version (3.7.0) and to my surprise the device was not working. I can see that the networking stack is receiving data, and processing it correctly (ARP announcements are acknowledged) but there are problems with transmission. I can see that something is being output on the TXD1 and TX_EN is asserted high. LEDs on the ethernet port are blinking during transmission, but I cannot see any frames received on the other end (Wireshark used).
In the next revision of the board we will move the signals to proper pins, but I am wondering if it is possible that by setting PB13 and PB14 to Alternate Function 11 they seem to be working as ethernet pins? We want to conduct some tests before making second revision, but due to this issue we cannot communicate with our module.
2024-10-16 05:22 AM
Hi @kdalach ,
I'm moving your post from Solved: STM32H573VI ETH_TXD1 and ETH_TX_EN pins - STMicroelectronics Community.
As previous one is already solved, I prefer to handle this request in a separate thread.
-Amel
To give better visibility on the answered topics, please click on Accept as Solution on the reply which solved your issue or answered your question.
2024-10-16 07:52 AM
Hello @kdalach, welcome to ST Community,
PB13 and PB14 cannot be used for ethernet peripheral, as described in the product erratum in section 2.2.24 "Ethernet alternate functions not available on PB13 and PB14". Early revisions of the datasheet incorrectly listed PB13 and PB14 as valid pins for Ethernet functions (ETH_RMII_TXD1 and ETH_RMII_TX_EN) but that was corrected in recent versions, so I'm not sure how the example worked before!
In your next board revision, reassign the Ethernet TXD1 and TX_EN signals to the correct pins as specified in the updated datasheet (PB15 and PG11 respectively) and update your .dts file accordingly.
Hope that helps!
To give better visibility on the answered topics, please click on Accept as Solution on the reply which solved your issue or answered your question.