Hello all, I am trying to send large amounts of data continuously. I use lwIP as a TCP client on an STM32F7 and Matlab on a PC as a TCP server.
I send blocks of 32768 bytes. Here are some settings for the memory sizes in lwIP: #define MEM_ALIGNMENT 4 #define MEM_SIZE 17520 #define MEMP_NUM_TCP_SEG 65 #define PBUF_POOL_BUFSIZE 1516 #define TCP_WND 8760 #define TCP_MSS 1460 #define TCP_SND_BUF 8760 When sending with tcp_write(), I get ERR_MEM errors. So, I switched on LWIP_STATS for seeing memory statistics. When should I be using tcp_output()? Should I check for the remaining tcp_sndbuf and use tcp_output() if it gets low? In Wireshark, I can see TCP Dup ACKs and "TCP Previous segment not captured" errors. Find the dump here: https://sync.coda.pw/r/Z_uuIXRtl2#NT5OwZOSW4Nd8erfCRvLvSdAmMS1YODnWL3tP+dGRMk= I send data every 2 seconds and it takes around 1.5 seconds to send it to the PC, which is too long. Here are some of the results after ERR_MEM happened: https://snip.coda.pw/?69c4627d150293fa#3cUX2gAqvAKaflXk8NTs7k+TxBAjQwmNT+IYu+GfiJE= There is no Mem/Memp section that contains even one error. So, I am not sure where to look next. Thank you in advance! Adrian
_______________________________________________ lwip-users mailing list lwip-users@nongnu.org https://lists.nongnu.org/mailman/listinfo/lwip-users