I am attempting to develop an Arduino project that can identify the bit format of a card (26-bit being the most common but not the only one).

This a library sets the serial to be 9600 baud. https://github.com/paulo-raca/YetAnotherArduinoWiegandLibrary

This documentation says the data bit width is about 100us and the "inter pulse" or the time between the data bit is 20-100us. https://docs.tibbo.com/taiko/ser_wiegand_mode

I don't understand how these match up? Also, Wiegand isn't even really serial. It uses two inputs - One input is for the on bits and another input is for the off bits.

  • The library does never use anything regarding Serial. The examples use Serial as interaction way, to show the results to the user. Bit that has nothing to do with the Wiegand RFID reader
    – chrisl
    May 5, 2020 at 14:16

2 Answers 2


Wiegand doesn't have a baud rate as such. It's an edge-based input protocol where it looks for HIGH to LOW transitions on two different input lines.

There are certain timing requirements, in that you can't send data faster than the receiver is capable of receiving and pulses have to be wide enough for the receiver to read, and there is a minimum time for the gap between messages, but other than that there is no defined baud rate.


Just tested my HID multiCLASS SE RP40 920P with an oscilloscope.

Time between pulses: ~ 2 ms

Wiegand oscilloscope time between pulses

Pulse duration: ~ 40 us

Wiegand oscilloscope pulse duration

Measured a few different events, they seemed very consistent.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.