Contiki Operating System and Cooja Simulator for Wireless Sensor Networks

Raju Pal

What is Operating System?

Operating system (OS) provides an interface between user programs and specified hardware. For different types of hardwares, we require different types of operating systems. For example,

Hardware Operating System
Mobile Phones Android, iOS, Windows
Laptops and Desktops Linux, Window and Mac
Sensor Motes TinyOS, Contiki, YATOS, MANTIS

We choose the operating systems based on our hardware requirement and computational capabilities. In this article, we will focus on OS for tiny motes used to sense the phenomena given, called as sensor node or motes.

A sensor node has limited computation capability and limited resources available such as less battery, limited RAM and ROM size. These nodes are place remotely to sense the environment, hence generally they are battery operated. There are different types of sensor nodes like TelosB, Mica Z, Sky etc. Each them have different feature and configurations. For these types of hardware, we require different OS, other than the traditional ones.  TinyOS and Contiki are the most widely used OS for wireless sensor networks.

What is Contiki OS?

ContikiOS  is open source operating system for resource constraint hardware devices with low power and less memory. It was developed by Adam Dunkels in 2002. This OS is fully GUI based system requires only 30 KB ROM and 10 KB RAM. It also provide multitasking feature and have the built in TCP/IP suit.


ContikiOS support the resource constraint hardware with following features

  • Lower Power
  • Limited memory
  • Slow CPU
  • Size (Small)
  • Limited hardware parallelisms
  • Communication using radio
  • Low-bandwidth
  • Short range
The motes supported by Conitki OS are as follows

  • MicaZ
  • Wismote mote
  • Z1 mote
  • Sky Motes
  • ESB mote


Contiki provides Cooja simulator to simulate the network of sensor nodes. We can choose the type of node from any of these three categories: Cooja node, Java node and emulated nodes. Cooja provides simple GUI for easier deployment and configuration of  senor nodes.

Cooja Simulator

The developer team of ContikiOS make it easier to install and use ContikiOS by providing the VMplayer file for the same. This is available by the name as Instant Contiki and can be downloaded from here. This package include all the development tools, compiler and simulation tools for network simulation of WSN. Here are the steps to install and run COOJA:

STEP 1:   Download Zip File Instant Contiki and extract it on any directory in your system.

STEP  2:  Download and install the latest version of VMware player or Oracle Virtual Box.

STEP  3: Open the instant contiki in VMplayer or Virtual Box. and enter the “user” as the password.

STEP  4: Open the terminal and type cd contiki/tools/cooja

STEP  5: Tpye ant run

STEP  6: Now see the demonstration video attached to see how to run application in COOJA simulator



What do you think about the article?

This site uses Akismet to reduce spam. Learn how your comment data is processed.