As I recall, various types of error checking do better jobs of detecting various types of errors (and, of course, error correcting codes can correct up to a certain number of errors in the packet, then just detect errors, then just give up). In another project I did about 15 years ago, I was sending packets that were variable length, but often up to 32 bytes. I originally included an 8 bit checksum. Errors would occasionally get through undetetected. Since the 8 bit checksum only has 256 possible values, it SEEMS there is a 1 in 256 possibility of an erroneous packet getting through the checksum. I then tried increasing the checksum to 16 bits, but the sum of all the bytes rarely got to anywhere near such a big number. The method I settled upon involved doing a left shift of the existing checksum value, then adding in the new byte. This was repeated each time a byte was added to the packet. Overflow was discarded. Now that I think about it, perhaps discarding overflow resulted in discarding error checking on the first bytes in the packet, but the system vastly improved operation. by the way, this was a networked system based on audio links between sites (which could be hundreds of miles away) using Bell 202 half duplex modems. It used a minislotted access method where each site was allocated 50 mS to bring up carrier and start transmission if it had any traffic. If it did not have any traffic, it just left its carrier off and all sites advanced their "site counter" to the next site that was authorized to transmit. Site counters were advanced 50 mS after receiving the last byte, and every 50 mS thereafter. During reception, site counter advances were held off. Thus the 50 mS "minislot" was expanded into a "slot" that was large enough to handle whatever traffic this site had. Further, to keep the site counters in sync, each site fully demodulated all traffic. On receiving a valid packet from a site, it was assumed that this site was indeed authorized to transmit at this time, so the site counter was loaded with the address of the originating site. This insured that when the traffic ended, all sites incremented their site counters to the same number, all authorizing the same site to transmit. the protocol handled up to 100 sites, though the largest installation I know of is 15 or 20 sites. Part of the setup of the system is to put in the highest site number. The boxes then reset their site counters after that number is reached so they don't allocate time to nonexistant sites. Harold