What is CRC, what happens when a corrupted packet is received?
CRC is a checksum value appended to the end of every packet. The receiver recalculates it from the value it received; if the result does not match, the packet is silently discarded. The result is no command rather than a wrong command at the relay output. This is also the right thing from a safety point of view: not moving when in doubt is always safer than moving on a guess.
The radio channel is noisy; bit errors are unavoidable. Without CRC the receiver could mistake a noise-corrupted packet for a valid command and start motion in the wrong direction. CRC practically eliminates this possibility.
The typical chain of behaviour when a corrupted packet is received:
- The packet is discarded, no output is changed.
- Since the transmitter sends the command cyclically, the next healthy packet arrives shortly; the operator usually notices nothing.
- If the corruption is continuous, the flow of valid packets stops and the receiver activates its timeout protection.
This last item is important: CRC alone does not provide safety, it works together with the timeout. For example on the HCT402 the signal loss protection is defined with a 250 ms timeout; when the time expires the motor goes to the safe centre position and oil flow stops. So the system is protected not only against a wrong command but also against an interruption of the command flow.
Continuously repeated packets in the field are a sign that you are working at the edge of range or in a high noise floor; complaints of delay and stuttering start at that point.
Full article: Wireless remote control installation: pairing, relay, safety