Difference between revisions of "Minimizing CC2420 Power Consumption"

From TinyOS Wiki
Jump to: navigation, search
(New page: == Built in power saving methods == There are several methods the CC2420 radio stack uses to minimize power consumption. 1. Invalid Packet Shutdown Typically, packets are filtered out...)
 
Line 1: Line 1:
 
 
== Built in power saving methods ==
 
== Built in power saving methods ==
 
There are several methods the CC2420 radio stack uses to minimize
 
There are several methods the CC2420 radio stack uses to minimize
 
power consumption.
 
power consumption.
  
1. Invalid Packet Shutdown
 
  
  Typically, packets are filtered out by address at the radio hardware
+
=== Invalid Packet Shutdown ===
  level. When a receiver wakes up and does not receive any
+
 
  packets into the low power listening layer of the radio stack, it  
+
Typically, packets are filtered out by address at the radio hardware
  will automatically go back to sleep after some period of time. As a  
+
level.When a receiver wakes up and does not receive any
  secondary backup, if address decoding on the radio chip is disabled,  
+
packets into the low power listening layer of the radio stack, it  
  the low power listening implementation will shut down the radio if  
+
will automatically go back to sleep after some period of time.As a  
  three packets are receive that do not belong to the node. This helps  
+
secondary backup, if address decoding on the radio chip is disabled,  
  prevent against denial of sleep attacks or the typical transmission  
+
the low power listening implementation will shut down the radio if  
  behavior found in an ad-hoc network with many nodes.
+
three packets are receive that do not belong to the node.This helps  
 +
prevent against denial of sleep attacks or the typical transmission  
 +
behavior found in an ad-hoc network with many nodes.
  
2. Early Transmission Completion
+
=== Early Transmission Completion ===
  
  A transmitter typically sends a packet for twice the amount of time
+
A transmitter typically sends a packet for twice the amount of time
  as the receiver's receive check period. This increases the probability
+
as the receiver's receive check period.This increases the probability
  that the receiver will detect the packet. However, if the transmitter receives
+
that the receiver will detect the packet.However, if the transmitter receives
  an acknowledgement before the end of its transmission period, it
+
an acknowledgement before the end of its transmission period, it
  will stop transmitting to save energy. This is an improvement
+
will stop transmitting to save energy.This is an improvement
  over previous low power listening implementations, which transmitted
+
over previous low power listening implementations, which transmitted
  for the full period of time regardless of whether the receiver has  
+
for the full period of time regardless of whether the receiver has  
  already woken up and received the packet.
+
already woken up and received the packet.
  
3. Auto Shutdown
+
=== Auto Shutdown ===
  
  If the radio does not send or receive messages for some period of
+
If the radio does not send or receive messages for some period of
  time while low power listening is enabled, the radio will automatically  
+
time while low power listening is enabled, the radio will automatically  
  turn off and begin duty cycling at its specified duty cycle period.
+
turn off and begin duty cycling at its specified duty cycle period.
  
4. CCA Sampling Strategy
+
=== CCA Sampling Strategy ===
  
  The actual receive check is performed in a loop inside a function,  
+
The actual receive check is performed in a loop inside a function,  
  not a spinning task. This allows the sampling to be performed
+
not a spinning task.This allows the sampling to be performed
  continuously, with the goal of turning the radio off as quickly as  
+
continuously, with the goal of turning the radio off as quickly as  
  possible without interruption.
+
possible without interruption.
  
  
Line 48: Line 48:
  
 
In some point-to-point applications that rarely transmit, sleep intervals of 5 seconds or more have proven to work well.
 
In some point-to-point applications that rarely transmit, sleep intervals of 5 seconds or more have proven to work well.
 +
 +
You can also try experimenting with the backoff by capturing the RadioBackoff events for your packet and setting them as low as possible. This will let you decrease the number of clear channel samples needed to detect a transmitter.
 +
  
 
= See Also =
 
= See Also =

Revision as of 12:42, 7 July 2008

Built in power saving methods

There are several methods the CC2420 radio stack uses to minimize power consumption.


Invalid Packet Shutdown

Typically, packets are filtered out by address at the radio hardware level.When a receiver wakes up and does not receive any packets into the low power listening layer of the radio stack, it will automatically go back to sleep after some period of time.As a secondary backup, if address decoding on the radio chip is disabled, the low power listening implementation will shut down the radio if three packets are receive that do not belong to the node.This helps prevent against denial of sleep attacks or the typical transmission behavior found in an ad-hoc network with many nodes.

Early Transmission Completion

A transmitter typically sends a packet for twice the amount of time as the receiver's receive check period.This increases the probability that the receiver will detect the packet.However, if the transmitter receives an acknowledgement before the end of its transmission period, it will stop transmitting to save energy.This is an improvement over previous low power listening implementations, which transmitted for the full period of time regardless of whether the receiver has already woken up and received the packet.

Auto Shutdown

If the radio does not send or receive messages for some period of time while low power listening is enabled, the radio will automatically turn off and begin duty cycling at its specified duty cycle period.

CCA Sampling Strategy

The actual receive check is performed in a loop inside a function, not a spinning task.This allows the sampling to be performed continuously, with the goal of turning the radio off as quickly as possible without interruption.


Sleep Interval Recommendations

With the default low power communication implementation, we recommend a sleep interval between 0.5 - 2 seconds. If you know nodes in your network will transmit very rarely, you can try increasing the sleep interval to greater amounts.

Increasing the sleep interval increases the amount of energy a transmitter must expend to wake up a sleeping node, and also increases the throughput through the network.

In some point-to-point applications that rarely transmit, sleep intervals of 5 seconds or more have proven to work well.

You can also try experimenting with the backoff by capturing the RadioBackoff events for your packet and setting them as low as possible. This will let you decrease the number of clear channel samples needed to detect a transmitter.


See Also

Next