User Tools

Site Tools


uIP C18 port

A port of Adam Dunkels uIP 1.0 TCP/IP-stack to Microchips C18 compiler.


Status: In progress.

Date Comment
2009-02-25 Project created.


As the official site for the uIP-stack says: “The open-source uIP TCP/IP stack provides TCP/IP connectivity to tiny embedded 8-bit microcontrollers, with maintained interoperability and RFC standards compliance.” This is a port of the stack using enc28j60 eternetcontroller for the Microchip C18 compiler. I have used the AVR version as a base.

There are some memory issues regarding Microchip C18 compiler. First, when building a project with the uIP stack, turn of “bank optimizer”. When I had that option enabled, writing to a specific varaible cleared the memory for a totally different variable, which failed dramatically. I also had to store variable values in a temorary varaible before assigning them to the uip_buffer in some places, otherwise the result was never written or read correctly. I have no idea why this happens.

Togheter with the source code are a Microchip ENC28J60 ethernet driver included (written by Pascal Stang) and a driver for Microchip MRF24J40 transceiver that now support sending of IPv4 packets over 802.15.4, but with a lot of limitation and assumptions.


Latest source code can be found in repository
/software/trunk/Embedded/Other libs/uip/ in SVN.

Example project for IPv4 over 802.15.4 (or later on 6LoWPAN) can be found in the /software/trunk/Embedded/802.15.4/6LoWPAN test node/ directory.


All information found on this page are licensed. See the license page for more information.

hardsoftware/uip.txt · Last modified: 2010/07/15 05:11 (external edit)