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.

lwIP on Beaglebone Black and Starterware C/C++ : where to start?

Hi All,

After a few months of playing with Starterware on the Beaglebone Black board, it's time for me to implement internet connectivity.  My knowledge of TCP/IP is very limited.  The most "advanced" use I ever used are XMLHttpRequest objects (MS and PHP), so I haven't any idee about the underlaying technologies.

My goal is to be able to write/configure the starterware lwIP implementation so that I can call a webservice and receive the response from that service, as for example calling a weather-service for the current weater at a specific location and receiving the XML containing the current weather conditions.

I've read the documentation in the \ti\AM335X_StarterWare_02_00_01_01\third_party\lwip-1.4.0\doc folder.

Unfortunatly, I couldn't find project files to compile the code to a library for reference in my own project...    So I tried to include the sourcecode into my project (linked folder), but this gives a lot of errors.  Maybe because my project is written in C++, not C, and the calling convention for the wlIP code is extern"C" ?  What are the configuration options, where to define them and what do they realy mean... etc, etc.

Furthermore, where can I find background information about all the underlying technologies, debug tips, debug tools on the PC side etc?

All tips are welcome !

Paul

  • There are a few lwIP examples available in StarterWare package. I'd recommend to start with enet_echo-example which shows receiving and sending of data. Beside of this the lwIP manual from http://lwip.wikia.com/wiki/Raw/TCP 

  • Seems like myp osting was damaged, so here it continues:

    There are a few lwIP examples available in StarterWare package. I'd recommend to start with enet_echo-example which shows receiving and sending of data. Beside of this the lwIP manual from lwip.wikia.com/.../TCP could be useful. Everything else is protocol-dependent, means happens outside (or above) lwIP/the TCP/IP stack, means you have to implement your requests (HTTP-based?) and data packaging (XML) for your own.

    Programming in C++ can indeed become a bit difficult, beside the linking problems I'm not sure of you would be able to use link level 4 of TI's ARM compiler.