When we send downlinks, we want to be 100% sure that the data will be properly received by our host controller (we’ll rather throw away that data than to have the wrong information).
So as embedded engineers we don’t really use parity checking becuuse it won’t do this. It isn’t good enough to guarantee 100% that your data is correct.
Instead when we need to guarantee that data is correct to a level of confidence we use one of a number of different kinds of checksum. A simple additive checksum is OK but for most comms. where we care about the data we would use a CRC16 checksum.
You need to go and research why “bit flips” cause problems for error detection with a parity bit and then go and look into error detection (e.g. checksums and CRC16) and possibly depending on your needs error correction.
Best Regards,
Alex Lennon