Ok, so the problem seems to be the BaseStation app.  Relaying packets
from Radio to UART works fine, but UART to Radio seems to lose the
payload.  I'm not yet sure why.

Jacob

On Tue, Aug 4, 2009 at 10:45 AM, Jacob Sorber<jacob.sor...@gmail.com> wrote:
> Just curious if anyone has seen this behavior.  I have been using
> tosthreads with tinynodes a bit lately and I noticed that when I use
> BlockingAMReceiverC, receive returns SUCCESS when a packet is sent to
> the mote, but the packet payload seems to be all zeros instead of the
> data I'm sending.  It may be a problem with my code (which I will
> continue to explore), but since tosthreads is relatively new, I
> figured it might also be a bug.
>
> If anyone has seen this, or has any ideas, please let me know.
>
> Also, I just noticed the following code in BlockingAMReceiverImplP.nc.
>  Line 12 (146 in the file) caught my attention.  Can you copy a
> message_t struct like that? [*(p->msg) = *m]
>
> 1:  event message_t* Receive.receive[uint8_t am_id](message_t* m,
> void* payload, uint8_t len) {
> 2:      syscall_t* s;
> 3:      params_t* p;
>
> 4:      if(blockForAny == TRUE)
> 5:         s = call SystemCallQueue.find(&am_queue, INVALID_ID);
> 6:      else
> 7:         s = call SystemCallQueue.find(&am_queue, am_id);
> 8:      if(s == NULL) return m;
>
> 9:      p = s->params;
> 10:    if( (p->error == EBUSY) ) {
> 11:       call Timer.stop[s->thread->id]();
> 12:       *(p->msg) = *m;  //Can you copy a struct like this?
> 13:       p->error = SUCCESS;
> 14:       call SystemCall.finish(s);
> 15:    }
> 16:    return m;
> 17:  }
>
>
> Thanks,
> Jacob
>

_______________________________________________
Tinyos-help mailing list
Tinyos-help@millennium.berkeley.edu
https://www.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help

Reply via email to