NFC reader with Home Assistant

That’s why I didn’t. Unless you plan on having them PNP it’s a pain. Even if you wanted to hand do it you’d need a reflow oven or hotplate. You’d have to do batch orders to make it reasonable.

1 Like

I was playing with a Wiegand version of this and wrote this basic ESP Home configuration file, it still needs some work and I’m not sure if I should post it here or create a new thread:

  name: wiegandReader
  friendly_name: ESPHome Wiegand Reader

  board: esp01_1m

# Enable logging

# Enable Home Assistant API
#  encryption:
#    key: 


# Wiegand reder
  - id: wiegandReader
    d0: GPIO15
    d1: GPIO13
#    on_key:  # TODO: Add keypad support
#      - lambda: ESP_LOGI("KEY", "received key %d", x);
      - lambda: ESP_LOGI("TAG", "received tag %s", x.c_str());
      - homeassistant.tag_scanned: !lambda 'return x;'

# Adds support for buzzer and LED control. TODO: This is probably a bad way to control the buzzer.
  - platform: binary
    name: "Reader LED"
    output: readerLED
  - platform: binary
    name: "Reader Buzzer"
    output: readerBuzzer

  - id: readerLED
    platform: gpio
    pin: GPIO12
    inverted: true
  - id: readerBuzzer
    platform: gpio
    pin: GPIO14
    inverted: true

# Why not use the built in LED for troubleshooting proposes?
  pin: GPIO2

  ssid: !secret wifi_ssid
  password: !secret wifi_password

#  # Enable fallback hotspot (captive portal) in case wifi connection fails
#  ap:
#    ssid:
#    password:

1 Like

Cool, if it’s regarding HA, I think here would be fine. What Wiegand read are you using?

I used one of the readers that I’ve reviewed, and this one worked ok on 5V. I wanted to keep my tests as simple as possible but some readers need 12V.

How did you get the individual readers to use the same tag and do different things? I would love to do this. I have tried to figure out how to do that with home assistant and have failed. I use NFC cards to fire automations (movies to play on the tv for the grandkids). Would like the grandkids to be able to use the same cards to watch movies in what ever room they are in.

1 Like

Thought I would share my docs for the ESPHome Wiegand Reader I made last year. @enginerd 's config is probably better because mine requires a custom component since Wiegand was not integrated in ESPHome at the time I built it.


You will need the tag ID and the reader ID. The reader ID can be found in the browser address bar at the end of the Home Assistant link when you are in the reader device page. After that you will need to make an automation for each tag at each reader. Here is my yaml for an automation that uses a tag to run a script on a specific reader:

Please note that if you add multiple actions to the automation then each one will need to have that value template with the reader ID. I might be slightly wrong but this seems to work for me. Ive seen other people use other methods

1 Like

Thank you very much for this. Works beautifully. Now I get to redo all the grandkids move tags so they can watch their movies in their bedroom or in the living room. No more fighting over the living room tv. Although it really is fun to watch a 2 year old and 4 year old fight over who gets to watch what movie lol.


Im happy to help! :slight_smile:

1 Like