Hi Nicole,
I agree with Eric that it is rather unlikely that there is a problem
with the timers in TinyOS. Just to get the most obvious question out of
the way: I'd assume you have two timer objects ("components new
TimerMilliC() as MilliTimer; components new TimerMilliC() as Timer3;")?
Otherwise there might be a confusion between timers.
You already seem to have debugging code in your program. If you run your
application in the simulator, do you get this error? If so, it should be
fairly easy to debug the code by inserting more debug statements to
verify that the code really does what you expect. For instance I would
add a dbg() statement before every call to start or stop a timer and
another dbg() statement in the timer tasks. dbg() statements are much
more verbose than LEDs.
If you cannot reproduce the error in the simulator, you might want to
consider using the printf library to get debugging messages from the
motes directly (via serial cable):
http://docs.tinyos.net/index.php/The_TinyOS_printf_Library
Cheers,
Urs
Eric Decker wrote:
> I've been through the timer code in TinyOS2 pretty throughly. It is very
> low likelihood (via normal code execution, I am discounting a random memory
> writer) that a timer can fire before it is started. There is a control cell
> in the timer structure *"isrunning"* that has to be set for the fire signal
> to happen. This can only get set if the timer is started. Now if this bit
> is getting set through some other mechanism (like a run away) then all bets
> are off.
>
>>From tos/lib/timer/VirtualizeTimerC.nc.
>
> typedef struct
> {
> uint32_t t0;
> uint32_t dt;
> bool isoneshot : 1;
> bool isrunning : 1;
> bool _reserved : 6;
> } Timer_t;
>
>
>
> On Mon, May 19, 2008 at 11:06 AM, Paul Stickney <[EMAIL PROTECTED]> wrote:
>
>> I do not have a solid answer, but some things you may want to consider
>> looking at:
>> -Maybe you are calling it with a smaller timeout than you suspect or
>> earlier than expected
>> -The LED might be turned on by other code (internal or external)
_______________________________________________
Tinyos-help mailing list
[email protected]
https://www.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help