Energy Consumption in Sleep Mode (CC2420)

342 views
Skip to first unread message

Andreas

unread,
Nov 18, 2009, 10:47:53 AM11/18/09
to Castalia Simulator
Hi,

in Castalia the energy consumption in the sleep mode for the cc2420
(radio_CC2420.ini) is set to

SN.node[*].networkInterface.Radio.sleepPower = 1.4 # mW

This value matches the current consumption of the IDLE Mode according
to the CC2420 datasheet:
Idle mode (IDLE): 426uA

However, most MAC protocols put the radio into the PD or OFF mode
while sleeping:
Power Down mode (PD): 20uA
Voltage regulator off (OFF): 0.02uA
-> This allows to save energy by a factor of 20!

What is the reason that Castalia does not use the PD (OFF) mode?

Or is it save to use these modes and change the following switching
times:
delaySleep2Tx=0.194 + 0.86
delaySleep2Listen=0.194 + 0.86
(0.860ms is the oscillator wakeup time)

How much energy is spent during the wakeup? Is there a parameter for
this?

Greets,
Andreas

Athanassios Boulis

unread,
Nov 18, 2009, 6:18:17 PM11/18/09
to castalia-...@googlegroups.com
Hello Andeas,

What the CC2420 datasheet calls "idle" mode is the usual
sleep mode that people use in MACs. Other, deeper, sleep
modes are usually not preferred unless you are going to sleep
for a long time.

Of course Castalia should provide all sleep modes and let
them be used by a MAC in any way. Right now we only offer
one sleep state, but from the next version (and with a 
complete overhaul of the radio) we will support arbitrary number
of states. For now you can do the change in parameters you
mentioned to use a deeper sleep mode.

During wakeup we do not have any special states, there is just
the delay to wake up. While waking up we conservatively assume 
that the power consumed is the power of the most power-hungry
state of the two states changing.

Andreas

unread,
Nov 19, 2009, 5:49:30 AM11/19/09
to Castalia Simulator
Hi Athanassios,

Thanks for your quick reply. I will go ahead and do the appropriate
changes.

I don't agree though that the protocols don't use the sleep mode.
Especially LPL protocols regularly make use of them.

For the next version of Castalia it would be nice if you could also
define the power consumption when switching the state. For instance,
when waking up the CC2420 from the sleep state to the receive state it
takes the radio about 3ms with an average power consumption of about
3mA. These 3mA are fare less than the ~19mA of the receiving state
(see Fig. 5 on page 11 in the following document).
http://www.tik.ee.ethz.ch/~woehrlem/tik/pub/wlt2009.pdf

Greets,
Andreas

Athanassios Boulis

unread,
Nov 19, 2009, 7:49:56 AM11/19/09
to castalia-...@googlegroups.com

I don't agree though that the protocols don't use the sleep mode.
Especially LPL protocols regularly make use of them.

 
I'd be interested in seeing this. 
Can you give me a reference/link of a protocol that they explicitly 
state that they are using a deeper sleep state instead of a 
"default" sleep state? I am sure there is use for it, I just haven't
seen any protocol being aware of multiple sleep states of the radio.
 
For the next version of Castalia it would be nice if you could also
define the power consumption when switching the state. For instance,
when waking up the CC2420 from the sleep state to the receive state it
takes the radio about 3ms with an average power consumption of about
3mA. These 3mA are fare less than the ~19mA of the receiving state
(see Fig. 5 on page 11 in the following document).
http://www.tik.ee.ethz.ch/~woehrlem/tik/pub/wlt2009.pdf

Thank you, that is very useful. For the next version of Castalia ,
the transition between (stable) states will a state on its own 
with a power consumption of its own.

Thanassis
 

Andreas

unread,
Nov 19, 2009, 1:06:41 PM11/19/09
to Castalia Simulator
> I'd be interested in seeing this.
> Can you give me a reference/link of a protocol that they explicitly
> state that they are using a deeper sleep state instead of a
> "default" sleep state? I am sure there is use for it, I just haven't
> seen any protocol being aware of multiple sleep states of the radio.

in the pdf mentioned above you see the radio wake-up sequence of the
harvester protocol, which is based on the tiny-os 2.x LPL listening
stack. this plot shows that the current consumption of the sleep phase
is far below the one of the radio's IDLE state.

furthermore, if you have a look at the tinyos code of the LPL stack
when setting the radio asleep, the following code is executed (which
shuts down the voltage regulator):

void shutdown() {
call SubControl.stop();
call CC2420Power.stopVReg();
post stopDone_task();
}

async command error_t CC2420Power.stopVReg() {
m_state = S_VREG_STOPPED;
call RSTN.clr();
call VREN.clr();
call RSTN.set();
return SUCCESS;
}


> the transition between (stable) states will a state on its own
> with a power consumption of its own.
sweet

greets
andreas
Reply all
Reply to author
Forward
0 new messages