Fingerprint_grow error with esp32

still new to ESPhome. been trying to get the config below to compile and I get the error “fingerprint_grow is marked FAILED”.
see screenshot. using the GROW R503 fingerprint sensor with esp32. I am sure I have something wrong in my config, just have not been able to identify what it is as I have been reading through the documentation. would love any input. thanks.

esphome:
  name: fingerprint
  friendly_name: FingerPrint

esp32:
  board: esp32dev
  framework:
    type: arduino

# Enable logging
logger:

# Enable Home Assistant API
api:
  encryption:
    key: "abc"

  #finger print specific
  services:
  - service: enroll
    variables:
      finger_id: int
      num_scans: int
    then:
      - fingerprint_grow.enroll:
          finger_id: !lambda 'return finger_id;'
          num_scans: !lambda 'return num_scans;'
  - service: enroll_next # Idea by Ralf Klüber (thanks!)
    variables:
      num_scans: int
    then:
      - fingerprint_grow.enroll:
          finger_id: !lambda 'return id(fingerprint_count).state;'
          num_scans: !lambda 'return num_scans;'
  - service: cancel_enroll
    then:
      - fingerprint_grow.cancel_enroll:
  - service: delete
    variables:
      finger_id: int
    then:
      - fingerprint_grow.delete:
          finger_id: !lambda 'return finger_id;'
  - service: delete_all
    then:
      - fingerprint_grow.delete_all: 

ota:
  - platform: esphome
    password: "abc"

wifi:
  ssid: !secret wifi_ssid
  password: !secret wifi_password

  # Enable fallback hotspot (captive portal) in case wifi connection fails
  ap:
    ssid: "Fingerprint Fallback Hotspot"
    password: "abc"

# Sync time with Home Assistant.
time:
  - platform: homeassistant
    id: homeassistant_time

captive_portal:

# Text sensors with general information.
text_sensor:
  # Expose ESPHome version as sensor.
  - platform: version
    name: finger_print_sensor ESPHome Version

  # Expose WiFi information as sensors.
  - platform: wifi_info
    ip_address:
      name: finger_print_sensor IP
    ssid:
      name: finger_print_sensor SSID
    bssid:
      name: finger_print_sensor BSSID

  # Finger Print Specific
  - platform: template
    id: fingerprint_state
    name: "Mud Fingerprint State"      

# Exposed switches.
# Switch to restart the salt_level_sensor.   
switch:
  - platform: restart
    name: "finger_print_sensor Restart"
  - platform: template
    name: "Fingerprint matched"
    id: fingerprint_matched
    optimistic: True
    on_turn_on:
    - delay: 2000ms
    - switch.turn_off: fingerprint_matched  

sensor:
  # Uptime sensor.
  - platform: uptime
    name: finger_print_sensor Uptime

  # WiFi Signal sensor.
  - platform: wifi_signal
    name: finger_print_sensor WiFi Signal
    update_interval: 60s 

  # Finger Print Specific
  - platform: fingerprint_grow
    fingerprint_count:
      name: "Mud Fingerprint Count"
      id: fingerprint_count
    last_finger_id:
      name: "Mud Fingerprint Last Finger ID"
    last_confidence:
      name: "Mud Fingerprint Last Confidence"
    status:
      name: "Mud Fingerprint Status"
    capacity:
      name: "Mud Fingerprint Capacity"
    security_level:
      name: "Mud Fingerprint Security Level"    

#specific for finger print sensor
uart:
  tx_pin: GPIO17 
  rx_pin: GPIO16
  baud_rate: 57600

fingerprint_grow:
  sensing_pin:  GPIO5 
  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: BLUE
        count: 1
    - text_sensor.template.publish:
        id: fingerprint_state
        state: "Authorized finger"
    - switch.turn_on: fingerprint_matched

  on_finger_scan_unmatched:
    - homeassistant.event:
        event: esphome.test_node_finger_scan_unmatched
    - fingerprint_grow.aura_led_control:
        state: FLASHING
        speed: 25
        color: RED
        count: 2
    - text_sensor.template.publish:
        id: fingerprint_state
        state: "Unauthorized finger"

  on_enrollment_scan:
    - homeassistant.event:
        event: esphome.test_node_enrollment_scan
        data:
          finger_id: !lambda 'return finger_id;'
          scan_num: !lambda 'return scan_num;'
    - fingerprint_grow.aura_led_control:
        state: FLASHING
        speed: 25
        color: BLUE
        count: 2
    - fingerprint_grow.aura_led_control:
        state: ALWAYS_ON
        speed: 0
        color: PURPLE
        count: 0
    - text_sensor.template.publish:
        id: fingerprint_state
        state: "Finger scanned"

  on_enrollment_done:
    - homeassistant.event:
        event: esphome.test_node_enrollment_done
        data:
          finger_id: !lambda 'return finger_id;'
    - fingerprint_grow.aura_led_control:
        state: BREATHING
        speed: 100
        color: BLUE
        count: 2
    - text_sensor.template.publish:
        id: fingerprint_state
        state: "Enrolled fingerprint"
        
  on_enrollment_failed:
    - homeassistant.event:
        event: esphome.test_node_enrollment_failed
        data:
          finger_id: !lambda 'return finger_id;'
    - fingerprint_grow.aura_led_control:
        state: FLASHING
        speed: 25
        color: RED
        count: 4
    - text_sensor.template.publish:
        id: fingerprint_state
        state: "Failed to enroll fingerprint"

Please don’t post screenshots of text!!

This thread is the best one that I have seen on the R503

Yes, that is a great post and what I have been using as the basis for my project, but cannot get that config to compile. It was a few years ago so I was wondering if some parameters may have changed slightly over the years.

quick update. I was using a wrong pinout diagram for my esp32 - once I made the adjustment using the correct pins from esp32 to connect to the R503 it is working great.