CC2420 sends out HW ACK, but it doesn't check if a packet has been ACKed. 
However, both SW and HW ACKs look the same, and include DSN only.

While including only DSN in the ACK seems broken, it is interesting in the same 
sense that simultaneous ACKs generated from the same data packet don't always 
collide. One paper that leverages this is "Design and Evaluation of a Versatile 
and Efficient Receiver-Initiated Link Layer for Low-Power Wireless" from SenSys 
2010.

Thanks

Mike

On Aug 28, 2011, at 3:54 PM, Eric Decker wrote:

> 
> 
> On Sun, Aug 28, 2011 at 12:41 AM, Chieh-Jan (Mike) Liang <[email protected]> 
> wrote:
> I believe the check is there to make sure software ACK mimic CC2420's 
> hardware ACK, because CC2420 acks broadcast packets (if requested).
> 
> And does the h/w (cc2420) also just look at the DSN too?   This seems broken.
> 
>  
> 
> Mike
> 
> On Aug 27, 2011, at 3:04 AM, Xiaohui Liu wrote:
> 
> > Hi everyone,
> >
> > Why should broadcast be acknowledged? If multiple recipients receive a 
> > broadcast packet, they will ack it at very close time instant, which can 
> > cause ack collision. But the following snippet is found in CC2420ReceiveP. 
> > Can anyone help me understand why broadcast can be acked? Thanks.
> >
> >       if(call CC2420Config.isAutoAckEnabled() && !call 
> > CC2420Config.isHwAutoAckDefault()) {
> >         if (((( header->fcf >> IEEE154_FCF_ACK_REQ ) & 0x01) == 1)
> >             && ((header->dest == call CC2420Config.getShortAddr())
> >                 || (header->dest == AM_BROADCAST_ADDR))
> >             && ((( header->fcf >> IEEE154_FCF_FRAME_TYPE ) & 7) == 
> > IEEE154_TYPE_DATA)) {
> >           // CSn flippage cuts off our FIFO; SACK and begin reading again
> >           call CSN.set();
> >           call CSN.clr();
> >           call SACK.strobe();
> >           call CSN.set();
> >           call CSN.clr();
> >         call RXFIFO.beginRead(buf + 1 + SACK_HEADER_LENGTH,
> >                               rxFrameLength - SACK_HEADER_LENGTH);
> >           return;
> >         }
> >       }
> >
> > --
> > -Xiaohui Liu
> > _______________________________________________
> > 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
> 
> 
> 
> -- 
> Eric B. Decker
> Senior (over 50 :-) Researcher
> 
> 


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

Reply via email to