Skip to content

Latest commit

 

History

History
28 lines (16 loc) · 2.66 KB

README.md

File metadata and controls

28 lines (16 loc) · 2.66 KB

Wiegand

A C++ Wiegand decoding library, targeting the Arduino platform.

This library was developed after searching to find a suitable Arduino Wiegand library and being unsatisfied with the general results of the search. As typically happens in such a situation, I proceeded to create a solution that meets my needs.

Motivation

Many projects documented on the internet are only planning to see a very small number of RFID cards (less than 10, typically), leading to a complete lack of need to worry about properly decoding the parity information. Basically, with a very small pool of possible correct bit sequences, a bit error will just be discarded as a non-authorized token. In my case, I needed to deal with a very large number of possible users (several thousand), so I was not willing to compromise data integrity at the risk of getting the user token incorrect.

After writing the initial library basics, the code was put into use without the parity checking, to be updated later. Fortunately, the interrupt based method for triggering the bit sequences was very reliable, even with a lot of other application code running on my Arduino. As such, I have not felt the need to revisit this code and add the parity checking (nor to excise the rather hackish 64-bit integer manipulation) after year and nearly 4 months of reliable service.

Installation

Download the latest release from the Releases Page and unzip/untar the file in your Arduino libraries folder.

Similar Projects