6.  ASCII mode (LRC Check):   
LRC (Longitudinal Redundancy Check) is calculated by summing up the values of the bytes from 
ADR1 to the last data character then calculating the hexadecimal representation of the 2’s-
complement negation of the sum. For example: 01H + 03H + 21H + 02H + 00H + 02H = 29H, take 
complementary number of 2 = D7H 
RTU mode (CRC Check):   
CRC check is from Address to Data content. It is calculated by the following steps: 
Step 1: Load a 16-bit register (called CRC register) with FFFFH. 
Step 2: Exclusive OR the first 8-bit byte of the command message with the low order byte of the 
16-bit CRC register, and put the result in the CRC register. 
Step 3: Examine the LSB of CRC register. 
Step 4: If the LSB of CRC register is 0, shift the CRC register one bit to the right, fill the value from 
Step 3 to CRC register, or the Exclusive OR the CRC register with the polynomial value 
A001H, then repeat step 3. 
Step 5: Repeat step 3 and 4 until you perform eight shifts. This processes a complete 8-bit byte. 
Step 6: Repeat step 2 through 5 for the next 8-bit byte of the command message. Continue doing 
this until all bytes are processed. The final contents of the CRC register are the CRC 
value. When transmitting the CRC value in the message, the upper and lower bytes of the 
CRC value must be swapped, that is, the lower order byte is transmitted first.