Does anyone else think this is the most pointless checksum they've ever seen? (bitwise or of all data bytes) I'm having difficulty thinking of another checksum method that could allow so many single-bit errors to slip through unnoticed... maybe one based solely on the packet length.
On the level we are working, I think all checksums are pointless. They should just ignore invalid commands, or respond with an error code. Checksums were intended to make up for cheesy serial port hardware that dropped data sporadically, or transmissions of data files that could have corrupt packets. We are dealing with tiny control packets and modern serial port chips, and the need for them is pretty much zero.