Question regarding CRC in Simpleserial 2.0

Hi,
I am currently working with CW and I have a question regarding the Simpleserial 2.0 protocol. Here it is said that each packet has a CRC of polynomial 0xA6 appended. Can someone point me to the notation used in here? The normal representation for CRC polynomials would give me x^8+x^7+x^5+x^2+x, which does not seem valid to me as it does not have the x^0 term. This information is required as I am working on my own serial protocol, and to validate data under simpleserial 2.0 I need to implement the correct CRC-8 calculation.

Thanks in advance for any help.
Giacomo

Hi Giacomo,

Thanks for bringing this up. Yup it looks like the CRC constant is wrong. It looks like I got confused about the various CRC notations used. 0xA6 is the reversed reciprocal notation, which has the polynomial representation of (1x^8 + 1x^6 + 1x^3 + 1x^2) + 1. The normal MSB notation, therefore, should be 0x4D.

I got the CRC from a paper and didn’t find the associated webpage (https://users.ece.cmu.edu/~koopman/crc/) until you brought this up. This will be fixed in the 5.6.1 release.

Thanks,

Alex

1 Like

Hi Alex,

thank you for your quick reply. Glad I could be of help!

Giacomo