You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The [SparkFun Fingerprint Sensor - FPC2534 Pro]() is a small, highly capable and robust fingerprint sensor that can easily be integrated into virutally any application. Based off the AllKey Biometric System family from Fingerprints Cards (FPC), the FPC2534AP delivers incredible functionality in a small, compact formfactor.
15
+
The [SparkFun Fingerprint Sensor - FPC2534 Pro]() is a small, highly capable and robust fingerprint sensor that can easily be integrated into virutally any application. Based off the AllKey Biometric System family from Fingerprints Cards (FPC), the FPC2534AP delivers incredible functionality in a small, compact formfactor.
16
16
17
17
## Functionality
18
18
19
-
The SparkFun Fingerprint Sensor - FPC2534 Pro is accessable via a variety of interfaces, including I2C and UART, which are supported by this library.
19
+
The SparkFun Fingerprint Sensor - FPC2534 Pro is accessable via a variety of interfaces, including I2C and UART, which are supported by this library.
20
20
21
21
This library provides a message-based, easy to use interface that enables fingerprint biometric authentication and simple finger-based navigation. Specificatlly, the FPC2534AP provides:
22
22
23
-
- Fingerprint enrollment - adding a fingerprint to the sensor
23
+
- Fingerprint enrollment - adding a fingerprint to the sensor
24
24
- Fingerprint template management - managing recorded fingerprints
25
25
- Fingerprint matching/indentification for biometric authentication
26
26
- Trackpad like functionalality for simple, finger-based navigation
27
27
- Application integration via a variety of communication methods
28
28
29
29
### Communication
30
30
31
-
The operation of the FPC2534AP is performed by a messaging protocol implemented on the device. A client application sends message requests to the sensor and recieves responses to the request made.
31
+
The operation of the FPC2534AP is performed by a messaging protocol implemented on the device. A client application sends message requests to the sensor and recieves responses to the request made.
32
32
33
33
To support integration and messaging, the FPC2534AP provides support for four (4) different communication implementations. These are:
34
34
@@ -53,18 +53,18 @@ In addition to the communication method selected, the FPC2534AP requires additio
53
53
54
54
## Library
55
55
56
-
Unlike a majority of sensors and their associated libraries which are synchronous function calls - a function/method call returns a requested value or performs a specific action - the FPC2534AP operates using a messaging methodlogy - sending messages to the client as actions occur on the device, or in reponse to earlier requests.
56
+
Unlike a majority of sensors and their associated libraries which are synchronous function calls - a function/method call returns a requested value or performs a specific action - the FPC2534AP operates using a messaging methodlogy - sending messages to the client as actions occur on the device, or in reponse to earlier requests.
57
57
58
58
Since messaging methodology is used by the FPC2534AP, this library makes makese use of the following implementation pattern:
59
59
60
60
- User provided callback functions that the library calls when a specific message is recieved from the library (like when a finger is pressed on the sensor).
61
61
- A process message method that is called to process the next available message from the sensor if one is available. This method is called within your applications main processing loop (for Arduino, this is the `loop()` function).
62
62
63
-
While this methodlogy is unique to the when compaired to other libraries, it fits well with the event driven nature of the FPC2534AP fingerprint sensor.
63
+
While this methodlogy is unique to the when compaired to other libraries, it fits well with the event driven nature of the FPC2534AP fingerprint sensor.
64
64
65
65
### Using the Library
66
66
67
-
The first step to using the library is selected the method used to communicate with the device. The library supports I2C on select platforms, or UART (a Serial interface in Arduino). Once selected, and device connected as outlined in the hookup guide for theSparkFun Fingerprint Sensor - FPC2534 Pro. The type of connection depends on the method used to communicate with the device.
67
+
The first step to using the library is selected the method used to communicate with the device. The library supports I2C on select platforms, or UART (a Serial interface in Arduino). Once selected, and device connected as outlined in the hookup guide for theSparkFun Fingerprint Sensor - FPC2534 Pro. The type of connection depends on the method used to communicate with the device.
68
68
69
69
#### Using I2C (Qwiic)
70
70
@@ -90,7 +90,7 @@ An example of calling the begin method:
90
90
91
91
At this point, the sensor is ready for normal operation.
92
92
93
-
##### A note on "pinging" the FPC2534 sensor
93
+
##### A note on "pinging" the FPC2534 sensor
94
94
95
95
Often, to determine if a sensor is available on the I2C bus, the bus is queried at the address for the device (a simple "ping"). In arduino this often looks like:
96
96
@@ -101,7 +101,7 @@ Often, to determine if a sensor is available on the I2C bus, the bus is queried
101
101
Serial.println("The Touch Sensor FPC2534 is available");
102
102
```
103
103
104
-
Developing with the sensor has shown that once the sensor is "pinged", it enters an unknown state. To ensure proper device operation, a `reset()` of the device is needed after a `ping` operation is performed.
104
+
Developing with the sensor has shown that once the sensor is "pinged", it enters an unknown state. To ensure proper device operation, a `reset()` of the device is needed after a `ping` operation is performed.
105
105
106
106
> [!NOTE]
107
107
> The I2C (qwiic) interface for the SparkFun Fingerprint Sensor - FPC2534 Pro board is currently only supported on ESP32 and Raspberry RP2 (RP2040, RP2350) boards. The I2C Implemention of the FPC2534 device performs a dynamic payload transmission that is not supported by the Arduino Wire library. Because of this, a custom implementation is provided by this library for the ESP32 and RP2 platforms.
@@ -123,22 +123,22 @@ Configure the following settings on the UART/Serial connection being used:
123
123
| Config | SERIAL_8N1|
124
124
| Read Buffer Size | 512|
125
125
126
-
127
126
> [!NOTE]
128
127
> Due to the amount of information sent by the fingerprint sensor, the default size of the internal buffer used by Arduino Serial objects is rapidly exceeded. To prevent this, the buffer size must be be increased before intializing the FPC2534AP device.
129
-
>
128
+
>
130
129
> To increase the buffer size when using a Raspberry pi RP2 Microcontroller:
130
+
>
131
131
> ```c++
132
132
> Serial1.setFIFOSize(512);
133
133
>```
134
+
>
134
135
> On an ESP32:
136
+
>
135
137
> ```c++
136
138
> Serial.setRxBufferSize(512);
137
139
> ```
138
140
139
-
140
-
To initialize the device, the Serial object used to communicate with the device is passed into the begin call.
141
-
141
+
To initialize the device, the Serial object used to communicate with the device is passed into the begin call.
142
142
143
143
An example of calling the begin method:
144
144
@@ -147,4 +147,3 @@ An example of calling the begin method:
147
147
```
148
148
149
149
At this point, the sensor is ready for normal operation.
0 commit comments