0% found this document useful (0 votes)
127 views37 pages

Contiki, Iot Os &: Cooja Network Simulator

Contiki is an open source, highly portable, multi-tasking operating system for memory efficient, networked embedded systems and wireless sensor networks. It includes a TCP/IP communication stack called uIP, event-driven kernel, loadable modules, and a cross-layer network simulator called Cooja that allows developers to test code long before deploying to hardware by emulating sensor nodes and networks. Cooja provides both detailed hardware-level emulation for precise behavior inspection as well as less detailed emulation for faster simulation of larger networks.

Uploaded by

Nikita Negi
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
127 views37 pages

Contiki, Iot Os &: Cooja Network Simulator

Contiki is an open source, highly portable, multi-tasking operating system for memory efficient, networked embedded systems and wireless sensor networks. It includes a TCP/IP communication stack called uIP, event-driven kernel, loadable modules, and a cross-layer network simulator called Cooja that allows developers to test code long before deploying to hardware by emulating sensor nodes and networks. Cooja provides both detailed hardware-level emulation for precise behavior inspection as well as less detailed emulation for faster simulation of larger networks.

Uploaded by

Nikita Negi
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 37

Contiki, IoT OS &

Cooja Network Simulator

CE Dep, IAUSDJ.ac.ir
14-02-96(4 April, 2017)
Introduction to Internet of Things
Standard
Sensor Moote’s
Contiki OS
Cooja Network Simulator
4
1. Embedded systems
2. Embedded systems OS(Contiki, Tiny OS,RIOT, …)
3. Communication technologies
4. Sensor technologies
5. Real time systems
6. Smart things and technologies
7. Machine-to-Machine Communications

8. Big Data Analytics


1. Bluetooth
2. Zigbee
3. Z-Wave
4. NFC (Near-Field Communication)
5. RFID
6. WiFi – IEEE 802.15.11
7. IEEE 802.15.4 , 4e
8. 2G/3G/LTE
9. Wibro/Mobile WiMax
10. PLC (Power Line Communication)
11. Ethernet
12. What else?
• IPv4(232) contains 4,294,967,296

• IPv6(128bit address space)


• 2128 possible addresses
=340,282,366,920,938,463,463,374,607,431,76
8,211,456 addresses(3.4 x 1038 or 340
undecillion)
• 6.65 x 1023 addresses for every square meter of
the Earth’s surface
• 128 bits to allow flexibility in creating a multi-
level, hierarchical, routing infrastructure
Contiki is an:
open source
highly portable
multi-tasking operating system
For:
Memory efficient
Networked embedded systems
And wireless sensor networks.
 Contiki has been used in a variety of
projects from road tunnel fire
monitoring, intrusion detection, water
monitoring to surveillance networks.
 TCP/IP communication with uIP stack
 Loadable modules
 Event-driven kernel
 Protothreads
 Protocol-independent radio network with the Rime
stack
 Cross-layer network simulation with Cooja
 Networked shell
 Memory efficient flash-based Coffee file system
 Software-based power profiling
 Coffee is a very simple, relatively small and
easy to use file system that you are most
likely going to be very familiar with if you
have done any C file access in the past. The
notion is the same as on a normal PC: you
open a file, read and write to it and close it.
Contiki will take care of the underlying flash
memory, giving you more time to focus on
the real issues.
 Power consumption is the most important
metric in wireless sensor networks because
reduced power consumption leads to
increased network lifetime.
 Energy has been reduced by using more
efficient protocols for topology
management, routing, and radio medium
access.
 The highest priority of these methods is to
turn off the radio as much as possible
because radio listening is generally the most
power-consuming task in sensor networks.
 Other methods: required tedious setups of
oscilloscope circuits, capacitors, or on-board
instrumentation.
 Software-based power profiling has enabled
non-intrusive and scalable power profiling in
real sensor networks.
 The technique is based on measuring the
time that each component is active and
multiplying that time by the component's
power consumption.
 IEEE 802.15.4/ZigBee compliant RF
transceiver
 2.4 to 2.4835 GHz, a globally compatible ISM
band
 • 250 kbps data rate
 • Integrated onboard antenna
 • 8MHz TI MSP430 microcontroller with 10kB
RAM
 Low current consumption
 1MB external flash for data logging
 Programming and data collection via USB
 Optional sensor suite including integrated
light, temperature and humidity sensor
Ref:http://www.eecs.berkeley.edu/~culler/eecs194/labs/lab1/telosb.JPG
Adam Dunkels, “Contiki Course Paper Instructions”,
Swedish Institute of Computer Science, 2008
Original IBM PC (1981) MICAZ Mote (2005)
4.77 MHz 4 MHz
16-256 KB RAM 128 KB RAM
160 KB Floppies 512 KB Flash
~ $6K (today) ~ $35
~ 64 W ~14 mW
0.5 oz, 2.25 x 1.25 x 0.25 inch
25 lb, 19.5 x 5.5 x 16 inch
2.4835-2.4 Ghz=0.0835 / .05 = 16.7 Channels Start from 11
 Cooja is an emulator
 According to different sources, an emulator
is:
 a hardware or software system that enables one
computer system (called the host) to behave like
another computer system (called the guest): e.g.
Cooja enabling your laptop to behave like a Z1
mote.
 Cooja is an emulator
 According to different sources, an emulator
is:
 a system that typically enables the host system to
run software or use peripheral devices designed for
the guest system: e.g. Cooja enabling your laptop
to run the RPL protocol, LIBP and/or other IoT
protocols of interest
 Cooja is not a simulator
 According to different sources, a simulator is:
 a hardware or software that that enables one computer
system (called the host) to behave like another
computer system (called the guest), but is implemented
in an entirely different way : e.g. A flight simulator gives
you the feeling of flying an airplane, but you are
completely disconnected from the reality of flying the
plane, and you can bend or break those rules as you see
fit. e.g. Fly an Airbus A380 upside down between
London and Sydney without breaking it.
 Cooja is a Contiki network emulator
 An extensible Java-based simulator capable of emulating
Tmote Sky (and other) nodes
 The code to be executed by the node is the exact same
firmware you may upload to physical nodes
 Allows large and small networks of motes to be simulated
 Motes can be emulated at the hardware level
 Slower but allows for precise inspection of system
behavior
 Motes can also be emulated at a less detailed level
 Faster and allows simulation of larger networks
 Cooja is a highly useful tool for Contiki development
 It allows developers to test their code and systems
long before running it on the target hardware
 Developers regularly set up new simulations to
 debug their software
 to verify the behavior of their systems
 1.start Cooja
 2.Create a new simualtion to run Contiki in
simulation and wait for Cooja to start and
compile itself
 3.Set simulation options
 4.Create a new mote type
 5.Add motes to the simulation
 Lunch Cooja & wireshark
INTERNET OF THINGS
Roadmap to a Connected World
http://web.mit.edu/professional/digital-programs/courses/IoT

The Contiki wiki page


https://github.com/contiki-os/contiki/wiki
 Joakim Eriksson, “Demo Abstract: Accurate Power Profiling of
Sensornets with the COOJAIMSPSim Simulator”, IEEE, 2009.
 Jose, Guiterrez , “IEEE Std 802.15.4 Enabling Pervasive
Wireless Sensor Networks”, Embedded Systems &
Communication, Eaton Corporation, 2005.
 IEEE standard for Local and Metropolitan area networks,
802.15.4, 2011.
 IEEE 802.15.4e, MAC sublayer Amendant, 2016.
 Https://github.com/contiki-os/contiki.
“Patience,
ensures victory.”
Thank you for
your attention.

You might also like