FPC-AMD3 Development Kit Manual

FPC-AMD3 Development Kit - Manual

FPC-AMD3_DevKit-Manual_A.docx

www.fingerprints.com

1

FPC-AMD3 Development Kit Manual Table of contents Table of contents ....................................................................................................................................................... 2 1 General Description ..................................................................................................................................... 3 2 Setting up the system................................................................................................................................... 3 2.1 Dismounting module processor board and sensor ....................................................................................... 3 2.2 Buttons / LEDs ............................................................................................................................................. 4 2.3 Development board headers ........................................................................................................................ 4 2.4 Header CONFIG ............................................................................................................................................ 4 3 Windows Application FPC Serial Com (version 1.3) ...................................................................................... 5 3.1 Description................................................................................................................................................... 5 3.2 Program Settings ......................................................................................................................................... 6 3.3 Serial PC Settings ........................................................................................................................................ 6 3.4 Basic commands .......................................................................................................................................... 6 3.5 Template handling ....................................................................................................................................... 7 3.6 Additional commands................................................................................................................................... 7 3.7 Command input data .................................................................................................................................... 8 3.8 Custom command ........................................................................................................................................ 8 3.9 Text output Window...................................................................................................................................... 8 3.10 Compact Display Checkbox .......................................................................................................................... 8 4 Source code – Windows Application FPC Serial Com, v 1.3........................................................................... 9 4.1 Build environment: ...................................................................................................................................... 9 4.2 Important files: ............................................................................................................................................ 9 5 Typical Use of Serial Commands ................................................................................................................ 10 5.1 Structure of Requests/Responses.............................................................................................................. 10 5.2 Enrol fingerprint template into FLASH memory ......................................................................................... 10 5.3 Verify fingerprint against stored template in FLASH .................................................................................. 12 5.4 Identification against all templates stored in FLASH .................................................................................. 13 6 How to place your finger on the sensor ...................................................................................................... 14 6.1 Quick tips ................................................................................................................................................... 14 6.2 Finger angle (pitch) .................................................................................................................................... 14 6.3 Finger roll .................................................................................................................................................. 14 6.4 Translation................................................................................................................................................. 15 6.5 Rotation ..................................................................................................................................................... 15 7 Ergonomics – housing design..................................................................................................................... 16 7.1 Sensor design ............................................................................................................................................ 16 7.2 Housing design........................................................................................................................................... 16 7.3 Instructions for finger placement............................................................................................................... 16 8 Contact information ................................................................................................................................... 18

FPC-AMD3_DevKit-Manual_A.docx

www.fingerprints.com

2

FPC-AMD3 Development Kit Manual 1

General Description

Figure 1. Development Kit FPC-AMD3 The development kit FPC-AMD3 consists of the following hardware: Area sensor module FPC-AM3 Ergonomic housing for sensor Development board Power supply unit (5V, 1A) Serial cable (9-pol D-Sub extension cable) CD with documentation and software The area sensor module FPC-AM3 consists of the following hardware: Area sensor FPC1011F Processor board FPC5611

2

Setting up the system

Both the processor board (called FPC5611) and the area sensor with its ergonomic housing are premounted onto the development board on delivery. They can both be dismantled.

1. 2. 3. 4. 5.

2.1

Setup the system: Install FPC Serial Com from CD Connect the serial cable between the development board and any COM-port on your PC. Connect the power supply to the development board. A blue LED indicates that the development board power is ON. Note: There is NO LED indicating that the module is running. Start the Windows application FPC Serial Com

Dismounting module processor board and sensor

The processor board is connected to the development board via board-to-board connector. To dismount, carefully pull it upwards. When mounting the module back onto the development board be sure to position the module correctly: Important! Mount the module correctly! The white connector should be on the RIGHT side. See picture. The sensor is mounted in an ergonomic housing. The entire housing can be dismounted from the development board by unscrewing the 4 screws from the back of the board. The sensor can be connected either to the connector J1 on the development board OR directly to the connector on the module itself. Figure 2. Development board FPC-AMD3_DevKit-Manual_A.docx

www.fingerprints.com

3

FPC-AMD3 Development Kit Manual 2.2

Buttons / LEDs

There are two reset buttons on the development board connected to the module, RST used to reset FPC2020 and FLASH_RST used to reset the flash. Pulling both RST and FLASH_RST low at the same time will generate a system reset of both FPC2020 and the flash. It is important that the FLASH_RST signal is released before or at least no later than the RST signal. If the FLASH_RST signal is released after the RST signal the normal boot sequence from flash will be stopped and the system will wait for a program boot from one of the serial host interfaces, UART or SPI. The LED 3.3V indicates that the development board power is on. There is no LED indicating that the module is running. The INT button is used for wake up the module from sleep mode.

2.3

Development board headers

The development board is equipped with 4 headers for easy access of all signals in the module connectors. UART PIN J6:1 J6:2 J6:3 J6:4 J6:5 J6:6 J6:7 J6:8 J6:9 J6:10

SPI PIN J7:1 J7:2 J7:3 J7:4 J7:5 J7:6 J7:7 J7:8 J7:9 J7:10

2.4

PWR PIN

SIGNAL NAME

DESCRIPTION

VDD GND RS232_TX RS232_RX UART_TX UART_RX NC NC VDD GND

Power supply 3.3 V Signal ground Serial data out (RS232 level) Serial data in (RS232 level) Serial data out (CMOS level) Serial data in (CMOS level) Not connected Not connected Power supply 3.3 V Signal ground

SIGNAL NAME

DESCRIPTION

GPIO PIN

GND SPI_SS_N SPI_MOSI SPI_SCK NC SPI_MISO NC NC GND NC

Signal ground SPI slave select SPI data in SPI clock Not connected SPI data out Not connected Not connected Signal ground Not connected

J9:1 J9:2 J9:3 J9:4 J9:5 J9:6 J9:7 J9:8 J9:9 J9:10

J8:1 J8:2 J8:3 J8:4 J8:5 J8:6

SIGNAL NAME

DESCRIPTION

+3.3 V

Connects the onboard 3,3 V regulator for power supply

+3.3 VREGULATO +3.3 V +3.3 VMODULE NC NC

Shortcuts the shunt resistor used for current measurement. Not connected Not connected

SIGNAL NAME

DESCRIPTION

VDD GND GPIO_0 * GPIO_1 * GPIO_2 * GPIO_3 * GPIO_4 * GPIO_5 * GPIO_6 * GPIO_7 *

Power supply 3.3 V Signal ground Future use Future use Future use Future use Future use Future use Future use Future use

Header CONFIG

J8:1, J8:2 and J8:3, J8:4 are shortcut as factory default. By removing the jumper J8:1 and J8:2 the on board 3.3 V regulator is disconnected and a external supply could be connected to pin J8:1. The external power supply should be within the specification. By removing the jumper J8:3 and J8:4 one can access a current sense resistor (shunt), enabling measurements on the FPC-AM3 supply current (sensor and processor board only). Shunt resistor:

CRL1220 / 0.1 R / ±1% / 0.125 W

Measurement: 100 mA corresponds to 10 mV (adding a larger resistor increases sensitivity) See schematics for more information.

FPC-AMD3_DevKit-Manual_A.docx

www.fingerprints.com

4

FPC-AMD3 Development Kit Manual 3 3.1

Windows Application FPC Serial Com (version 1.3) Description

The purpose of the program FPC Serial Com is to show how a simple Windows application can be used to demonstrate the functionality of the FPC-AM3 module. Most of the commands available in the FPC-AM3 module have their own designated button in this Windows application. The use of FPC Serial Com is helpful for software developers interfacing to the module writing their own application on their own platform, whether it’s a PC, a micro controller or any other environment with serial capability. There are two ways to communicate with FPC-AM3 through FPC Serial Com v1.3: 1. UART via the RS-232 port on the PC, and 2. SPI via an USB2-connected SPI Host Adapter – the Cheetah SPI Host Adapter1. FPC Serial Com includes a text output window, which prints all communication between module and PC. All source code (written in C++) for FPC Serial Com is open and public. It is made with focus on showing the different serial commands and the possibilities of the module. Important: Each button in section “Basic Commands”, “Template Handling” and “Additional commands” equals a serial command sent to the module. The commands are listed in the document “Product Specification”. The name of the button is the same as (or very similar to) the actual serial command name.

Figure 3. Windows Application FPC Serial Com

1

The Cheetah SPI Host Adapter is available through Total Phase, Inc. See www.totalphase.com for details.

FPC-AMD3_DevKit-Manual_A.docx

www.fingerprints.com

5

FPC-AMD3 Development Kit Manual 3.2

Program Settings Hardware: FPC-AM3 is automatically selected and cannot be changed. View mode: There are two available modes, basic and extended. Basic are intended for first time users, and only a few command buttons are visible. The extended view is meant for more advanced use, and contains template handling and identification commands. Port: Choose your COM port from the list for using the UART communication, and USB-SPI if connecting with SPI using the Cheetah SPI Host Adapter. For details regarding the SPI timing requirements, please see the “FPC-AM3 Product Specification”, or the actual implementation in the FPC Serial Com source code. Connect: Use this button at startup to connect to the FPC-AM3. The status field will tell you if the operation was successful. Also use ‘Connect’ every time you change some of the serial settings. After a successful connect, the previously shaded command buttons will become active.

3.3

Serial PC Settings These settings only apply to the PC side of the UART connection - they will not change any settings in the module. The baud rate must match the baud rate of the module, which is set to 9600 baud by default. To set the baud rate for the actual module, use the ‘Set Baud Rate’ command in extended view mode. This will automatically update the baud rate value in “Serial PC Settings”. Note that these settings do not affect the SPI connection speed.

3.4

Basic commands Test hardware 0xD2 This command tests some basic operations in the hardware. It is a good first command to send to see that everything is connected properly. Capture Image 0x80 Captures an image from the sensor and stores it in internal memory. The response will be finger present, or not finger present, which is a measurement done on the image to see if a finger could be detected or not. Upload image 0x90 Upload the image from module to host PC. The image will be automatically stored on the PC in the working directory for FPC Serial Com. Filename is “testImage.raw” and the image format is binary RAW, meaning 30400 bytes, no header, pixels row-wise starting in upper left corner. Note: If baud rate 9600 is used it will take up to almost 30 seconds to upload an image. For faster image upload, first increase the connection speed using the ‘Set Baud Rate’ command. Capture Enrol 0x81 This command captures and enrols a template into working memory (RAM). It first waits for a detection of a finger present before the enrolment is started. The created template can be used for verification using the command “Capture Verify”, or copied to FLASH memory. It can also be uploaded to host using the command “Upload Template” explained in next section. Capture Verify 0x82 This command captures and performs verification. It first waits for a detection of a finger present before the verification starts. A template must be present in working memory (RAM), which is then matched against the fingerprint image captured from the sensor. FPC-AMD3_DevKit-Manual_A.docx

www.fingerprints.com

6

FPC-AMD3 Development Kit Manual

Cancel 0xE0 This command cancels ongoing commands such as: “Capture Verify” and “Capture Enrol”. See command table in the document “FPC-AM3 Product Specification” for a full list of commands that can be cancelled. Note that the command can only be cancelled before the sensor has captured a useful fingerprint image. 3.5

Template handling These commands are used for template handling such as upload to/download from host, and storing template into flash. See document “FPC-AM3 Product Specification” for a full description. Using the command “Upload Template” will store the template on the PC at the working directory for FPC Serial Com. The filename should be entered by the user in the text box called “Template File Name”, see next page.

3.6

Additional commands Some of the Additional Commands are briefly described below. For a full description of all the commands, see “FPC-AM3 Product Specification”. Note that the FPC-AM3 module supports a few commands not demonstrated in the FPC Serial Com application. Capture Identify 0x84 This command captures and performs identification against all stored template in FLASH memory. It first waits for a detection of a finger present before the identification starts. The command returns the slot number for the identified template upon identification success. Capture Enrol Combo 0x89 + 0x85 This is an example of how two commands could be combined to give new functionality. It behaves similarly to the regular Capture Enrol command, but gives feedback to the user that the finger can be removed from the sensor. Set Baud Rate 0xD0 Use this button to change the UART baud rate of the module. Before the command is sent to the module, a separate dialog window appears where the desired baud rate should be selected. When executed, the “Serial UART PC Setting – Baud Rate” will be automatically updated. A new baud setting will be lost if the module is powered off, in which case it will return to the default baud rate. Upgrade Firmware 0xC1 This command can be sent to the module to upgrade the firmware stored in the flash memory. Run Custom Program 0xE6 This command can only be used if the module is somehow started with a corrupt flash – i.e. if it starts in Boot Mode. By using this program, the host can download an appropriate program into the code memory, typically an Installer program that will help restore the contents of the flash memory. The main application does not handle this command. This command is for advanced use only, and should normally not be necessary to use. Upload/Download All Templates These commands are other examples of how single commands can be combined to given new functionality. When the Upload All Templates command is issued, FPC Serial Com uploads all templates in the FPC-AM3 module, starting with template in slot 0, and ending with the slot number stated in the ‘FLASH Slot’ text box. Note that all templates are downloaded and stored in the working directory of the PC, even if they not contain a valid template. (A valid template for FPC-AM3 has a 0x01 as its first byte.) The Download All command works in a similar way. FPC-AMD3_DevKit-Manual_A.docx

www.fingerprints.com

7

FPC-AMD3 Development Kit Manual 3.7

Command input data FLASH slot All the commands containing the word FLASH uses the box ‘FLASH Slot’ as input. For example, ‘Delete Slot in FLASH’ deletes the template in the slot nr indicated in the ‘FLASH Slot’ box. Template file name text box Enter the filename of the template that should be uploaded to/downloaded from the PC. The file extension is .TPL and is added automatically. The file will be put in the in the working directory for FPC Serial Com.

3.8

Custom command Send It is possible to enter any HEX coded command and send it to the module. For the module to handle the command properly, the sent HEX command must follow the general structure of the FPC-AM3 commands. The response from the module will be shown in the text output window, as with any other command.

3.9

Text output Window HEX / Char You can view the communication in two modes, as HEX and as characters. HEX mode can be used for analysing the serial communication on a byte level. Character mode is useful mostly with the firmware version command, since the response from that command is a string containing firmware name and version.

3.10

Compact Display Checkbox The ‘Compact Disp.’ checkbox is filled by default. It is used to limit the length of the (often very large) payload request/response strings that are written in the output window to a single line. In compact display mode, it is simpler to get an overview of the communication with the module.

FPC-AMD3_DevKit-Manual_A.docx

www.fingerprints.com

8

FPC-AMD3 Development Kit Manual 4

Source code – Windows Application FPC Serial Com, v 1.3

The source code structure is designed to be easy to understand, rather than optimized for high performance. The goal is that the reader of this document should be able to extract the interesting parts of this source code, and reuse it in his or her own projects.

4.1

Build environment:

This project is built using MS Visual Studio 6.0, and uses the C++ language together with the MFC package.

4.2

Important files:

ComDlg.h/.cpp These files include most of the dialog handling, and the pushbutton functions. If you want to change the look of this Windows program, this is where you should do it. This is not a useful file for implementers aiming at an embedded environment. SerialCommands.h/.cpp This is where all the UART serial commands are actually sent and received. Look here if you want to know exactly how a command is implemented. The commands are independent of each other, so you can pick your favourites to implement on your platform. SPICommands.h/.cpp This class is very similar to the UART class above, but it instead implements the handling of the SPI commands. It uses the helper class spi_interface.h/cpp to manage the details of sending/receiving the actual data. Definitions.h Contains the command byte values for the module. CRC.cpp / CRC.h This is how the CRC-32 checksum function is implemented in the module. This must be done in the same way when sending data to the module. Use these files as reference code for your own CRC function. You are free to use this file as it is as long as you comply with the disclaimer at the head of CRC.cpp. Note that FPC Serial Com does not check the CRC value of each received data, but simply accepts the data immediately. It is up to the host to implement the proper CRC check, given the quality of the transmission line and other working conditions. The FPC-AM3 module always has a an active CRC-check, unless specifically stated.

FPC-AMD3_DevKit-Manual_A.docx

www.fingerprints.com

9

FPC-AMD3 Development Kit Manual 5 5.1

Typical Use of Serial Commands Structure of Requests/Responses

The general structure that all commands follow is described in detail in the “FPC-AM3 Product Specification”. To summarize it, each request consists of 6 bytes + a possible payload, and the response consists of 4 bytes + a possible payload. If a payload is transmitted, it must also be followed by a 4 byte CRC checksum. The first byte in both a request and a response must be 0x02. 5.2

Enrol fingerprint template into FLASH memory

Typically, there are many different ways to perform a given action, giving more or less control to the host. In this example, a fingerprint image is captured from the area sensor and from this image a template is created. The template is stored in FLASH memory and used in the next example when performing a verification. The FPC-AM3 module has non-volatile FLASH memory in which up to 991 templates can be stored. There are 3 ways, (a) ,(b), and (c) of enrolling a template into FLASH:

(a) The command API_CAPTURE_AND_ENROL_FLASH performs both all the desired steps in a single command. In this example the template is stored in slot number 0x08, which is sent in the IDX-LSB byte (the second byte in the request). The command sequence looks like this:

STEP 1

SEND COMMAND

RESPONSE STRUCTURE

API_CAPTURE_AND_ENROL_FLASH

API_ENROL_OK

0x02 0x08 0x00 0x93 0x00 0x00

0x02 0x06 0x00 0x00

Table 1

Capture and Enrol directly to FLASH

(b) The command API_CAPTURE_AND_ENROL_RAM performs both image capture and creation of a template. This means that the module loops image capture from the sensor until a finger is present on the sensor. It then creates the template and returns the result of the command. The template creation takes approximately 5 seconds. The next step is to copy the template from RAM to FLASH using the command COPY_TEMPLATE_FROM_RAM_TO_FLASH. In this example the template is stored in slot number 0x08. The command sequence looks like this:

STEP 1

2

SEND COMMAND

RESPONSE STRUCTURE

API_CAPTURE_AND_ENROL_RAM

API_ENROL_OK

0x02 0x00 0x00 0x81 0x00 0x00

0x02 0x06 0x00 0x00

API_COPY_TEMPLATE _RAM_TO_FLASH

API__SUCCESS

0x02 0x08 0x00 0xA2 0x00 0x00

0x02 0x01 0x00 0x00

Table 2

Capture and Enrol and copy to FLASH

FPC-AMD3_DevKit-Manual_A.docx

www.fingerprints.com

10

FPC-AMD3 Development Kit Manual (c) The third way is to poll the capture command from host and then issue enrol command when the finger is present on the sensor. In this case it is up to the host to determine when to start the enrol (after checking the response from the capture command which returns finger present value). The next step is to copy the template from RAM to FLASH using the command COPY_TEMPLATE_FROM_RAM_TO_FLASH. In this example the template is stored in slot number 0x08. The command sequence looks like this:

STEP 1

2

3

SEND COMMAND

RESPONSE STRUCTURE

API_CAPTURE_IMAGE

API_FINGER_PRESENT

0x02 0x00 0x00 0x80 0x00 0x00

0x02 0x03 0x00 0x00

API_ENROL_RAM

API_ENROL_OK

0x02 0x00 0x00 0x85 0x00 0x00

0x02 0x06 0x00 0x00

API_COPY_TEMPLATE_FROM_RAM_TO_FLASH

API__SUCCESS

0x02 0x08 0x00 0xA2 0x00 0x00

0x02 0x01 0x00 0x00

Table 3

Poll Capture, then Enrol and copy to FLASH

FPC-AMD3_DevKit-Manual_A.docx

www.fingerprints.com

11

FPC-AMD3 Development Kit Manual 5.3

Verify fingerprint against stored template in FLASH

In this example the fingerprint image is captured from the area sensor and then verified against a template stored in FLASH. When performing verification one has to assign which template FLASH slot to verify against. This is done by sending slot index in the IDX-LSB byte of the request structure. Similar to the previous example there are 2 ways, (a) and (b), of verifying against a template in FLASH: (a) The command API_CAPTURE_AND_VERIFY_FLASH performs both image capture and verification against stored template in FLASH, all in one command. This means that the module loops capture from sensor until a finger is present on the sensor. It then matches this fingerprint image against the stored template and returns result of the matching. In this example slot number 0x08 contains the stored template. The command sequence looks like this: (Note that if an incorrect finger is used for verification, the response will instead be API_VERIFICATION_FAILED.)

STEP 1

SEND COMMAND

RESPONSE STRUCTURE

API_CAPTURE_AND_VERIFY_FLASH

API_VERIFICATION_OK

0x02 0x08 0x00 0x83 0x00 0x00

0x02 0x04 0x00 0x00

Table 4

Capture and Verify against stored template in FLASH

(b) The other way is to poll the capture command from host and then issue verify command when the finger is present on the sensor. In this case it is up to the host to determine when to start the verification (after checking the response from the capture command which returns finger value). Using the command API_ VERIFY_FLASH it then matches this fingerprint image against the stored template and returns result of the matching. In this example slot number 0x08 contains the stored template. The command sequence looks like this:

STEP 1

2

SEND COMMAND

RESPONSE STRUCTURE

API_CAPTURE_IMAGE

API_FINGER_PRESENT

0x02 0x00 0x00 0x80 0x00 0x00

0x02 0x03 0x00 0x00

API_VERIFY_FLASH

API_VERIFICATION_OK

0x02 0x08 0x00 0x87 0x00 0x00

0x02 0x04 0x00 0x00

Table 5

Poll Capture, then Verify against stored template in FLASH

FPC-AMD3_DevKit-Manual_A.docx

www.fingerprints.com

12

FPC-AMD3 Development Kit Manual 5.4

Identification against all templates stored in FLASH

In this example the fingerprint image is captured from the area sensor and then identified against all templates stored in FLASH. Similar to the earlier examples there are 2 ways, (a) and (b), of performing identification: (a) The command API_CAPTURE_AND_IDENTIFY_FLASH performs both image capture and identification against all templates stored in FLASH, all in one command. This means that the module loops capture from sensor until a finger is present on the sensor. It then matches this fingerprint image against all stored templates and returns result of the identification. In this example the fingerprint image matches the template stored in slot number 0x08. The slot number is sent as a two byte payload (LSB first), followed by a four byte CRC checksum, giving a total of 10 bytes as response. The command sequence looks like this:

STEP

SEND COMMAND

RESPONSE STRUCTURE

API_CAPTURE_AND_IDENTIFY_FLASH

1

0x02 0x00 0x00 0x84 0x00 0x00

API_IDENTIFY_OK 0x02 0x0F 0x02 0x00 0x08 0x00 0x52 0x43 0x48 0x8A

Table 6

Capture and Identify against all stored templates in FLASH

(b) The other way is to poll the capture command from host and then issue identify command when the finger is present on the sensor. In this case it is up to the host to determine when to start the identification (after checking the response from the capture command which returns finger present value). Using the command API_ IDENTIFY_FLASH it then matches this fingerprint image against all stored templates and returns result of the identification. In this example the fingerprint image matches the template stored in slot number 0x08. The slot number is sent as data bytes, this means that payload counter and CRC check sum is used giving a total of 10 bytes as response. The command sequence looks like this:

STEP 1

2

SEND COMMAND

RESPONSE STRUCTURE

API_CAPTURE_IMAGE

API_FINGER_PRESENT

0x02 0x00 0x00 0x80 0x00 0x00

0x02 0x03 0x00 0x00

API_ IDENTIFY_FLASH 0x02 0x00 0x00 0x88 0x00 0x00

API_IDENTIFY_OK 0x02 0x0F 0x02 0x00 0x08 0x00 0x52 0x43 0x48 0x8A

Table 7

Poll Capture, then identify against all stored templates in FLASH

FPC-AMD3_DevKit-Manual_A.docx

www.fingerprints.com

13

FPC-AMD3 Development Kit Manual 6

How to place your finger on the sensor

This section describes how to place the finger on the sensor to get an accurate, high quality image of the fingerprint. It also points out the most common user difficulties when performing enrolment and verification.

6.1

Quick tips

To improve enrolment and verification performance, these three factors should be considered each time the finger is placed on the sensor: 1. 2. 3.

6.2

Repeatability: The finger should preferably be placed in the same position every time. The image should contain as much of the fingerprint core area as possible. The pressure has to be high enough to create a satisfying contact interface between the finger and the sensor surface.

Finger angle (pitch)

Pitch occurs when only the upper part of the fingertip is placed on the sensor, as if the user points at something. When placing the finger with a high angle, only the tip is captured. The fingertip does not contain enough information for verification. It is very important that the angle between the finger and the sensor is as small as possible.

Figure 4. Correct finger angle

6.3

Figure 5. Incorrect finger angle

Finger roll

Finger roll is defined as an incorrect placement regarding rolling the finger in the sideway directions. As the situation above (finger pitch), the fingerprint recognition system needs to receive enough information, preferably as much of the fingerprint core area as possible. If the finger is rolled, less useful information is received, degrading the matching performance. Figure 6. Incorrect finger roll

FPC-AMD3_DevKit-Manual_A.docx

www.fingerprints.com

14

FPC-AMD3 Development Kit Manual 6.4

Translation

Translation can be defined as the difference in horizontal and vertical distance from the enrolled template to the verification occasion. The algorithm can handle some translation, but large translations should be avoided for best performance.

Figure 7. Example of good and bad finger placement

6.5

Rotation

Rotation is defined as the angle difference between an imagined centreline of the finger from one occasion to another. The algorithm allows some variation from the enrolment occasion, but in general, rotation should be avoided as much as possible. Figure 5. Example of rotation of finger Figure 8. Example of good and bad finger rotation

FPC-AMD3_DevKit-Manual_A.docx

www.fingerprints.com

15

FPC-AMD3 Development Kit Manual 7

Ergonomics – housing design

The purpose of good ergonomics is to guide the finger on to the sensor so that as much information as possible of the fingerprint pattern will be captured. Good ergonomics also helps the user to place the finger in the same position every time that will further increase the overall performance.

7.1

Sensor design

The area immediately surrounding the active sensor chip will guide the finger to an optimal placement. The area sensor FPC1011F has a package with a frame that is designed to position the finger correctly onto the sensor chip.

7.2

Housing design

It is important that the user knows how to place his / her finger on the sensor. A great majority of the false rejections are caused by ‘bad’ finger placements. Creating a housing around the sensor that guides the finger will improve overall performance drastically. In the development kit the sensor is mounted into a plastic housing that has a good shape for positioning the finger. This design is free to use the 3D CAD model for the plastic housing is available on the development kit CD.

Figur 9 Ergonomic sensor frame

Figure 10. Ergonomic reference housing Important: The housing must NOT be made of conductive material if it is in direct contact with the sensor frame. The reason is that the sensor frame transmits a pulse voltage into the finger during the capture of an image. If this voltage is transferred into the rest of the housing the sensor read signal will be very weak. If the housing is made of conductive material one has to ensure that the sensor is isolated from the housing and that the finger does not touch the conductive part of the housing during image read.

7.3

Instructions for finger placement

Simple and clear instructions on how to use the fingerprint sensor will take care of the most common “finger placement errors”. A simple instruction sheet example can be seen in the right figure.

Figure 17. Instruction for finger placement

FPC-AMD3_DevKit-Manual_A.docx

www.fingerprints.com

16

FPC-AMD3 Development Kit Manual

Figur 12 Schematic development board FPC5601 FPC-AMD3_DevKit-Manual_A.docx

www.fingerprints.com

17

FPC-AMD3 Development Kit Manual

8

Contact information

Main office

Telephone

Web site

Fingerprint Cards AB P.O. Box 2412 SE-403 16 Göteborg Sweden

+46 (0)31 60 78 20

www.fingerprints.com

Fax

E-mail

+46 (0)31 13 73 85

[email protected] [email protected]

Visiting address Västra Hamngatan 8

FPC-AMD3_DevKit-Manual_A.docx

www.fingerprints.com

18