šŸš˜ Garage Fingerprint Sensor

You could try it but I donā€™t think it will be very efficient.

The sensor would need to be powered and then you can use the WAKEUP pin of the sensor to wake up the ESP

But then the question is if you can read the result of the sensor in time

Not tested just thinking out loud

Ok, I think Iā€™ll give it a try.
I will then share my experiences.

Just made this project with D1 mini instead , and made a 3d model for it!
Here it is:
D1 Mini R503 Finger Print Sensor Box

4 Likes

base on ESPHome ? or do you find a nother way?

EspHome on HomeAssistant

@parrel That sound like such a fun and interesting project. I am semi-fluent in yaml but I will confess I have never integrated ESPHome. When I started searching the internet for the parts I got so many variations that I question compatibility. Any chance I could talk you into sending me links for the required hardware? The other questionā€¦ In ESPHome, how does the ESP8266 communicate to HA? I currently have WiFi and ZWave via SmartThings. Would I need a new hub?
Again, I think this is a awesome project and I am extremely interested in duplicating your achievement if your able share hardware links and you great wisdom :nerd_face:
Thanks in advance!!

1 Like

Hi, if you donā€™t know which part to pick, just comment here. The links are in the original post.

An esp8266 has a wifi chip and connects to home assistant via wifi (just like your phone). You donā€™t need a hub for it.

Home assistant and the esp have to be on the same network.

@parrel ā€¦ Sorry to have troubled you. I did read your post carefully. The only link I found was Aliexpress and I selected one of the 3 sensors, mounting plate, and a flip cover weather protector. I could not find a link for ESP8266 or ESP32. As I tried to communicate, I found so many listings and brands but could not find the one you had in your image. As previously stated, I was worried about compatibility. After my complete topic re-read, I have made another assumption that is likely to send me into a tailspinā€¦ is the config you listed in configuration.yaml, ESPHome Integration, etc. You stated that the device itself stores the approved fingerprints, but not how to record them. Do I assume that is supplied by mfg Aliexpress?

Again, I donā€™t mean to be a hassle, and I would bet I have complete understanding by the completion, but this is all new and I hesitate only because I have crashed my HA in other attempts to do really cool things, and not I am somewhat dependent on it to remain operational :thinking:. BTW, I ordered the Sensor, cover, and weather coverā€¦ expected mid AUG. Thanks again for taking your time to share. It IS appreciated.

1 Like

It creates an enroll service. It can be called through an automation or script as well.

Hi,

It does not really matter which esp32 or esp8266 you take as long as it has the required pins. I would suggest the nodemcu or d1 mini

Make sure to read or watch some videos on how ESPHome works.

Like @Mikefila says, you can store the fingerprints by calling a service.

1 Like

Yesterday i wired this sensor myself, too. It went alive at first try, luckily (big thanks to author!!). After showing device in HA you go to developer tools and call service for enroll, select id0 and number of readings - i selected 5, so that itā€™s more likely that finger will be recognized even if itā€™s not exactly at the center of the reader. Run service and press finger on reader until finished.

What i donā€™t quite understand is why author decided to use D0, which is GPIO16 (=wakeup pin) as communicationā€¦Iā€™ve chosen GPIO4 and GPIO5 for comm, and one of GPIO12-14 for sensing pin.
But, basically, it really doesnā€™t matter which pins you use as long you have them available on board. Generally on ESP8266 itā€™s best practice to use GPIO0ā€™s 4,5, 12,13 or 14.

Personally i hate these ā€œcustomā€ markings (thatā€™s D0, D1ā€¦). I rather work with GPIOā€™s. Itā€™s way more clear, universalā€¦ you canā€™t go wrong by defining pin like: GPIO4, while you can with Dx, if that Dx is not pin you thought it isā€¦ (different board, (too)cheap china clone,ā€¦ for example) - been there, done thatā€¦

2 Likes

One question:
when i run service to enroll finger from HA, nothing happens on the sensor to indicate itā€™s ready for enrolling, so in real world iā€™ll have to shout from my PC (inside a house) to a person (outside) behind sensor to start enrolling :rofl:.
Is it possible to add a command which would, say turn on PURPLE flashing (or anythingā€¦) right after service is triggered? Purple is shown between scans, thatā€™s perfect, but it would be nice if it would also show status ā€œprepared for enrollingā€ at the beginningā€¦

Any suggestions?

Do you not have a phone or a tablet?

1 Like

Yes you can use the fingerprint_grow.aura_led_control function in the service aswell :slight_smile:

Sure i haveā€¦ and i bet iā€™ll use that to prevent ā€œshoutingā€ (that was kind of ā€œintended exaggerationā€ from my side :grinning:)
But, in any case itā€™s nice to see if/when device is ready for learning, donā€™t you agree?

@parrel: how? If i add to existing service compiler say i canā€™t have two items thereā€¦

This makes the ring glow purple when in ā€œnew fingerprint registration modeā€

api:
  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;'
      - fingerprint_grow.aura_led_control:
          state: ALWAYS_ON
          speed: 0
          color: PURPLE
          count: 0

With this you can also make the led feedback if successful or not:

  on_enrollment_scan:
    - 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
    - homeassistant.event:
        event: esphome.fingerprint_enrollment_scan
        data:
          finger_id: !lambda 'return finger_id;'
          scan_num: !lambda 'return scan_num;'
  on_enrollment_done:
    - fingerprint_grow.aura_led_control:
        state: BREATHING
        speed: 100
        color: BLUE
        count: 2
    - homeassistant.event:
        event: esphome.fingerprint_enrollment_done
        data:
          finger_id: !lambda 'return finger_id;'
  on_enrollment_failed:
    - fingerprint_grow.aura_led_control:
        state: FLASHING
        speed: 25
        color: RED
        count: 4
    - homeassistant.event:
        event: esphome.fingerprint_enrollment_failed
        data:
          finger_id: !lambda 'return finger_id;'

3 Likes

Be mindful though that there are various types of grow fingerprint sensors available which have different availability of led colors and some even require a different service call (without aura). Mine is a 502, more info on

Esphome

2 Likes

Ahhhā€¦ now iā€™m feeling like a total idiotā€¦
I just spent 5+ minutes to figure it out why on earth it works if i copy/paste your solution (aura part) into service, while i get an error if i copy/paste part from esphpomeā€™s yaml below ā€œon_finger_scan_matchedā€., while both ā€œsoutionsā€ are exactly the same (apart from speed and count numbers) :hot_face:

Well, it turned out that if i copy/paste my ā€œsolutionā€ indentation gets wrong, but since i did it from same yaml i really didnā€™t notice that, and itā€™s because error stated ā€œcanā€™t have two actions in one itemā€ i automatically assumed is because i have two actions but only one is allowedā€¦

Hereā€™s my corrupted part:

    then:
      - fingerprint_grow.aura_led_control:
        state: ALWAYS_ON
        speed: 0
        color: PURPLE
        count: 0
      - fingerprint_grow.enroll:
          finger_id: !lambda 'return finger_id;'
          num_scans: !lambda 'return num_scans;'

Now itā€™s clear that indent is wrong, sure. But earlierā€¦ i donā€™t know how i could not see it :rage:

my stupid mistakeā€¦ apologies for that. And MANY thanks for your contribution, which solved my problem.

BTWā€¦ my sensor is 503 and aura works.

2 Likes

can someone help me with the fingerprint password?
it worked fine for couple of days , but today i tried to replace the default password, but now i am not able to connect to the device.
i have add the new_password: 0x2B5DE3DE
and then restart with only password: 0x2B5DE3DE , since then i am not able to connect to the device , in the logs i doesnā€™t see something related to the fingerprint device ( the log level it the higher)
there is couple of users that have the same problem like me, it look like a bug in the esphome code that save different new password

Does anyone know if its possible to reuse a fingerprint sensor from a defect tuya doorlock
it seems to have the same amount of cables but there are all the same color