In this case the CC2420 code does not release the resource before going
into stop mode?
Vlado Handziski wrote:
On 6/16/06, *Roman Lim* <[EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]>> wrote:
Hello
I noticed that the calculated lowpowermode in McuSleepC.nc is 1, when
there is a initiated radio (via ActiveMessageC), even when the
radio is
in stopped state.
Responsible for this is the following line in McuSleepC.nc
(getPowerState()):
((ME1 & (UTXE0 | URXE0)) && (U0TCTL & SSEL1))
Is it necessary to keep the uart running when the radio is set to
sleep
mode?
I tried to force the OS to go to lowpower mode 3, even if the
uart0 is
configured for radio. In this setup it was no problem to stop and
start
the CC2420 and send packets.
Before the MCU can go to LPM3, the USART needs to be disabled. This
should be done by the implicit power manager (TEP 115) using
AsyncStdControl of the HplMsp430UsartxP.nc once all the clients
release the USART. So, as long as the CC2420 code releases the
resource before going into stop mode, the getPowerState() should work
OK. Don't be confused by the UTXE0 and URXE0 names in the check. URXE0
is the same location as USPIE0 so the check covers potential use of
SMCLK both in Uart and Spi mode.
Vlado
_______________________________________________
Tinyos-help mailing list
[email protected]
https://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help