Wireless AWID/Prox scanner interfacing with Home Assistant

My first RFID project. It began with my utter disappointment in the limitations of the xAC V2.

Parts:

  1. Arduino Duemilanove (10 years old. Buying new, I’d go with a Nano 33 IoT with builtin WIFI)

  2. esp8266 wifi module

  3. 3.3v buck driver

  4. AWID SP6820 used reader

Total cost if buying everything new, under $40.

The AWID communicates with the Arduino over 2 wires using Weigand, and 2 wires for vcc and ground. The buck driver powers the esp8266 because it’s only rated for 3.3v, and the 3.3v line of the arduino won’t supply enough current. So I power it off of the 5v rail and step it down. 2 resistors used as a voltage divider to prevent the 5v data line from the arduino from frying the 8266. And 1 capacitor to smooth the output voltage of the buck.

Here’s how it works. The Arduino boots up, and the first thing it does it connect to the wifi network specifically setup for my IoT devices. I scan in with a tag. The Arduino checks the HEX of the tag against it’s internal database. If it matches, it sends a message via MQTT broker. The Home Assistant smart home server receives the MQTT message, and sends the wireless unlock command to the door. The door unlocks.

The device operates independently of a computer, and can easily run off of a battery to make it 100% wireless. Although even with high capacity batteries and aggressive sleep cycles, I’d only get maybe 2 weeks at BEST before having to recharge.

So why? Because I already have about 60 wireless nodes in my smart home, including several expensive Zwave locks. I’m not about to yank the locks out to install magnetic door locks. Plus, the door’s keypads still work, as does using the web interface to unlock them.

Also, I can configure the smart home to respond to the MQTT message by doing ANYTHING! Scan in to turn on lights, set the lights to a color scheme, disable/enable the alarm, play a spotify playlist, sound an alarm, turn on adult television, or even lock the wife out from cranking the AC.

Youtube demonstration https://youtu.be/M8XbAS5--aw
Not a full tutorial because some of it was quite involved. Took me a day just to get the esp8266 flashed and working properly.

2 Likes

Nice demo!

A couple of points, if you were doing it with all new parts, I’d suggest a Wemos D1 mini or similar - ESP8266 that you flash with custom code eliminating the extra processor, so lower power consumption. It’s also 5v tolerant so simplifies the setup a touch.

As for the xAC v2 in defence of it, yes it is a simple device that clearly doesn’t suit your needs, but I think it’s harsh to call it useless. It has a place for those that just want to throw together something simple without writing code. It would be nice to work with more tags to make it more useful to different people, but for its narrow market segment it’s a really nice board.

1 Like

That D1 mini is a great looking board. I’ll have to look for a US seller for one to use with the 13.56mhz scanner on the way. Way more powerful that the old board I used, and so tiny. And I don’t have to fight with the blasted 8266. Thanks for the tip. This project used the ancient Arduino because I had 2 of them sitting on the shelf.

Honestly, with the relay on the board, the xAC has so much damned potential. But they took a massive shortcut on the firmware. Such a let down.

Very nice. A fine project. Well done!

The problem is controlling the wife’s mute button when she finds out :slight_smile:

That’s overseas manufacturer for you! Unless you’re making enough to set up your own production line you’re at the mercy of suppliers. There was talk about an open-source aftermarket firmware to take advantage of the hardware more - iirc it’s a DIP8 IC that holds the firmware and it’s socketed so it can easily be removed and reflashed.

Not sure if you read this around the forum yet, but @amal is keenly aware of this issue. He discussed it in another thread, but the jist of it is that the firmware isn’t something that the suppliers will work on, so there’s mumblings about hacking the firmware and upgrading it open source to start being able to read Prox and other card types.

Found it

1 Like