Hi list.

I've looked through the TEPs and nesdocs, but can't find a clear
answer to this problem. Also I've had a look at the .nc source, but I
don't understand 100% how the virtualization and arbitration/power
management works.

How do you 'turn off' a AMReceiverC component when you don't want to
use up power listening? I don't see a stop/start interface to
AMReceiverC.

My assumption is that tinyos automatically manages turning the radio
on (for reception) when needed. ie, if you declare an AMReceiverC,
then tinyos will run it's low power listening logic continuously, but
if you don't declare any AMReceiverC in your app, then tinyos won't
spend any time using low power (I'm using tmote sky, cc2420 btw, and
the latest tinyos-2.x CVS)

Basically, to conserve power, I want the mote to listen as little as
possible. eg, only once every minute for a few seconds. Also, the mote
needs to send (in broadcast mode) data every few seconds. I assume
that when sending to the broadcast address that motes don't wait for
other motes to acknowledge reception (and retry a few times, etc) (as
described in the low power listening docs).

The best logic I can think of offhand is:

1) Init doesn't start up AMControl
2) When we want to receive or send we first run AMControl.start() (split phase)
3) Do our receiving/sending, wait for it to finish
4) Then run AMControl.stop()

However, the above seems very awkward, and we need to be careful the
timing. Is there a better way to achieve what I'm trying?

David.
_______________________________________________
Tinyos-help mailing list
[email protected]
https://www.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help

Reply via email to