Hoy vamos a ver como integrar un lector RFID-RC522 en ESPHome y luego en Homeassistant
En teoría lo usaremos para la alarma, pero se pueden crear automatizaciones para cualquier cosa.
Requisitos previos:
Tener ESPhome en marcha y dominarlo a nivel básico
Un ESP32, wemos lolin…
Un modulo RFID-RC522
https://es.banggood.com/RC522-Chip-IC-Card-Induction-Module-RFID-Reader-p-81067.html?rmmds=buy&cur_warehouse=CN

Si habéis seguido mi manual del keypad, no vais a tener problema, ya que es prácticamente lo mismo, ya que este módulo no tiene soporte oficial de ESPhome al menos de momento.
Empezamos por crear un nuevo dispositivo en ESPhome

Una vez creado pulsamos sobre EDIT en él y procedemos a meterle la configuración de la siguiente foto ( la parte marcada en rojo)

Ahora debemos introducir el fichero rc522_sensor.h en la carpeta /config de nuestro ESPhome (donde encontraremos también el .yaml del dispositivo que hemos creado)
WEMOS:
Esta vez tenemos que usar el patillaje indicado, aunque SE TIENEN QUE cambiar los GPIO RST_PIN y SS_1_PIN por otros editando rc522_sensor.h
En WEMOS NO LO HE PROBADO, ya que estoy trabajando con ESP32, pero en teoría siguiendo la siguiente imagen tendrían que cambiarse a:
GPIO RST_PIN 0
SS_1_PIN 15
Tanto si funciona como si no, estaria bien que lo comentaseis aquí para corregirlo si hiciese falta.

ESP32:
Si vais a seguir el manual del keypad para integrarlo en el mismo ESP32 os recomiendo que no modifiquéis los GPIOS y lo hagáis según la siguiente imagen para no tener incompatibilidades después.

El código no está muy probado y no viene de ningún sitio externo, lo he desarrollado a partir de la librería de ejemplo y soy un principiante. Por lo que si os da algún error (cuando ya este funcionando) os agradezco que lo comentéis también.
Una vez realizados estos pasos compilamos y descargamos en nuestro dispositivo y procedemos a añadirlo en Homeassistant desde integraciones, como cualquier dispositivo de ESPHome.

Si todo ha ido correctamente tendremos dos nuevos sensores (En mi caso salen 3 dispositivos, ya que el Keypad esta integrado en el mismo ESP)
RFID ID (tiempo real): muestra la lectura del RFID en tiempo real y la mantiene 1 segundo.
RFID (última lectura): Muestra los datos de la última tarjeta leida.

Una vez añadido, solo necesitamos crear las automatizaciones para que empiece a funcionar. Os pongo un ejemplo de una automatizacion que enciende o apaga una luz cada vez que pasamos la tarjeta.

Espero que esta guía os haya resultado fácil y simple.
Nos vemos en Telegram
Franzisc0
Hola. Muy interesante el artículo, pero al ir a bajarme los archivos para probarlo, me da error al bajar el archivo «rc522_sensor.txt», que suspongo que corresponderá al rc522_sensor.h. Me podríais indicar donde puedo conseguirlo? Gracias.
Un saludo.
A mi también me pasa.
Ya lo tienes arreglado!
Pingback: ESP32 Multidispositivo (RFID + Teclado + LCD + Medidor de Consumo) | Domology 2.0
Para conectarlo a un nudeMCU v2 como seria? Porque lo he intentado y no me lee nada.
Gracias
es el ESP 8266
Ya lo he conseguido.
Por si a alguien le interesa. Para el NodeMCU ESP8266
Señal MFRC522 WeMos D1 mini NodeMcu Genérico
3.3V 3.3V 3V3 3V3 (V) 3V3
GND GND G G G
RST/Reset RST D3 [1] D1 [1] GPIO-5 [1]
SPI SS SDA [3] D8 [2] D2 [2] GPIO-4 [2]
SPI MOSI MOSI D7 D7 GPIO-13
SPI MISO MISO D6 D6 GPIO-12
SPI SCK SCK D5 D5 GPIO-14
[1] Configurable, típicamente definido como RST_PIN en el programa.
[2] Configurable, típicamente definido como SS_PIN en el programa..
[3] SDA puede aparecer como SS en modelos antiguos de MFRC522.
En el rc522_sensor.h hay que cambiar:
RST_PIN poner: D1
SS_PIN Poner: D2
Hi.
Is it possible to implement signal strength change
https://forum.arduino.cc/index.php?topic=199983.msg1474507#msg1474507