WikiStart

Version 114 (Jun -, 05/31/2011 01:24 pm)

1 89 Anthony Rowe
2 98 Anthony Rowe
3 99 Anthony Rowe
4 100 Arvind Kandhalu
5 89 Anthony Rowe
[[TracNav(TOC)]]
6 89 Anthony Rowe
7 10 Anthony Rowe
8 114 Jun -
9 114 Jun -
h1. Nano-RK: A Wireless Sensor Networking Real-Time Operating System 
10 114 Jun -
11 114 Jun -
Nano-RK is a fully preemptive reservation-based real-time operating system (RTOS) from "Carnegie Mellon University":http://www.cmu.edu with multi-hop networking support for use in wireless sensor networks. Nano-RK currently runs on the [[FireFly]] Sensor Networking Platform as well as the [[MicaZ]] motes. It includes a light-weight embedded resource kernel (RK) with rich functionality and timing support using less than 2KB of RAM and 18KB of ROM. Nano-RK supports fixed-priority preemptive multitasking for ensuring that task deadlines are met, along with support for CPU, network, as well as, sensor and actuator reservations. Tasks can specify their resource demands and the operating system provides
12 1
timely, guaranteed and controlled access to CPU cycles and network packets. Together these resources form virtual energy reservations that allows the OS to enforce system and task level energy budgets. 
13 1
14 1
15 114 Jun -
h2. News
16 1
17 114 Jun -
* 5/31/2011 Paper on [[nanocf]] Cooperation framework for macro-programming at SECON 2011
18 114 Jun -
* 4/12/2010 Paper on [[U-Connect]] neighborhood discovery at IPSN 2010
19 114 Jun -
* 11/13/2009 Paper on "Syntonistor":http://www.andrew.cmu.edu/user/agr/projects/syntonistor/ for time synchronization wins best paper award "SenSys 2009":http://sensys.acm.org/2009/program.htm
20 114 Jun -
* 10/15/2008 Paper on [[Pubs|Rate-Harmonized Scheduling]] at RTSS 2008
21 114 Jun -
* 2/12/2008 New [[releases|release]] fixes kernel memory bug and adds Windows Support.
22 114 Jun -
* 2/7/2008 gcc 4.2.2 with avr-libc 1.6.1 fix multiple minor bugs. Install new toolchain from [[Downloads]] page.  
23 114 Jun -
* 12/29/2007 "Embedded.com Article":http://www.embedded.com/design/networking/204800543?pgno=1 discusses Nano-RK
24 114 Jun -
* 10/20/2007 Paper on [[Pubs|Vision-Enabled Sensor Networks]] using Nano-RK at RTSS 2007
25 114 Jun -
* 10/6/2007 Public Subversion Read Access for pre-beta [[releases|release]]
26 114 Jun -
* 10/16/2006 Paper on [[Pubs|Voice Over Sensor Networks]] using Nano-RK at RTSS 2006
27 114 Jun -
* 9/25/2006 Paper on [[RT-Link]] running on Nano-RK wins best paper at SECON 2006
28 114 Jun -
* 12/15/2005 Nano-RK paper introduced at RTSS 2005
29 32 Anthony Rowe
30 114 Jun -
31 114 Jun -
h2. Features
32 114 Jun -
33 114 Jun -
34 114 Jun -
* C GNU tool-chain
35 114 Jun -
* Classical Preemptive Operating System Multitasking Abstractions
36 114 Jun -
* Real-Time Priority Based Scheduling
37 114 Jun -
* Built-in Fault Handling
38 114 Jun -
** Task Timing Violations
39 114 Jun -
** Stack Integrity
40 114 Jun -
** Unexpected Node Restarts
41 114 Jun -
** Resource Over-Use 
42 114 Jun -
** Low Voltage Detection
43 114 Jun -
** Hardware Watchdog Timer
44 114 Jun -
** Software Watchdog Timers
45 114 Jun -
* Energy Efficient Scheduling based on _a-prior_ task-set knowledge
46 114 Jun -
* Tickless Timer
47 114 Jun -
* Small Footprint (<2K RAM, 16K ROM, including link layer)
48 114 Jun -
* [[SLIPstream]] (a simple gateway to IP network protocol and utility)
49 114 Jun -
* [[TimeScope]] (a code execution time measurement utility built into the [[FireFly]] programmer boards)
50 114 Jun -
* [[avr-studio|AVR Studio 4 Debugging]]  (Simulating Nano-RK code on a single node using AVR Studio 4 is easy)
51 114 Jun -
* [[Eclipse]] IDE allows for easy development
52 114 Jun -
53 37 Anthony Rowe
Nano-RK supports various wireless link layer protocols including:
54 114 Jun -
* [[RT-Link]] for collision free Real-Time communication
55 114 Jun -
* [[WiDom]] a collision free priority based link layer
56 114 Jun -
* [[b-mac]] for low-power contention based communication
57 114 Jun -
* [[U-Connect]] a Low-Latency Energy-Efficient Asynchronous Neighbor Discovery protocol
58 114 Jun -
* [[pcf-tdma|PCF TDMA]] Flexible and simple, low-power, one-hop TDMA for both high and low data-rate collection
59 106 Anthony Rowe
60 46 Anthony Rowe
61 114 Jun -
h2. Getting Help
62 114 Jun -
63 114 Jun -
* Try posting on our recently (re)added "Forum":http://www.nanork.org/discussion
64 114 Jun -
65 1
[[Image(htdocs:images/nrk_arch.png)]]
66 1
67 114 Jun -
Sample Nano-RK architecture figure showing user applications and [[RT-Link]].