there is no place like ~


pycrc is a free, easy to use Cyclic Redundancy Check (CRC) calculator and C source code generator. Download pycrc from or fork it on GitHub.



pycrc provides CRC reference implementations in Python and a C source code generator. The used CRC variant can be chosen from a fast but space-consuming implementation to slower but smaller versions especially suitable for embedded applications. The models can be freely chosen, and the collection of CRC models lists some of the most popular models by name. The following functions are implemented:

The following variants of the CRC algorithm are supported:

pycrc is released under the terms of the MIT licence.

If you like pycrc and you would like to give something back, then please see some ways how to say thanks.




The latest released version is:

Older versions can be downloaded from or from the pycrc repository on GitHub.


04 December 2014
Version 0.8.2 released
Version 0.8.2 is a bugfix release.
17 May 2013
Version 0.8.1 released
Version 0.8.1 is a feature release.
04 January 2013
Version 0.8 released
Version 0.8 is a bugfix release.

The bitwise-expression generator is an experimental feature, which might one day be almost as fast as the table-driven code but much smaller. At the moment the generated code is bigger and slower than any other algorithm, so use at your own risk.

Older news can be read in the pycrc news archive.

To Do

pycrc is considered stable code. No new features are planned, but bugs are still fixed and new models added on request.

Check out the pycrc issue tracker for open bugs and feature requests.

Who uses pycrc

Companies, organisations or projects using pycrc:

Other Free CRC tools

This project is hosted on GitHub and Get pycrc at Fast, secure and Free Open Source software downloads.