Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

The reference implementation of IEEE802.15.4e provided here is part of the OpenWSN stack implementation. Now, while the IEEE802154E.c file does not contain any hardware-dependent functions, it does depend on a couple of modules around it, which we list in this page.

...

The link layer consists of two sublayers:

  • "02a-MACMAClow" is the "lower MAC". It consists of the IEEE802.15.4e implementation and the associated timer. IEEE802.15.4e feeds from the queue of packets to be sent (the OpenQueue module), and the schedule (in the schedule schedule). It runs entirely in ISR (interrupt service routine) mode and "executes" the schedule without modifying it
  • "02b-RESMAChigh" is the "upper MAC" which is responsible for managing the schedule. It runs entirely in task mode (same goes for everything in the stack except IEEE802.15.4e)

In the source code, you will find a folder structure which mimics the layers at openwsn.

Dependencies

The reference code for the IEEE802.15.4e is at IEEE802154E.c. It calls functions from the different modules. These are implemented in OpenWSN. You're free to either reuse them, or implement them in your stack/OS. Most likely, you'll already have very similar functionality.

...

For a detailed description of this module, look at:

openqueue

This module manages a pool of OpenQueueEntry_t buffers. It implements the following functions IEEE802.15.4e calls:

...

For a detailed description of this module, look at:

idmanager

This module keeps track of the mote's addresses. It implements the following functions IEEE802.15.4e calls:

...

For a detailed description of this module, look at:

openserial

This module is used to print messages through the serial port. It implements the following functions IEEE802.15.4e calls:

...

For a detailed description of this module, look at:

schedule

This module stores the IEEE802.15.4e schedule. It implements the following functions IEEE802.15.4e calls:

...

For a detailed description of this module, look at:

sixtop

This module manages the IEEE802.15.4e schedule and serves as a pass-through between IEEE802.15.4e and the upper layer. It implements the following functions IEEE802.15.4e calls:

...

For a detailed description of this module, look at:

leds

This module drives the LEDs of the board. It implements the following functions IEEE802.15.4e calls:

...

For a detailed description of this module, look at: