From Contiki
Jump to: navigation, search

Back to Contiki Tutorials


This guide covers the installation of ContikiOS 3.0. You will need either a Linux-based operating system, or an operating system that supports VirtualBox or VMWare Player.

You will learn

This tutorial will take you through the steps for downloading and installing ContikiOS the following ways:

  • Using Instant Contiki [1]
  • Using ContikiOS from Github repository [2]

Using Instant Contiki

This is the easiest way of installing and using ContikiOS. You simply need to download Instant Contiki, which is a virtual machine created with all necessary toolchains and software for ContikiOS development.

Link to download Instant Contiki: [3]

After downloading Instant Contiki you need also to download either VMWare Player or VirtualBox, if you are using Windows as your host OS. If you use MacOS X you should download VMWare Fusion, instead of VMWare Player.

IMPORTANT: To login in to Instant Contiki: username: user password: user

Using ContikiOS from Github repository

This method requires an existing installation of a Linux-based operating system. The guide assumes you are using Ubuntu 16.04 but should still be useful for similar versions.

Download from


Unzip the file. For the purposes of this guide, it is assumed that the file is unzipped into /home/user/


Rename the folder from contiki-3.0 to contiki.

 mv contiki-3.0 contiki

Install all the required packages for compiling and running ContikiOS.

If you are using a MSP430-based platforms (such as Tmote) you only need the following packages: binutils-msp430, gcc-msp430, msp430-libc, msp430mcu and mspdebug. If you intend to code for CC2538-based platforms (such as OpenMote), you should also install the following tool chains: gcc-arm-none-eabi and gdb-arm-none-eabi.

You can run the following command to install all packages for multiple platforms:

 sudo apt-get install build-essential binutils-msp430 gcc-msp430 msp430-libc msp430mcu mspdebug gcc-arm-none-eabi gdb-arm-none-eabi openjdk-8-jdk openjdk-8-jre ant libncurses5-dev

When working with a 64-bit virtual machine, you may run into problems with the `serialdump-linux` executable because it may have been compiled for 32-bit machines. Install the following package to fix this issue.

 sudo apt-get install lib32ncurses5

You are done! You can now try to compile and run any example, such as Hello World.

Back to Contiki Tutorials

Edited by: Kwame, Pedro