I work through the COM port with the controller, which accepts certain parameters in the form of these two lines. My task is to generate such strings with the necessary parameters.
The first 23 bytes are responsible for storing the parameters, but the last two, it seems to me, are responsible for the check amount (in the first example, this is d5 91 ). The problem is that I can not understand how they change the rules. Experimentally, I found out that they depend only on the state of the previous bytes, but the pattern is clearly not linear. From algorithms I tried to apply variations of CRC, but it did not give any results.
Question: can we somehow understand what algorithm is used here?
Below through the line are examples of lines with data.
01 10 00 50 00 08 10 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 d5 91 01 10 00 50 00 08 10 00 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 14 91 01 10 00 50 00 08 10 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 00 d7 10 01 10 00 50 00 08 10 00 00 00 00 00 01 00 00 00 00 00 00 00 00 00 00 d1 6d 01 10 00 50 00 08 10 01 f4 07 da 13 ec 07 e4 27 0f 00 04 00 00 00 00 6b 92 01 10 00 60 00 08 10 03 20 03 f2 0b b8 07 e4 0b b7 00 04 00 01 00 00 41 23 01 10 00 e0 00 08 10 01 2c 00 6e 03 e8 07 e4 00 13 00 03 00 01 00 01 30 a0