Skip to content
This repository

Free, easy to use Cyclic Redundancy Check (CRC) calculator and source code generator

Fixed a wrong checksum for tbl algo and Width < 8.

The table-driven code for polynomials of width < 8 using a table index width <
8 was producing a wrong checksum.
Thanks to Radosław Gancarz.
latest commit 5d817a4b66
Thomas Pircher authored December 23, 2013
Octocat-spinner-32 doc
Octocat-spinner-32 test More cleanup in the test. December 23, 2013
Octocat-spinner-32 .gitignore
Octocat-spinner-32 COPYING
Octocat-spinner-32 ChangeLog
Octocat-spinner-32 Merge branch 'master' into bitwise-expression January 04, 2013
Octocat-spinner-32 Removed warning about even polynoms. July 25, 2013
             _ __  _   _  ___ _ __ ___
            | '_ \| | | |/ __| '__/ __|
            | |_) | |_| | (__| | | (__
            | .__/ \__, |\___|_|  \___|
            |_|    |___/


pycrc is a free, easy to use Cyclic Redundancy Check (CRC) calculator and C source code generator.

System Requirements

pycrc requires Python 2.6 or later. Python 3.x is supported. The last version compatible with Python 2.4 is pycrc v0.7.10.


This program doesn't need any particular installation. The script can be called from any directory. Simply call the python interpreter with the script as parameter:

python [options]

On UNIX-like systems, you might want to make the script executable:

chmod +x

Then the script can be called like an application.

./ [options]

Getting help

If you are new to pycrc and want to generate C code, start with the tutorial.

The pycrc manual page explains the command line options in some detail and also gives some more examples how to use pycrc.

If you have questions about using pycrc which is not answered in a satisfactory way by the documentation, please send a mail to the pycrc user mailing list Subscribe to the mailing list pycrc users list. Due to excessive spamming a subscription is required to post on the list.

If you have found a bug in pycrc, please take the time and file it to the bug tracker or record a feature request. Thanks for your collaboration.

Also see the frequently asked questions.


If you like pycrc, let me know and drop me a note. If you don't like pycrc let me know what you don't like and why. In both cases, I would really appreciate some feed back. If you want some idea how to say thanks for this software, please have a look here.

Copyright of the generated source code

Prior to v0.6, pycrc was released under the GPL and an additional addition to the licence was required to permit to use the generated source code in products with a OSI unapproved licence. As of version 0.6, pycrc is released under the terms of the MIT licence and such an additional clause to the licence is no more required. The code generated by pycrc is not considered a substantial portion of the software, therefore the licence does not cover the generated code, and the author of pycrc will not claim any copyright on the generated code.

Something went wrong with that request. Please try again.