If the sent data only consists of a word or a few, then just send it three times in a row and compare at the receiver before you take it as received data or request or wait for new data.
Depending on the importance you can also accept if only two are the same.
That should be easy enough to code.
CRC is not a 100% safe thing either. There is a slight chance that two or more bits in different bytes are changed and give a correct checksum.
Even NASA seemed to use the three result check and cancel one wrong system.
Hubert
↧