Email: Password: Remember Me | Create Account (Free)

Back to Subject List

Old thread has been locked -- no new posts accepted in this thread
???
03/14/09 10:33
Read: times


 
#163449 - Two-dimensional checksum with detect/repair
Responding to: ???'s previous message
Depending on how much RAM you have on either side, it isn't so hard to create packets with two-dimensional checksumming that will allow you to correct a lot of bit errors and detect and reject an even larger set of error combinations.

The simplest is to just store your data as a two-dimensional array and compute a checksum/row and a checksum/column and transfer the data and the checksums. If a row checksum fails, you may be able to check the column checksums to figure out which byte in the row that is wrong (and that byte may just as well be the checksum).

A checksum is simple but not the best. Using an 8-bit CRC for rows and columsn of the data would be better.

In the end, you will have to spend a bit of extra RAM and bandwidth and processing power but for a noisy channel you would reduce the probability of accepting a broken packet, and you would reduce the probability of a deadlock because a packet never gets accepted.

List of 4 messages in thread
TopicAuthorDate
Using HT12D decoder with AT89S52            01/01/70 00:00      
   wireless data transfer            01/01/70 00:00      
   transceiver?            01/01/70 00:00      
      Two-dimensional checksum with detect/repair            01/01/70 00:00      

Back to Subject List