So, I'm writing a C++ header file for the ~112 CRCs in this site(by using a template type class ofc) but when I added CRC-16/TMS37157 and CRC-16/RIELLO they where failing the library test, but everything was right, there wasn't anything missing, so after reading the sources listed on the catalog I found in the references that RIELLO uses 0x554D for it's initial value, instead of 0xB2AA, and TMS37157 datasheet says it uses 0x3791 as initial value, instead of 0x89EC. I changed to these values and the test passed.
I'm quite a noobie at CRC so this might be entirely my fault, but I doubt since the other 60~ algorithms all pass the test.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
So, I'm writing a C++ header file for the ~112 CRCs in this site(by using a template type class ofc) but when I added CRC-16/TMS37157 and CRC-16/RIELLO they where failing the library test, but everything was right, there wasn't anything missing, so after reading the sources listed on the catalog I found in the references that RIELLO uses 0x554D for it's initial value, instead of 0xB2AA, and TMS37157 datasheet says it uses 0x3791 as initial value, instead of 0x89EC. I changed to these values and the test passed.
I'm quite a noobie at CRC so this might be entirely my fault, but I doubt since the other 60~ algorithms all pass the test.
NVM I'm just dumb, the refin has effect on the initial value too.