GithubHelp home page GithubHelp logo

waco-sim / waco Goto Github PK

View Code? Open in Web Editor NEW
3.0 4.0 4.0 30.89 MB

WaCo: A Wake-Up Radio COOJA Extension for Simulating Ultra Low Power Radios

Home Page: http://e3da.fbk.eu/projects/waco

License: Other

CMake 0.34% C 76.98% C++ 8.54% HTML 0.51% JavaScript 0.05% CSS 0.02% Makefile 0.24% Assembly 0.40% Objective-C 0.08% Awk 0.01% XSLT 0.01% Gnuplot 0.01% Python 1.22% Perl 0.22% Shell 0.03% Java 11.34% Scala 0.01% SuperCollider 0.01% Batchfile 0.01% Asymptote 0.01%
cooja wsn contiki-os radio-cooja-extension iot wakeup-radio

waco's Introduction

WaCo: A Wake-Up Radio COOJA Extension for Simulating Ultra Low Power Radios

Radio communication remains the primary battery consuming activity in wireless systems. Advances in MAC protocols have enabled significant lifetime improvements, but in systems with low data rate, idle listening, and other communication artifacts can begin to dominate costs. One proposal to combat this is the addition of a second, extremely low power radio component that is always-on. As a consequence of the extremely low power, such radios are incapable of decoding general data, and thus are often delegated the task of listening for a trigger, leading to the terminology wake-up radio, as this extremely low power radio is used to wake up a higher power radio, which is then used for data communication. While wake-up technology has been steadily evolving over the last decade in the hardware arena, few protocols have been developed to exploit it.

WaCo is an extension to Contiki and COOJA and allows exploration of the capabilities of the wake-up radio from the desktop environment. It can be used with the standard data collection protocols such as Contiki Collect or RPL. WaCo also provides a straightforward MAC module, core/net/mac/wurrdc.c, which uses the WuR as a trigger for the standard CC2420 radio, and offers the same interface as other popular MAC protocols, allowing it to easily sit below standard routing protocols mentioned above.

Getting Started

These instructions will guide you to get started with WaCo for development and testing purposes. To get the most out of the information outlined here, we assume the reader/user has the basic ContikiOS knowledge and how to build and simulate using COOJA. First clone the WaCo and its submodules.

$ git clone https://github.com/waco-sim/waco.git
$ cd waco
$ git submodule update --init

To kickstart, go to

$ waco/examples/waco
$ make 

This will compile the binaries for Tmote Sky. After this, you should be able to run the included COOJA simulation files to test WaCo e.g., runicast.csc.

Supported Platform

WaCo currently only supports Tmote Sky and its CC2420 as the main (primary) radio for data transfer and a custom WuR module (secondary radio) for triggering the main node. WuR uses the Unit Disk Graph Medium (UDGM) with constant loss as its radio channel model.

WaCo also:

  • provides accurate power profiling of both the radios using COOJA's power tracker allowing to record, for each radio, the time spent in different states.
  • provides a visual representation of the network behaviour on a unified timeline showing events generated by both radio transceivers.

WaCo Team

WaCo was developed in the E3DA group at the Fondazione Bruno Kessler and in collaboration with D3S at University of Trento, Italy. The WaCo team consists of Timofei Istomin ([email protected]), Rajeev Piyare ([email protected]), and Amy Murphy. Please contact us with any queries or for more information.

Cite

"WaCo: A Wake-Up Radio COOJA Extension for Simulating Ultra Low Power Radios", Rajeev Piyare, Timofei Istomin, Amy L. Murphy, In Proceedings of the 14th International Conference on Embedded Wireless Systems and Networks (EWSN), Uppsala, Sweden, February 2017. * PDF

WaCo has also appeared in:

"Plug into a Plant: Using a Plant Microbial Fuel Cell and a Wake-up Radio for an Energy Neutral Sensing System", Rajeev Piyare, Amy L. Murphy, Pietro Tosato, and Davide Brunelli, In Proceedings of the Local Computer Networks Workshops (LCN Workshops), IEEE 42nd Conference on., 9th-12th October, Singapore, 2017. * PDF2

"Is Wake-Up Radio the Ultimate Solution to the Latency-Energy Tradeoff in Multi-hop Wireless Sensor Networks?", Sebastian L. Sampayo, Julien Montavont, Fabien Pre ́galdiny, and Thomas Noel, In 2018 14th International Conference on Wireless and Mobile Computing, Networking and Communications (WiMob)., Cyprus, 2018. * PDF3

waco's People

Contributors

rajeev1986 avatar

Stargazers

 avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.