Fingerprint reader Grow R503

Hello,

I juste try to configure my R503 and all goes fine by following tutorial such as:

But I don’t succed to do something probably basic that is not in tutorials I find on the Web.

I just want to trigger an automation (typically that take a snapshot from my doorbell and notify me on phone) when fingerprint scan is UNAUTHORIZED. With authorized fingerprint tag, it is possible to trigger an automation but I don’t succeed to do the same when unauthorized fingerprint is scan.

Does anyone has any idea on how to realise that please ? Thanks in advance.

Eric

After searching all my yesterday evening and just after posting, I find a solution …

on_finger_scan_matched:
    - homeassistant.event:
        event: esphome.test_node_finger_scan_matched
        data:
          finger_id: !lambda 'return finger_id;'
          confidence: !lambda 'return confidence;'
    - fingerprint_grow.aura_led_control:
        state: BREATHING
        speed: 200
        color: GREEN
        count: 1
    - text_sensor.template.publish:
        id: fingerprint_state
        state: !lambda 'return "Authorized finger";'
# Pousser un événement tag_scanned basé sur finger_id uniquement si la confiance est supérieure à 50
# Créer une balise avec nom d'utilisateur pour chaque numéro d'identifiaction
    - if:
        condition:
          lambda: 'return confidence > 50;'
        then:
          - homeassistant.tag_scanned: !lambda |-
              switch (finger_id) {
                case 0:
                  return "person_0";
                case 1:
                  return "person_1";
#...
                default:
                  return "person_inconnu";
              }
    - delay: '00:00:10'
    - text_sensor.template.publish:
        id: fingerprint_state
        state: "default"
  on_finger_scan_unmatched:
    - homeassistant.event:
        event: esphome.test_node_finger_scan_unmatched
        data:
          title: unmatched
    - fingerprint_grow.aura_led_control:
        state: FLASHING
        speed: 25
        color: RED
        count: 2
    - text_sensor.template.publish:
        id: fingerprint_state
        state: "Unauthorized finger"
    - delay: '00:00:10'
    - text_sensor.template.publish:
        id: fingerprint_state
        state: "default"

I juste add a delay and restore a default state to the sensor.fingerprint_state. In fact, the state doesn’t return to default state after a scan. So, once You’ve scan your finger, the state stay “authorized” or “unauthorized” until the state changes and if you scan several time an unauthorized fingerprint, you won’t have any return.

I hope it can help.

My automation test

alias: Test unmatched
description: ""
trigger:
  - platform: state
    entity_id:
      - sensor.fingerprint_state
    to: Unauthorized finger
    from: null
condition: []
action:
  - service: light.toggle
    data: {}
    target:
      entity_id: light.salon
mode: single
1 Like