I am creating a CAN Bus on-bench testing solution which replicates the entire vehicle to test a single module. I have a number of messages that require a CRC byte in order to be valid. The messages are in little-endian byte order, and the CRC value is held in byte 0. I have collected valid messages with a changing 4 bit alive-counter along with their CRC byte with the hope someone can help. I have tried CRC reveng, but either do not know hot to use it correctly or it is unable to find the polynomial, as it shows "No models found" when searching.
For reference, I found documentation that suggests the polynomial used is the standard SAE J1850 CRC8 polynomial x^8 + x^4 + x^3 + x^2 + 1, with a CRC-ID in decimal of 166 (stated as used for the low byte). I have also tried with the online calculator available here: http://www.sunshine2k.de/coding/javascript/crc/crc_js.html, but cannot get the correct result.
If anyone could provide some assistance, I would greatly appreciate it. I would like help in clarifying the correct polynomial, along with any other relevant parameters. Here are a list of values captured:
This is the text version of above. I've separated the CRC value in byte 0 from the rest of the message for clarity.
57 0000C0F0C1FFFF
0A 0100C0F0C1FFFF
ED 0200C0F0C1FFFF
B0 0300C0F0C1FFFF
3E 0400C0F0C1FFFF
63 0500C0F0C1FFFF
84 0600C0F0C1FFFF
D9 0700C0F0C1FFFF
85 0800C0F0C1FFFF
D8 0900C0F0C1FFFF
3F 0A00C0F0C1FFFF
62 0B00C0F0C1FFFF
EC 0C00C0F0C1FFFF
B1 0D00C0F0C1FFFF
56 0E00C0F0C1FFFF