Difference between revisions of "TinyOS Documentation Wiki"

From TinyOS Wiki
Jump to: navigation, search
 
(188 intermediate revisions by 42 users not shown)
Line 1: Line 1:
<big>'''TinyOS Documentation Wiki'''</big>
+
__NOTOC__
 +
Welcome to TinyOS! This is the official TinyOS Documentation Wiki. Look here for how to get started, hardware overviews, and more detailed documentation of the TinyOS tree. Also, everyone is welcome to edit these pages and contribute TinyOS documentation. So please look around, get TinyOS running, and happy embedded programming!
  
Consult the [http://meta.wikimedia.org/wiki/Help:Contents User's Guide] for information on using the wiki software.
+
== Starting with TinyOS ==
 +
{| style="border: 1px solid #cccccc; border-collapse: collapse; color: black; margin: 1em 0;"
 +
| style="background-color: #ffffff; border: 1px solid #cccccc; padding: 0.2em 0.6em; font-size: 1.2em;" | [[TinyOS Overview]]
 +
| style="background-color: #ffffff; border: 1px solid #cccccc; padding: 0.2em 0.6em;"                  | General overview of TinyOS
 +
|-
 +
| style="background-color: #F9F9F9; border: 1px solid #cccccc; padding: 0.2em 0.6em; font-size: 1.2em;" | [[Installing TinyOS]]
 +
| style="background-color: #F9F9F9; border: 1px solid #cccccc; padding: 0.2em 0.6em;"                  | Downloading, installing the most recent version of TinyOS (2.1.2), and where to go next
 +
|-
 +
| style="background-color: #ffffff; border: 1px solid #cccccc; padding: 0.2em 0.6em; font-size: 1.2em;" | [[The simplest TinyOS program|The Simplest TinyOS Program]]
 +
| style="background-color: #ffffff; border: 1px solid #cccccc; padding: 0.2em 0.6em;"                  | Simple example code that compiles
 +
|-
 +
| style="background-color: #F9F9F9; border: 1px solid #cccccc; padding: 0.2em 0.6em; font-size: 1.2em;" | [[Quick Start Guides]]
 +
| style="background-color: #F9F9F9; border: 1px solid #cccccc; padding: 0.2em 0.6em;"                  | Guide to getting going with TelosB motes
 +
|-
 +
| style="background-color: #ffffff; border: 1px solid #cccccc; padding: 0.2em 0.6em; font-size: 1.2em;" | [[TinyOS_Tutorials|Tutorials]]
 +
| style="background-color: #ffffff; border: 1px solid #cccccc; padding: 0.2em 0.6em;"                  | An introduction to TinyOS programming
 +
|}
  
===Proposed topics for the TinyOS Wiki===
+
== Documentation ==
* Sensors
+
{| style="border: 1px solid #cccccc; border-collapse: collapse; color: black; margin: 1em 0;"
** Sensor boards
+
| style="background-color: #ffffff; border: 1px solid #cccccc; padding: 0.2em 0.6em; font-size: 1.2em;" | [http://www.tinyos.net/tinyos-2.x/doc/pdf/tinyos-programming.pdf TinyOS Programming Manual]
** Which TinyOS modules to use for which sensor
+
| style="background-color: #ffffff; border: 1px solid #cccccc; padding: 0.2em 0.6em;"                  | This detailed (200 page) book on programming TinyOS 2.0 is an early version of [http://www.amazon.com/TinyOS-Programming-Philip-Levis/dp/0521896061/ TinyOS Programming] ([http://csl.stanford.edu/~pal/pubs/tos-programming-web.pdf Excerpt with chapters 1-7])
** How to convert the raw sensor values to commonly used formats
+
|-
* RSSI / LQI
+
| style="background-color: #F9F9F9; border: 1px solid #cccccc; padding: 0.2em 0.6em; font-size: 1.2em;" | [[TEPs]]
** How to obtain RSSI / LQI values for a received packet
+
| style="background-color: #F9F9F9; border: 1px solid #cccccc; padding: 0.2em 0.6em;"                  | TinyOS Enhancement Proposals, which describe the TinyOS APIs and their implementations
** How to measure RSSI values without receiving a packet (measuring noise)
+
|-
** Relationship between RSSI / LQI values and physical distance
+
| style="background-color: #ffffff; border: 1px solid #cccccc; padding: 0.2em 0.6em; font-size: 1.2em;" | [[Source Code Documentation]]
* TX power
+
| style="background-color: #ffffff; border: 1px solid #cccccc; padding: 0.2em 0.6em;"                  | HTML documentation of TinyOS source code
** How to reduce the TX power
+
|-
*** For all transmissions
+
| style="background-color: #F9F9F9; border: 1px solid #cccccc; padding: 0.2em 0.6em; font-size: 1.2em;" | [https://github.com/tinyos/nesc/blob/master/doc/ref.pdf?raw=true nesC 1.3 reference manual]
*** On a per-packet basis
+
| style="background-color: #F9F9F9; border: 1px solid #cccccc; padding: 0.2em 0.6em;"                  | The nesC manual
* How to debug the programmer
+
|-
** For Mica-based motes, how to ensure they are properly plugged in
+
| style="background-color: #ffffff; border: 1px solid #cccccc; padding: 0.2em 0.6em; font-size: 1.2em;" | [[Networking]]
** For network based programmers, how to verify the communication
+
| style="background-color: #ffffff; border: 1px solid #cccccc; padding: 0.2em 0.6em;"                  | Network documentation
** Common mistakes, common hardware errors
+
|-
* How to debug the serial communication
+
| style="background-color: #F9F9F9; border: 1px solid #cccccc; padding: 0.2em 0.6em; font-size: 1.2em;" | [[Using TinyOS]]
** Which port to use for MIB520
+
| style="background-color: #F9F9F9; border: 1px solid #cccccc; padding: 0.2em 0.6em;"                  | Complete list of tutorials, programming guides, and other resources for getting started with TinyOS
** How to configure network-based programmers
+
|-
 +
| style="background-color: #ffffff; border: 1px solid #cccccc; padding: 0.2em 0.6em; font-size: 1.2em;" | [[Other]]
 +
| style="background-color: #ffffff; border: 1px solid #cccccc; padding: 0.2em 0.6em;"                  | Other documentation
 +
|}
  
== Links ==
+
== Hardware ==
 +
{| style="border: 1px solid #cccccc; border-collapse: collapse; color: black; margin: 1em 0;"
 +
| style="background-color: #ffffff; border: 1px solid #cccccc; padding: 0.2em 0.6em; font-size: 1.2em;" | [[Platform Hardware|Supported Hardware Platforms]]
 +
| style="background-color: #ffffff; border: 1px solid #cccccc; padding: 0.2em 0.6em;"                  | Layouts, chips, and other details
 +
|}
  
John Regehr says: To save myself from repeating information to students I wrote a very quick guide to getting started with TinyOS and Avrora, the UCLA Mica2 simulator. The point is not to provide any new information but rather to avoid extraneous information. [http://www.cs.utah.edu/~regehr/tos_avrora.html]
+
== Source ==
 +
{| style="border: 1px solid #cccccc; border-collapse: collapse; color: black; margin: 1em 0;"
 +
| style="background-color: #ffffff; border: 1px solid #cccccc; padding: 0.2em 0.6em; font-size: 1.2em;" | [http://github.com/tinyos/tinyos-main TinyOS Development Tree]
 +
| style="background-color: #ffffff; border: 1px solid #cccccc; padding: 0.2em 0.6em;"                  | The active TinyOS development source tree on GitHub
 +
|-
 +
| style="background-color: #F9F9F9; border: 1px solid #cccccc; padding: 0.2em 0.6em; font-size: 1.2em;" | [http://github.com/tinyos/nesc nesC Source Repository]
 +
| style="background-color: #F9F9F9; border: 1px solid #cccccc; padding: 0.2em 0.6em;"                  | nesC source on GitHub
 +
|}
  
John Regehr says: I have started to work on a TinyOS debugging tutorial. It is just a skeleton so far. I would be more than happy to integrate pieces of text that are submitted to me. [http://www.cs.utah.edu/~regehr/debugging_tinyos/]
+
== Contributing to TinyOS ==
 +
{| style="border: 1px solid #cccccc; border-collapse: collapse; color: black; margin: 1em 0;"
 +
| style="background-color: #ffffff; border: 1px solid #cccccc; padding: 0.2em 0.6em; font-size: 1.2em;" | [[Contributing Code to TinyOS]]
 +
| style="background-color: #ffffff; border: 1px solid #cccccc; padding: 0.2em 0.6em;"                  | Using <code>tinyos-contrib</code>
 +
|-
 +
| style="background-color: #F9F9F9; border: 1px solid #cccccc; padding: 0.2em 0.6em; font-size: 1.2em;" | [[TinyOS 2.x index of contributed code]]
 +
| style="background-color: #F9F9F9; border: 1px solid #cccccc; padding: 0.2em 0.6em;"                  | Contents of <code>tinyos-contrib</code>
 +
|-
 +
| style="background-color: #ffffff; border: 1px solid #cccccc; padding: 0.2em 0.6em; font-size: 1.2em;" | [[TinyOS_Network_Protocol_Working_Group|TinyOS Network Protocol Working Group]]
 +
| style="background-color: #ffffff; border: 1px solid #cccccc; padding: 0.2em 0.6em;"                  | Notes on the network working group
 +
|}
  
== Getting started ==
+
== Site and other content ==
 +
{| style="border: 1px solid #cccccc; border-collapse: collapse; color: black; margin: 1em 0;"
 +
| style="background-color: #ffffff; border: 1px solid #cccccc; padding: 0.2em 0.6em; font-size: 1.2em;" | [[Special:Allpages|Index]]
 +
| style="background-color: #ffffff; border: 1px solid #cccccc; padding: 0.2em 0.6em;"                  | All of the available pages on this site
 +
|-
 +
| style="background-color: #F9F9F9; border: 1px solid #cccccc; padding: 0.2em 0.6em; font-size: 1.2em;" | [http://www.google.com/coop/cse?cx=000490616372089452102%3Ajdf9nzpy7se Search engine]
 +
| style="background-color: #F9F9F9; border: 1px solid #cccccc; padding: 0.2em 0.6em;"                  | Search TinyOS documentation and mailing lists
 +
|-
 +
| style="background-color: #ffffff; border: 1px solid #cccccc; padding: 0.2em 0.6em; font-size: 1.2em;" | [[WikiDoc]]
 +
| style="background-color: #ffffff; border: 1px solid #cccccc; padding: 0.2em 0.6em;"                  | Wiki documentation
 +
|-
 +
| style="background-color: #F9F9F9; border: 1px solid #cccccc; padding: 0.2em 0.6em; font-size: 1.2em;" | [[Previous Documentation Sites]]
 +
| style="background-color: #F9F9F9; border: 1px solid #cccccc; padding: 0.2em 0.6em;"                  | Old documentations
 +
|}
  
* [http://www.mediawiki.org/wiki/Help:Configuration_settings Configuration settings list]
+
== Notes on Contributing Documentation ==
* [http://www.mediawiki.org/wiki/Help:FAQ MediaWiki FAQ]
+
In order to edit, you must first create an account, using the "create account" link on the upper right. Consult the [http://meta.wikimedia.org/wiki/Help:Contents Wiki User's Guide] for information on using the wiki software.<br>
* [http://mail.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWiki release mailing list]
+
 
 +
This site actively encourages contributions. If you are not familiar with the Wiki system, consult the [http://meta.wikimedia.org/wiki/Help:Contents Wiki User's Guide]. We prefer all documentation to live on this site, rather than having links to external sites, but if you really need to point at an external site, external links are OK too.<br>
 +
 
 +
'''All content on this website is covered by the [http://creativecommons.org/licenses/by-sa/3.0/ Creative Commons Attribution-Share Alike 3.0 license].''' By contributing content to this site, you are hereby assigning this license to such content.
 +
 
 +
== Statistics ==
 +
There are actually [[Special:Statistics|{{NUMBEROFARTICLES}}]] articles in this Wiki.
 +
 
 +
 
 +
[[Category:Articles]]

Latest revision as of 20:03, 12 May 2013

Welcome to TinyOS! This is the official TinyOS Documentation Wiki. Look here for how to get started, hardware overviews, and more detailed documentation of the TinyOS tree. Also, everyone is welcome to edit these pages and contribute TinyOS documentation. So please look around, get TinyOS running, and happy embedded programming!

Starting with TinyOS

TinyOS Overview General overview of TinyOS
Installing TinyOS Downloading, installing the most recent version of TinyOS (2.1.2), and where to go next
The Simplest TinyOS Program Simple example code that compiles
Quick Start Guides Guide to getting going with TelosB motes
Tutorials An introduction to TinyOS programming

Documentation

TinyOS Programming Manual This detailed (200 page) book on programming TinyOS 2.0 is an early version of TinyOS Programming (Excerpt with chapters 1-7)
TEPs TinyOS Enhancement Proposals, which describe the TinyOS APIs and their implementations
Source Code Documentation HTML documentation of TinyOS source code
nesC 1.3 reference manual The nesC manual
Networking Network documentation
Using TinyOS Complete list of tutorials, programming guides, and other resources for getting started with TinyOS
Other Other documentation

Hardware

Supported Hardware Platforms Layouts, chips, and other details

Source

TinyOS Development Tree The active TinyOS development source tree on GitHub
nesC Source Repository nesC source on GitHub

Contributing to TinyOS

Contributing Code to TinyOS Using tinyos-contrib
TinyOS 2.x index of contributed code Contents of tinyos-contrib
TinyOS Network Protocol Working Group Notes on the network working group

Site and other content

Index All of the available pages on this site
Search engine Search TinyOS documentation and mailing lists
WikiDoc Wiki documentation
Previous Documentation Sites Old documentations

Notes on Contributing Documentation

In order to edit, you must first create an account, using the "create account" link on the upper right. Consult the Wiki User's Guide for information on using the wiki software.

This site actively encourages contributions. If you are not familiar with the Wiki system, consult the Wiki User's Guide. We prefer all documentation to live on this site, rather than having links to external sites, but if you really need to point at an external site, external links are OK too.

All content on this website is covered by the Creative Commons Attribution-Share Alike 3.0 license. By contributing content to this site, you are hereby assigning this license to such content.

Statistics

There are actually 558 articles in this Wiki.