Versions Compared

Key

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

Table of Contents

The following image is a one-page chronogram of the IEEE802.15.4e state machine.

...

Triggered by #rt1 expiring, e.g. timer fires while state==S_RXDATAOFFSET.

In C-code:

No Formatcode
#!c
inline void activity_ri2() {
   uint8_t frequency;
   
   // change state
   changeState(S_RXDATAPREPARE);

   // calculate the frequency to transmit on
   frequency = calculateFrequency(ieee154e_vars.asn, schedule_getChannelOffset(ieee154e_vars.asn) );

   // configure the radio for that frequency
   radio_setFrequency(frequency);

   // enable the radio in Rx mode. The radio does not actively listen yet.
   radio_rxEnable();

   // arm rt2
   ieee154etimer_schedule(DURATION_rt2);

   // change state
   changeState(S_RXDATAREADY);
}

rt2

Times when to give the 'go' signal to the radio to actively listen for packets.

...