Hi,
I was able to get the FEZ Cerberus working with no issues with the RFID reader module.
I started this project so I could use my work badge to help log some things however I can not get my badge to read at all.
I was told this is a 125 kHz card… and thus I figured it should work the the 125 kHz GHI RFID Reader Module.
Since I haven’t been able to get my work badge to work with the GHI RFID module, I was wonder if someone could please help me hook up a reader my work currently uses in their security system.
I have attached the image of the ProxPoint Plus reader as well.
Take a look at the Gadgeteer source for the RFID reader. I looked at it once, and I believe it was coded to expect the message length to be that of the cards that came with the reader. Get the source and use the debugger to see if anything is being read.
*** I just checked the code. It expects a 13 byte message. *****
as you found, HID cards are not standard RFID cards readable with a standard reader, they have proprietary encryption and require a specific reader.
As for interfacing the HID reader, that might be a little more work The regular reader is a UART based device, but the connections on that HID card are not UART based. And you’ll need to find out what the actual protocol is that they use on those pins. So it’s time for you to start digging out any internet references you might find, and I am not sure how easy that will be.
@ Architect - You are correct. I just found out this uses Wiegand.
I did a quick search on the forums and it doesn’t appear anyone has implemented the Wiegand protocol in .NET?
@ Michael Kaufman - You can try use both data lines as interrupts. You also have violet wire which is “card present” signal. If interrupt approach wouldn’t work I would try RLP as @ Brett suggested. I would call it when “card present” signal is asserted.
So I want to go ahead and attempt to use RLP.
First, since we only want RLP running when its required… I want to catch when a card present signal is triggered.
For this example I’m using Port 6 on the Cerberus board.
I have a Breakout board attached to Port 6 with the following pins connected to the ProxPoint plus reader
PIN 2 = Red (5V)
PIN 3 = Violet (Card Present)
PIN 4 = Green (DATA0/DATA)
PIN 5 = White (DATA1/CLOCK)
PIN 10 = Black (GND)
The following software is currently not working… but what I’m wanting to do is create a interrupt on Port 6 Pin 3 and detect when a card is present.
I’ve measure the voltage between PIN 3 and PIN 10 and it is 4.56V.
When scanning my badge the interrupt is not triggered.
However, If I disconnect PIN 3 from the breakout board during operation the interrupt is triggered.
public partial class Program
{
private InterruptInput cardPresent;
// This method is run when the mainboard is powered up or reset.
void ProgramStarted()
{
characterDisplay.BacklightEnabled = true;
characterDisplay.Clear();
cardPresent = breakoutPort6.CreateInterruptInput(GT.Socket.Pin.Three, GlitchFilterMode.Off, ResistorMode.Disabled,
InterruptMode.FallingEdge);
cardPresent.Interrupt += CardPresentOnInterrupt;
characterDisplay.Print("Ready...");
}
private void CardPresentOnInterrupt(InterruptInput sender, bool value)
{
// Launch RLP Code
Debug.Print("Launch RLP");
}
}