Today is the world of internet social. We have many social platform Email, Facebook, Instagrams, Twitter, Instructables and etc.For security issue we should not use the same password for these platform and some platform enforce us to create password that difficult to remember. It is better to write it to your notebook but some people was boring to type their password (espcially me).
Step 1: Explore Your Keyboard
I used some old keyboard in this project. After disassemble we have two main parts, one is PCB and another is button pad.
Step 2: Track All Key
On PCB we found two groups of pin X and Y. After tracking all button wire from Xn to Yn we got Key mapping
In this we use a-z, A-Z, 0-9 and some special characters. So, Y0-Y8 and YE on PCB are use.
Step 3: Matrix Key Scan
PC keyboard has more than a hundred keys. Matrix scan is used to reduce input output of processor.
The image of oscilloscope shows X0 and X1 output signal. We can confirm that this keyboard is scan from X0 to X7.
Assume that we need keyboard to send(press) key ‘A’ to PC, As you see in the key mapping table above, We need to wait X4 logic High, Then drive Y0 to High. Beware to drive Y0 High when other than X4 is High, Otherwise you will get other characters. Do it for other key in same step but difference Xn and Yn.
Step 4: Add RFID for More Security
This project I add RFID to protect our password box. Only person who has certain RFID card will allow to use the password box.
I use RFID library from https://github.com/miguelbalboa/rfid
Step 5: Combine All
1x Arduino Mega2560
1x USB Keyboard (unused)
1x RFID Module
1x Plastic Case
Step 6: Coding
I use Arduino IDE to programming this project.
As you see the image after attach Password Box to your PC, The Password Box initialize peripheral hardware and red LED will indicates. Until certain card was scan by MFRC522 you will allow to use Password box to enter password to desire platform.