navigationGo.pngQuick Navigation
allprojects32.pngAll projects
hardware32.pngHardware
links32.pngLinks

favoriteStar32.pngTop projects
Alan numitron clock
Clapclap 2313/1386
SNES Pi Webserver
USB Volume/USB toys
Smokey amp
Laser cutter
WordClock
ardReveil v3
SNES Arcade cabinet
Game boy projects
cameleon
Home Presence Detector

github32.pngGitHub
AlanFromJapan

navigationMail.pngContact me

alanfjmail.png
3flags.pngWho's Alan?


Akizukidenshi
Elec-lab
Rand Nerd Tut
EEVblog
SpritesMods
AvrFreaks
Gameboy Dev
FLOZz' blog
Switch-science
Sparkfun
Suzusho
Datasheet Lib
Reddit Elec
Ermicro
Carnet du maker (fr)

Finger Password Keyboard

Last update: Thu Jun 5 22:25:41 2025
kalshagar - Finger Password Keyboard
Software: USB without Arduino
Hardware: RapideUSB


Diagrams

Process diagram

Finger Password Keyboard.pngLINEcamera_share_2015-08-17-23-51-27.jpg

Block diagram

Finger Password Keyboard - block.png

Schematics

fpk.png
Forgive the crudity, I put just the essential components but you have all the base here: an ATmega8a, the USB connection, Level converter, Finger print scanner and a handful of switches.

Creation

Bill Of Materials

Reminder: basically all the USB part is a RapideUSB board, and all the other components are soldered on that same board (on the free space zone). For the detailed BOM of the RapideUSB go to its page.
  • Fingerprint scanner GT-511C1
  • Micro controller : ATmega8a, form factor and mostly identical to ATmega328 but cheaper and with less memory but still plenty more than enough
  • Level conversion between main circuit (MCU, USB, leds,...) @5v and the Fingerprint scanner (3.3v) : eBay cheapo 1USD level converter
    • Note: this fingerprint scanner bast*rd is 5v tolerant for the power pins but serial comm must be at 3.3v, so I put the whole module on 3.3v
  • 3.3v made with a LM317
    • R1=240 and R2=400
  • Buttons
  • USB connector
  • Vibrator module for haptic feedback when scan fails
  • Leds, cables, board, caps, resistors, ...

Code

On the git repository : https://github.com/AlanFromJapan/alanarduinotools/tree/master/Atmegaxx8/FingerPasswordKeyboard

Points of interrest

Keyboard mapping

I live in Japan and have a Japanese keyboard on my pc, means that the keys are mapped differently, and it's the software job to adapt and send the right code to the PC. Therefore in the keyboard.h file you can select which mode you work in to correctly map keys and codes sent to PC. Japan is the one I use, US should be ok provided you check a little.
Default keyboard mapping: http://www.usb.org/developers/hidpage#HID_Usage or direct link to PDF.
About that mapping problem for Japanese keyboard, the invaluable explanation detailed is here http://web.stanford.edu/class/cs140/projects/pintos/specs/kbd/scancodes-7.html

Pictures

2015-08-29-23-12-40_photo.jpg2015-08-29-23-12-20_photo.jpg
2015-08-24-23-26-11_photo.jpg
If you wonder top wood is Pao Santo and sides are Magnolia, finish is shellac and yes I had some splinters while working the Pao Santo

Links

USB keyboard on the cheap

All content on this site is shared under the MIT licence (do what u want, don't sue me, hat tip appreciated)
electrogeek.tokyo ~ Formerly known as Kalshagar.wikispaces.com and electrogeek.cc (AlanFromJapan [2009 - 2025])