Hello there, how are you?

Well, I'm working with a STM32H7 board and lwIP stack (2.0.3), no RTOS. The
idea is running a TCP Client and a TCP Server at the same time, so I've
started using echo demos as reference. TCP Client can use an IP address or
a host name, so "dns_gethostbyname" is helping me. Also, I've
set TCP_SYNMAXRTX to 3, so if no Server is found, "tcp_err" is called to
close the client and then, try again later ("tcp_new").

To test the routine, I've provided a simple terminal on my Windows, with
both TCP Client and Server functions. So if I type the board IP address and
Port, I can connect to lwIP Server. And if I opens a Port, lwIP Client
connects to it.

Everything works fine if lwIP Client connects first. If lwIP Server gets a
connection first or even if Windows server is offline, the board get
stucked on "tcp_fasttmr" method, with "pcb" and "pcb->next" pointing to the
same address (established Server).

I've created some kind of state machine for both connection, running on
main while, so I can't see any concurrent process (maybe SYNC by lwIP and
the Server stack?).

Do you have any clue how can I solve this? I'm planning to add more
functions to my board, something close to Microchip TCPIP stack, with HTTP
server, DDNS and NTP clients.

Thanks a lot!
_______________________________________________
lwip-users mailing list
lwip-users@nongnu.org
https://lists.nongnu.org/mailman/listinfo/lwip-users

Reply via email to