Automatic error correction and detection is another important feature of the SPIRIT1, based mainly on the FEC Viterbi algorithm. The device can add data whitening and the CRC to check the quality of the frame. Again, these functions are usually handled by the microcontroller, being handled by the SPIRIT1 leaves more resources for the external microcontroller. The convolution coding with rate = ½ is applied on the payload field and on the CRC field before transmission. So the number of transmitted bits is roughly doubled; hence, the on-air packet duration in time is roughly doubled as well. To prevent short repeating sequences that create spectral lines which may complicate symbol tracking at the receiver or interference with other transmissions, the device implements a data whitening feature. CRC is used to verify data integrity.