RFID spurious reads
Hi. I'm trying to develop a product using the RFID reader module. One thing I'm noticing is that, with no cards nearby, the module sends apparently valid strings periodically. That is, they start with 0xA and end with 0xD, and have 12 bytes, but there is no card present with the reported ID.
Is the controller on the reader properly checking the parity bits encoded in the card (according to the datasheet, there are numerous parity bits)?
TIA,
Rick
Is the controller on the reader properly checking the parity bits encoded in the card (according to the datasheet, there are numerous parity bits)?
TIA,
Rick
Comments
I can look further into this (I did not write the firmware). In my experience these erratic readings are rare (in terms of how many customers are affected) and caused by EMI/RFI interference from a nearby source. In any event, other than the $0A and $0D the returned data is not usually valid, containing only $00’s. In a typical use the received tags are compared against known tags and unknown tags are rejected. Take care.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Chris Savage
Parallax Tech Support
We have seen this issue before and as with any device·that receives a signal, you are susceptible to also receiving interference.
·
As Chris mentions,· "In a typical use the received tags are compared against known tags and unknown tags are rejected."
·
However, there may be a circumstance that you want to be "notified" if someone that is not authorized··attempts to gain access.
·
There are a couple of solutions in software that modify the basic serial·input string to make it a little more robust that might work for you to prevent·random "No Tag" reads.
·
This information below·is extracted from an internal E-mail thread at Parallax, sparked by the following thread... http://forums.parallax.com/showthread.php?p=670723
·
Internal Email thread:
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Beau Schwabe
IC Layout Engineer
Parallax, Inc.
However, I still get the occasional spurious read. I don't really like the double-read approach because of the extra time the user has to hold the badge to the reader.
My real question is for Grand Idea (I've sent them an email, but I don't know if they're going to respond). The EM4100 RFID IC has numerous parity bits that, if checked, should prevent all but the truly rarest of spurious reads. I'd like someone to confirm that the onboard firmware currently either a) DOES check or b) DOES NOT check those parity bits (at the very least so I can characterize how well the EM4100 series works.
If it doesn't check, how hard would it be to get Grand Idea to update the firmware and have you guys update the product?
(And, is it possible to get a product that works down to 3.3V?
You don't have to read two full data streams, just the·stop character·of the previous·stream.· A total of 13 Characters as opposed to only 12.
It's unlikely that there will·be a 3.3V version, because·a reduced voltage will also mean that the detection field·is also·reduced.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Beau Schwabe
IC Layout Engineer
Parallax, Inc.
I have checked into this and the RFID Reader does check the parity bits. Nonetheless it is possible to get random EMI/RFI interference in any RF system. One other possible detection validation possibility is some sort of sensor that can sense the presence of someone in front of the RFID Reader. Something like a PING))) or IR emitter/detector. Take care.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Chris Savage
Parallax Tech Support
Thanks for checking!
Parity is a very simple test. If you're checking even parity, an all zero value is valid, yet might be complete garbage.
Of the 64 bits transmitted by the card, the first 9 bits must be 1s, the last bit must be a 0, and the rest are data and parity interleaved. I find it hard to believe that random EFI could so often make a valid transmission.
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
He who dies with the most toys wins!