[Tinyos-help] Checking CRC

Jon Green jgreen at certicom.com
Fri Jun 1 07:48:29 PDT 2007


Does anyone know how I can check if a packet passed CRC check in a nice
platform independent way? I can't find any abstraction for CRC checks...

I have an application that is occasionally getting packets with
malformed data in them. When it gets a bad packet, a good packet always
arrives soon after with the same DSN, which means it didn't ack the bad
packet, and the other mote sent the data again. This leads me to believe
that the packet failed the CRC check. 

I'm working with a MicaZ mote. From what I see in the source, the CRC
field gets set in the metadata, but nothing ever gets done with it.
There is no link layer module for received packets, so the bad packet
makes it all the way to the application layer. Now at the application
layer I'm trying to figure out if there is a nice way to check if it
failed CRC without using CC2420Packet. Has anyone faced this before and
how is the accepted way to deal with it? 

I was also wondering if the optional packet link layer packet PacketLink
should include the receive interface? This would allow the networking
stack to drop packets that fail CRC checks. 

-Jon



More information about the Tinyos-help mailing list