Hi!

On Wed, 8 Nov 2006, David Moss wrote:

> Hi Razvan,
>
> Interesting - broadcasts are never supposed to be acknowledged, as you
> pointed out.   I see what the issue is though - line 276 in
> CC2420LowPowerListeningP is forcing acknowledgements on, and the lower level
> radio stack isn't checking addresses before ack'ing.  Therefore, line 276
> should be surrounded by an if-statement that verifies the destination
> address of the message is not the broadcast address.

Thanks for the quick reply! Now it works fine. :-) Below are the changes
you describe above.

Index: CC2420LowPowerListeningP.nc
===================================================================
RCS file: 
/cvsroot/tinyos/tinyos-2.x/tos/chips/cc2420_lpl/CC2420LowPowerListeningP.nc,v
retrieving revision 1.1.2.1
diff -c -i -r1.1.2.1 CC2420LowPowerListeningP.nc
*** CC2420LowPowerListeningP.nc 24 Oct 2006 20:37:35 -0000      1.1.2.1
--- CC2420LowPowerListeningP.nc 8 Nov 2006 17:35:35 -0000
***************
*** 340,346 ****
          if(call LowPowerListening.getRxSleepInterval(currentSendMsg)
              > ONE_MESSAGE) {
            // Send it repetitively within our transmit window
!           call PacketAcknowledgements.requestAck(currentSendMsg);
            call SendDoneTimer.startOneShot(
                call LowPowerListening.getRxSleepInterval(currentSendMsg) * 2);
          }
--- 340,348 ----
          if(call LowPowerListening.getRxSleepInterval(currentSendMsg)
              > ONE_MESSAGE) {
            // Send it repetitively within our transmit window
!         if (call AMPacket.destination(currentSendMsg) != AM_BROADCAST_ADDR) {
!             call PacketAcknowledgements.requestAck(currentSendMsg);
!         }
            call SendDoneTimer.startOneShot(
                call LowPowerListening.getRxSleepInterval(currentSendMsg) * 2);
          }

>
> This is why the cc2420_lpl is not the default stack yet.  Thanks for your
> bug find,

Welcome! :P
Razvan ME

> > From: "Razvan Musaloiu-E." <[EMAIL PROTECTED]>
> > Date: November 7, 2006 5:36:20 PM PST
> > To: <[email protected]>
> > Subject: [Tinyos-help] acks in T2
> >
> > Hi!
> >
> > I'm playing a little with the CC2420 LPL and I noticed that the messages
> > send to the broadcast address are getting acknowledged. What is  even more
> > puzzling for me is this is still happening even after I tried to disabled
> > them using the noAck() function from the PacketAcknowledgements interface.
> > Can someone clarify this behavior? :-)
> >
> > I attached a small program that shows the problem. The green led is
> > toggled each time a packed is send and acknowledged and the red led is
> > on between a send and sendDone. I'm using TelosB.
> >
> > --
> > Razvan ME
>
>

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

Reply via email to