Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

save feature in database #3

Open
moh76 opened this issue Oct 27, 2019 · 10 comments
Open

save feature in database #3

moh76 opened this issue Oct 27, 2019 · 10 comments

Comments

@moh76
Copy link

moh76 commented Oct 27, 2019

Hello
tnx for this repo
I use as608 and arduino mega
I want save the fingerprint feature in the server database
and match feature on server
My problem is that every time I get the fingerprint feature it differs from the previous one
can you help me ?

@MrGorG
Copy link

MrGorG commented Jan 20, 2020

hi... did u solve this problem ? i have the same issue, also i can't copy the template to another FingerPrint sensor, well it is possible but did not match :(
For the same Fingerprint sensor it works fine
Pd. sorry for my bad english

@hanifizzudinrahman
Copy link
Owner

Hello
tnx for this repo
I use as608 and arduino mega
I want save the fingerprint feature in the server database
and match feature on server
My problem is that every time I get the fingerprint feature it differs from the previous one
can you help me ?

first, have you success from enroll the fingerprint template (from your fingerprint to memory in module fingeprint), then show the template fingerprint in serial monitor arduino? the template is like hexa code

@hanifizzudinrahman
Copy link
Owner

hi... did u solve this problem ? i have the same issue, also i can't copy the template to another FingerPrint sensor, well it is possible but did not match :(
For the same Fingerprint sensor it works fine
Pd. sorry for my bad english

thats true!
if you have the template fingerprint from different module, it cann't be matching.
because, with different module fingerprint, will result a different template finger print
example, template from ZFM20 is less than DY50

@MrGorG
Copy link

MrGorG commented Jan 29, 2020

hi... did u solve this problem ? i have the same issue, also i can't copy the template to another FingerPrint sensor, well it is possible but did not match :(
For the same Fingerprint sensor it works fine
Pd. sorry for my bad english

thats true!
if you have the template fingerprint from different module, it cann't be matching.
because, with different module fingerprint, will result a different template finger print
example, template from ZFM20 is less than DY50

hi... both are DY50 :s ... i dont know if i am doing something wrong... i tried and its worked very well if i move one template from one ID to another ID but just in the same fingerprint... If i move to another fingerprint (both DY50) just 1 from 5 templates matches .... i run the show_fingerprint_templete sketch in both fingerprins an even when i move one template in the same fingerprint, the packets change their values...you have done a wonderfull work with this repo

@hanifizzudinrahman
Copy link
Owner

but sorry, i really dont know what you mean
can you give me the detail information

may be, after this i delete this post

@MrGorG
Copy link

MrGorG commented Jan 29, 2020

but sorry, i really dont know what you mean
can you give me the detail information

may be, after this i delete this post

ok, thaks, may be i did not explain well (im just learning english 😢 )
i am gona explain you what i did step by step:

  • i have two FingerPrints modules (DY50 both) , lets call them FP1 and FP2 all skecth i work with Serial.begin(115200) and finger.begin(57600) and &Serial3 (Arduino Mega- ATMEGA2560 16u TW, MADE IN CHINA... it would be this the problem? )
  1. In library Adafruit_Fingerprint.cpp, i added a ";" after RETURN in line 507; also in function "uploadmodel", i added "delay (25)" after each writePacket such as you mentioned in another comment.

  2. In FP1 i enroll three fingers in id= 1, 2 and 3 respectively and match them with Match_1-N.ino to check... everything work fine :)

  3. First i uploaded the DY50_MP10_ShowTemplete.ino skecth and tried to run, but just show:

[ Show Templete FULL ]

Found fingerprint sensor!
Attempting to load #1
Template 1 loaded
Attempting to get #1
Template 1 transferring:

and stopped there...i realized that it stay at: if inside while (i <= 900 ) statement, so i put a counter to know where stopped it, this way:

  uint8_t bytesReceived[900];

  int i = 0;
  while (i <= 900 ) {
      if (Serial3.available()) {
          bytesReceived[i++] = Serial3.read();
          Serial.println(i);
          }
  }

so i ran the skech again and now shows me that it stop at i=461, i do it few times and sometimes repeat the value and another ones give me 460 (pd. for Serial.begin(57600) the value oscillates between 271, 273).
After this, i change the code this way:

  uint8_t bytesReceived[900];

  int i = 0;
  while (i <= 460 ) {
      if (Serial3.available()) {
          bytesReceived[i++] = Serial3.read();
          //Serial.println(i);
          }
  }

now shows me:

[ Show Templete FULL ]

Found fingerprint sensor!
Attempting to load #1
Template 1 loaded
Attempting to get #1
Template 1 transferring:
Decoding packet...
uint8_t packet2[] = {0x03, 0x03, 0x59, 0x32, 0x10, 0x01, 0x35, 0x01, 0x8D, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x8B, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xCC, 0x30, 0xCF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFE, 0xFF, 0xFF, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xA6, 0x9A, 0x65, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x54, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, };
uint8_t packet3[] = {0x1F, 0x06, 0x44, 0xFE, 0x49, 0x0D, 0xD9, 0x3E, 0x57, 0x0E, 0x2A, 0x3E, 0x4F, 0x94, 0x6C, 0x7E, 0x6A, 0x96, 0x2A, 0xFE, 0x2F, 0x16, 0x59, 0xFE, 0x10, 0x1A, 0x83, 0xFE, 0x71, 0x2A, 0x2B, 0x9E, 0x5F, 0xAD, 0x80, 0x7E, 0x20, 0xB0, 0xD9, 0x9E, 0x58, 0x35, 0x57, 0xBE, 0x4B, 0xC0, 0x18, 0x1E, 0x34, 0xC0, 0x59, 0x7E, 0x65, 0xC3, 0x18, 0x5E, 0x0C, 0x41, 0x84, 0xDE, 0x20, 0x0E, 0xDB, 0xBF, 0x23, 0x12, 0xC4, 0x5F, 0x37, 0x2C, 0x82, 0xDF, 0x65, 0x34, 0x2C, 0xBF, 0x17, 0xB3, 0xC3, 0xBF, 0x52, 0x3C, 0x40, 0x5F, 0x5B, 0x41, 0x01, 0x5F, 0x32, 0x09, 0x44, 0x9C, 0x31, 0x0F, 0xC3, 0x3C, 0x1D, 0xA8, 0x83, 0x5C, 0x14, 0x2D, 0xC3, 0x3C, 0x68, 0x30, 0x17, 0x5C, 0x22, 0xB7, 0xC2, 0x5C, 0x31, 0x8C, 0x5C, 0x1A, 0x60, 0x8F, 0x95, 0xFA, 0x1A, 0x2B, 0x57, 0xBA, 0x38, 0xBA, 0xC2, 0x1A, };
uint8_t packet4[] = {0x77, 0xC2, 0x16, 0x5A, 0x74, 0x44, 0x04, 0xBA, 0x6D, 0x09, 0xE3, 0x78, 0x67, 0x0E, 0x67, 0xB8, 0x19, 0xB9, 0x1B, 0xF8, 0x2C, 0xBA, 0x19, 0xB8, 0x1C, 0xBB, 0x82, 0xF9, 0x39, 0xB1, 0x56, 0xF7, 0x37, 0x32, 0x13, 0x17, 0x30, 0xB8, 0x1A, 0x37, 0x67, 0x89, 0xD8, 0xD4, 0x66, 0x09, 0x6A, 0xD5, 0x38, 0xB3, 0x99, 0x55, 0x39, 0xB6, 0xD6, 0xB3, 0x38, 0xB7, 0xAB, 0x13, 0x78, 0xC4, 0xC0, 0xFE, 0x5C, 0xCC, 0x59, 0xBE, 0x60, 0xC8, 0x03, 0x70, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, };
uint8_t packet5[] = {0x03, 0x03, 0x5D, 0x2A, 0x28, 0x01, 0x45, 0x01, 0x91, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xF5, 0xEF, 0xF3, 0xAC, 0xB9, 0xA6, 0x7F, 0xFD, 0xDE, 0xBB, 0xBB, 0xAF, 0xEF, 0xFD, 0x6E, 0xF9, 0xFC, 0x6F, 0xB7, 0x7C, 0xCA, 0x74, 0x43, 0xDD, 0xDF, 0xE5, 0x8E, 0xED, 0x9D, 0xB7, 0xE2, 0x3F, 0xEA, 0xFF, 0x7B, 0x38, 0xDB, 0xF7, 0xDA, 0xEC, 0xB6, 0xAF, 0xFF, 0xBD, 0x5F, 0x3F, 0xFE, 0xFC, 0xDF, 0xEB, 0x4D, 0x78, 0xEF, 0xBF, 0xF5, 0xA9, 0x5A, 0xDB, 0xBB, 0xDF, 0x73, 0xBF, 0x65, 0x3F, 0xDD, 0xFB, 0xFF, 0xF7, 0xE3, 0xEE, 0xED, 0x63, 0x7C, 0xAD, 0x46, 0xDF, 0x7F, 0xFE, 0xEF, 0xD5, 0xAF, 0x5F, 0x2D, 0xFD, 0x3E, 0x9B, 0xAD, 0x3E, 0x83, 0xEB, 0xED, 0xEF, 0xB9, };
uint8_t packet6[] = {0xDF, 0xFE, 0xE7, 0xCA, 0xF4, 0xF7, 0xFD, 0xFD, 0xB9, 0xEF, 0xE7, 0xB9, 0xFF, 0x7D, 0x9D, 0x97, 0xBE, 0xBF, 0xF7, 0xD5, 0xF6, 0xE6, 0xF3, 0x8B, 0xF9, 0xF6, 0x31, 0xBF, 0xDF, 0x57, 0xFB, 0x9F, 0xFF, 0xFF, 0xFD, 0xE3, 0xEC, 0xB2, 0x7B, 0x7E, 0xFD, 0xDF, 0xDF, 0xF1, 0xF7, 0xBF, 0x79, 0xE7, 0xEC, 0x4D, 0xB5, 0xEA, 0x7F, 0x7F, 0xEB, 0xFF, 0xED, 0xF5, 0x7B, 0x1F, 0x3D, 0x7B, 0x7F, 0xD7, 0xAE, 0xFE, 0x7F, 0xF7, 0x5E, 0xED, 0x7A, 0x44, 0xEB, 0x4B, 0xBC, 0xBF, 0x5F, 0xFF, 0xF5, 0xD9, 0xCF, 0x6F, 0xFF, 0xD8, 0x0F, 0xEE, 0xE4, 0xD9, 0xBB, 0xE7, 0x2D, 0x6E, 0xFF, 0xFA, 0xBE, 0x60, 0xDE, 0x76, 0xDA, 0xF7, 0xBF, 0xBA, 0xE5, 0xF6, 0xD9, 0x97, 0x73, 0x74, 0x56, 0x5F, 0xFD, 0xDC, 0xB9, 0x6A, 0xAF, 0x56, 0x11, 0xAB, 0xBB, 0xCF, 0xFC, 0xEF, 0xE9, 0xA3, 0xF0, 0x3D, 0xBF, 0x8B, };
uint8_t packet7[] = {0xDA, 0xD8, 0x9B, 0xFB, 0xAF, 0x5A, 0xFB, 0xBB, 0x5B, 0xFF, 0x7E, 0xFF, 0xF6, 0x4D, 0x0E, 0xAF, 0xCD, 0x88, 0x8E, 0xDF, 0x29, 0xCE, 0x9E, 0xFF, 0x6F, 0x13, 0xFF, 0xFF, 0xB3, 0x9F, 0xDD, 0xE9, 0x69, 0x64, 0x75, 0xEB, 0xEA, 0x56, 0xD7, 0x7B, 0xF7, 0xFF, 0xF1, 0xEF, 0x22, 0x4A, 0x7F, 0xCF, 0xF5, 0x9B, 0x7E, 0xD7, 0x43, 0xAB, 0xD7, 0xBD, 0x56, 0xD7, 0xBD, 0xBB, 0x77, 0xAB, 0xFB, 0x7F, 0xFF, 0x9F, 0xD7, 0xB7, 0xBB, 0xF7, 0xDB, 0xF6, 0xDF, 0xFF, 0xC7, 0x6D, 0xEE, 0xF3, 0x2F, 0xDF, 0xEF, 0xFF, 0xA6, 0xBC, 0xF7, 0x7F, 0x6D, 0xF1, 0xE0, 0x5F, 0xFF, 0xA7, 0xF6, 0x07, 0x1D, 0x91, 0xBE, 0xF6, 0x5A, 0x11, 0x00, 0x01, 0x00, 0x41, 0x74, 0x74, 0x65, 0x6D, 0x70, 0x74, 0x69, 0x6E, 0x67, 0x20, 0x74, 0x6F, 0x20, 0x67, 0x65, 0x74, 0x20, 0x23, 0x00, 0x43, 0x6F, 0x6D, 0x6D, 0x75, };
COMPLETED

I did the same for each id template... (just going to show you for id=1 to do not extend so much the explanation)

  1. To verify if this work i empty the database and upload the DY50_FPM10A_UploadTemplete.ino for each id=1,2 and 3 in the FP1:
[ Upload + Store FlashMemory + Show Templete ]

Found fingerprint sensor!

===> Write Packet SUKSES

==>[SUKSES] StoreModel + ID = 1 Stored!

in FP1 it work ok for the three templates, i upload Match_1-N.ino and check it... amazing 👍
but, i wanted to see the template again and it show me this:

uint8_t packet3[] = {0x1F, 0x06, 0x44, 0xFE, 0x49, 0x0D, 0xD9, 0x3E, 0x57, 0x0E, 0x2A, 0x3E, 0x4F, 0x94, 0x6C, 0x7E, 0x6A, 0x96, 0x2A, 0xFE, 0x2F, 0x16, 0x59, 0xFE, 0x10, 0x1A, 0x83, 0xFE, 0x71, 0x2A, 0x2B, 0x9E, 0x5F, 0xAD, 0x80, 0x7E, 0x20, 0xB0, 0xD9, 0x9E, 0x58, 0x35, 0x57, 0xBE, 0x4B, 0xC0, 0x18, 0x1E, 0x34, 0xC0, 0x59, 0x7E, 0x65, 0xC3, 0x18, 0x5E, 0x0C, 0x41, 0x84, 0xDE, 0x20, 0x0E, 0xDB, 0xBF, 0x23, 0x12, 0xC4, 0x5F, 0x37, 0x2C, 0x82, 0xDF, 0x65, 0x34, 0x2C, 0xBF, 0x17, 0xB3, 0xC3, 0xBF, 0x52, 0x3C, 0x40, 0x5F, 0x5B, 0x41, 0x01, 0x5F, 0x32, 0x09, 0x44, 0x9C, 0x31, 0x0F, 0xC3, 0x3C, 0x1D, 0xA8, 0x83, 0x5C, 0x14, 0x2D, 0xC3, 0x3C, 0x68, 0x30, 0x17, 0x5C, 0x22, 0xB7, 0xC2, 0x5C, 0x31, 0x8C, 0x5C, 0x1A, 0x60, 0x8F, 0x95, 0xFA, 0x1A, 0x2B, 0x57, 0xBA, 0x38, 0xBA, 0xC2, 0x1A, };
uint8_t packet4[] = {0x77, 0xC2, 0x16, 0x5A, 0x74, 0x44, 0x04, 0xBA, 0x6D, 0x09, 0xE3, 0x78, 0x67, 0x0E, 0x67, 0xB8, 0x19, 0xB9, 0x1B, 0xF8, 0x2C, 0xBA, 0x19, 0xB8, 0x1C, 0xBB, 0x82, 0xF9, 0x39, 0xB1, 0x56, 0xF7, 0x37, 0x32, 0x13, 0x17, 0x30, 0xB8, 0x1A, 0x37, 0x67, 0x89, 0xD8, 0xD4, 0x66, 0x09, 0x6A, 0xD5, 0x38, 0xB3, 0x99, 0x55, 0x39, 0xB6, 0xD6, 0xB3, 0x38, 0xB7, 0xAB, 0x13, 0x78, 0xC4, 0xC0, 0xFE, 0x5C, 0xCC, 0x59, 0xBE, 0x60, 0xC8, 0x03, 0x70, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, };
uint8_t packet5[] = {0x03, 0x03, 0x5D, 0x2A, 0x28, 0x01, 0x45, 0x01, 0x91, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xF5, 0x1E, 0x34, 0xC0, 0x59, 0x7E, 0x65, 0xC3, 0x18, 0x5E, 0x0C, 0x41, 0x84, 0xDE, 0x20, 0x0E, 0xDB, 0xBF, 0x23, 0x12, 0xC4, 0x5F, 0x37, 0x2C, 0x82, 0xDF, 0x65, 0x34, 0x2C, 0xBF, 0x17, 0xB3, 0xC3, 0xBF, 0x52, 0x3C, 0x40, 0x5F, 0x5B, 0x41, 0x01, 0x5F, 0x32, 0x09, 0x44, 0x9C, 0x31, 0x0F, 0xC3, 0x3C, 0x1D, 0xA8, 0x83, 0x5C, 0x14, 0x2D, 0xC3, 0x3C, 0x68, 0x30, 0x17, 0x5C, 0x22, 0xB7, 0xC2, 0x5C, 0x31, 0x8C, 0x5C, 0x1A, 0x60, 0x8F, 0x95, 0xFA, 0x1A, 0x2B, 0x57, 0xBA, 0x38, 0xBA, 0xC2, 0x1A, 0x77, 0xC2, 0x16, 0x5A, 0x74, 0x44, 0x04, 0xBA, 0x6D, 0x09, 0xE3, };
uint8_t packet6[] = {0x19, 0xB8, 0x1C, 0xBB, 0x82, 0xF9, 0x39, 0xB1, 0x56, 0xF7, 0x37, 0x32, 0x13, 0x17, 0x30, 0xB8, 0x1A, 0x37, 0x67, 0x89, 0xD8, 0xD4, 0x66, 0x09, 0x6A, 0xD5, 0x38, 0xB3, 0x99, 0x55, 0x39, 0xB6, 0xD6, 0xB3, 0x38, 0xB7, 0xAB, 0x13, 0x78, 0xC4, 0xC0, 0xFE, 0x5C, 0xCC, 0x59, 0xBE, 0x60, 0xC8, 0x03, 0x70, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x03, 0x5D, 0x2A, 0x28, 0x01, 0x45, 0x01, 0x91, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, };
uint8_t packet7[] = {0x00, 0x00, 0xF5, 0xEF, 0xF3, 0xAC, 0xB9, 0xA6, 0x7F, 0xFD, 0xDE, 0xBB, 0xBB, 0xAF, 0xEF, 0xFD, 0x6E, 0xF9, 0xFC, 0x6F, 0xB7, 0x7C, 0xCA, 0x74, 0x43, 0xDD, 0xDF, 0xE5, 0x8E, 0xED, 0x9D, 0xB7, 0xE2, 0x3F, 0xEA, 0xFF, 0x7B, 0x38, 0xDB, 0xF7, 0xDA, 0xEC, 0xB6, 0xAF, 0xFF, 0xBD, 0x5F, 0x3F, 0xFE, 0xFC, 0xDF, 0xEB, 0x4D, 0x78, 0xEF, 0xBF, 0xF5, 0xA9, 0x5A, 0xDB, 0xBB, 0xDF, 0x73, 0xBF, 0x65, 0x3F, 0xDD, 0xFB, 0xFF, 0xF7, 0xE3, 0xEE, 0xED, 0x63, 0x7C, 0xAD, 0x46, 0xDF, 0x7F, 0xFE, 0xEF, 0xD5, 0xAF, 0x5F, 0x2D, 0xFD, 0x3E, 0x9B, 0xAD, 0x3E, 0x83, 0xEB, 0xED, 0xEF, 0xB9, 0xDF, 0xFE, 0xE7, 0xCA, 0x11, 0x00, 0x01, 0x00, 0x41, 0x74, 0x74, 0x65, 0x6D, 0x70, 0x74, 0x69, 0x6E, 0x67, 0x20, 0x74, 0x6F, 0x20, 0x67, 0x65, 0x74, 0x20, 0x23, 0x00, 0x43, 0x6F, 0x6D, 0x6D, 0x75, };

It is not the same as before...!? but it works very well, so it does not matter here
Now here is the problem for me, i did the uploadTemplete in FP2 for the three templates and they dont match as i want, i mean: i tried putting my finger (id=1) many times, almost twelve times and just two of them matches (2/12), for id=2 (1/19) and for id=3 never...
so i wanted to know about the packets and this is the result for id=1:

uint8_t packet2[] = {0x03, 0x03, 0x59, 0x32, 0x10, 0x01, 0x35, 0x01, 0x8D, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x8B, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xCC, 0x30, 0xCF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFE, 0xFF, 0xFF, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xAA, 0xA6, 0x9A, 0x65, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x54, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, };
uint8_t packet3[] = {0x1F, 0x06, 0x44, 0xFE, 0x49, 0x0D, 0xD9, 0x3E, 0x57, 0x0E, 0x2A, 0x3E, 0x4F, 0x94, 0x6C, 0x7E, 0x6A, 0x96, 0x2A, 0xFE, 0x2F, 0x16, 0x59, 0xFE, 0x10, 0x1A, 0x83, 0xFE, 0x71, 0x2A, 0x2B, 0x9E, 0x5F, 0xAD, 0x80, 0x7E, 0x20, 0xB0, 0xD9, 0x9E, 0x58, 0x35, 0x57, 0xBE, 0x4B, 0xC0, 0x18, 0x1E, 0x34, 0xC0, 0x59, 0x7E, 0x65, 0xC3, 0x18, 0x5E, 0x0C, 0x41, 0x84, 0xDE, 0x20, 0x0E, 0xDB, 0xBF, 0x23, 0x12, 0xC4, 0x5F, 0x37, 0x2C, 0x82, 0xDF, 0x65, 0x34, 0x2C, 0xBF, 0x17, 0xB3, 0xC3, 0xBF, 0x52, 0x3C, 0x40, 0x5F, 0x5B, 0x41, 0x01, 0x5F, 0x32, 0x09, 0x44, 0x9C, 0x31, 0x0F, 0xC3, 0x3C, 0x1D, 0xA8, 0x83, 0x5C, 0x14, 0x2D, 0xC3, 0x3C, 0x68, 0x30, 0x17, 0x5C, 0x22, 0xB7, 0xC2, 0x5C, 0x31, 0x8C, 0x5C, 0x1A, 0x60, 0x8F, 0x95, 0xFA, 0x1A, 0x2B, 0x57, 0xBA, 0x38, 0xBA, 0xC2, 0x1A, };
uint8_t packet4[] = {0x77, 0xC2, 0x16, 0x5A, 0x74, 0x44, 0x04, 0xBA, 0x6D, 0x09, 0xE3, 0x78, 0x67, 0x0E, 0x67, 0xB8, 0x19, 0xB9, 0x1B, 0xF8, 0x2C, 0xBA, 0x19, 0xB8, 0x1C, 0xBB, 0x82, 0xF9, 0x39, 0xB1, 0x56, 0xF7, 0x37, 0x32, 0x13, 0x17, 0x30, 0xB8, 0x1A, 0x37, 0x67, 0x89, 0xD8, 0xD4, 0x66, 0x09, 0x6A, 0xD5, 0x38, 0xB3, 0x99, 0x55, 0x39, 0xB6, 0xD6, 0xB3, 0x38, 0xB7, 0xAB, 0x13, 0x78, 0xC4, 0xC0, 0xFE, 0x5C, 0xCC, 0x59, 0xBE, 0x60, 0xC8, 0x03, 0x70, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, };
uint8_t packet5[] = {0x03, 0x03, 0x5D, 0x2A, 0x28, 0x01, 0x45, 0x01, 0x91, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xCB, 0x7A, 0x71, 0xAF, 0xDD, 0x9A, 0x36, 0x1F, 0xDE, 0x5B, 0x3B, 0x22, 0x5E, 0x1B, 0x38, 0x2A, 0xAB, 0xF8, 0x6B, 0xB2, 0xA1, 0x18, 0x3E, 0x28, 0xAB, 0xF9, 0x4B, 0x28, 0x65, 0x79, 0x43, 0x29, 0x96, 0xD9, 0x58, 0xA7, 0x0F, 0xB6, 0x4B, 0xAA, 0x54, 0x36, 0x71, 0xAA, 0x63, 0x76, 0x5E, 0x2F, 0x8E, 0x96, 0x6B, 0x36, 0x8F, 0x76, 0x38, 0x38, 0x9A, 0x56, 0x56, 0x25, 0xE4, 0x57, 0x5C, 0x28, 0xA3, 0xF7, 0x67, 0x31, 0x0C, 0x57, 0x5B, 0x32, 0xA4, 0x37, 0x6F, 0x39, 0x23, 0x57, 0x6D, 0xBA, 0xA6, 0x57, 0x18, 0xAB, 0x86, 0x74, 0x69, 0x3C, 0xE7, 0xB4, 0x4C, 0xB2, 0xD4, };
uint8_t packet6[] = {0x50, 0xD3, 0x58, 0xB8, 0xA3, 0xB0, 0x1C, 0xAA, 0x9D, 0xCF, 0x5A, 0xBA, 0x65, 0x8F, 0x63, 0x27, 0xA4, 0x6D, 0x27, 0xAE, 0x5F, 0x4D, 0x28, 0xA8, 0x89, 0x4B, 0x24, 0x29, 0x9E, 0x09, 0x27, 0x2A, 0x9F, 0xE7, 0x1E, 0x4B, 0xC4, 0x7F, 0x09, 0x2A, 0x5E, 0xF6, 0x73, 0xC8, 0xD0, 0x75, 0x6B, 0x49, 0x13, 0xB2, 0x3E, 0x54, 0x00, 0xDF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x03, 0x54, 0x35, 0x1C, 0x01, 0x76, 0x01, 0x7F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, };
uint8_t packet7[] = {0x00, 0x00, 0x00, 0xEF, 0xF3, 0xAC, 0xB9, 0xA6, 0x7F, 0xFD, 0xDE, 0xBB, 0xBB, 0xAF, 0xEF, 0xFD, 0x6E, 0xF9, 0xFC, 0x6F, 0xB7, 0x7C, 0xCA, 0x74, 0x43, 0xDD, 0xDF, 0xE5, 0x8E, 0xED, 0x9D, 0xB7, 0xE2, 0x3F, 0xEA, 0xFF, 0x7B, 0x38, 0xDB, 0xF7, 0xDA, 0xEC, 0xB6, 0xAF, 0xFF, 0xBD, 0x5F, 0x3F, 0xFE, 0xFC, 0xDF, 0xEB, 0x4D, 0x78, 0xEF, 0xBF, 0xF5, 0xA9, 0x5A, 0xDB, 0xBB, 0xDF, 0x73, 0xBF, 0x65, 0x3F, 0xDD, 0xFB, 0xFF, 0xF7, 0xE3, 0xEE, 0xED, 0x63, 0x7C, 0xAD, 0x46, 0xDF, 0x7F, 0xFE, 0xEF, 0xD5, 0xAF, 0x5F, 0x2D, 0xFD, 0x3E, 0x9B, 0xAD, 0x3E, 0x83, 0xEB, 0xED, 0xEF, 0xB9, 0xDF, 0xFE, 0xE7, 0xCA, 0x11, 0x00, 0x01, 0x00, 0x41, 0x74, 0x74, 0x65, 0x6D, 0x70, 0x74, 0x69, 0x6E, 0x67, 0x20, 0x74, 0x6F, 0x20, 0x67, 0x65, 0x74, 0x20, 0x23, 0x00, 0x43, 0x6F, 0x6D, 0x6D, 0x75, };

i have tried this many times and sometimes non of them matches, i thought it was mi fingerprint so i bought another one, but i have the same results.

if you have some questions about my procedure just let me know... i dont know if i explain it clearly.
Thank you so much for your help

@hanifizzudinrahman
Copy link
Owner

ok, finally i know your problem

In case that you said "It is not the same as before...!? but it works very well, so it does not matter here", i have had this problem before too. The first packet (uint8_t packet2[]) sometimes comes out, sometimes doesn't come out, but the other packet (packet3 - packet5 in ZFM20) always come out with the right result. (in case of UploadModel)
So, after i analyze it, trying and error, i have a conclusion, all this happens depends on
the baudrate module fingerprint (finger.begin();)
if the baudrate is maximum (115200), possibility error is big. So the solution is, i make delay for each packet. I suggest you to change the delay bigger (>25ms)
and if the baudrate is minimum (9600), i never have the error. But, to change this baudrate, you have to understand my code in (SetSystemParameter_-DANGER-.ino)

So, i think the problem is started from this problem. Because, i have tried what you have tried (in january 2019 :))) ) and the result when ShowTemplate is always right (absolutely when matching is right too)

@MrGorG
Copy link

MrGorG commented Feb 4, 2020

ok, finally i know your problem

In case that you said "It is not the same as before...!? but it works very well, so it does not matter here", i have had this problem before too. The first packet (uint8_t packet2[]) sometimes comes out, sometimes doesn't come out, but the other packet (packet3 - packet5 in ZFM20) always come out with the right result. (in case of UploadModel)
So, after i analyze it, trying and error, i have a conclusion, all this happens depends on
the baudrate module fingerprint (finger.begin();)
if the baudrate is maximum (115200), possibility error is big. So the solution is, i make delay for each packet. I suggest you to change the delay bigger (>25ms)
and if the baudrate is minimum (9600), i never have the error. But, to change this baudrate, you have to understand my code in (SetSystemParameter_-DANGER-.ino)

So, i think the problem is started from this problem. Because, i have tried what you have tried (in january 2019 :))) ) and the result when ShowTemplate is always right (absolutely when matching is right too)

Hi again... I tried what you suggested, first i have tried changing just the delay (500ms) it did not work... then i changed the baurate to 9600 in both fingerprints (DY50)... now the packets are the same in both fingerprints when i upload them, but in the second fingerprint does not match... what do you think is the problem now? thank you so much for your help

@MrGorG
Copy link

MrGorG commented Feb 11, 2020

ok, finally i know your problem
In case that you said "It is not the same as before...!? but it works very well, so it does not matter here", i have had this problem before too. The first packet (uint8_t packet2[]) sometimes comes out, sometimes doesn't come out, but the other packet (packet3 - packet5 in ZFM20) always come out with the right result. (in case of UploadModel)
So, after i analyze it, trying and error, i have a conclusion, all this happens depends on
the baudrate module fingerprint (finger.begin();)
if the baudrate is maximum (115200), possibility error is big. So the solution is, i make delay for each packet. I suggest you to change the delay bigger (>25ms)
and if the baudrate is minimum (9600), i never have the error. But, to change this baudrate, you have to understand my code in (SetSystemParameter_-DANGER-.ino)
So, i think the problem is started from this problem. Because, i have tried what you have tried (in january 2019 :))) ) and the result when ShowTemplate is always right (absolutely when matching is right too)

Hi again... I tried what you suggested, first i have tried changing just the delay (500ms) it did not work... then i changed the baurate to 9600 in both fingerprints (DY50)... now the packets are the same in both fingerprints when i upload them, but in the second fingerprint does not match... what do you think is the problem now? thank you so much for your help

Well, now im working with Serial.begin(115200) and finger.begin(9600) also changed the security Level to 1, Data Packet Lenght 2(128 bytes) in both fingerprints when i uploaded the templates from FP1 to FP2, in the second, just match sometimes here is the output of FP2 (i uploaded three templates 1,2 and 3):

Found ID #2 with confidence of 49
Found ID #1 with confidence of 72
Did not find a match
Did not find a match
Did not find a match
Found ID #1 with confidence of 130
Did not find a match
Did not find a match
Did not find a match
Did not find a match
Did not find a match
Did not find a match
Did not find a match
Found ID #1 with confidence of 33
Found ID #2 with confidence of 36
Found ID #2  with confidence of 38
Found ID #1 with confidence of 44
Found ID #3 with confidence of 27
Found ID #1 with confidence of 44
Did not find a match
Did not find a match
Did not find a match
Did not find a match
Did not find a match
Did not find a match
Found ID #1 with confidence of 32
Found ID #1 with confidence of 40

This is almost the best output i got, if somebody knows how to improve it or if there are something i missed or change, please tell me... thanks

@hanifizzudinrahman
Copy link
Owner

hanifizzudinrahman commented Feb 12, 2020 via email

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants