Contiki under Windows:

First off all I started this port of the Contiki desktop environment ( to support Windows developers users. The current gtk port of Contiki does not work under Cygwin (there are no port of gtk to Cygwin) - but the XFree86 is full supported by Cygwin. Then this port - the Contiki-X - just uses the X Server to display the desktop.

If you have the cygwin already installed, install the XFree86 and the devel tools via setup.exe method (see more at If you dont have cygwin yet installed, go to the and follow the instructions. The better way is first install the Cygwin with the default options then run the setup.exe again and install the categories Admin, Base, Devel, Libs and XFree86.

The Contiki-X source code can be downloaded from the downloads page.

See some screenshots here.

To generate the contiki.exe executable just type "make" in the Contiki-X directory. The X server must be already running after starting the Contiki-X.

1. In the Cygwin bash setup the display env
export DISPLAY=

2. then start the X server
X &

3. start the window manager
twm &

Then, start a xterm (left click into the X display), go to the contiki-X folder and start the contiki.

Contiki-X will wait the Windows SLIP connection establishment (see below how to setup the SLIP connection). You must have a RS232 cable making a loopback with COM1 and COM2 - can be a null modem cable. 
When the connection is started the Windows sends the "CLIENT" string.
Contiki-X recognizes this string and then sends the "CLIENTSERVER" string - see the rs232dev_init() function. Before the desktop display, Contiki-X always waits the Windows connection. After this initial setup TCP/IP packets can be exchanged :-)

By default the rs232dev_init() init function will open the COM2 at 38400 baud. Linux users should
choose another device as "/dev/ttys1".
I dont know if the Linux SLIP connection sends the "CLIENT" string... Again, see the function rs232dev_init() if somethig was wrong.

Sometimes in Cygwin the function which reads the serial buffer does not work.
I dont know why... to solve that start two HyperTerminal's (one into COM1 and the other into COM2)
then exchange some char's - then, start Contiki-X and try again.
If is not possible to exchange char's between the HyperTerminal's something is wrong with Windows - restart it! (Windows sux, lol)

How to setup a SLIP connection into the Win2k:
1. Start the network connection wizard
Network -> Make New Connection
2. In the Network Connection Type choose: Connect directly to another computer
3. In the next step, Host or Guest dialog, choose Guest - contiki will act as a host.
4. Now, choose the communication port to COM1 - contiki will connect in the COM2
5. Choose a name to this connection and go to the connection properties.
6. In the General tab, configure the COM1 port. Leave unchecked all options and set up the Maximum speed to 38400.
7. In the Options tab, check only the "Display progress while connection".
8. The Security tab is not needed to configure - SLIP connection
9. In the Networking tab, the connection type is SLIP and al last the TCP/IP protocol must be checked/installed - configure the IP "" into the TCP/IP properties.
10. In the Sharing tab, leave unchecked the option "enable internet connection sharing".