cancel
Showing results for 
Search instead for 
Did you mean: 

TCP Communication Failure on Nucleo-H7S3L8 with LwIP_TCP_Echo_Server

Sajidaap
Associate II

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 responseMCU Comm3 serial response

Ping request from Laptop to the MCUPing request from Laptop to the MCU

Wireshark packet while sending echo command from Laptop to the MCUWireshark packet while sending echo command from Laptop to the MCU

DHCP server - PC utility TFTPD32DHCP server - PC utility TFTPD32

Laptop IP Address configurationLaptop 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!

1 ACCEPTED SOLUTION

Accepted Solutions

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.

To improve visibility of answered topics, please click 'Accept as Solution' on the reply that resolved your issue or answered your question.

View solution in original post

11 REPLIES 11
Sajidaap
Associate II

Additional Screenshots 

echo request from Laptop to the MCUecho request from Laptop to the MCU

Main_h fileMain_h file

MCU Board ImageMCU Board Image

 

Pavel A.
Super User

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).

 

STackPointer64
ST Employee

Hello @Sajidaap,

Please try changing the JP5 jumper position to 3V3; this should resolve the issue.

Best regards,

To improve visibility of answered topics, please click 'Accept as Solution' on the reply that resolved your issue or answered your question.
Sajidaap
Associate II

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.

 

Pavel A.
Super User

Can you disable XSPI2_HSLV while dealing with the ETH issue? 

 

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.

To improve visibility of answered topics, please click 'Accept as Solution' on the reply that resolved your issue or answered your question.

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 connectionTable 4. Power supply connection

Thanks,

Sajid

Sajidaap
Associate II

echotoolechotool

DHCPDHCP

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.

STackPointer64_0-1752588992328.png

 

 

To improve visibility of answered topics, please click 'Accept as Solution' on the reply that resolved your issue or answered your question.