Thanks Simon, The distribution I'm using is actually here: http://processors.wiki.ti.com/index.php/HALCoGen_Ethernet_Driver_and_lwIP_Integration_Demonstration#Download
Is there a workaround to that bug if it is the case that I see? I think my code is pretty quick and data rate pretty slow (at this stage I'm typing the messages into telnet) Cheers, Thomas > ---------------------------------------------------------------------- > > Message: 1 > Date: Tue, 16 Apr 2019 21:26:20 +0200 > From: "[email protected]" <[email protected]> > To: Mailing list for lwIP users <[email protected]> > Subject: Re: [lwip-users] LwIP issue on TMS570 > Message-ID: <[email protected]> > Content-Type: text/plain; charset=utf-8; format=flowed > > Am 16.04.2019 um 17:23 schrieb Thomas Drage: > > Hi, > > > > I have an implementation using lwIP on a TI TMS570LC4357 LaunchPad which > > exhibits a strange problem, and I'm hoping someone can provide some > > insight or tips :) > > > > 1. The first message received calls tcp_recv instantly and is processed. > > > > 2. The second message might take 5 - 10s until tcp_recv is called. > > > > 3. The third etc. can take a very long time (or forever) between sending > > the data to the TMS570 and the getting callback. > > That almost sounds like the driver is somehow missing RX packets? A > common bug was/is that the driver only receives one packet per ISR call, > when (due to code runtime) multiple packets can be received before the > ISR returns. > > > > > My code is based on this echo-server: > > > https://github.com/dreamcat4/lwip/blob/master/contrib/apps/tcpecho_raw/echo.c > > Why use a copy if you can use the original? > > https://github.com/lwip-tcpip/lwip/ > > Regards, > Simion > > > > > Note that in the initial implementation of the echo server this problem > > doesn't occur, however, my implementation separates reading and writing > > (e.g. it is not an echo server anymore). So on reading, the message is > > parsed/stored, then instead of sending it back the pbuf is freed and > > tcp_recved called. If I insert a tcp_write after I have stored the > > message and just send some random (constant) string back before I > > deallocate the pbuf - everyone works once more (there is no delay on > > receiving subsequent packets). I struggle to explain why this is the > > case. Does anyone see a problem with the echo server code that would > > make it stop working if it's not being asked to send data? > > > > It seems almost a little like this: > > > https://e2e.ti.com/support/microcontrollers/hercules/f/312/t/675413?RM46L852-Modbus-Over-TCP-IP-control-hand-in-TCP-Rx-interrupt > > > > > > I have attached my code. Note that in the function cont_read, if I > > remove the line "tcp_write(tpcb, "ACK", 3, 1);", I start getting the > > extreme delays before receiving subsequent messages. > > > > Thanks, > > > > Thomas Drage > > > > >
_______________________________________________ lwip-users mailing list [email protected] https://lists.nongnu.org/mailman/listinfo/lwip-users
