Hello,
I've been working with lwip, PPP and a STM32F767ZI for the past few months, I'm able to get an IP address from the PPP server and send and receive some TCP segments.
On my application layer I've set up a http server and when trying to connect from a client I get the HTTP OK from the server but it seems that the tcp connection its not closing properly and I'm not able to load the page on my web browser.
I've googled allot but I'm not able to solve the problem on my own, any kind of help or suggestions will be appreciated :)
I'm attaching the debugger's output and a wireshark screenshot.
My configuration:
Microcontroller: STM32F767ZI
Modem: SIM4320A
Toolchain: GNU tools for STM32
lwipopts.h
#define NETIF_DEBUG LWIP_DBG_ON
#define HTTPD_DEBUG LWIP_DBG_OFF
#define TCP_DEBUG LWIP_DBG_OFF
#define PPP_DEBUG LWIP_DBG_OFF
#define PRINTPKT_SUPPORT 0
/*PPP*/
#define VJ_SUPPORT 1
#define CCP_SUPPORT 0
/*ICMP*/
#define IP_DEFAULT_TTL 255
#define MEMP_NUM_PBUF 120
#define MEMP_NUM_TCP_PCB 40
/*TCP*/
#define LWIP_TCP_SACK_OUT 1
#define TCP_TTL 255
#define TCP_MAXRTX 12
#define TCP_SYNMAXRTX 6
#define TCP_MSS 1460
#define TCP_WND (4 * TCP_MSS)
#define TCP_SND_BUF (4 * TCP_MSS)
//#define TCP_SND_QUEUELEN ((4 * (TCP_SND_BUF) + (TCP_MSS - 1))/(TCP_MSS))
//#define MEMP_NUM_TCP_SEG 16
/*HTTP*/
//#define LWIP_HTTPD_SUPPORT_REQUESTLIST 1
//#define LWIP_HTTPD_SUPPORT_11_KEEPALIVE 1
#define HTTPD_MAX_RETRIES 15
#define HTTPD_POLL_INTERVAL 6
#define HTTPD_TCP_PRIO TCP_PRIO_MIN
//#define LWIP_HTTPD_REQ_QUEUELEN 15
//#define LWIP_HTTPD_MAX_REQ_LENGTH LWIP_MIN(1023, (LWIP_HTTPD_REQ_QUEUELEN * PBUF_POOL_BUFSIZE))
//#define HTTPD_MAX_WRITE_LEN(pcb) ((u16_t)(3 * altcp_mss(pcb)))