A few months ago I made an RFID based punchclock for the company based on 125kz RFID.
Then my interest in implants grew. I purchased the xEM specifically so I could use it with the punchclock… But after some thought (and before implanting it), I decided an xNT would offer more options. But that gave me the challenge to convert the punchclock to NFC.
I purchased a PN532 thinking it would be much like the ID-12LA module that Sparkfun sells where you just apply power and when a card is near, it spits out the ID. Boy was I wrong.
After a lot of hair pulling, and some help from equally perplexed people that posted solutions on the web, I was able to get it to work.
I had two major issues…
First issue was I could not get reliable communications. I could get a reply here or there, but not consistently. I then found this post that outlined very specific (and undocumented) timing requirements when using the UART. http://www.avrfreaks.net/comment/2115266#comment-2115266
After adhering to these requirements, communications was 100%.
After that, everything was working fine, except the cards just wouldn’t read. Communications was working, I could see the RF field being polled, but it just wouldn’t read. It would come back and say zero cards found. I have several cards and none worked. I was certain there was something wrong with the module… I then found this post that said try the RF test. Sure enough, I tried the test and then tried to poll for cards again and it worked right away. I don’t know if this is a bug or there is some setting that the RFTest sets that I’m not setting, but as it stands, I have to run the test each time it’s booted to get cards to read.
During this adventure, the DT diagnostic card was instrumental during troubleshooting. (Though at one point I did connect my spectrum analyzer…)
So now all that is left is to mount the board in the enclosure in place of the ID-12LA and get my implant!
If anyone is looking for a great little IoT board, check out the Particle Photon. It’s only $20 and has built in wifi.