In general for the cc2420 getting the send done means that the packet has gone out over the air. If you're seeing packet losses with this sort of thing, it could definitly be hidden terminal. However, the cc2420 stack does not retry transmissions by default (or even request an ack). If that's what you want you'll need to look into the PacketLink and PacketAcknowledgements interface.
You could see if the nodes are backing off due to contention by wiring to the RadioBackoff interface and incrementing a counter in requestContentionBackoff. Steve On Thu, Aug 27, 2009 at 11:46 PM, Ibrahim Orhan<[email protected]> wrote: > Hi again, > In our case, it's the CC2420 radio chip used on the Tmote-sky module. > The reason why I'm interested of knowing that the packets have been > sent over the air is when several nodes are transmitting as fast as > possible to a receiver, there are some packet drops. All the packets are > not received and we want to know that if it got stuck on the sending > node due to too many backoffs. Perhaps the packet drops is due to > collision then is uses CSMA/CA but we don*t know. > > A good thing would be to see, if it*s possible, to count the number > of retries the node does when sending a packet and to see if the packet > really been sent. Is the any component that can provide this or other > ways to do this? > > Thanks in advance > Regards > Ibrahim > > >>>> Eric Decker <[email protected]> 2009-08-27 19:54 >>> > Depends on the driver. > For the serial stack. It does indeed indicate that the packet has > been > sent. > > For the radio stack, I'm not sure. I suspect that the sendDone is > generated > when all of the packet has been transferred to the radio hardware. > Looking > at the details of the radio driver will shed some light on this. Note > that > there are different drivers for different radio h/w and that can also > give > different behaviour. > > Knowing that the packet has hit the air doesn't really buy you all > that > much. Knowing that the intended receiver has gotten the packet does. > Hence > the ability to have packets be ACK'd. > > eric > > On Thu, Aug 27, 2009 at 2:29 AM, Ibrahim Orhan > <[email protected]>wrote: > >> Hi all, >> When sending a packet in TinyOS-2.1, you receive an >> event(send.sendDone) telling that the packet was successfully sent. >> It*s possible to read this in the error_t parameter. Does this mean >> that the packet has been really sent over the air? Can it be so that > the >> radio(or a lower layer) receives the packet and due to CSMA/CA, tries > a >> few times (backoffs) and then discards the packet and we still get > that >> the packet was successfully sent? >> Thanks in advance >> >> Regards >> Ibrahim >> >> _______________________________________________ >> Tinyos-help mailing list >> [email protected] >> > https://www.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help > >> > > > > -- > Eric B. Decker > Senior (over 50 :-) Researcher > Autonomous Systems Lab > Jack Baskin School of Engineering > UCSC > _______________________________________________ > Tinyos-help mailing list > [email protected] > https://www.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help > -- stephen dawson-haggerty http://cs.berkeley.edu/~stevedh uc berkeley wireless and embedded systems lab berkeley, ca 94720 _______________________________________________ Tinyos-help mailing list [email protected] https://www.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help
