Quantcast
Channel: SparkFun Electronics Comments
Viewing all articles
Browse latest Browse all 44542

bboyho on SEN-11792 - Fingerprint Scanner - TTL (GT-511C3)

$
0
0

Fingerprint Scanner - TTL GT511-C3

We don’t sell the cable with the GT-511C3 fingerprint scanner https://www.sparkfun.com/products/11792. You would need to get the 4 wire JST SH jumper cable separately https://www.sparkfun.com/products/10359. There is more than one way to create a connection between the fingerprint scanner and your system. For a more secure connection with the thin gauged wire, I recommend modifying the cable. Any loose connections can have issues powering the sensor and sending reliable data. Check below for more information:

Serial UART Connection w/ 4 Wire JST SH Cable

For a secure connection, I recommend soldering the ends of the wire to some header pins [like these https://www.sparkfun.com/products/116 ] so that the connection is not loose when inserting it into a standard female header sockets on an FTDI or the RedBoard/Arduino Uno. This will provide easy access to the small 4-pin JST-SH connector that is on the fingerprint scanner. After checking the connections of the scanner in the datasheet, I soldered connections from the JST -SH connector labeled J2 from the scanner to the header pins. I used some heat shrink in order to use it with the FTDI to reinforce the solder joint. As a note, make sure to remove the JST-SH SMD connector that is on the 4-wire jumper wire assembly. This is the same connector that is on the fingerprint scanner. You should be able to remove the connector easily with your hands without cutting any of the assembly off. The connections with the header pins are based on the footprint of the 3.3V FTDI basic breakout https://www.sparkfun.com/products/9873 w/ a mini-B cable https://www.sparkfun.com/products/11301 :

Pin #    Fingerprint Scanner    <-> FTDI 3.3V
1          UART_TX (3.3V TTL)   <->   RX
2          UART_RX (3.3V TTL)   <->   TX
3          GND                  <->   GND
4          Vin (3.3V~6V)        <->   3.3V

Note: If you were using the JST-SH cable, you would be wiring the black wire to pin 1 (next to the notch indicating the polarity on the fingerprint scanner to the Rx pin of your FTDI, For an example of the modified cable assembly, I suggest checking out the images from our Google drive:

https://drive.google.com/open?id=0B0jwgLkjMWzDfnktUkt5ekQxQi1TcXk3QnhMN2J0Q3VXT2Y4NXRZdG9wa05EemZjY0dCazg

Demo Software Development Kit (SDK)

For basic operation with the demo software, I recommend checking out the demo software that is linked in the documents section of the product page. Each demo software is unique to that version of the fingerprint scanner and it will not work with the other versions. After connecting the fingerprint scanner to the FTDI, I was able to utilize all of the features as stated in the datasheet. These features in the demo software are based on the protocol commands.

To operate on a computer using the SDK, just open the SDK_DEMO.exe executable, select the COM port that the FTDI enumerated to from the serial port number’s drop down menu, and click on the Open button. You would need to enroll your finger 3 times for the ID before the scanner can save it as a template.

Example Code for Arduino

If you were using a microcontroller with the fingerprint scanner, you would need to write code based off of the demo software and the protocol commands. Luckily, there was someone in the community that wrote some example code to blink the blue LED, enroll, and identify the fingerprint that was saved in a template. It is posted in a GitHub Repository https://github.com/sparkfun/Fingerprint_Scanner-TTL .This code works with the GT511C3, GT511C1, and GT511C1R. This code is incomplete and would require more code to utilize all the features of the fingerprint scanner like in the SDK. Here are the connections that you would need to make using a bi-directional logic level converter https://www.sparkfun.com/products/12009:

Pin #    Fingerprint Scanner     <-> Logic Level Converter <-> Arduino Uno
1          UART_TX (3.3V TTL)    <->      LV4 <-> HV4            <->  RX (pin 4)
2          UART_RX (3.3V TTL)    <->       LV1 <-> HV1           <->  TX (pin 5)
3          GND                    <->       GND <-> GND         <->     GND
4          Vin (3.3V~6V)         <->           HV                <->      5V
                                              LV                    <->     3.3V

Software Serial with the Arduino Mega 2560

The demo code was designed for the Atmega328P on the Arduino Uno. If you were using it with an Arduino Mega2560, you would need to re-configure the software serial pin definitions. The reason why is because not all the pins on the Arduino Mega can support change interrupts for a serial Rx pin as stated in the limitations =>https://www.arduino.cc/en/Reference/SoftwareSerial. Just change this section of code on line 18:

 FPS_GT511C3 fps(4, 5); //software serial pins for Arduino's / Atmega328P's

to

FPS_GT511C3 fps(10, 11); //software serial acceptable pin for the Arduino Mega

Troubleshooting

Scanner Not Recognizing your Fingers?

There have been issues trying to enroll with the Arduino example code. This is usually due to fingers being dry and not having good contact on the scanner. The timing of your finger on the scanner is a little tricky too. I had to try enrolling a few times before it was able to enroll or identify my finger. This is common with any fingerprint scanner like the one that is on my smartphone. Try re-enrolling your finger.

Hardware Connections

Also, make sure that there are no loose connections. The last thing to check is the connection between your scanner and Arduino. Each of the fingerprint scanners use the same command protocols so the Arduino example code in the Instructables tutorial can be used for any of the scanners.


Viewing all articles
Browse latest Browse all 44542

Trending Articles