Again this design may be totally fine for this application. I am bringing this up for other engineers because people tend to hand-wave this away.
It’s about the numbers, there’s trade-offs for each specific application. I would encourage people to do the math and see if their design makes sense for their goals.
My inexpert digging came up with: They use APRS packets, which use AX.25, whose framing includes a 16-bit Frame Check Sequence, which looks like it came from HDLC, and is a 16-bit CRC-CCITT. Phew.
Hash collisions have NOTHING to do with effectiveness or reliability of communication. A feature is a benefit!
Turns out there was a bad port on the Ethernet hub, but 1/65536 corrupted packets would get through because of the 16-bit checksum.
that line (along with enough experience) helped erase words such as "always", "never", and "impossible" from my technical vocabulary :)
Just a reminder to people implementing systems with error detection: undetected errors are always possible. Checksums may be just fine for this application but if you need to achieve some target error rate you may have to consider error detecting or correcting codes that fit with the interference you find in your transmission channel.
[edit] Error detecting checks work not by making errors impossible but by making them unlikely. It is part of the work to quantify your design to show that probability is low enough for your goal.