I have a little application in VB6 that uses the MSComm control to read data coming in from the serial port. The data is being transmitted by another computer through a modem, over the air (1200 baud FM radio transmission), and being received at my end by another modem connected to the serial port of the PC. We now want to add some CRC (error checking) because as you can image, FM transmission is quite prone to errors. The data transmitted is simple ASCII strings of about 20 bytes at most. What would be a good CRC check to apply to the data? I don't need to correct errors - just identify them. I saw some examples of people simply XORing the bytes together, and then adding an extra byte at the end with the result. Is this good? I've also read about CRC16 and CRC32 and MD5 and so forth. We're looking for something simply yet effective.