AnsweredAssumed Answered

K64F ethernet / lwip questions

Question asked by andrew sullivan on Feb 25, 2019
Latest reply on May 27, 2019 by Mark Butcher

I am currently evaluating the K64f board for use in an embedded system.  We need to continually send small packets over ethernet via tcp, roughly 57 bytes every 20 milliseconds.  I have adadpted one of the examples using the LWIP.  My code runs for varying amounts of time, and then I receive an error on the debug console.  I am using MCUxpresso and SDK.

 

The error is not always the same.  The last one I received was "unsent_oversize mismatch (pcb->unsent is NULL).  It is always something relating to one of the internal buffers.  I have tried tweaking the various buffs inside the lwipopts.h based on posts in this forum and other sources.  Nothing ever solves the problem, it just delays the inevitable.  I am at a loss as to how to correct this problem.  It appears the K64F is having trouble keeping up with ACK'ing the data.

 

I noticed the K64F board negotiates a 10M connection to the switch vice 100M.  Other posts I have found indicate the driver being used for the ethernet is polling vice being interrupt driven.

 

I really do not have a specific question.  What I would like to know is if the K64F can sustain the data rate we require?  Are there better ethernet drivers available for this board, or is the one provided in the tcpecho sample good enough?  I do not have much experience wrtiing code at this level.  If anyone can help shed some light, or point me in the right direction that would be great.

 

I can provide more information if needed.  

Outcomes