We miss a packet if the receive interrupt fires and we can't service it.
I'm not sure how often this really occurs because the code was left over
from earlier implementations.  The m_missed_packets variable indicates how
many receive interrupts fired that we haven't handled.

 

The 0-byte received packet length is an edge case that occurs all the time.
Removing the 0-byte packet handler may cause your node to lock up.  At least
it used to.

 

-David

 

 

  _____  

From: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED] On Behalf Of Paolo
Sent: Thursday, May 15, 2008 7:39 AM
To: tinyos-help@millennium.berkeley.edu
Subject: Re: [Tinyos-help] About CC2420Receive

 

ERRATA CORRIGE:

When this case (else code) occurs (practically/physically)?

else 
                {
                    // Length == 0; start reading the next packet
                    atomic receivingPacket = FALSE;
                    call CSN.set();
                    call SpiResource.release();
                    waitForNextPacket();
                }
          
Sorry....

Paolo wrote: 

Hello,
Some questions about CC2420ReceiveP

1.      the m_missed_packets variable is a  REAL number of packets we missed
because we were doing something else ?
2.      When this case (else code) occurs (practically/physically)?

          else 
            {
                // Length is too large; we have to flush the entire Rx FIFO
                flush();
                m_overflow_packets++;    //lost packets for length > 40
Bytes
            }

thanks Paolo.



 





  _____  



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

Reply via email to