Hi Miklos,
Thanks for the speedy response. My entire project is quite large... is there 
any specific portion/part I can extract  that would be more useful ? 

The portion of code I initially posted is from RF230DriverLayerP.nc

tasklet_async command error_t RadioSend.send(message_t* msg)
{
                uint16_t time;
                uint8_t length;
                uint8_t* data;
                uint8_t header;
                uint32_t time32;
                void* timesync;

                if( cmd != CMD_NONE || state != STATE_RX_ON || ! 
isSpiAcquired() || radioIrq )
                {
                        FormatDbgStr("FAT : 
cmd=%d,st=%d,spAq=%d,rIrq=%d\r\n",cmd, state,isSpiAcquired(), radioIrq );
                        return EBUSY;
                }
...
...
...

}


    


Thanks,
Lewis



-----Original Message-----
From: [email protected] [mailto:[email protected]] On Behalf Of Miklos Maroti
Sent: Wednesday, October 24, 2012 1:58 PM
To: Oldrine Lewis
Cc: [email protected]
Subject: Re: [Tinyos-help] iris radio locked - returns BUSY forever

Can you post your code too? Miklos

On Wed, Oct 24, 2012 at 12:53 PM, Oldrine Lewis <[email protected]> wrote:
> I have four Iris nodes and all are broadcasting (flooding the network)  a
> message. Each node after receiving a msg waits for a random period and
> re-broadcasts the msg.
>
> I noticed that after a few seconds the radio stack locks up and returns
> EBUSY forever.
>
> I put a few debug statements in RadioSend.send() (file =
> RF230DriverLayerP.nc).
>
>
>
>
>
> if( cmd != CMD_NONE || state != STATE_RX_ON || ! isSpiAcquired() || radioIrq
> )
>
> {
>
>      FormatDbgStr("FAT : cmd=%d,st=%d,spAq=%d,rIrq=%d\r\n",cmd,
> state,isSpiAcquired(), radioIrq );
>
>      return EBUSY;
>
> }
>
> The error log I got looked like this before the send failed.
>
>
>
> FAT : cmd=5,st=5,spAq=1,rIrq=0
>
> FAT : cmd=5,st=5,spAq=1,rIrq=0
>
> FAT : cmd=5,st=5,spAq=1,rIrq=0
>
> FAT : cmd=5,st=5,spAq=1,rIrq=0
>
> FAT : cmd=5,st=5,spAq=1,rIrq=0
>
> FAT : cmd=5,st=5,spAq=1,rIrq=0
>
> FAT : cmd=5,st=5,spAq=1,rIrq=0
>
> FAT : cmd=5,st=5,spAq=1,rIrq=0
>
> FAT : cmd=0,st=7,spAq=1,rIrq=0
>
> FAT : cmd=0,st=7,spAq=1,rIrq=0
>
> FAT : cmd=0,st=7,spAq=1,rIrq=0
>
> FAT : cmd=0,st=7,spAq=1,rIrq=0
>
> FAT : cmd=0,st=7,spAq=1,rIrq=0
>
> FAT : cmd=0,st=7,spAq=1,rIrq=0
>
> FAT : cmd=0,st=7,spAq=1,rIrq=0
>
> FAT : cmd=0,st=7,spAq=1,rIrq=0
>
> It seems that the state and cmd variable somehow get out of sync.
>
> Other settings in makefile
>
> CFLAGS += -DTASKLET_IS_TASK
>
>
>
> I am investigating this further and would like to know if anyone has
> experienced something similar
>
>
>
> Thanks in advance.
>
>
>
>
> _______________________________________________
> Tinyos-help mailing list
> [email protected]
> https://www.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help

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

Reply via email to