This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

TM4C1294NCPDT: Transfer Mibs of data over TCP

Part Number: TM4C1294NCPDT

Hi Folks,

I develop a system, where i need to receive files (20-40MB) via HTTP POST request and store them into SD card. To do this, I use LwIP (netconn API) and TinyFS. My problem is that it only works well with small files (20~100B).

The implemented logic looks like the following:

* wait for an incoming connection

* parse the HTTP header (excluding resource name and method)

* write the rest of data from the current pbuf

* repeat the following while data can be read from the connection:

* acquire the next "part" of data by netbuf_next()

* if it results -1

* delete the current netbuf by netbuf_delete()

* call netconn_recv() on the connection

* store data (if all the above result success)

Can anybody help me, what should I fix?  What did I wrong?

Regards,

Nobert

  • Hi Nobert,
    Have you tried Raw API? I don't have much experience with LwIP. Hopefully other community members can provide some guidance to you. I think you can also find great help if you post your question to LwIP mailing list lists.nongnu.org/.../lwip-users.
  • Hi Norbert & Charles.
    With lwip of Dec 2015 version 1.3.x, I have managed to successfully transfer over a local LAN up to 4096 bytes at once, send from a C# windows TCP Client app to a TCP Server running on-board of the EK-TM4C1294NCPDT Launchpad.  I then flash that 4KB of data into flash memory and thus have implement a successful Ethernet-Bootloader. YET, when I try the same over internet, although I successfully connect to the EK's TCP server, the data are never transferred. I'm checking on this these days but I do not have some solid results yet. When possible I'll come back to the forum. If any one else knows about this problem let us all know please.
    All the best,
    John

    P.S. Data up to 1KB are also successfully transferred over internet, but nothing more than that.

    I replaced lwip-1.4.1 libs with version 2.0.2 and I'm doing some successful, as it shows so far,

    tests for the moment. I'll be back on the issue soon.