brianrho / FPM

Arduino library for the R30x/ZFMxx/FPMxx optical fingerprint sensors
103 stars 41 forks source link

Error with R307, non-readable char on serial monitor, in arduino web #52

Closed Ayush0Chaudhary closed 3 months ago

Ayush0Chaudhary commented 3 months ago

In the serial monitor, it is showing these non-readable character.

image

System

OS: Windows 10 Arduino Uno Arduino Web for IDE Fingerprint sensor R306

brianrho commented 3 months ago

You need to make sure you set the baud rate correctly in your serial monitor, to match the baud rate in the sketch -- 57600.

Ayush0Chaudhary commented 3 months ago

It worked, you are OG, thanks!

Ayush0Chaudhary commented 3 months ago

@brianrho hey, I wanted your help, I am a student at IIT Roorkee and working on an ambitious project for my college.

We want to create biometric system for 18000 people living in IIT Roorkee, we couldn't find any finger-machine that full fill our capacity, so we decided to make a machine that

  1. take bitmap image of our finger,
  2. sends it to server and then
  3. we run search for best match using knn and SHIFT
  4. Return the result to our machine with yes or no.

Do you think if this is a valid approach? Does their exist easier solutions?

I will be highly obliged if you answer this. :smiling_face_with_tear: :

brianrho commented 3 months ago

Ah, that's an idea many have had.

You may want to first check out the old issues in this repo such as https://github.com/brianrho/FPM/issues/39 and https://github.com/brianrho/FPM/issues/9#issuecomment-451048453.

I don't know anything of "knn and shift", but if you replace that with "sensible algorithm that searches for prints in reasonable time", then yeah, your approach looks valid -- as in, it should work and yield the expected results.

How usable it will be in practice, is a separate question. With your proposed steps, you will want to think about:

... all of which will need to happen before the user gets a yes/no.

I don't know of any easier paths, that are also sustainable. Perhaps you could try discussing with some sensor manufacturer to see if they're willing to supply you with their sensors and accompanying libraries (DLLs and such, such as this one) for matching/searching prints.

This would enable you perform the template generation in the sensor itself (using their builtin algo), offload the much-smaller template to your server, and use their libraries for the server-side matching. Of course, if your vendor ever goes belly-up, you're screwed. So maybe you'll want to store all the images on your server, as insurance, just in case you ever need to find a new vendor.

If all that's not safe enough for you, you may want to try developing your own matching algorithm(s) after all, (maybe even interface with a sensor chip directly), then optimize the hell out of the path as you transfer the image from sensor to server for the search. Good luck.

Ayush0Chaudhary commented 3 months ago

Thank you sir for replying, I will reply when we achieve a milestone on this project.