Re: [Tinyos-help] Broadcast packet not received by all motes

2010-10-29 Thread Yong, Chee Yeew
Unless you have some randomisation before you transmit packets, sounds like
your packets are interfering with each other. SendDone can be signaled even
if packet's lost in propagation (I think..).

> -Original Message-
> From: tinyos-help-boun...@millennium.berkeley.edu
> [mailto:tinyos-help-boun...@millennium.berkeley.edu]on Behalf Of Simon
> Eberz
> Sent: 28 October 2010 18:42
> To: tinyos-help@millennium.berkeley.edu
> Subject: [Tinyos-help] Broadcast packet not received by all motes
> 
> 
> Hi,
> 
> I'm implementing a simple message exchange between two motes 
> (to measure 
> the RSSI, but this is not of interest) and
> send the messages as broadcasts.
> I'm using the TinyOS Basestation application with the Listen-Tool to 
> check which messages have been sent.
> Here's the problem: I have two motes (call them A and B) with nearly 
> identical code flashed to them.
> A sends a message (broadcast), and after that each mote will 
> send a new 
> broadcast after receiving a packet.
> All messages sent by A are also received, and thus displayed, by the 
> BaseStation-mote, and the LEDs indicate that
> all messages are also received by B [otherwise only one 
> message would be 
> sent anyway].
> But, when B sends a message, it seems to be received by A [as 
> A responds 
> with yet another packet], but is not displayed
> by the BaseStation-App. I tried to verify this by flashing a 
> third mote 
> with custom code, same issue.
> If I just call the SendProbe-method [see below] on mote B it 
> works fine 
> and switching motes doesn't help either.
> LEDs suggest that the SendDone-Event is triggered on both motes.
> Ultimately, it seems that the broadcasts are only received by 
> the mote 
> from which the last message was received (?).
> Is there any property of broadcasts that I am not aware of?
> Here is the (relevant) code I use:
> 
>  void SendProbe(){
>  probe = (ProbeMsg*)(call Packet.getPayload(&pkt,NULL));
>  probe->source = 1;
>  probe->counter = counter;
>  call AMSend.send(AM_BROADCAST_ADDR, &pkt, sizeof(ProbeMsg));
>  }
> 
>  event message_t * Receive.receive(message_t *msg, void *payload, 
> uint8_t len){
>  if(len==sizeof(ProbeMsg)){
>  probe = (ProbeMsg*)payload;
>  call Timer.startOneShot(DELAY_BETWEEN_PROBES);
>  }
>  return msg;
>  }
> 
>  event void Timer.fired(){
>  SendProbe();
>  }
> 
> 
> Thanks for your help
> ___
> Tinyos-help mailing list
> Tinyos-help@millennium.berkeley.edu
> https://www.millennium.berkeley.edu/cgi-bin/mailman/listinfo/t
inyos-help

Please consider the environment before printing a hard copy of this 
e-mail. 
 
The information contained in this e-mail is confidential. It is intended 
only for the stated addressee(s) and access to it by any other person is 
unauthorised. If you are not an addressee, you must not disclose, copy, 
circulate or in any other way use or rely on the information contained in 
this e-mail. Such unauthorised use may be unlawful. If you have received 
this e-mail in error, please inform us immediately on +44 (0)118 986 8601 
and delete it and all copies from your system. 
 
Thales Research and Technology (UK) Limited. A company registered in 
England and Wales. Registered Office: 2 Dashwood Lang Road, The Bourne 
Business Park, Addlestone, Weybridge, Surrey KT15 2NX. Registered Number: 
774298 
 
Thales UK Limited. A company registered in England and Wales. Registered 
Office: 2 Dashwood Lang Road, The Bourne Business Park, Addlestone, 
Weybridge, Surrey KT15 2NX. Registered Number: 868273 
___
Tinyos-help mailing list
Tinyos-help@millennium.berkeley.edu
https://www.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help


Re: [Tinyos-help] Broadcast packet not received by all motes

2010-10-29 Thread Simon Eberz
This should not be the case, as packets are only sent as a respone and 
after a short waiting period (20ms).
Thus, the two motes can never send at the same time.

> Unless you have some randomisation before you transmit packets, sounds like
> your packets are interfering with each other. SendDone can be signaled even
> if packet's lost in propagation (I think..).
>
>> -Original Message-
>> From: tinyos-help-boun...@millennium.berkeley.edu
>> [mailto:tinyos-help-boun...@millennium.berkeley.edu]on Behalf Of Simon
>> Eberz
>> Sent: 28 October 2010 18:42
>> To: tinyos-help@millennium.berkeley.edu
>> Subject: [Tinyos-help] Broadcast packet not received by all motes
>>
>>
>> Hi,
>>
>> I'm implementing a simple message exchange between two motes
>> (to measure
>> the RSSI, but this is not of interest) and
>> send the messages as broadcasts.
>> I'm using the TinyOS Basestation application with the Listen-Tool to
>> check which messages have been sent.
>> Here's the problem: I have two motes (call them A and B) with nearly
>> identical code flashed to them.
>> A sends a message (broadcast), and after that each mote will
>> send a new
>> broadcast after receiving a packet.
>> All messages sent by A are also received, and thus displayed, by the
>> BaseStation-mote, and the LEDs indicate that
>> all messages are also received by B [otherwise only one
>> message would be
>> sent anyway].
>> But, when B sends a message, it seems to be received by A [as
>> A responds
>> with yet another packet], but is not displayed
>> by the BaseStation-App. I tried to verify this by flashing a
>> third mote
>> with custom code, same issue.
>> If I just call the SendProbe-method [see below] on mote B it
>> works fine
>> and switching motes doesn't help either.
>> LEDs suggest that the SendDone-Event is triggered on both motes.
>> Ultimately, it seems that the broadcasts are only received by
>> the mote
>> from which the last message was received (?).
>> Is there any property of broadcasts that I am not aware of?
>> Here is the (relevant) code I use:
>>
>>   void SendProbe(){
>>   probe = (ProbeMsg*)(call Packet.getPayload(&pkt,NULL));
>>   probe->source = 1;
>>   probe->counter = counter;
>>   call AMSend.send(AM_BROADCAST_ADDR,&pkt, sizeof(ProbeMsg));
>>   }
>>
>>   event message_t * Receive.receive(message_t *msg, void *payload,
>> uint8_t len){
>>   if(len==sizeof(ProbeMsg)){
>>   probe = (ProbeMsg*)payload;
>>   call Timer.startOneShot(DELAY_BETWEEN_PROBES);
>>   }
>>   return msg;
>>   }
>>
>>   event void Timer.fired(){
>>   SendProbe();
>>   }
>>
>>
>> Thanks for your help
>> ___
>> Tinyos-help mailing list
>> Tinyos-help@millennium.berkeley.edu
>> https://www.millennium.berkeley.edu/cgi-bin/mailman/listinfo/t
> inyos-help
>
> Please consider the environment before printing a hard copy of this
> e-mail.
>
> The information contained in this e-mail is confidential. It is intended
> only for the stated addressee(s) and access to it by any other person is
> unauthorised. If you are not an addressee, you must not disclose, copy,
> circulate or in any other way use or rely on the information contained in
> this e-mail. Such unauthorised use may be unlawful. If you have received
> this e-mail in error, please inform us immediately on +44 (0)118 986 8601
> and delete it and all copies from your system.
>
> Thales Research and Technology (UK) Limited. A company registered in
> England and Wales. Registered Office: 2 Dashwood Lang Road, The Bourne
> Business Park, Addlestone, Weybridge, Surrey KT15 2NX. Registered Number:
> 774298
>
> Thales UK Limited. A company registered in England and Wales. Registered
> Office: 2 Dashwood Lang Road, The Bourne Business Park, Addlestone,
> Weybridge, Surrey KT15 2NX. Registered Number: 868273
>
>

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


Re: [Tinyos-help] Broadcast packet not received by all motes

2010-10-29 Thread wasif masood
use CCA enable before sending something out.

On Fri, Oct 29, 2010 at 1:44 PM, Simon Eberz  wrote:

> This should not be the case, as packets are only sent as a respone and
> after a short waiting period (20ms).
> Thus, the two motes can never send at the same time.
>
> > Unless you have some randomisation before you transmit packets, sounds
> like
> > your packets are interfering with each other. SendDone can be signaled
> even
> > if packet's lost in propagation (I think..).
> >
> >> -Original Message-
> >> From: tinyos-help-boun...@millennium.berkeley.edu
> >> [mailto:tinyos-help-boun...@millennium.berkeley.edu]on Behalf Of Simon
> >> Eberz
> >> Sent: 28 October 2010 18:42
> >> To: tinyos-help@millennium.berkeley.edu
> >> Subject: [Tinyos-help] Broadcast packet not received by all motes
> >>
> >>
> >> Hi,
> >>
> >> I'm implementing a simple message exchange between two motes
> >> (to measure
> >> the RSSI, but this is not of interest) and
> >> send the messages as broadcasts.
> >> I'm using the TinyOS Basestation application with the Listen-Tool to
> >> check which messages have been sent.
> >> Here's the problem: I have two motes (call them A and B) with nearly
> >> identical code flashed to them.
> >> A sends a message (broadcast), and after that each mote will
> >> send a new
> >> broadcast after receiving a packet.
> >> All messages sent by A are also received, and thus displayed, by the
> >> BaseStation-mote, and the LEDs indicate that
> >> all messages are also received by B [otherwise only one
> >> message would be
> >> sent anyway].
> >> But, when B sends a message, it seems to be received by A [as
> >> A responds
> >> with yet another packet], but is not displayed
> >> by the BaseStation-App. I tried to verify this by flashing a
> >> third mote
> >> with custom code, same issue.
> >> If I just call the SendProbe-method [see below] on mote B it
> >> works fine
> >> and switching motes doesn't help either.
> >> LEDs suggest that the SendDone-Event is triggered on both motes.
> >> Ultimately, it seems that the broadcasts are only received by
> >> the mote
> >> from which the last message was received (?).
> >> Is there any property of broadcasts that I am not aware of?
> >> Here is the (relevant) code I use:
> >>
> >>   void SendProbe(){
> >>   probe = (ProbeMsg*)(call Packet.getPayload(&pkt,NULL));
> >>   probe->source = 1;
> >>   probe->counter = counter;
> >>   call AMSend.send(AM_BROADCAST_ADDR,&pkt, sizeof(ProbeMsg));
> >>   }
> >>
> >>   event message_t * Receive.receive(message_t *msg, void *payload,
> >> uint8_t len){
> >>   if(len==sizeof(ProbeMsg)){
> >>   probe = (ProbeMsg*)payload;
> >>   call Timer.startOneShot(DELAY_BETWEEN_PROBES);
> >>   }
> >>   return msg;
> >>   }
> >>
> >>   event void Timer.fired(){
> >>   SendProbe();
> >>   }
> >>
> >>
> >> Thanks for your help
> >> ___
> >> Tinyos-help mailing list
> >> Tinyos-help@millennium.berkeley.edu
> >> https://www.millennium.berkeley.edu/cgi-bin/mailman/listinfo/t
> > inyos-help
> >
> > Please consider the environment before printing a hard copy of this
> > e-mail.
> >
> > The information contained in this e-mail is confidential. It is intended
> > only for the stated addressee(s) and access to it by any other person is
> > unauthorised. If you are not an addressee, you must not disclose, copy,
> > circulate or in any other way use or rely on the information contained in
> > this e-mail. Such unauthorised use may be unlawful. If you have received
> > this e-mail in error, please inform us immediately on +44 (0)118 986 8601
> > and delete it and all copies from your system.
> >
> > Thales Research and Technology (UK) Limited. A company registered in
> > England and Wales. Registered Office: 2 Dashwood Lang Road, The Bourne
> > Business Park, Addlestone, Weybridge, Surrey KT15 2NX. Registered Number:
> > 774298
> >
> > Thales UK Limited. A company registered in England and Wales. Registered
> > Office: 2 Dashwood Lang Road, The Bourne Business Park, Addlestone,
> > Weybridge, Surrey KT15 2NX. Registered Number: 868273
> >
> >
>
> ___
> Tinyos-help mailing list
> Tinyos-help@millennium.berkeley.edu
> https://www.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help
>



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

Re: [Tinyos-help] Broadcast packet not received by all motes

2010-10-29 Thread Urs Hunkeler
Just an idea: maybe the third mote has some low-power radio 
implementation (low-power listening, LPL) enabled and the sending motes 
somehow do not take this into account (i.e., they do not send a 
long-enough preamble).

Cheers,
Urs


On 10/29/10 3:28 PM, Simon Eberz wrote:
> According to the TinyOS wiki the CC2420 radio stack, which is used by
> the MICAz motes, performs a CCA by default, this should not be the problem.
> Furthermore, not a single one out of the ~300 packets was received by
> the third mote, but all were received by the second one. I don't think
> the problem is interference or something similiar.
___
Tinyos-help mailing list
Tinyos-help@millennium.berkeley.edu
https://www.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help


Re: [Tinyos-help] Broadcast packet not received by all motes

2010-10-30 Thread Simon Eberz
Nice idea, but I tried switching the motes and nothing changes.
I kept the source code for the listening mote extremely simple, I think 
the problem lies with one of the sending motes.

> Just an idea: maybe the third mote has some low-power radio 
> implementation (low-power listening, LPL) enabled and the sending 
> motes somehow do not take this into account (i.e., they do not send a 
> long-enough preamble).
>
> Cheers,
> Urs
>
>
> On 10/29/10 3:28 PM, Simon Eberz wrote:
>> According to the TinyOS wiki the CC2420 radio stack, which is used by
>> the MICAz motes, performs a CCA by default, this should not be the 
>> problem.
>> Furthermore, not a single one out of the ~300 packets was received by
>> the third mote, but all were received by the second one. I don't think
>> the problem is interference or something similiar.
>
>

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