Difference between revisions of "TinyOS Documentation Wiki"

From TinyOS Wiki
Jump to: navigation, search
(Various TinyOS Tools)
 
(115 intermediate revisions by 23 users not shown)
Line 1: Line 1:
This is the new Wiki site for the TinyOS Documentation Working Group.
+
__NOTOC__
Everyone is welcome to edit these pages and contribute TinyOS documentation.<br>
+
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!
In order to edit, you must first create an account, using the link on the upper right ('''Login / create account''').<br>
 
Consult the [http://meta.wikimedia.org/wiki/Help:Contents User's Guide] for information on using the wiki software.<br>
 
<br>
 
= TinyOS Documentation Index =
 
'''Purpose of this Wiki Site:''' This site is part of a new effort (as of October 2007) to establish a single, common site for all TinyOS Documentation, akin to the Linux Documentation Project (but for TinyOS, of course). Right now, TinyOS documentation is scattered across many sites and is often poorly maintained. We hope that by using a Wiki - and making the site fairly open to edits from anyone - that it will be possible to create and ''maintain'' TinyOS documentation over a longer period of time. Click [[Special:Allpages| here]] to see an index of all the available pages.
 
  
So, you are encouraged to contribute documentation to this site simply by editing this page and adding a link to a new (empty) page. Come back and click on that link and start creating content for the new page. Don't worry too much about organization right now, since we can re-organize things later on if need be. If you are not familiar with the Wiki system, consult the [http://meta.wikimedia.org/wiki/Help:Contents User's Guide].
+
== 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
 +
|}
  
We prefer all documentation to live on this site, rather than having links to external sites, but external links are OK too.
+
== Documentation ==
 +
{| 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://www.tinyos.net/tinyos-2.x/doc/pdf/tinyos-programming.pdf TinyOS Programming Manual]
 +
| 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])
 +
|-
 +
| style="background-color: #F9F9F9; border: 1px solid #cccccc; padding: 0.2em 0.6em; font-size: 1.2em;" | [[TEPs]]
 +
| style="background-color: #F9F9F9; border: 1px solid #cccccc; padding: 0.2em 0.6em;"                  | TinyOS Enhancement Proposals, which describe the TinyOS APIs and their implementations
 +
|-
 +
| style="background-color: #ffffff; border: 1px solid #cccccc; padding: 0.2em 0.6em; font-size: 1.2em;" | [[Source Code Documentation]]
 +
| style="background-color: #ffffff; border: 1px solid #cccccc; padding: 0.2em 0.6em;"                  | HTML documentation of TinyOS source code
 +
|-
 +
| 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]
 +
| style="background-color: #F9F9F9; border: 1px solid #cccccc; padding: 0.2em 0.6em;"                  | The nesC manual
 +
|-
 +
| style="background-color: #ffffff; border: 1px solid #cccccc; padding: 0.2em 0.6em; font-size: 1.2em;" | [[Networking]]
 +
| style="background-color: #ffffff; border: 1px solid #cccccc; padding: 0.2em 0.6em;"                  | Network documentation
 +
|-
 +
| style="background-color: #F9F9F9; border: 1px solid #cccccc; padding: 0.2em 0.6em; font-size: 1.2em;" | [[Using TinyOS]]
 +
| 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
 +
|-
 +
| 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
 +
|}
  
== TinyOS Search Engine ==
+
== Hardware ==
Using Google's custom search features, a search engine dedicated to TinyOS has been created. The advantage of using this search engine instead of a normal web search is that only specific sites are indexed. This means that any search results are highly relevant to TinyOS, and your search terms can be very general. For example, if you need help on installing TinyOS in Ubuntu, just search "Ubuntu" in the custom search engine and it will only return links to pages containing the word "Ubuntu" on known TinyOS sites.
+
{| 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
 +
|}
  
[http://www.google.com/coop/cse?cx=000490616372089452102%3Ajdf9nzpy7se Click here for the TinyOS Custom Search Engine]
+
== 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
 +
|}
  
== Installing 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
 +
|}
  
* [[Windows_Installation| Linux / Windows]]
+
== Site and other content ==
** [[java_cygwin | Common Java problems on Cygwin]]
+
{| style="border: 1px solid #cccccc; border-collapse: collapse; color: black; margin: 1em 0;"
** [http://www.isis.vanderbilt.edu/projects/NEST/tinyos-2.x-iris/doc/html/install-tinyos-iris.html Updating external tools to support the IRIS mote]
+
| style="background-color: #ffffff; border: 1px solid #cccccc; padding: 0.2em 0.6em; font-size: 1.2em;" | [[Special:Allpages|Index]]
* [http://gentoo-wiki.com/TinyOS Installing TinyOS on Gentoo]
+
| style="background-color: #ffffff; border: 1px solid #cccccc; padding: 0.2em 0.6em;"                  | All of the available pages on this site
* [http://www.5secondfuse.com/tinyos/install.html Installing TinyOS on Ubuntu] [http://hi.baidu.com/vvfang/blog/item/e2dfa4126bd9adcdc3fd789c.html Chinese Version]
+
|-
* [http://toilers.mines.edu/Public/XubunTOS Installing TinyOS on XubunTOS]
+
| 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]
* [[Installing a XubunTOS Virtual Machine on VMWare Server]]
+
| style="background-color: #F9F9F9; border: 1px solid #cccccc; padding: 0.2em 0.6em;"                  | Search TinyOS documentation and mailing lists
* [[Running a XubunTOS Virtual Machine Image in VMware Player]]
+
|-
* [[Installing tinyos-2.x on Mac OS X (Tiger & Leopard) | Installing TinyOS on Mac OS (Tiger & Leopard)]]
+
| 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
 +
|}
  
== Programming Tutorials ==
+
== 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 [http://meta.wikimedia.org/wiki/Help:Contents Wiki User's Guide] for information on using the wiki software.<br>
  
* [[TinyOS_Tutorials|Tutorials on Getting Started with TinyOS Programming]]
+
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>
* [[Boomerang|Boomerang and Tmote Resources from Moteiv]]
 
* [http://www.tinyos.net/tinyos-2.x/doc/pdf/tinyos-programming.pdf TinyOS Programming Manual]
 
* [[TUnit|TUnit TinyOS Unit Testing]]
 
* [[OpenOCD for IMote2 | Programming IMote2 with OpenOCD]]
 
  
== Hardware Platforms ==
+
'''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.
  
* [[TMote Sky|TMote Sky, a.k.a. Telos Rev B]]
+
== Statistics ==
* [[Kmote|Kmote, a.k.a. Telos Rev B]]
+
There are actually [[Special:Statistics|{{NUMBEROFARTICLES}}]] articles in this Wiki.
* [[MicaZ]]
 
* [[Mica2]]
 
* [[Mica2dot]]
 
* [[NXTMOTE|NXTMOTE - TinyOS on LEGO MINDSTORMS NXT]]
 
* [[Intel SHIMMER]]
 
* [[Imote2]]
 
  
== Software Libraries and Drivers ==
 
  
* [[CC2420|CC2420 Radio Stack]]
+
[[Category:Articles]]
* [[CC1100/CC2500|CC1100/CC2500 Radio Stack]]
 
 
 
== Sensorboards ==
 
 
 
* [[MTS420|MTS420 Sensorboard: Mica Family of Motes]]
 
 
 
== Various TinyOS Tools ==
 
* [[NESCDT- An editor for nesC in Eclipse]]
 
 
 
== Other Documents ==
 
* [[Contributing Code to TinyOS]]
 
* [[TinyOS 2.x index of contributed code]]
 
* [[TinyOS TODO List]]
 
* [[Frequently Asked Questions (FAQs)| Frequently Asked Questions (FAQs)]]
 
* [[Wishlist: Ports from TinyOS-1.x to TinyOS-2.x | Wishlist: Ports from TinyOS-1.x to TinyOS-2.x]]
 
* [http://www.cs.utah.edu/~regehr/tos_avrora.html Using TinyOS with the Avrora Simulator]
 
* [http://www.cs.utah.edu/~regehr/debugging_tinyos/ TinyOS Debugging Tutorial]
 
* [http://homepages.dcc.ufmg.br/~bpires/tutorials/tutorial/ Tutorial on setting up a complete TinyOS 2.x Network]
 
* [http://homepages.dcc.ufmg.br/~bpires/tutorials/manuals/ Some Datasheets]
 
* [http://homepages.dcc.ufmg.br/~bpires/tutorials/dossie Tutorial in Portuguese]
 
* [http://hi.baidu.com/vvfang/blog/category/Tinyos%20Related Study Notes in Chinese]
 
* [http://tinyos.cvs.sourceforge.net/*checkout*/tinyos/tinyos-2.x/doc/html/tep131.html Creating a New Platform for TinyOS 2.x]
 
* [http://www.btnode.ethz.ch/Projects/SensorNetworkMuseum Nice summarization and overview of various sensor network platforms and related components]
 
 
 
== Documents that need to be written ==
 
 
 
Please feel free to add additional topics or create pages for each of the topics below.
 
* Platforms
 
**Overview of commonly used platforms with software porting/compatibility issues
 
* Sensors
 
** Sensor boards
 
** Which TinyOS modules to use for which sensor
 
** How to convert the raw sensor values to commonly used formats
 
* RSSI / LQI
 
** How to obtain RSSI / LQI values for a received packet
 
** How to measure RSSI values without receiving a packet (measuring noise)
 
** Relationship between RSSI / LQI values and physical distance
 
* TX power
 
** How to reduce the TX power
 
*** For all transmissions
 
*** On a per-packet basis
 
* How to debug the programmer
 
** For Mica-based motes, how to ensure they are properly plugged in
 
** For network based programmers, how to verify the communication
 
** Common mistakes, common hardware errors
 
* How to debug the serial communication
 
** Which port to use for MIB520
 
** How to configure network-based programmers
 
* Case Studies (Example applications)
 
* CVS CO & Update
 
* Links or references to the TEP's
 
 
 
= Meta-documentation for the Wiki site =
 
 
 
* [http://www.mediawiki.org/wiki/Help:Configuration_settings Configuration settings list]
 
* [http://www.mediawiki.org/wiki/Help:FAQ MediaWiki FAQ]
 
* [http://mail.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWiki release mailing list]
 

Latest revision as of 21: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.