NFC Computer Unlocker (2024)

Introduction: NFC Computer Unlocker

Quit pulling your hair out over incorrect passwords. Using an Arduino Leonardo and Adafruit's NFC shield, you can unlock your computer with an NFC card. The Arduino reads the NFC card's unique identifier and once it receives the correct one, it uses the Arduino Leonardo's keyboard emulation feature to type a password.

Step 1: Parts Needed

You will need the following parts for this build:
Arduino Leonardo
Adafruit's NFC Shield
NFC Tag (included with shield)
A Small Piece of Hookup Wire
You will optionally need:
More NFC Tags (available from Adafruit)
Tools Needed:
Sharp Knife
Soldering Iron
Wire Cutters and Strippers
Computer
Micro USB Cable

Step 2: Hardware

You will need to solder the header pins to the shield and retrace the jumper for this project to work.
Step One:
Solder the header pins to the shield. The easiest way is to insert the header pins into the Arduino and place the shield on top of the header pins. Solder the header pins on the top of the shield.
Step Two:
Cut the jumper between the IRQ pin and Pin 2 using a sharp knife. We need to do this because the NFC shield doesn't communicate with the Arduino Leonardo at Pin 2. Use a multimeter to check continuity between the two pins.
Step Three:
Strip about 1/2" of insulation off of each end of a small piece of wire. Then solder this wire between IRQ and pin 6 on the Arduino.
Once all of that is done, the NFC shield is ready to communicate with the Arduino.

Step 3: Software

The software that needs to be uploaded to the Arduino is below. Make sure that you have the Adafruit NFC Library installed. Learn more about that here.

#include <Wire.h>
#include <Adafruit_NFCShield_I2C.h>

#define IRQ 6 // this trace must be cut and rewired!
#define RESET 8

Adafruit_NFCShield_I2C nfc(IRQ, RESET);

//////////////////////////////////// SETUP

void setup() {
// set up Serial library at 9600 bps
Serial.begin(9600);

// find Adafruit RFID/NFC shield
nfc.begin();

uint32_t versiondata = nfc.getFirmwareVersion();
if (! versiondata) {
Serial.print("Didn't find PN53x board");
while (1); // halt
}
// Got ok data, print it out!
Serial.print("Found chip PN5"); Serial.println((versiondata>>24) & 0xFF, HEX);
Serial.print("Firmware ver. "); Serial.print((versiondata>>16) & 0xFF, DEC);
Serial.print('.'); Serial.println((versiondata>>8) & 0xFF, DEC);

// configure board to read RFID tags
nfc.SAMConfig();
Keyboard.begin(); //initiate the Keyboard
}

/////////////////////////////////// LOOP

unsigned digit = 0;

void loop() {
uint8_t success;
uint8_t uid[] = { 0, 0, 0, 0, 0, 0, 0 }; // Buffer to store the returned UID
uint8_t uidLength; // Length of the UID (4 or 7 bytes depending on ISO14443A card type)

// wait for RFID card to show up!
Serial.println("Waiting for an ISO14443A Card ...");


// Wait for an ISO14443A type cards (Mifare, etc.). When one is found
// 'uid' will be populated with the UID, and uidLength will indicate
// if the uid is 4 bytes (Mifare Classic) or 7 bytes (Mifare Ultralight)
success = nfc.readPassiveTargetID(PN532_MIFARE_ISO14443A, uid, &uidLength);

uint32_t cardidentifier = 0;

if (success) {
// Found a card!

Serial.print("Card detected #");
// turn the four byte UID of a mifare classic into a single variable #
cardidentifier = uid[3];
cardidentifier <<= 8; cardidentifier |= uid[2];
cardidentifier <<= 8; cardidentifier |= uid[1];
cardidentifier <<= 8; cardidentifier |= uid[0];
Serial.println(cardidentifier);


if (cardidentifier == 606061173) {
Keyboard.write('m');
Keyboard.write('y');
Keyboard.write('p');
Keyboard.write('a');
Keyboard.write('s');
Keyboard.write('s');
Keyboard.write('w');
Keyboard.write('o');
Keyboard.write('r');
Keyboard.write('d');
delay(5000); //makes sure the password isn't repeated
}
}
}

Once the code is uploaded, open the serial monitor set at 9600 baud. Place the NFC tag on the shield for a second and then remove it. The serial monitor should say, "Card detected #card number." Copy the unique card number and paste it in thecardidentifier == 606061173 statement in the code. The card number will replace 606061173. Then change the keyboard.write statements to spell out your password one letter at a time. Reupload the code and whenever the NFC tag is placed on the shield it will type your password for you.

Step 4: 3D Printing

You can optionally 3D print an enclosure to house the Arduino and to mount it onto a desk. The .stl file is on this page. The two screw holes on the case allow a long screw to pass through. This is meant to be mounted underneath a desk. The NFC signal should work as long as the table is thinner than 5cm.

Attachments

NFC Computer Unlocker (2024)
Top Articles
Coinranking | Cryptocurrency Prices - Top 50 List
The Biggest Stock Brokerage Firms in the US
Trabestis En Beaumont
Mrh Forum
Craigslist Benton Harbor Michigan
Insidious 5 Showtimes Near Cinemark Tinseltown 290 And Xd
Lost Ark Thar Rapport Unlock
Melfme
Www Movieswood Com
Cube Combination Wiki Roblox
Anki Fsrs
Hello Alice Business Credit Card Limit Hard Pull
Obituary Times Herald Record
Sitcoms Online Message Board
Simple Steamed Purple Sweet Potatoes
Hssn Broadcasts
Pro Groom Prices – The Pet Centre
7 Fly Traps For Effective Pest Control
Aucklanders brace for gales, hail, cold temperatures, possible blackouts; snow falls in Chch
Equipamentos Hospitalares Diversos (Lote 98)
Melissababy
Kirsten Hatfield Crime Junkie
Gs Dental Associates
Mikayla Campinos: Unveiling The Truth Behind The Leaked Content
Lilpeachbutt69 Stephanie Chavez
Lesson 1.1 Practice B Geometry Answers
Guide to Cost-Benefit Analysis of Investment Projects Economic appraisal tool for Cohesion Policy 2014-2020
Chadrad Swap Shop
Palmadise Rv Lot
Gabrielle Enright Weight Loss
Netherforged Lavaproof Boots
The Ride | Rotten Tomatoes
Rogers Centre is getting a $300M reno. Here's what the Blue Jays ballpark will look like | CBC News
Cookie Clicker The Advanced Method
Why I’m Joining Flipboard
Easy Pigs in a Blanket Recipe - Emmandi's Kitchen
968 woorden beginnen met kruis
Gt500 Forums
5A Division 1 Playoff Bracket
Directions To Cvs Pharmacy
Craigslist Antique
Bekkenpijn: oorzaken en symptomen van pijn in het bekken
Ucla Basketball Bruinzone
Jigidi Free Jigsaw
German American Bank Owenton Ky
Hsi Delphi Forum
Skyward Login Wylie Isd
Prologistix Ein Number
Ark Silica Pearls Gfi
Myhrkohls.con
Saw X (2023) | Film, Trailer, Kritik
Latest Posts
Article information

Author: Rueben Jacobs

Last Updated:

Views: 5969

Rating: 4.7 / 5 (77 voted)

Reviews: 84% of readers found this page helpful

Author information

Name: Rueben Jacobs

Birthday: 1999-03-14

Address: 951 Caterina Walk, Schambergerside, CA 67667-0896

Phone: +6881806848632

Job: Internal Education Planner

Hobby: Candle making, Cabaret, Poi, Gambling, Rock climbing, Wood carving, Computer programming

Introduction: My name is Rueben Jacobs, I am a cooperative, beautiful, kind, comfortable, glamorous, open, magnificent person who loves writing and wants to share my knowledge and understanding with you.