I solved the problem.
The problem was in the API of the Modbus TCP thread.
--
View this message in context:
http://lwip.100.n7.nabble.com/HardFault-with-lwip-tp26174p26360.html
Sent from the lwip-users mailing list archive at Nabble.com.
___
The HardFault happens in the function tcp_output at the line
"if (TCP_SEQ_LT(ntohl(seg->tcphdr->seqno), ntohl(useg->tcphdr->seqno))) {"
after 10 - 20 minuts.
The processor wants to load "seg->tcphdr->seqno" and "useg->tcphdr->seqno"
but one pointer is not valid and the processor crashes at the
I have also a webserver running.
I can see that the used pcb mem goes back if the Client (not the MCU) closes
the connection (modbus),
but if the server (the MCU) closes the connection the used pcbs doesn't go
back (webserver).
If i have only the mobus connection in use the maximum of the pcbs is
Her my mem and memp stats:
mem = {name = 0x8042c7c "MEM", err = 0, avail = 10240, used = 0, max = 0,
illegal = 0}
memp =
nameconst char *0x8042e48 "UDP_PCB"
err u16_t 0
avail mem_size_t 6
usedmem_size_t 0
max mem_size_t 0
Hello,
I have the LWIP stack 2.0.3 in combination with FREERTOS 9.0 running on a
STM32H743.
When only one tcp (netconn server) connection is active the data
transmission perform very well and no errors occur.
But when a second tcp-connection connects and transmits data simultaneously
to the first,