YounesCHTIOUI
YounesCHTIOUI

Reputation: 21

LWIP with STM32 H7, 15 first ethernet commands are exchanges with success and processed. 16th command is queued in pbuf_chain: why

I use LWIP on a STM32H7 custom board. I send command from a PC using Hercules I use TCP, my stm32 is a server

Board receives commands and parses them out. After I sent 16 commands, on the 16th command, pbuf_chain is called. On the first 15 commands tcp_server_handle is called.

I use the example in enter link description here I have MEMP_NUM_PBUF set to 16 and MEMP_NUMTCP_SEG set to 16. Tried to increase these parameters, didn’t help.

  1. First time Isend a command of 7 bytes, Hercules gets response of 12 bytes (from stm32 board, no issue here)

  2. Then send command CmdA of 102 bytes, Hercules gets response of 12 bytes, no issue here.

  3. Then send another command CmdB of 102 bytes, Hercules gets response of 12 bytes, no issue here.

  4. Send command 7 bytes, Hercules Hercules gets response of 12 bytes

  5. Then send command CmdA of 102 bytes, Hercules gets response of 12 bytes

  6. Then send command CmdA of 102 bytes, Hercules gets response of 12 bytes, no issue here.

  7. send command CmdB of 102 bytes, STM32 does not respond but command is put in a chain (pbuf_chain is called in tp_server_recv)

I attached LWIP key settings….

Why the 16th command is queued in the chain and not processed. thanks

lwip settings1 lwip settings2

Upvotes: 0

Views: 127

Answers (0)

Related Questions