I am just wondering how the user level code is written, maybe the bug
is there. If you have a public repository, then I will take a look.
Basically I wanted to see how you receive and resend the message.
Miklos

On Wed, Oct 24, 2012 at 1:04 PM, Oldrine Lewis <ole...@sutron.com> wrote:
> 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: mmar...@gmail.com [mailto:mmar...@gmail.com] On Behalf Of Miklos Maroti
> Sent: Wednesday, October 24, 2012 1:58 PM
> To: Oldrine Lewis
> Cc: tinyos-help@millennium.berkeley.edu
> 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 <ole...@sutron.com> 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
>> Tinyos-help@millennium.berkeley.edu
>> https://www.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help
_______________________________________________
Tinyos-help mailing list
Tinyos-help@millennium.berkeley.edu
https://www.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help

Reply via email to