[Tinyos-help] SplitControl on Telos rev. A

Farzad H. Eskafi feskafi at gmail.com
Thu Mar 24 13:24:17 PST 2005


Yes, I have looked at CountSleepRadio a million times by now.  That
code uses genericComm to wake the radio up, I'm using SplitControl
which I think is more reliable.  Also, my code both receives and sends
signals.

The pseudo version on the sender side is something like this, where
SendData is task, receiveAck is an event, the receiveAck post the next
task ahead, and the SendData waits for the event receiveAck to happen.

SendData -> receiveAck -> GoToSleep (SplitControl.stop())  fire a
timer to start the radio later.

I know there is another way to get an Ack back, but when I combined
the automated Ack with my routing, it caused some problems.  That's
why the receiver has to manually send back an Ack.

When I don't receive an Ack back, the sender goes to sleep, wakes up
later and everything works fine. (tested that part a lot). But when I
receive an Ack back and the mote goes to sleep, sometimes it doesn't
come back up after about 1.5min. I appreciate any help.

Any ideas?

Regards,


On Wed, 23 Mar 2005 21:17:32 -0800, Joe Polastre <joe.polastre at gmail.com> wrote:
> Have you tried running
> contrib/ucb/apps/CountRadio/CountSleepRadioC.nc?  That has run for
> many days on my desk.
> 
> -Joe
> 
> 
> On Fri, 18 Mar 2005 15:07:48 -0800, Farzad H. Eskafi <feskafi at gmail.com> wrote:
> > Hi,
> >
> >   I'm using SplitControl wired to CC2420RadioC to turn the radio
> > on/off on Telos rev. A. What I've noticed is that sometimes the radio
> > doesn't send the message at all.  In the portion of the code I've
> > provided below after about 1.5 min (I've actually measured that), the
> > the green Led is toggled. Anybody has any idea why?  Thanks.
> >
> > .
> > .
> > .
> > .
> > void SendRTS()
> >     {
> >       PicoRadio *senddata = (PicoRadio *) DATA.data ;
> >       senddata->addr      = TOS_LOCAL_ADDRESS      ;
> >       senddata->val       = AM_RTS                 ;
> >
> >       if (call senddata.send(TOS_BCAST_ADDR, DATASIZE, &DATA))
> >         {
> >           // Do nothing ;
> >         }
> >       else
> >         {
> >           call Leds.greenToggle() ;
> >
> >           // Go to sleep later.
> >         }
> >     }
> >
> > event result_t SplitControl.startDone()
> >     {
> >               SendData()             ;
> >
> >       return SUCCESS;
> >     }
> > _______________________________________________
> > Tinyos-help mailing list
> > Tinyos-help at Millennium.Berkeley.EDU
> > http://mail.Millennium.Berkeley.EDU/mailman/listinfo/tinyos-help
> >
>


More information about the Tinyos-help mailing list