Fingerprint User Manual
Fingerprint User Manual
Fingerprint User Manual
User Manual
-1-
I Introduction
Operation Principle
Fingerprint processing includes two parts: fingerprint enrollment and fingerprint matching (the
matching can be 1:1 or 1: N).
When enrolling, user needs to enter the finger two times. The system will process the two time
finger images, generate a template of the finger based on processing results and store the template.
When matching, user enters the finger through optical sensor and system will generate a template of the
finger and compare it with templates of the finger library. For 1:1 matching, system will compare the
live finger with specific template designated in the Module; for 1: N matching, or searching, system will
search the whole finger library for the matching finger. In both circumstances, system will return the
matching result, success or failure.
-2-
II Main Parameters
-3-
III Hardware Interface
3.1 Connecting with upper computer
3.1.1 Serial Communication
-4-
3.1.1.3 Reset time
At power on, it takes about 300ms for initialization. During this period, the Module can't accept
commands for upper computer.
Module initialized immediately after sending a byte (0x55) to the host computer, said module can
already work normally and the receiving host computer instruction.
1. Power supply
Parameter
Item Unit Note
Min Typ Max
Power Voltage (Vin) 3.8 7.0 V Normal working value.
Maximum Voltage 0.3 9.0 V Exceeding the Maximum rating
(Vinmax) may cause permant harm to the
Module.
Operation Current 90 110 130 mA
(Icc)
Peak Current (Ipeak) 130 mA
-5-
IV System Resources
To address demands of different customer, Module system provides abundant resources at users
use.
4.1 Notepad
The system sets aside a 512-bytes memory (16 pages* 32 bytes) for user's notepad, where data
requiring power-off protection can be stored. The host can access the page by instructions of
PS_WriteNotepad and PS_ReadNotepad.
Note: when write on one page of the pad, the entire 32 bytes will be written in wholly covering the
original contents.
4.2 Buffer
There are an image buffer and two 512-byte-character-file buffer within the RAM space of the
module. Users can read & write any of the buffers by instructions.
Note: Contents of the above buffers will be lost at power-off.
ImageBuffer serves for image storage and the image format is 256*288 pixels.
When transferring through UART, to quicken speed, only the upper 4 bits of the pixel is transferred
(that is 16 grey degrees). And two adjacent pixels of the same row will form a byte before the
transferring. When uploaded to PC, the 16-grey-degree image will be extended to 256-grey-degree
format. That's 8-bit BMP format.
Character file buffer, CharBuffer1, CharBuffer2, can be used to store both character file and
template file.
-6-
When upper computer sends command to modify parameter, Module first responses with original
configurations, then performs the parameter modification and writes configuration record into Flash. At
the next startup, system will run with the new configurations.
The Parameter controls the UART communication speed of the Module. Its value is an integer N,
N= [1, 12]. Corresponding baud rate is 9600*N bps.
The Parameter controls the matching threshold value of fingerprint searching and matching.
Security level is divided into 5 grades, and corresponding value is 1, 2, 3, 4 and 5. At level 1, FAR is the
highest and FRR is the lowest; however at level 5, FAR is the lowest and FRR is the highest.
The parameter decides the max length of the transferring data package when communicating with
upper computer. Its value is 0, 1, 2, 3, corresponding to 32 bytes, 64 bytes, 128 bytes, 256 bytes
respectively.
Header START 2 bytes Fixed value of EF01H; High byte transferred first.
-8-
5.2 Check and acknowledgement of data package
Note: Commands shall only be sent from upper computer to the Module, and the Module
acknowledges the commands.
Upon receipt of commands, Module will report the commands execution status and results to upper
computer through acknowledge packet. Acknowledge packet has parameters and may also have
following data packet. Upper computer can't ascertain Module's package receiving status or command
execution results unless through acknowledge packet sent from Module. Acknowledge packet includes 1
byte confirmation code and maybe also the returned parameter.
Confirmation code definition is:
1. 00h: command execution complete;
2. 01h: error when receiving data package;
3. 02h: no finger on the sensor;
4. 03h: fail to enroll the finger;
5. 06h: fail to generate character file due to the over-disorderly fingerprint image;
6. 07h: fail to generate character file due to weakness of character point or over-smallness of
fingerprint image
7. 08h: finger doesn't match;
8. 09h: fail to find the matching finger;
9. 0Ah: fail to combine the character files;
10. 0Bh: addressing PageID is beyond the finger library;
11. 0Ch: error when reading template from library or the template is invalid;
12. 0Dh: error when uploading template;
13. 0Eh: Module can't receive the following data packages.
14. 0Fh: error when uploading image;
15. 10h: fail to delete the template;
16. 11h: fail to clear finger library;
17. 15h: fail to generate the image for the weakness of valid primary image;
18. 18h: error when writing flash;
19. 1Ah: invalid register number;
-9-
VI Module Instruction System
- 10 -
6.1.3 Set Module address: SetAdder
Description: Set Module address.
Input Parameter: New Module address
Return Parameter: Confirmation code (1 byte)
Instruction code: 15H
Command (or instruction) package format:
2 bytes 4bytes 1 byte 2 bytes 1 byte 4 bytes 2 bytes
Header Original Package Package Instruction New Module Checksum
Module address identifier length code address
EF01H xxxx 01H 0007H 15H xxxx sum
Acknowledge package format:
2 bytes 4bytes 1 byte 2 bytes 1 byte 2 bytes
Header New Module Package Package Confirmation Checksum
address identifier length code
EF01H xxxx 07H 0003H xxH Sum
Note: Confirmation code=00H: address setting complete;
Confirmation code=01H: error when receiving package;
- 11 -
6.1.5 Read system Parameter: ReadSysPara
Description: Read Modules status register and system basic configuration parameters ;
Refer to 4.4 for system configuration parameter and 4.5 for system status register.
Input Parameternone
Return ParameterConfirmation code (1 byte) + basic parameter16bytes
Instruction code: 0Fh
Command (or instruction) package format:
2 bytes 4bytes 1 byte 2 bytes 1 byte 2 bytes
Header Module Package Package length Instruction Checksum
address identifier code
EF01H xxxx 01H 0003H 0fH 0013H
Acknowledge package format:
2 bytes 4bytes 1 byte 2 bytes 1 byte 16 bytes 2 bytes
Header Module Package Package Confirmation Basic parameter Checksum
address identifier length code list
EF01H xxxx 07H 0013H xxH See following sum
Table6.2
Note: Confirmation code=00H: read complete;
Confirmation code=01H: error when receiving package;
Order of transmission From low to high byte output, and each byte by beginning a high output.
least significant byte Template Number 7 6 5 4 3 2 1 0
Template index table 0/1 0/1 0/1 0/1 0/1 0/1 0/1 0/1
data
Template Number Template Number 15 14 13 12 11 10 9 8
Template index table 0/1 0/1 0/1 0/1 0/1 0/1 0/1 0/1
data
Most significant byte Template Number 255 254 253 252 251 250 249 248
Template index table 0/1 0/1 0/1 0/1 0/1 0/1 0/1 0/1
data
Note: the index table data "0" on behalf of the corresponding position without a valid template; "1"
represents the corresponding to the location of the effective template.
Description: detecting finger and store the detected finger image in ImageBuffer while
returning successful confirmation code; If there is no finger, returned
confirmation code would be cant detect finger .
Input Parameter: none
Return Parameter: Confirmation code (1 byte)
Instruction code: 01H
Command (or instruction) package format:
- 13 -
2 bytes 4bytes 1 byte 2 bytes 1 byte 2 bytes
Header Module Package Package length Instruction Checksum
address identifier code
EF01H xxxx 01H 0003H 01H 0005H
Acknowledge package format:
2 bytes 4bytes 1 byte 2 bytes 1 byte 2 bytes
Header Module Package Package Confirmation Checksum
address identifier length code
EF01H xxxx 07H 0003H xxH Sum
Note: Confirmation code=00H: finger collection success;
Confirmation code=01H: error when receiving package;
Confirmation code=02H: cant detect finger;
Confirmation code=03H: fail to collect finger;
6.2.2 Open the fingerprint lighting background LED : OpenLED
Description: Open the fingerprint lighting background LED
Input Parameter: none
Instruction code: 50H
Command (or instruction) package format:
2 bytes 4bytes 1 byte 2 bytes 1 byte 2 bytes
Header Module address Package Package length Instruction code Checksum
identifier
EF01H xxxx 01H 0003H 50H 0054H
Acknowledge package format:
2 bytes 4bytes 1 byte 2 bytes 1 byte 2 bytes
Header Module Package Package Confirmation Checksum
address identifier length code
EF01H xxxx 07H 0003H xxH sum
- 14 -
6.2.4 Fingerprint get image free lighting : GetmageFree
Description: Fingerprint get image free lighting
Input Parameter: none
Instruction code: 52H
Command (or instruction) package format:
2 bytes 4bytes 1 byte 2 bytes 1 byte 2 bytes
Header Module address Package Package length Instruction code Checksum
identifier
EF01H xxxx 01H 0003H 52H 0056H
Acknowledge package format:
2 bytes 4bytes 1 byte 2 bytes 1 byte 2 bytes
Header Module Package Package Confirmation Checksum
address identifier length code
EF01H xxxx 07H 0003H xxH sum
Confirmation code =00H: finger collection success;
Confirmation code =01H: error when receiving package;
Confirmation code =02H: sensor has no finger;
Confirmation code =03H: fail to collect finger
- 15 -
2 bytes 4bytes 1 byte 2 bytes 1 byte 1 byte 1 byte 2 bytes 1 byte 2 bytes
Header Module Package Package Instruction Fingerprint Number of times Stored Repeated Checksum
address identifier length code wait time for pressing the sequence registration
fingerprint number mark
EF01H xxxx 01H 0003H 54H xxH 2/3 xxxx 0/1 sum
1. The fingerprint wait time is to wait the longest finger presses each image acquisition, if there is no finger
presses on this parameter setting time, is that there is no finger. The domain values range from 1 to 255, the
higher the value, the more time. The 70 series, usually taken as 54 (36H), corresponding to a time of 3.5 seconds,
the other time intervals are listed in the following table:
Fingerprint wait time Real time intervals Fingerprint wait time Real time intervals
31(1fH) 2 62(3eH) 4
38(26H) 2.5 69(45H) 4.5
46(2eH) 3 77(4dH) 5
54(36H) 3.5 85(55H) 5.5
2. Number of times for pressing the fingerprint is to Press the number of fingers to confirm the registration
fingerprint, only the value of 2 or 3. Value of 2 represents the two press fingerprint recognition, value of 3
represents the 3 press fingerprint recognition.
3. Number of times for pressing the fingerprint is 2, the command will gather two fingerprint to register as a
template, if collect the fingerprint success for the first time will sending a response code 56H
(PS_AUTOLOGIN_OK1), then continue the second fingerprint process. Number of times for pressing the
fingerprint is 3, the command will gather three fingerprint to register as a template, if collect the fingerprint
success for the first time will sending a response code 56H (PS_AUTOLOGIN_OK1), and if collect the
fingerprint success for the second time will sending a response code 57H (PS_AUTOLOGIN_OK2), then
continue the third fingerprint process.
4. Repeated registration mark is set whether to allow repeated registration. 0 representative does not allow
duplicate registration, i.e. if the current registration finger has been registered in the fingerprint database,
then this will no longer register. 1 representative allows repeated registration, namely the current registration
finger regardless of the fingerprint database whether registered, the registration of all.
- 16 -
6.2.7 Auto-Search : AutoSearch
DescriptionSend the instruction, can make the module automatically complete the image acquisition,
generation characteristics and search fingerprint in the fingerprint template library work. To the three command
line " To collect finger image (GenImg)", "To generate character file from image (Img2Tz)", " To search finger
library (Search) " into an instruction to complete.
Input ParameterFingerprint wait time + Start page number + Search number.
Instruction code55H
Command (or instruction) package format:
2 bytes 4bytes 1 byte 2 bytes 1 byte 1 byte 2 bytes 2 bytes 2 bytes
Header Module Package Package Instruction Fingerprint Start page Search Checksum
address identifier length code wait time number number
EF01H xxxx 01H 0008H 55H xxH xxxx xxxx sum
The fingerprint wait time is to wait the longest finger presses each image acquisition, if there is no finger presses
on this parameter setting time, is that there is no finger. The domain values range from 1 to 255, the higher the
value, the more time. The 70 series, usually taken as 54 (36H), corresponding to a time of 3.5 seconds, the other
time intervals are listed in the following table:
Fingerprint wait time Real time intervals Fingerprint wait time Real time intervals
31(1fH) 2 62(3eH) 4
38(26H) 2.5 69(45H) 4.5
46(2eH) 3 77(4dH) 5
54(36H) 3.5 85(55H) 5.5
- 17 -
Acknowledge package format:
2 bytes 4bytes 1 byte 2 bytes 1 byte 2 bytes 2 bytes 2 bytes
Header Module Package Package Confirmation Page number Score Checksum
address identifier length code
EF01H xxxx 07H 0007H xxH PageID MatchScore sum
Description: to download image from upper computer to ImageBuffer. The image must
be 256*288 size in BMP format.
- 18 -
Input Parameter: none
Return Parameter: Confirmation code (1 byte)
Instruction code: 0bH
Command (or instruction) package format:
2 bytes 4bytes 1 byte 2 bytes 1 byte 2 bytes
Header Module address Package Package Instruction Checksum
identifier length code
EF01H xxxx 01H 0003H 0bH 000FH
Acknowledge package format:
2 bytes 4bytes 1 byte 2 bytes 1 byte 2 bytes
Header Module Package Package Confirmation Checksum
address identifier length code
EF01H xxxx 07H 0003H xxH sum
Description: to generate character file from the original finger image in ImageBuffer and
store the file in CharBuffer1 or CharBuffer2.
Input Parameter: BufferID (character file buffer number)
Return Parameter: Confirmation code (1 byte)
Instruction code: 02H
Command (or instruction) package format:
2 bytes 4bytes 1 byte 2 bytes 1 byte 1 byte 2 bytes
Header Module Package Package Instruction Buffer Checksum
address identifier length code number
EF01H xxxx 01H 0004H 02H BufferID sum
Note: BufferID of CharBuffer1 and CharBuffer2 are 1h and 2h respectively. Other values
(except 1h, 2h) would be processed as CharBuffer2.
Acknowledge package format:
- 19 -
2 bytes 4bytes 1 byte 2 bytes 1 byte 2 bytes
Description: To combine information of character files from CharBuffer1 and CharBuffer2 and
generate a template which is stored back in both CharBuffer1 and CharBuffer2.
Input Parameternone
Return ParameterConfirmation code (1 byte)
Instruction code: 05H
Command (or instruction) package format:
2 bytes 4bytes 1 byte 2 bytes 1 byte 2 bytes
Header Module Package Package Instruction Checksum
address identifier length code
EF01H xxxx 01H 0003H 05H 09H
Acknowledge package format:
2 bytes 4bytes 1 byte 2 bytes 1 byte 2 bytes
Header Module Package Package Confirmation Checksum
address identifier length code
EF01H xxxx 07H 0003H xxH sum
Note: Confirmation code=00H: operation success; Confirmation
code=01H: error when receiving package;
Confirmation code=0aH: fail to combine the character files. Thats, the character files
dont belong to one finger.
- 20 -
Note: BufferID of CharBuffer1 and CharBuffer2 are 1h and 2h respectively.
Acknowledge package format:
2 bytes 4bytes 1 byte 2 bytes 1 byte 2 bytes
Header Module Package Package Confirmation Checksum
address identifier length code
EF01H xxxx 07H 0003H xxH sum
- 21 -
End package formathave not subsequent packets:
2 bytes 4bytes 1 byte 2 bytes N bytes 2 bytes
Header Module Package Package Contents Checksum
address identifier length
EF01H xxxx 08H N+2 Template data sum
Note 1: Confirmation code=00H: ready to transfer the following data packet;
Confirmation code=01H: error when receiving package;
Confirmation code=0eH: fail to receive the following data packages.
2: Module shall transfer the following data packet after responding to the upper computer.
3.The value of N(number of bytes of the packet content) is determined by the length of the
packet content, factory package content length is set to 128 bytes.
Description: to store the template of specified buffer (Buffer1/Buffer2) at the designated location of
Flash library.
Input Parameter: BufferID(buffer number)+PageIDFlash location of the template, two bytes with
high byte front and low byte behind
Return Parameter: Confirmation code (1 byte)
Instruction code: 06H
Command (or instruction) package format:
2 bytes 4bytes 1 byte 2 bytes 1 byte 1 byte 2 bytes 2 bytes
Header Module Package Package Instruction buffer Location Checksum
address identifier length code number number
EF01H xxxx 01H 06H 0006H BufferID PageID sum
Note: BufferID of CharBuffer1 and CharBuffer2 are 1h and 2h respectively.
Acknowledge package format:
2 bytes 4bytes 1 byte 2 bytes 1 byte 2 bytes
Header Module Package Package Confirmation Checksum
address identifier length code
EF01H xxxx 07H 0003H xxH sum
Note: Confirmation code=00H: storage success;
Confirmation code=01H: error when receiving package;
Confirmation code=0bH: addressing PageID is beyond the finger library;
Confirmation code=18H: error when writing Flash.
Description: to load template at the specified location (PageID) of Flash library to template buffer
CharBuffer1/CharBuffer2
Input Parameter: BufferID(buffer number)+PageID (Flash location of the template, two bytes with
high byte front and low byte behind)
Return Parameter: Confirmation code (1 byte)Instruction code: 07H
Command (or instruction) package format:
2 bytes 4bytes 1 byte 2 bytes 1 byte 1 byte 2 bytes 2 bytes
Header Module Package Package Instruction buffer Page Checksum
address identifier length code number number
EF01H xxxx 01H 0006H 07H BufferID PageID sum
Note: BufferID of CharBuffer1 and CharBuffer2 are 1h and 2h respectively.
- 22 -
Acknowledge package format:
2 bytes 4bytes 1 byte 2 bytes 1 byte 2 bytes
Header Module address Package Package Confirmation Checksum
identifier length code
EF01H xxxx 07H 0003H xxH sum
Note: Confirmation code=00H: load success;
Confirmation code=01H: error when receiving package;
Confirmation code=0cH: error when reading template from library or the readout template is
invalid;
Confirmation code=0BH: addressing PageID is beyond the finger library;
Description: to delete a segment (N) of templates of Flash library started from the specified
location (or PageID);
Input Parameter: PageID (template number in Flash)+ N (number of templates to be deleted)
Return Parameter: Confirmation code (1 byte)
Instruction code: 0cH
Command (or instruction) package format:
2 bytes 4bytes 1 byte 2 bytes 1 byte 2 bytes 2bytes 2 bytes
Header Module Package Package Instruction Page number of Checksum
address identifier length code number templates to
be deleted
EF01H xxxx 01H 0007H 0cH PageID N sum
Acknowledge package format:
2 bytes 4bytes 1 byte 2 bytes 1 byte 2 bytes
Header Module Package identifier Package Confirmation Checksum
address length code
EF01H xxxx 07H 0003H xxH sum
Note: Confirmation code=00H: delete success;
Confirmation code=01H: error when receiving package;
Confirmation code=10H: failed to delete templates;
Header Module Package Package Instructio n buffer Start page Number Checksum
address identifie length code number number
r
EF01H xxxx 01H 0008H 04H BufferID StartPage PageNum sum
Note: BufferID of CharBuffer1 and CharBuffer2 are 1h and 2h respectively.
Acknowledge package format:
2 bytes 4bytes 1 byte 2 bytes 1 byte 2 bytes 2 bytes 2 bytes
Header Module Package Package Confirmation Page Score Checksum
address identifier length code
EF01H xxxx 07H 0007H xxH PageID MatchScore sum
Note 1: Confirmation code=00H: found the matching finer;
Confirmation code=01H: error when receiving package;
- 24 -
Confirmation c o d e =09H: No ma t c h i n g i n the library (both the PageID and matching
score are 0);
2: The instruction doesnt affect the contents of the buffers.
- 25 -
Dimentions
Dimentions of integral type Moduleunitmm
- 26 -