Hi Dave,
On Mon, Oct 07, 2013 at 10:42:13PM +0700, Dave McLaughlin wrote: > Hi all, > > I am new to the group and new to the library and looking for a bit of > advice. > > I have a project to build a sensor interface with a GSM modem and I need to > have the ability to connect via TCP/IP over PPP to the GPRS network. > > The modem has built in TCP/IP as do a number of them these days but it is > limited to 1 connection at a time and does not integrate with any TCP/IP > stack in the processor firmware. I need to be able to have multiple > connections at the same time. > > I am targeting a Cortex M4 processor from ST and looking to use the Coocox > development software as I am familiar with this from another project. > > Would the TCP/IP driver work with the likes of FreeRTOS and how easy is it > to get it working? This is the easiest part, FreeRTOS itself provide an example port for lwIP. [1] Since you don't need the board-specific Ethernet port, then you only need the memory/thread/mutex/semaphore OS port, thus you can use any lwIP port for FreeRTOS and crush everything related to the Ethernet low level driver. > Would you recommend any books on the subject or examples on any websites? I > am not looking for a complete working solution, just the basics as I am keen > to learn how this all connects together so would really like to do the main > work myself but a few pointers along the way would speed up the process. :) If you wish, you can try the lwIP ppp-new branch, which is a complete rework of the lwIP stack. $ git clone -b ppp-new git://git.savannah.nongnu.org/lwip.git You have to write a SIO port (i.e. serial port) for lwIP. The SIO port interface is described in lwip/src/include/lwip/sio.h and is, IMHO, pretty obvious. There are a few examples in the lwip-contrib package: $ git clone git://git.savannah.nongnu.org/lwip/lwip-contrib.git $ find -iname "sio.c" ./ports/unix/netif/sio.c ./ports/win32/sio.c ./ports/old/ecos/ecos/net/lwip_tcpip/current/src/ecos/sio.c The new PPP interface is described in lwip/src/include/netif/ppp/ppp.h , this should be pretty self-explanatory (Well, I hope it is ;p), look for PUBLIC FUNCTIONS section The following thread, which is exactly what you want to do, may help you: http://lists.nongnu.org/archive/html/lwip-users/2013-06/msg00001.html Hope it helps ! :) Sylvain [1] http://www.freertos.org/embeddedtcp.html
signature.asc
Description: Digital signature
_______________________________________________ lwip-users mailing list lwip-users@nongnu.org https://lists.nongnu.org/mailman/listinfo/lwip-users