Hello!!
I want to write the template in a database on my PC.
For this I use the FINGERPRINT_DOWNLOAD instrucion .
As not implemented I 've built and the next .
uint8_t Adafruit_Fingerprint :: setModelToCB1 (void ) {
uint8_t packet [ ] = { FINGERPRINT_DOWNLOAD , 0x01 } ;
writePacket ( theaddress , FINGERPRINT_COMMANDPACKET , sizeof (packet ) +2 , packet ) ;
uint8_t len = getreply (packet ) ;
if (( len ! = 1 ) && (packet [0 ] ! = FINGERPRINT_ACKPACKET ) )
return -1 ;
return packet [ 1];
}
the problem does not work me someone can help me ? or I can write the template on the PC.
Thank You.
finger print scanner (get finger's code)
Moderators: adafruit_support_bill, adafruit
Please be positive and constructive with your questions and comments.
- adafruit_support_rick
- Posts: 35092
- Joined: Tue Mar 15, 2011 11:42 am
Re: finger print scanner (get finger's code)
Please see this thread:
viewtopic.php?f=22&t=33229&hilit=templa ... 60#p359231
viewtopic.php?f=22&t=33229&hilit=templa ... 60#p359231
- BABY
- Posts: 12
- Joined: Mon Apr 06, 2015 5:44 am
Re: finger print scanner (get finger's code)
Hi!!!
I have a problem with the sizes
I run the sheck show_fingerprint_templates.ino.(in sensor have saved nothing but a footprint). I use is the one on page adafruit, I send the file
The result is as follows:
///******///
finger template test
Found fingerprint sensor!
template 0 loaded
template 0 transferring
256 bytes read
0xEF, 0x1, 0xFF, 0xFF, 0xFF, 0xFF, 0x2, 0x0, 0x82, 0x3, 0x1, 0xBC, 0x1F, 0x0, 0x0, 0xC0,
0x6, 0x80, 0x2, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
0x0, 0x80, 0x2, 0x80, 0x2, 0x80, 0x2, 0xC0, 0x6, 0xE0, 0x6, 0xF0, 0xE, 0xFE, 0x3E, 0xFF,
0xFE, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x8D,
0x9D, 0xC0, 0x57, 0xDD, 0xA4, 0x1D, 0xE9, 0x72, 0x1A, 0x94, 0x3A, 0xC1, 0x32, 0x39, 0x58, 0x1F,
0x78, 0x8F, 0x58, 0xD5, 0x1D, 0x36, 0x7, 0x5D, 0xD6, 0x12, 0x96, 0xEF, 0x1, 0xFF, 0xFF, 0xFF,
0x2, 0x82, 0x84, 0x55, 0xF7, 0xB5, 0x31, 0x42, 0x59, 0xF4, 0x91, 0x15, 0x3, 0x9D, 0xB4, 0x56,
0x3B, 0x51, 0x39, 0x4A, 0x80, 0x27, 0x2A, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
0x0, 0x0, 0x0, 0x0, 0x0, 0x13, 0xEF, 0x1, 0xFF, 0xFF, 0x2, 0x82, 0x1, 0x0, 0x80, 0x2,
0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x2, 0xC0, 0xE0, 0xF8, 0x3C, 0x0, 0x0, 0x0,
0x0, 0x0, 0x0, 0x35, 0x0, 0x94, 0x9F, 0x10, 0x1D, 0x40, 0x36, 0xC0, 0x5D, 0x6A, 0x93, 0xDD,
0x5, 0xFA, 0xD, 0x3D, 0xEC, 0x3B, 0x80, 0xB, 0xDA, 0x86, 0x19, 0xAD, 0x78, 0x14, 0x14, 0x5A,
0x3F, 0xC0, 0xB, 0x98, 0xAA, 0xEF, 0x1, 0xFF, 0xFF, 0x8, 0x82, 0xA9, 0xF8, 0xAC, 0x1E, 0x9D,
0xE, 0x42, 0x9A, 0x38, 0xA7, 0x78, 0x88, 0x44, 0x57, 0x1C, 0x17, 0x14, 0x14, 0xA9, 0xD, 0x81,
0x31, 0xC1, 0x14, 0x51, 0x35, 0xF0, 0x3D, 0x51, 0xC1, 0x17, 0x18, 0x16, 0xC0, 0xB9, 0xCE, 0x85,
///******///
Now I want to save the template to your computer and then retrieve the sensor to compare.
With this result as I can use the following method:
///****////
//transfer a fingerprint template from host computer to Char Buffer 2
uint8_t Adafruit_Fingerprint::uploadModel(void) {
uint8_t packet[] = {FINGERPRINT_DOWNLOAD, 0x02};
uint8_t packet2[] = {0x3, 0x1, 0x59, 0x1D, 0x0, 0x0, 0xFF, 0x00, 0xFF, 0xFE, 0xF0, 0xFE, 0xE0, 0x6, 0xE0, 0x6, 0x0, 0x6, 0x0, 0x6, 0x0, 0x2, 0x0, 0x2, 0x0, 0x2, 0x0, 0x6, 0x0, 0x6, 0x0, 0x6, 0x8, 0x76};
uint8_t packet3[] = {0x0, 0x6, 0x0, 0xE, 0x0, 0xE, 0x0, 0x1E, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x30, 0x8E, 0xE2, 0x96, 0x54, 0x19, 0xA4, 0xFE, 0x4, 0xA9};
uint8_t packet4[] = {0x1F, 0xA1, 0xDF, 0x3E, 0x5F, 0x22, 0xA6, 0x7E, 0x68, 0x25, 0xA7, 0xFE, 0xF, 0xB4, 0xDC, 0x9E, 0x2C, 0xBD, 0x19, 0xFE, 0x4C, 0x42, 0x57, 0x1E, 0x26, 0xC2, 0xC2, 0x7E, 0x38, 0x93, 0xE3, 0x7F, 0xF, 0x4D};
uint8_t packet5[] = {0x12, 0x9E, 0xDF, 0x1F, 0x15, 0x25, 0x99, 0x7F, 0x44, 0xA8, 0xAC, 0xBF, 0x34, 0x2F, 0x5B, 0x7F, 0x5C, 0xB2, 0x2A, 0x7F, 0x39, 0x40, 0x80, 0xFF, 0x44, 0x19, 0x9F, 0xBC, 0x4E, 0x95, 0xE3, 0x1D, 0xD, 0x6F};
uint8_t packet6[] = {0x62, 0x18, 0xc, 0xBD, 0x2D, 0x26, 0x7f, 0x5D, 0x26, 0xA7, 0x45, 0x3D, 0x46, 0x13, 0xF, 0x7A, 0x59, 0x13, 0xCD, 0xFA, 0x57, 0xB8, 0x81, 0xB2, 0x5A, 0x41, 0x16, 0x92, 0x42, 0x16, 0x24, 0x93, 0xB, 0x44};
uint8_t packet7[] = {0x5C, 0x39, 0x17, 0x13, 0x5C, 0x96, 0x23, 0x19, 0x54, 0xC1, 0x2B, 0x53, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3, 0xA4};
uint8_t packet8[] = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x24};
uint8_t packet9[] = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x24};
uint8_t packet10[] = {0x3, 0x1, 0x53, 0x17, 0x0, 0x0, 0xFF, 0xFE, 0xFF, 0xFE, 0xFE, 0x1E, 0xFC, 0x2, 0xF8, 0x2, 0xF8, 0x0, 0xF0, 0x0, 0xE0, 0x0, 0xE0, 0x0, 0xE0, 0x0, 0xE0, 0x0, 0xC0, 0x0, 0xC0, 0x2, 0xE, 0x8A};
uint8_t packet11[] = {0xC0, 0x2, 0xC0, 0x2, 0xE0, 0x68, 0xF0, 0x6, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x43, 0x8F, 0x63, 0x96, 0x48, 0x13, 0xA5, 0x3E, 0x6, 0x8D};
uint8_t packet12[] = {0x6F, 0x24, 0x27, 0x1E, 0x6D, 0x32, 0x2A, 0x9E, 0x1F, 0xB5, 0x1C, 0x9E, 0x58, 0x40, 0x56, 0x5E, 0x2F, 0x22, 0x9F, 0x1F, 0x25, 0x24, 0xC6, 0x9F, 0x56, 0xA9, 0x0, 0x1F, 0x42, 0xAE, 0x9B, 0xFF, 0xB, 0xA2};
uint8_t packet13[] = {0x3F, 0xBC, 0x59, 0x7F, 0x48, 0xC0, 0xC0, 0x7F, 0x32, 0xC1, 0x2, 0x9F, 0x56, 0x9A, 0x66, 0x7D, 0x3D, 0x25, 0xDD, 0x9D, 0x37, 0x27, 0x5, 0x7D, 0x54, 0x17, 0x26, 0x13, 0x6B, 0x16, 0xF, 0xB8, 0xC, 0x4D};
uint8_t packet14[] = {0x62, 0x98, 0x23, 0x18, 0x6E, 0x18, 0xA3, 0x99, 0x64, 0x1A, 0x65, 0x99, 0x58, 0x14, 0x4F, 0xB4, 0x36, 0x9B, 0xA0, 0x93, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x8, 0xA};
uint8_t packet15[] = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x24};
uint8_t packet16[] = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x24};
uint8_t packet17[] = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x2A};
writePacket(theAddress, FINGERPRINT_COMMANDPACKET, sizeof(packet)+2, packet);
delay(10);
writePacket(theAddress, FINGERPRINT_DATAPACKET, sizeof(packet2)+2, packet2);
delay(10);
writePacket(theAddress, FINGERPRINT_DATAPACKET, sizeof(packet3)+2, packet3);
delay(10);
writePacket(theAddress, FINGERPRINT_DATAPACKET, sizeof(packet4)+2, packet4);
delay(10);
writePacket(theAddress, FINGERPRINT_DATAPACKET, sizeof(packet5)+2, packet5);
delay(10);
writePacket(theAddress, FINGERPRINT_DATAPACKET, sizeof(packet6)+2, packet6);
delay(10);
writePacket(theAddress, FINGERPRINT_DATAPACKET, sizeof(packet7)+2, packet7);
delay(10);
writePacket(theAddress, FINGERPRINT_DATAPACKET, sizeof(packet8)+2, packet8);
delay(10);
writePacket(theAddress, FINGERPRINT_DATAPACKET, sizeof(packet9)+2, packet9);
delay(10);
writePacket(theAddress, FINGERPRINT_DATAPACKET, sizeof(packet10)+2, packet10);
delay(10);
writePacket(theAddress, FINGERPRINT_DATAPACKET, sizeof(packet11)+2, packet11);
delay(10);
writePacket(theAddress, FINGERPRINT_DATAPACKET, sizeof(packet12)+2, packet12);
delay(10);
writePacket(theAddress, FINGERPRINT_DATAPACKET, sizeof(packet13)+2, packet13);
delay(10);
writePacket(theAddress, FINGERPRINT_DATAPACKET, sizeof(packet14)+2, packet14);
delay(10);
writePacket(theAddress, FINGERPRINT_DATAPACKET, sizeof(packet15)+2, packet15);
delay(10);
writePacket(theAddress, FINGERPRINT_DATAPACKET, sizeof(packet16)+2, packet16);
delay(10);
writePacket(theAddress, FINGERPRINT_ENDDATAPACKET, sizeof(packet17)+2, packet17);
uint8_t len = getReply(packet17);
if ((len != 1) && (packet[0] != FINGERPRINT_ACKPACKET))
return -1;
return packet17[1];
}
////****////
The packet(32) size does not match the template(16) obtained
How I can use?
Did I explain how you can do it?Are you going to give any error?
thank you very much
I have a problem with the sizes
I run the sheck show_fingerprint_templates.ino.(in sensor have saved nothing but a footprint). I use is the one on page adafruit, I send the file
The result is as follows:
///******///
finger template test
Found fingerprint sensor!
template 0 loaded
template 0 transferring
256 bytes read
0xEF, 0x1, 0xFF, 0xFF, 0xFF, 0xFF, 0x2, 0x0, 0x82, 0x3, 0x1, 0xBC, 0x1F, 0x0, 0x0, 0xC0,
0x6, 0x80, 0x2, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
0x0, 0x80, 0x2, 0x80, 0x2, 0x80, 0x2, 0xC0, 0x6, 0xE0, 0x6, 0xF0, 0xE, 0xFE, 0x3E, 0xFF,
0xFE, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x8D,
0x9D, 0xC0, 0x57, 0xDD, 0xA4, 0x1D, 0xE9, 0x72, 0x1A, 0x94, 0x3A, 0xC1, 0x32, 0x39, 0x58, 0x1F,
0x78, 0x8F, 0x58, 0xD5, 0x1D, 0x36, 0x7, 0x5D, 0xD6, 0x12, 0x96, 0xEF, 0x1, 0xFF, 0xFF, 0xFF,
0x2, 0x82, 0x84, 0x55, 0xF7, 0xB5, 0x31, 0x42, 0x59, 0xF4, 0x91, 0x15, 0x3, 0x9D, 0xB4, 0x56,
0x3B, 0x51, 0x39, 0x4A, 0x80, 0x27, 0x2A, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
0x0, 0x0, 0x0, 0x0, 0x0, 0x13, 0xEF, 0x1, 0xFF, 0xFF, 0x2, 0x82, 0x1, 0x0, 0x80, 0x2,
0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x2, 0xC0, 0xE0, 0xF8, 0x3C, 0x0, 0x0, 0x0,
0x0, 0x0, 0x0, 0x35, 0x0, 0x94, 0x9F, 0x10, 0x1D, 0x40, 0x36, 0xC0, 0x5D, 0x6A, 0x93, 0xDD,
0x5, 0xFA, 0xD, 0x3D, 0xEC, 0x3B, 0x80, 0xB, 0xDA, 0x86, 0x19, 0xAD, 0x78, 0x14, 0x14, 0x5A,
0x3F, 0xC0, 0xB, 0x98, 0xAA, 0xEF, 0x1, 0xFF, 0xFF, 0x8, 0x82, 0xA9, 0xF8, 0xAC, 0x1E, 0x9D,
0xE, 0x42, 0x9A, 0x38, 0xA7, 0x78, 0x88, 0x44, 0x57, 0x1C, 0x17, 0x14, 0x14, 0xA9, 0xD, 0x81,
0x31, 0xC1, 0x14, 0x51, 0x35, 0xF0, 0x3D, 0x51, 0xC1, 0x17, 0x18, 0x16, 0xC0, 0xB9, 0xCE, 0x85,
///******///
Now I want to save the template to your computer and then retrieve the sensor to compare.
With this result as I can use the following method:
///****////
//transfer a fingerprint template from host computer to Char Buffer 2
uint8_t Adafruit_Fingerprint::uploadModel(void) {
uint8_t packet[] = {FINGERPRINT_DOWNLOAD, 0x02};
uint8_t packet2[] = {0x3, 0x1, 0x59, 0x1D, 0x0, 0x0, 0xFF, 0x00, 0xFF, 0xFE, 0xF0, 0xFE, 0xE0, 0x6, 0xE0, 0x6, 0x0, 0x6, 0x0, 0x6, 0x0, 0x2, 0x0, 0x2, 0x0, 0x2, 0x0, 0x6, 0x0, 0x6, 0x0, 0x6, 0x8, 0x76};
uint8_t packet3[] = {0x0, 0x6, 0x0, 0xE, 0x0, 0xE, 0x0, 0x1E, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x30, 0x8E, 0xE2, 0x96, 0x54, 0x19, 0xA4, 0xFE, 0x4, 0xA9};
uint8_t packet4[] = {0x1F, 0xA1, 0xDF, 0x3E, 0x5F, 0x22, 0xA6, 0x7E, 0x68, 0x25, 0xA7, 0xFE, 0xF, 0xB4, 0xDC, 0x9E, 0x2C, 0xBD, 0x19, 0xFE, 0x4C, 0x42, 0x57, 0x1E, 0x26, 0xC2, 0xC2, 0x7E, 0x38, 0x93, 0xE3, 0x7F, 0xF, 0x4D};
uint8_t packet5[] = {0x12, 0x9E, 0xDF, 0x1F, 0x15, 0x25, 0x99, 0x7F, 0x44, 0xA8, 0xAC, 0xBF, 0x34, 0x2F, 0x5B, 0x7F, 0x5C, 0xB2, 0x2A, 0x7F, 0x39, 0x40, 0x80, 0xFF, 0x44, 0x19, 0x9F, 0xBC, 0x4E, 0x95, 0xE3, 0x1D, 0xD, 0x6F};
uint8_t packet6[] = {0x62, 0x18, 0xc, 0xBD, 0x2D, 0x26, 0x7f, 0x5D, 0x26, 0xA7, 0x45, 0x3D, 0x46, 0x13, 0xF, 0x7A, 0x59, 0x13, 0xCD, 0xFA, 0x57, 0xB8, 0x81, 0xB2, 0x5A, 0x41, 0x16, 0x92, 0x42, 0x16, 0x24, 0x93, 0xB, 0x44};
uint8_t packet7[] = {0x5C, 0x39, 0x17, 0x13, 0x5C, 0x96, 0x23, 0x19, 0x54, 0xC1, 0x2B, 0x53, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x3, 0xA4};
uint8_t packet8[] = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x24};
uint8_t packet9[] = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x24};
uint8_t packet10[] = {0x3, 0x1, 0x53, 0x17, 0x0, 0x0, 0xFF, 0xFE, 0xFF, 0xFE, 0xFE, 0x1E, 0xFC, 0x2, 0xF8, 0x2, 0xF8, 0x0, 0xF0, 0x0, 0xE0, 0x0, 0xE0, 0x0, 0xE0, 0x0, 0xE0, 0x0, 0xC0, 0x0, 0xC0, 0x2, 0xE, 0x8A};
uint8_t packet11[] = {0xC0, 0x2, 0xC0, 0x2, 0xE0, 0x68, 0xF0, 0x6, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x43, 0x8F, 0x63, 0x96, 0x48, 0x13, 0xA5, 0x3E, 0x6, 0x8D};
uint8_t packet12[] = {0x6F, 0x24, 0x27, 0x1E, 0x6D, 0x32, 0x2A, 0x9E, 0x1F, 0xB5, 0x1C, 0x9E, 0x58, 0x40, 0x56, 0x5E, 0x2F, 0x22, 0x9F, 0x1F, 0x25, 0x24, 0xC6, 0x9F, 0x56, 0xA9, 0x0, 0x1F, 0x42, 0xAE, 0x9B, 0xFF, 0xB, 0xA2};
uint8_t packet13[] = {0x3F, 0xBC, 0x59, 0x7F, 0x48, 0xC0, 0xC0, 0x7F, 0x32, 0xC1, 0x2, 0x9F, 0x56, 0x9A, 0x66, 0x7D, 0x3D, 0x25, 0xDD, 0x9D, 0x37, 0x27, 0x5, 0x7D, 0x54, 0x17, 0x26, 0x13, 0x6B, 0x16, 0xF, 0xB8, 0xC, 0x4D};
uint8_t packet14[] = {0x62, 0x98, 0x23, 0x18, 0x6E, 0x18, 0xA3, 0x99, 0x64, 0x1A, 0x65, 0x99, 0x58, 0x14, 0x4F, 0xB4, 0x36, 0x9B, 0xA0, 0x93, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x8, 0xA};
uint8_t packet15[] = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x24};
uint8_t packet16[] = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x24};
uint8_t packet17[] = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x2A};
writePacket(theAddress, FINGERPRINT_COMMANDPACKET, sizeof(packet)+2, packet);
delay(10);
writePacket(theAddress, FINGERPRINT_DATAPACKET, sizeof(packet2)+2, packet2);
delay(10);
writePacket(theAddress, FINGERPRINT_DATAPACKET, sizeof(packet3)+2, packet3);
delay(10);
writePacket(theAddress, FINGERPRINT_DATAPACKET, sizeof(packet4)+2, packet4);
delay(10);
writePacket(theAddress, FINGERPRINT_DATAPACKET, sizeof(packet5)+2, packet5);
delay(10);
writePacket(theAddress, FINGERPRINT_DATAPACKET, sizeof(packet6)+2, packet6);
delay(10);
writePacket(theAddress, FINGERPRINT_DATAPACKET, sizeof(packet7)+2, packet7);
delay(10);
writePacket(theAddress, FINGERPRINT_DATAPACKET, sizeof(packet8)+2, packet8);
delay(10);
writePacket(theAddress, FINGERPRINT_DATAPACKET, sizeof(packet9)+2, packet9);
delay(10);
writePacket(theAddress, FINGERPRINT_DATAPACKET, sizeof(packet10)+2, packet10);
delay(10);
writePacket(theAddress, FINGERPRINT_DATAPACKET, sizeof(packet11)+2, packet11);
delay(10);
writePacket(theAddress, FINGERPRINT_DATAPACKET, sizeof(packet12)+2, packet12);
delay(10);
writePacket(theAddress, FINGERPRINT_DATAPACKET, sizeof(packet13)+2, packet13);
delay(10);
writePacket(theAddress, FINGERPRINT_DATAPACKET, sizeof(packet14)+2, packet14);
delay(10);
writePacket(theAddress, FINGERPRINT_DATAPACKET, sizeof(packet15)+2, packet15);
delay(10);
writePacket(theAddress, FINGERPRINT_DATAPACKET, sizeof(packet16)+2, packet16);
delay(10);
writePacket(theAddress, FINGERPRINT_ENDDATAPACKET, sizeof(packet17)+2, packet17);
uint8_t len = getReply(packet17);
if ((len != 1) && (packet[0] != FINGERPRINT_ACKPACKET))
return -1;
return packet17[1];
}
////****////
The packet(32) size does not match the template(16) obtained
How I can use?
Did I explain how you can do it?Are you going to give any error?
thank you very much
- Attachments
-
- show.txt
- (2.62 KiB) Downloaded 267 times
- adafruit_support_rick
- Posts: 35092
- Joined: Tue Mar 15, 2011 11:42 am
Re: finger print scanner (get finger's code)
I don't think show_fingerprint_templates.ino works correctly. Instead, you want to follow Don_Jeronimo's procedure from this post:
viewtopic.php?f=22&t=33229&hilit=templa ... 60#p359231
viewtopic.php?f=22&t=33229&hilit=templa ... 60#p359231
- BABY
- Posts: 12
- Joined: Mon Apr 06, 2015 5:44 am
Re: finger print scanner (get finger's code)
hi!!
What are the package headers?
How do I know them? I do not know which are.
You can tell me which are
What are the package headers?
How do I know them? I do not know which are.
You can tell me which are
- adafruit_support_rick
- Posts: 35092
- Joined: Tue Mar 15, 2011 11:42 am
Re: finger print scanner (get finger's code)
Package headers? I don't know what you mean.
I don't know anything about Don_Jeronimo's code. I really can't help you with it.
Are you trying to do fingerprint matching on your computer? You can't do that. Only the sensor has the matching algorithm.
I don't know anything about Don_Jeronimo's code. I really can't help you with it.
Are you trying to do fingerprint matching on your computer? You can't do that. Only the sensor has the matching algorithm.
- vilip
- Posts: 1
- Joined: Tue Nov 28, 2017 3:38 am
Re: finger print scanner (get finger's code)
Hi Rick,
Is there a way to upload template into the sensor ?
Is there a way to upload template into the sensor ?
- adafruit_support_rick
- Posts: 35092
- Joined: Tue Mar 15, 2011 11:42 am
Re: finger print scanner (get finger's code)
Yes, you can do it, but I've never done it, and we don't have any example code for that. Sorry.
- beatricewei129
- Posts: 5
- Joined: Thu Mar 22, 2018 11:47 am
Re: finger print scanner (get finger's code)
Admin, can you pls show me how to do this?what code should I add to the show_fingerprint_templates?thanks.Since I can't operate the SFG software,I need this to download my template.
'Modify the regular fingerprint sketch. Instead of calling fingerFastSearch, make a call to getModel after the call to image2tz. See what you get from that.'
'Modify the regular fingerprint sketch. Instead of calling fingerFastSearch, make a call to getModel after the call to image2tz. See what you get from that.'
- adafruit_support_rick
- Posts: 35092
- Joined: Tue Mar 15, 2011 11:42 am
Re: finger print scanner (get finger's code)
the getModel function doesn't work - you can't use it. I really should take it out of the library.
See here:
viewtopic.php?f=8&t=59186&p=661164#p363968
See here:
viewtopic.php?f=8&t=59186&p=661164#p363968
- beatricewei129
- Posts: 5
- Joined: Thu Mar 22, 2018 11:47 am
Re: finger print scanner (get finger's code)
thanks for your reply.Is there any other ways can make sfg demo software work?It appeared to be open device failed eventho I connected to the correct port.what do u mean by cannot open two device together when I try to connect it?
- adafruit_support_rick
- Posts: 35092
- Joined: Tue Mar 15, 2011 11:42 am
Re: finger print scanner (get finger's code)
How is the fingerprint sensor connected to the PC? Can you post some clear, detailed pictures of your connections?
I don't understand what you mean. Is this an error you're getting from SFGDemo? Can you post a screen shot?beatricewei129 wrote:what do u mean by cannot open two device together when I try to connect it?
- beatricewei129
- Posts: 5
- Joined: Thu Mar 22, 2018 11:47 am
Re: finger print scanner (get finger's code)
hi,it shows open device failed.what should I do?But I managed to enroll fingerprint using adafruit library.
- Attachments
-
- 29939529_1620293971359849_1927165001_n.jpg (51.22 KiB) Viewed 504 times
- adafruit_support_rick
- Posts: 35092
- Joined: Tue Mar 15, 2011 11:42 am
Re: finger print scanner (get finger's code)
So, you have the sensor connected to an Arduino, and the Arduino connected to the computer. right?
And, the sensor works with the enroll and fingerprint sketches, so the connection between the sensor and the Arduino seems to be correct.
What kind of Arduino?
Have you loaded a passthrough sketch on the Arduino, as described on this page?
https://learn.adafruit.com/adafruit-opt ... th-windows
Do you have the right COM port selected in SFGDemo? Should be the same one you're using in Arduino.
Is the Serial Monitor window closed in Arduino? You have to do that.
And, the sensor works with the enroll and fingerprint sketches, so the connection between the sensor and the Arduino seems to be correct.
What kind of Arduino?
Have you loaded a passthrough sketch on the Arduino, as described on this page?
https://learn.adafruit.com/adafruit-opt ... th-windows
Do you have the right COM port selected in SFGDemo? Should be the same one you're using in Arduino.
Is the Serial Monitor window closed in Arduino? You have to do that.
- beatricewei129
- Posts: 5
- Joined: Thu Mar 22, 2018 11:47 am
Re: finger print scanner (get finger's code)
hi,yea I've uploaded blank sketch for my arduino uno,and connected the wire as the instruction given.I still got the same error.Thanks for your help!
Please be positive and constructive with your questions and comments.