[Tinyos-help] CC2420 packet delivery
David Moss
dmm at rincon.com
Tue Sep 25 08:18:20 PDT 2007
Since the RX FIFO queue is something like 128 bytes, it would take a few
packets to make it overflow. Page 33 of the CC2420 datasheet explains:
The RXFIFO can only contain a maximum
of 128 bytes at a given time. This may be
divided between multiple frames, as long
as the total number of bytes is 128 or less.
If an overflow occurs in the RXFIFO, this
is signalled to the microcontroller by
setting the FIFO pin low while the FIFOP
pin is high. Data already in the RXFIFO
will not be affected by the overflow, i.e.
frames already received may be read out.
A SFLUSHRX command strobe is required
after a RXFIFO overflow to enable
reception of new data. Note that the
SFLUSHRX command strobe should be
issued twice to ensure that the SFD pin
goes back to its idle state.
And that's what the driver does.
-David
_____
From: roberto pagliari [mailto:bobtinyos07 at gmail.com]
Sent: Monday, September 24, 2007 10:50 PM
To: David Moss
Cc: tinyos-help at millennium.berkeley.edu
Subject: Re: [Tinyos-help] CC2420 packet delivery
Hi David,
if a STXON command strobe is issued, during the receiption of a packet I'm
sure the radio will transmit it. If the received bytes stay into the RXFIFO
queue (is it true?) and sometime later the radio receives another packet,
that would overflow, since the expected number of bytes was the previous
one. What happens in that case? Does the radio flushes the RXFIFO queue?
thanks
On 9/18/07, David Moss <dmm at rincon.com> wrote:
Never explicitly tried it before with the intention of noting the results,
but your node should transmit, leaving the RXFIFO turned to garbage and
filtered out naturally by the receive methods (i.e. checking for a proper
length byte and CRC). I could be wrong, but note that having two
transmitters next to each other without using clear channel assessments
leaves them both transmitting and rarely receiving clean packets.
If the length byte is within bounds, then the radio stack can safely
download the packet and check the CRC byte regardless of what happened. If
the length byte in the RX FIFO is not within bounds (smaller than expected,
or larger than the RX FIFO size) then the RX FIFO certainly needs to be
flushed.
-David
_____
From: tinyos-help-bounces at Millennium.Berkeley.EDU
[mailto:tinyos-help-bounces at Millennium.Berkeley.EDU] On Behalf Of roberto
pagliari
Sent: Tuesday, September 18, 2007 4:43 PM
To: tinyos-help at Millennium.Berkeley.EDU
Subject: [Tinyos-help] CC2420 packet delivery
Hi All,
does anyone know what happen if, during the receiption of a packet, a STXON
(not STXONCCA) strobe command from the microcontroller is issued?
Does the radiochip turn the circuit to the transmitter? If so, should I
flush the RXFIFO queue?
many thanks,
Roberto
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mail.millennium.berkeley.edu/pipermail/tinyos-help/attachments/20070925/704c075d/attachment-0001.htm
More information about the Tinyos-help
mailing list