[Tinyos Core WG] Last call: TEP 125

Philip Levis pal at cs.stanford.edu
Fri Mar 28 13:22:41 PDT 2008


I've edited TEP 125 (802.15.4 frame formats) to incorporate the  
comments made on last week's telecon. I'd like to suggest 255 as the  
NALP value for I-Frames, as it would be the easiest for other  
protocols to avoid.

The text addresses Jan's concern about different frame sizes. It also  
specifies that TinyOS CC2420 stacks MUST support 16-bit addresses and  
MAY support others.

I'd like to put 125 in last call. The last call will end at 9AM next  
Wednesday (just before the telecon), so we can discuss issues raised  
then. So please, everyone take a look and comment if you see issues or  
have concerns.

Phil

-------------- next part --------------
====================================================================
TinyOS 802.15.4 Frames
====================================================================

:TEP: 125
:Group: Core Working Group 
:Type: Documentary
:Status: Draft
:TinyOS-Version: 2.x
:Author: Jonathan Hui, Philip Levis, and David Moss

:Draft-Created: 2-Feb-2007
:Draft-Version: $Revision: 1.3 $
:Draft-Modified: $Date: 2008/03/28 20:19:26 $
:Draft-Discuss: TinyOS Developer List <tinyos-devel at mail.millennium.berkeley.edu>

.. Note::

   This memo documents a part of TinyOS for the TinyOS Community, and
   requests discussion and suggestions for improvements.  Distribution
   of this memo is unlimited. This memo is in full compliance with
   TEP 1.

Abstract
====================================================================

This memo documents the frame format for 802.15.4 packets in TinyOS
2.0.

1. Introduction
====================================================================

802.15.4 is a data-link and physical packet format for
low-power wireless networks that is used in many TinyOS platforms.
The TinyOS 2.0 active message layer adds a packet field for higher-level
protocol dispatch. This document describes the two TinyOS 2.0 frame format
for 802.15.4 networks. The first format is for isolated TinyOS networks;
the second format is for networks that share the spectrum with 6lowpan
networks[1]_.

2. 802.15.4
====================================================================

802.15.4 supports several different source and destination addressing
modes, and so has a variable sized packet header.[2]_ A TinyOS device MUST
support packet frames with 16-bit short source and destination addresses.
A TinyOS device MAY support additional 802.15.4 frame formats. 

3. Frame Format
====================================================================

TinyOS has two 802.15.4 frame formats. The first format, the T-Frame, is
for TinyOS networks which do not share their channel with other wireless
networking architectures. This frame format assumes that TinyOS can use
every bit of the packet and does not need to state that it is a TinyOS packet.
T-Frame stands for "TinyOS Frame."

The TinyOS 802.15.4 T-frame format is as follows::

  +-------------------+---------+------------------------------+--------------+
  | 802.15.4 Header   | AM type |            data              | 802.15.4 CRC |
  +-------------------+---------+------------------------------+--------------+

AM type is a single byte field which indicates which active message type
the payload contains.

The second format, the I-Frame, is for TinyOS networks which share their
channel with 6lowpan networks. 6lowpan reserves a series of codes for the
first byte of the payload for non-6lowpan packets. In order to interoperate
with 6lowpan networks, TinyOS I-Frames specify such a field. I-Frame stands
for "Interoperable Frame."

The TinyOS 802.15.4 I-frame format is as follows::

  +-------------------+---------+---------+--------------------+--------------+
  | 802.15.4 Header   | 6lowpan | AM type |        data        | 802.15.4 CRC |
  +-------------------+---------+------------------------------+--------------+

AM type is the same as in a T-frame. 6lowpan is the NALP code to identify 
this as a TinyOS packet. NALP codes must be in the range of 192-255. 
TinyOS uses code 255.

The AM type 255 is reserved for both T-Frames and I-Frames. A TinyOS 
program MUST NOT use it.

4. Implementation
====================================================================

An implementation of the T-Frame can be found in tinyos-2.x/tos/chips/cc2420.

An implementation of the I-Frame can be found in tinyos-2.x/tos/chips/cc2420.

5. Author Addresses
====================================================================


|
| Jonathan Hui
| 657 Mission St. Ste. 600
| Arched Rock Corporation
| San Francisco, CA 94105-4120
|
| phone - +1 415 692 0828
| email - jhui at archedrock.com
|
| Philip Levis
| 358 Gates Hall
| Stanford University
| Stanford, CA 94305-9030
|
| phone - +1 650 725 9046
| email - pal at cs.stanford.edu
|
| David Moss
| Rincon Research
|
|
|
-------------- next part --------------





More information about the Tinyos-2.0wg mailing list