Recherche conf ESP32 + RFID-RC522 fonctionnelle

Bonsoir,

Je lance une dernière dernière bouée sur ce sujet parce que je pense que mon sujet précédent est un peu perdu :

Et je n’ai pas non plus réussi sur ESP32-CAM : ESP32 Cam et RFID RC522

Le matériel actuel :
Un ESP32S ESP-WROOM-32
Carte RFID-RC522

La question : y a t-il quelqu’un qui a réussi à faire fonctionner LE RFID-RC522 avec un ESP32 ?
Si oui avec quel branchement ? Quel Conf yaml ESPHOME associée ? Le RC522 doit il avoir un branchement particulier lors du flashage de l’ESP32 ?

Ou subsidiaire, n’ai-je reçu lors des deux livraisons que des RC522 défectueux !

Je précise que l’ESP32 est ONLINE et que je peux piloter la led bleu.

Voici mon yaml dans ESPHome :

esphome:
  name: esp32rfidportefacade

esp32:
  board: esp32dev
  framework:
    type: arduino

# Enable logging
logger:

# Enable Home Assistant API
api:
  encryption:
    key: "JHmkAapH9pi8xdPGwwwwww2Ms3akM7QbKsShjlsbcNY="

ota:
  password: "edc08dd3de7wwwwww6a2ef9df9bfda85"

wifi:
  ssid: !secret wifi_ssid
  password: !secret wifi_password
  manual_ip:
    static_ip: 192.168.1.37
    gateway: 192.168.1.254
    subnet: 255.255.255.0

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

captive_portal:

spi:
    clk_pin: GPIO18
    mosi_pin: GPIO23
    miso_pin: GPIO19

rc522_spi:
    cs_pin: GPIO04
    update_interval: 1s
    on_tag:
      then:
       - homeassistant.tag_scanned: !lambda 'return x;'

switch:
  - platform: gpio
    name: "LedBleu2RFIDPF"
    pin: 2

Dans le code donné sur RC522 NFC/RFID — ESPHome

Il y a ceci à ajouter:

binary_sensor:
  - platform: rc522
    uid: 74-10-37-94
    name: "RC522 RFID Tag"

Quand je l’ajoute j’ai ce message et l’uid est-ce un exemple ou je dois trouver le mien :

[20:40:39][D][sensor:127]: 'EspCam32a WiFi Signal Sensor': Sending state -55.00000 dBm with 0 decimals of accuracy
[20:40:40][W][rc522:394]: Communication with the MFRC522 might be down, reset in -38
[20:40:40][I][rc522_spi:013]: SPI Setup
[20:40:40][I][rc522:290]: Soft reset...
[20:40:40][I][rc522:298]: Device online.

Merci et désolé n’insister, je suis comme vous, je n’aime pas échouer :rofl:
Bob

Bon déjà là, c’est dans la doc en fait! :wink:
Le UID ça correspond à un numéro de tag, 74-10-37-94 c’est juste un exemple!

The rc522 binary sensor platform lets you track if an RFID tag with a given unique id (uid) is currently being detected by the RC522 or not.

Et ensuite ils expliquent comment lire un de tes tags à toi pour connaitre son ID:

image

Merci @AlexHass

Au départ j’ai eu des badges RFID, que j’ai déclaré via l’appli HA avec mon téléphone, détection OK, déclenchement d’automatisation OK., mais c’était un peu faire les choses à l’envers, c’est le badge que l’on souhaite présenter à un lecteur et non l’inverse.
Si je comprends bien et je n’en suis pas certain, il faut déclarer chaque badge dans le yaml ?

Sans mettre de binary_sensor

binary_sensor:
  - platform: rc522

image

Je ne détecte rien en présentant un badge déjà présent dans HA et fonctionnel avec mon téléphone.
Il me manque vraiment une étape.
Le uid: c’est le RC522 ou le badge ?
Depuis le temps que je teste ça je fini par être un peu perdu :upside_down_face:

Merci d’avance, désolé pas eu le temps de trop chercher ce soir après ta réponse @AlexHass
Dodo et suite demain mais je veux vraiment y arriver :wink:

Je n’ai jamais joué avec une lecteur RFID, mais j’ai quelques tags scannés à travers l’app.

Cela dit, je pense que tu mélanges quelques notions effectivement! :slight_smile:

« UID » c’est le code unique à l’intérieur d’un badge (= tag) RFID.
« tag_scanned » c’est l’évènement déclenché dans HA quand l’app scanne un tag, je ne pense pas qu’il ait un lien avec ton RC522 ou ESPHome.

Si j’ai bien compris, effectivement il faut enregistrer dans le Yaml ESPHome les badges que tu as pour en faire un binary_sensor pour chacun.
Ensuite le scan d’un badge connu changera l’état du binary_sensor que tu pourra utiliser pour faire ce que tu veux soit dans ESPHome soit dans HA.

ça y est ça fonctionne enfin, à voir ce que je vais en faire maintenant :joy:

J’ai suivi mais full ESPHome ce tuto : Tuto 1 : Comment débuter sur ESPHome avec un esp32 et Home Assistant - YouTube
J’ai suivi le lien d’un commentaire du tuto pour le branchement : Électronique en amateur: Module RFID-RC522 et ESP8266 / ESP32
image

Il y avait une inversion dans le mien, on trouve un peu de tout comme branchement, j’imagine qu’il peut y en avoir plusieurs possible (surtout pour le GPIO04) mais il faut que le YAML ESPHome corresponde.

Pour le YAML ESPHome (j’ajoute toujours le pilotage de la Led bleu pour tester) :

esphome:
  name: esp32rfidportefacade

esp32:
  board: esp32dev
  framework:
    type: arduino

# Enable logging
logger:

# Enable Home Assistant API
api:
  encryption:
    key: "JHmkAapH9pi8xdPG1jwwwwwws3akM7QbKsShjlsbcNY="

ota:
  password: "edc08dd3de7dwwwwwwa2ef9df9bfda85"

wifi:
  ssid: !secret wifi_ssid
  password: !secret wifi_password
  manual_ip:
    static_ip: 192.168.1.37
    gateway: 192.168.1.254
    subnet: 255.255.255.0

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

captive_portal:

spi:
    clk_pin: GPIO18
    mosi_pin: GPIO23
    miso_pin: GPIO19

rc522_spi:
    cs_pin: GPIO04
    #update_interval: 1s
    on_tag:
      then:
       - homeassistant.tag_scanned: !lambda 'return x;'

binary_sensor:
  - platform: rc522
    uid: 74-10-37-94
    name: "RC522 RFID Tag"
    
switch:
  - platform: gpio
    name: "LedBleu2RFIDPF"
    pin: 2

Résultat dans les logs lorsque je présente deux badges que j’ai déjà enregistré dans HA avec mon téléphone:

[12:51:51][C][spi:101]: SPI bus:
[12:51:51][C][spi:102]:   CLK Pin: GPIO18
[12:51:51][C][spi:103]:   MISO Pin: GPIO19
[12:51:51][C][spi:104]:   MOSI Pin: GPIO23
[12:51:51][C][spi:106]:   Using HW SPI: YES
[12:51:51][C][switch.gpio:050]: GPIO Switch 'LedBleu2RFIDPF'
[12:51:51][C][switch.gpio:051]:   Pin: GPIO2
[12:51:51][C][switch.gpio:073]:   Restore Mode: Restore (Defaults to OFF)
[12:51:51][C][rc522:099]: RC522:
[12:51:51][C][rc522:110]:   Update Interval: 1.0s
[12:51:51][C][rc522:113]:   Tag 'RC522 RFID Tag'
[12:51:51][C][rc522_spi:021]:   CS Pin: GPIO4
[12:51:51][C][captive_portal:088]: Captive Portal:
[12:51:51][C][mdns:094]: mDNS:
[12:51:51][C][mdns:095]:   Hostname: esp32rfidportefacade
[12:51:51][C][ota:089]: Over-The-Air Updates:
[12:51:51][C][ota:090]:   Address: 192.168.1.37:3232
[12:51:51][C][ota:093]:   Using Password.
[12:51:51][C][api:138]: API Server:
[12:51:51][C][api:139]:   Address: 192.168.1.37:6053
[12:51:51][C][api:141]:   Using noise encryption: YES
[12:51:55][D][rc522:263]: Found new tag '04-99-25-2A-F7-0F-90'
[12:52:02][D][esp32.preferences:113]: Saving 1 preferences to flash...
[12:52:02][D][esp32.preferences:142]: Saving 1 preferences to flash: 1 cached, 0 written, 0 failed
[12:52:02][D][rc522:263]: Found new tag '04-B4-35-2A-F7-0F-90'
[12:52:12][D][rc522:263]: Found new tag '04-B4-35-2A-F7-0F-90'
[12:52:15][D][rc522:263]: Found new tag '04-99-25-2A-F7-0F-90'

Résultat dans les évènements :

Dans les étiquettes HA :
image
La balise peut être renommée directement ici.

Ce fut laborieux mais encore un succès :rofl:

Merci
Bob

AH cool donc le tag_scanned passe directement, et t’as pas besoin du binary_sensor du coup.
C’est pas mal :slight_smile:

Le binary_sensor est dans le yaml ESPHome.
Il faut que j’étudie un peu mieux les ESP32 :wink:
C’est rare ou j’ai mal cherché, de trouver le branchement + le yaml en même temps, maintenant c’est ici sur le forum pour un ESP32.
Je passe à un nouveau sujet toujours sur ESP32 :wink: