RFIDuino Windows Login

Serial Control
PC Control

The RFIDuino Login Project for Windows will allow you to use the RFIDuino system to log into Windows. You will need to load a special firmware onto your Geekduino/Arduino, and load the appropriate files onto your computer. Once setup, you can login to your computer from the main Windows Login screen by simply swiping your RFID tag across the RFIDuino antenna.

This project will work with Windows Vista, 7, 8 and 10.


This project is an example project and should not be considered ready for production use where security is required. The user login/password are stored in an unencrypted plaintext file on the computer.

Getting Started With The RFIDuino

RFIDuino Getting Started Guide

If you have not already, you should go to the RFIDuino Getting Started Guide. This guide will give you an overview of the RFIDuino and help you set up your Geekduino and the programming environment/libraries. You will also need to complete the Hello World tutorial so that you can read the IDs of your tags. It is important that you right down the ID the tag(s) that you want to use to unlock your computer.

Programming Your Geekduino for the Project

Windows RFIDuino Login Software

First download the most recent release of the Windows RFIDuino Login Software. This download includes the necessary Arduino Firmware and Windows Software for this project. Unzip the file and you should see 3 folders and 2 files.

  1. Connect your RFIDuino as shown. (Click here for the v1.1 Connection Diagram)
  2. Open RFIDuino_windows_unlock onto your board. This sketch is in the .zip file you just downloaded under:
    Firmware -> RFIDuino_windows_unlock -> RFIDuino_windows_unlock.ino
  3. You will need to make sure the code is adjusted for your RFIduino hardware.
    v1.2 shields (2 pin antenna, 'REV 1.2' printed on the board) will need the following code
    RFIDuino myRFIDuino(1.2);     //initialize an RFIDuino object for hardware version 1.2
    v1.1 shields (4-pin antenna, no version number printed on the board) will need the following code
    RFIDuino myRFIDuino(1.1);     //initialize an RFIDuino object for hardware version 1.1
    Both lines of code are available in the RFIDuino_helloworld sketch, simply uncomment the one you don't need. If you are still unsure about what hardware you are using, see this page
  4. Load RFIDuino_windows_unlock onto your board using the upload button in the Arduino IDE.
  5. Once loaded, leave your board connected to your computer - you will need this connection to power the board and to communicate with the computer

Setting the Reset Switch

Once you've programmed your Geekduino, you will need to change one of the switches. Set the reset switch towards 'M_RST'. This will change the board to manual reset, so that windows does not reset the board while in use. Keep in mind that if you need to reprogram your Geekduino that you will need to change the switch back to 'AUTO'.

Installing the Windows Software

1. Using the Right Files

From the .zip file downloaded earlier, you'll need to make sure you are using the correct files for your Operating System. For 64 Bit Versions of the operating system you'll use the files in the 64 Bitfolder. For 32 Bit Versions of the operating system you'll use the files in the 32 Bitfolder.

You'll need to edit 2 of the .txt files.

2. RFIDCredentials.txt

First open RFIDCredentials.txt. By default the file should look like this

12 133 430 45 189|user1|password1
9 23 143 56 19|user2|password2

You'll need one line for each Key you want to use to unlock your computer. Each line contains the tag's ID, the windows username and the windows password, each separated by the | character. So for example, if the tag's ID is 70 0 44 22 242 and you want to unlock a windows account with the username robot1 and the password unlockRobo1 your file should look like

70 0 44 22 242|robot1|unlockRobo1

You can use multiple tags to unlock a single account, but one tag can only unlock one account.

This project also support domain based accounts. If you want to add a line with a tag ID of 67 176 120 0 45 and you want to unlock a windows account under the domain ROBONET with the username robot2 and the password unlockRobo2 your file should look like

70 0 44 22 242|robot1|unlockRobo1
67 176 120 0 45|ROBONET\robot2|unlockRobo2

As mentioned above, each tag can only unlock one account - so this means that there can be at most one line for each unique tag you are using in your system.

3. RFIDCredSettings.txt

Open RFIDCredSettings.txt. By default the file should look like this


The LEAD and TERM lines represent the characters before and after each serial message from the RFIDuino. You do not need to edit these lines.

You will need edit the first line so that it matches the serial port for your Geekduino. The serial port number for your Geekduino is the same serial port that you use to program your Geekduino, and the same serial port number we found in the Geekduino Getting Started Guide. For example, if your Geekduino is connected to COM32, your file should look like:

4. Moving Files

You you will need to copy the 3 files into your C:\Windows\System32 folder. The files are the two text files you updated and the .dll file


Just drag and drop these 3 files into the C:\Windows\System32 folder on your computer. You may need admin privileges to copy the files over. If this folder does not exist on your computer or if you have a custom Windows Installation, you may need to recompile the .dll file to work with your system.

5. Activating the Files

Now go back to your unzipped software folder and open Register.reg. You'll get a warning - you can click 'OK'. Now the .dll files will be activated.

If you need to remove the program, use the Unregister.reg file and then remove the 3 files from your C:\Windows\System32 folder.

Using the Project

Now that all of the firmware and software is installed, you can use your project. Make sure your reader is plugged into your computer and reading cards (the LED will light up when a card is sensed). Now restart or lock your computer so that you are at the user screen Note: You need to be at the user screen, the computer will not unlock if you are at an individual login screen. You should see a new user 'RFID'. Simply swipe your card and your computer will unlock!


Here are some additional ideas for expanding and improving your RFID Lock Box.

  • As noted before, your username and password are stored in an unencrypted text file. To secure this, you would need to integrate new code into the windows software.
  • You may be able to add some minima amount of security using file permissions in windows by removing accounts from the security list SYSTEM.
  • The source code for the Windows Software is available here
  • By default, the firmware only changes LED color depending on the read status of the card - the buzzer has been disabled. You can re-enable this by looking at the other RFIDuino examples and brining in the buzzer code.

This project was based off a project for the RedBee RFID reader, a collaboration between Trossen Robotics / RobotGeek, Amal Graafstra and Robotics Connection.


PC Control These demos and projects allow the robot to be controlled via a computer.

ArbotiX Commander Control - These demos and projects control the Robot using the ArbotiX Commander, the handheld Arduino based remote control.

Direct Control - These demos and projects control the Robot directly from sensors connected directly to the Robot's control board.

Pose Control - These demos and projects allow you to create and playback a sequence of poses.

Serial Control - These demos and projects control the robot using a serial packet protocol.

Standalone - These demos and projects are deisgned to let your robot function without a computer or additional microcontroller.

Wireless Control - These demos and projects allow you to control the robot wirelessly - usually by replacing the Serial Connection with XBee modules.

Reference - These articles have technical details regarding the control and operation of the robot.


More info here

Feedback Form