Wiegand RFID Interface

I’m doing a proof of concept to get data from a device using Wiegand. I’m using PI9 and PJ7 to monitor the signals on a custom board. It appears that it is too slow (not all data being captured) to read the changes on the pins. I’ve tried:

-A while loop reading the signals and it was too slow (not all data being captured).
-A while loop on its own thread and it was too slow (not all data being captured).
-Using the event when the value change edge happens on a falling edge. Faster than the two previous methods but still too slow (not all data being captured).

Should I try using a different set of pins? Any suggestions are appreciated. I’m hoping to handle this directly and not having to add a sub-processor to the next board revision.

What module?

What is the data rate?

Hey Mike,

This is on the SCM2060D.

50 to 100 micro seconds between pulses from most of these devices. I’ll put it on a oscilloscope to be sure.

Put it on the oscilloscope. 4.18 milliseconds between pulses. 100 micro seconds pulse.

Can you use Capture mode? : Signal Control

This will use hardware facilities and native code (at much higher speed than managed code) to capture a train of pulse durations. If you can capture D0 and D1 trains, you should be able to reconstruct the message packet. FULL DISCLOSURE: I have never done Weigand with TinyCLR, and this is just what would be my first approach. I have read it with native code (in a bare-metal project).


why you do not ready uart RFID instead of it for example this module “is cheap enought” - to meet your request (just to explain i’m not any affilated with this item on sale)

but it have inclued interface:Wiegand,UART

i used it with uart and work pretty well

I came across that section. I’m planning to try it out and see if it can capture it. We’ll see :slight_smile:

We already have our own version of a board using a PIC that does this functionality. I’m trying to add the Wiegand interface to our new board design to reduce cost and have it all on one multipurpose board instead of 2.

1 Like