This documents information about the Excessive Checksum alarm. Checksum errors are a method used to detect when data corruption may have occurred.
The Excessive Checksum alarm is generated when at least 5% of NMEA sentences over the previous 5 minutes have had checksum errors. There must also be at least 10 sentences with errors during this time. An alarm is generated at most once every 15 minutes.
A checksum is extra information that is included with each sentence of data send by an NMEA or AIS device. The checksum is a value calculated based on the contents of the sentence and then added to the end. The receiver makes the same calculation and compares its value with the one received. If they do not match, then apparently the sentence (or checksum) was changed between transmission and receipt and the sentence is discarded.
This use of checksums is done to avoid showing incorrect data to the mariner. For instance, the heading value might have been changed from 120° to 220° and we do not wish to show the incorrect value. Most NMEA devices send the current sensor data periodically (every second or so), so this normally means that new data will arrive soon and all that happens is a pause between updates.
Occasional checksum errors may happen for a variety of reasons. However continuous and repeated checksum errors can cause problems. For instance there may be long delays between updated data. Also, sometimes a checksum will not detect errors and invalid data may be accepted. This can happen if several error occur and the new data happens to have the same checksum value. There are only 256 possible checksum values, so this can happen about once every 256 times. For these reasons, it is important to know when many checksum errors are occurring so the underlying issue can be fixed.
The possible causes for checksum errors include: