CRC-16 calculation library for Modbus protocol
Install it with pip:
$ pip install modbus-crc
Or you can add it as dependency in requirements.txt file of your python application:
modbus-crc~=1.3
For signing byte package use add_crc
:
from modbus_crc import add_crc
signed_package = add_crc(b'\x00\x12\x34\xAB\xCD\xEF')
Result is b'\x00\x12\x34\xAB\xCD\xEF\xD2\xD4
. For validation signed package use check_crc
:
from modbus_crc import check_crc
if not check_crc(b'\x00\x12\x34\xAB\xCD\xEF\xD2\xD4'):
raise SomeException()
$ python -m unittest discover -v -p "tests.py"