2025-07-12 1:25 AM - edited 2025-07-12 1:39 AM
I tried running the LwIP_TCP_Echo_Server app on the Nucleo Board H7S3L8 (MB1737-H7S3-L8-B02) using STM32CubeH7RS\Projects\NUCLEO-H7S3L8\Applications\LwIP\LwIP_TCP_Echo_Server sample code.
The code downloaded fine, but TCP communication didn’t work.
I started a DHCP server using Tftpd32 software, but the MCU didn’t get a DHCP IP and showed a static IP (192.168.0.10) instead.
I tried pinging the MCU’s static IP from my laptop using a straight Ethernet cable, but it failed.
I tested with both crossover and straight Ethernet cables and used a Wi-Fi modem/router as another DHCP server, but the result was the same.
I also tried other sample codes (LwIP_UDP_Echo_Client, LwIP_UDP_Echo_Server, LwIP_TCP_Echo_Client, LwIP_HTTP_Server_Raw), but the result was the same.
I followed the steps in the Readme file and enabled the XSPI2_HSLV=1 for high-speed I/O.
Did I miss any steps? Screenshots are attached for reference.
MCU Comm3 serial response
Ping request from Laptop to the MCU
Wireshark packet while sending echo command from Laptop to the MCU
DHCP server - PC utility TFTPD32
Laptop IP Address configuration
**System Information:**
-- Board: NUCLEO-H7S3L8 (MB1737-H7S3-L8-B02)
-- STM32CubeIDE: Version 1.17.0 (Build: 23558_20241155_2245)
-- STM32CubeMX: Version 6.13.0-RC5 (Build: 20241122-0809)
Any guidance would be greatly appreciated!
Thanks!
Solved! Go to Solution.
2025-07-15 6:47 AM
Yes, it is safe to do so. As can be seen in the Getting Started with STM32H7Rx/7Sx MCUs Hardware Development application note, the voltage range for VDDXSPI2 is between 1.62V and 3.6V. Therefore, changing the jumper JP5 to 3V3 should allow the example to work correctly.
2025-07-12 1:27 AM - edited 2025-07-12 1:40 AM
Additional Screenshots
echo request from Laptop to the MCU
Main_h file
MCU Board Image
2025-07-13 12:11 AM
It looks like your board does not respond to ARP at all. Check if it receives any eth packet (set breakpoint in low_level_input).
2025-07-15 4:00 AM
Hello @Sajidaap,
Please try changing the JP5 jumper position to 3V3; this should resolve the issue.
Best regards,
2025-07-15 5:06 AM
Hi @STackPointer64 , @Pavel A.
Thanks for your reply.
The Option bit XSPI2-HSLV is "Checked" in the sample code.
As I understand, the HSLV is only activated when VDD ≤ 2.7 V. This feature shouldn’t be used at a voltage higher than 2.7 V, as it can lead to unexpected behavior. And the I/O HSLV configuration bit must not be set if the I/O supply (VDD) is above 2.7 V. Setting it while the voltage is higher than 2.7 V can damage the device.
Please correct me if I am wrong.
Is it Ok to set the jumper to 3.3V while the Option bit XSPI2-HSLV is "Checked"?
Thanks.
2025-07-15 5:43 AM
Can you disable XSPI2_HSLV while dealing with the ETH issue?
2025-07-15 6:47 AM
Yes, it is safe to do so. As can be seen in the Getting Started with STM32H7Rx/7Sx MCUs Hardware Development application note, the voltage range for VDDXSPI2 is between 1.62V and 3.6V. Therefore, changing the jumper JP5 to 3V3 should allow the example to work correctly.
2025-07-15 7:10 AM - edited 2025-07-15 7:14 AM
Thanks @STackPointer64 , @Pavel A.
When I disable the XSPI2_HSLV, I am getting an error while debugging. (Failed to execute MI command)
It's worked when I changed the jumper JP5 to 3V3 while the XSPI2_HSLV bit is enabled.
@STackPointer64, Thanks for the solution.
Would you please help me to understand the part highlighted below? I have enabled the XSPI2_HSLV bit while the jumper JP5 is connected to 3V3.
Also, the Jumper setting is not mentioned in the Readme file!
Table 4. Power supply connection
Thanks,
Sajid
2025-07-15 7:13 AM
echotool
DHCP
2025-07-15 7:28 AM
Yes, my recommendation was to set the jumper to 3V3 while the XSPI2-HSLV option is enabled. I’m glad to hear that this resolved your issue. Regarding your question, the highlighted section refers to the VDDIO_HSLV option byte, which must not be activated when the device operates above 2.7V, as this could potentially damage your device.