Differences
This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
projects:rfid_door_lock [2016/10/07 01:38] jayd |
projects:rfid_door_lock [2016/12/06 11:09] (current) dolf |
||
---|---|---|---|
Line 18: | Line 18: | ||
* Any software created as part of the project is to be released publicly under an OSS license | * Any software created as part of the project is to be released publicly under an OSS license | ||
* To ensure that the system can easily be extended at the university the same RFID cards are to be used | * To ensure that the system can easily be extended at the university the same RFID cards are to be used | ||
+ | * Include safety measures in case of calamities | ||
+ | |||
+ | ===== Backlog ===== | ||
+ | * [[projects:rfid_door_lock:backlog:change_reader|Users want to use their FU-issued ID cards for access control]] | ||
+ | * [[projects:rfid_door_lock:backlog:arduino_ethernet|The communication between the doors and the server needs to be done through the network]] | ||
+ | * [[projects:rfid_door_lock:backlog:encryption|The webapplication needs to use encryption to make it more secure]] | ||
+ | * [[projects:rfid_door_lock:backlog:testing|We want to create a testing setup to assure product quality]] | ||
+ | * [[projects:rfid_door_lock:backlog:gorups|Users need to be divided into groups with different permissions]] | ||
+ | * [[projects:rfid_door_lock:backlog:backup_power|Each door needs to have a backup power supply in case of power failure]] | ||
+ | * [[projects:rfid_door_lock:backlog:credentials_cache|Each door needs to contain a cache of recently allowed cards in case of communication failure with the server]] | ||
+ | * [[projects:rfid_door_lock:backlog:powerful_servo|The door lock mechanism needs to be more powerful in order to minimize technical difficulties with the servo]] | ||
+ | * [[projects:rfid_door_lock:backlog:multiple_doors|Different doors/locations need to be controlled from the same application]] | ||
+ | * [[projects:rfid_door_lock:backlog:new_housing|The users want a smaller and nicer looking housing on the doors with access control]] | ||
+ | * [[projects:rfid_door_lock:backlog:different_lock|Users want to leave the room without worrying about the door properly locking]] | ||
+ | |||
+ | |||
===== Project Scope and Requirements ===== | ===== Project Scope and Requirements ===== | ||
Line 38: | Line 54: | ||
* An RFID scanner that has the same frequency as the FU cards (13.56Mhz) | * An RFID scanner that has the same frequency as the FU cards (13.56Mhz) | ||
* A network connected controller that is capable of handling authentication, authorization and serving the web application | * A network connected controller that is capable of handling authentication, authorization and serving the web application | ||
+ | * Include a method to open the door quickly from the inside in case of power failure or other calamities | ||
==== Possible future additions ==== | ==== Possible future additions ==== | ||
Line 50: | Line 67: | ||
Below are the actually required materials for the client. In agreement with Ryan we will later on add extra materials or some equipment to add to our own supply. | Below are the actually required materials for the client. In agreement with Ryan we will later on add extra materials or some equipment to add to our own supply. | ||
- | ^ Item ^ Links ^ Comments ^ Price (USD) ^ Quantity ^ Total ^ | + | ^ Item ^ Links ^ Comments ^ Price (USD)^ Quantity^ Total^ |
- | |Raspberry Pi 3 or alternative controller | http://ph.rs-online.com/web/p/processor-microcontroller-development-kits/8968660/ | | 40.95 | 2 | 81.90 | | + | |Raspberry Pi 3 or alternative controller | http://ph.rs-online.com/web/p/processor-microcontroller-development-kits/8968660/ | | 45.00| 2| 90.00| |
- | |Role of 3D printing filament| https://www.olx.ph/item/3d-printer-filaments-3-0mm-ID6NmZy.html?p=7&h=866709ada5#866709ada5| |25.87 | 1| 25.87 | | + | |Role of 3D printing filament| https://www.olx.ph/item/3d-printer-filaments-3-0mm-ID6NmZy.html?p=7&h=866709ada5#866709ada5| | 30.00.00| 1| 30| |
- | |5.1V, 1 Output, Micro USB Plug In Power Supply, 2.5A, 13W Official Raspberry Pi Power Supply | http://ph.rs-online.com/web/p/plug-in-power-supply/9098135/| | 9.63| 2 | 19.26 | | + | |5.1V, 1 Output, Micro USB Plug In Power Supply, 2.5A, 13W Official Raspberry Pi Power Supply | http://ph.rs-online.com/web/p/plug-in-power-supply/9098135/| | 12.50| 2| 25.00| |
- | |RFID Reader | https://www.sparkfun.com/products/10126|13.56-MHz | 29.95| 2 | 59.90 | | + | |RFID Reader | https://www.sparkfun.com/products/10126|13.56-MHz | 35.00| 2| 70.00| |
- | |Servo | https://www.sparkfun.com/products/9347 | Use the same or stronger as we have at the lab | 13.95 | 2 | 27.90 | | + | |Servo | https://www.sparkfun.com/products/9347 | Use the same or stronger as we have at the lab | 15.00| 2| 30.00| |
- | |Lock | Dumaguete City,Citi Hardware Store | Lock for a good quality lock, not tampering from the outside, no key outside, possible to interface with servo | 31.08| 1 | 31.08 | | + | |Lock | Dumaguete City,Citi Hardware Store | Lock for a good quality lock, not tampering from the outside, no key outside, possible to interface with servo | 35.00| 1 | 35.00| |
- | |IFixit Pro Tech Toolkit | https://www.ifixit.com/Store/Parts/Pro-Tech-Toolkit/IF145-307-1 | | 110 | 1| 110 | | + | |IFixit Pro Tech Toolkit | https://www.ifixit.com/Store/Parts/Pro-Tech-Toolkit/IF145-307-1 | | 110.00| 1| 110.00| |
- | ^Total USD ^ ^ ^ ^ ^ 356^ | + | |Contribution to NightOwl | | | 205.00| 1| 205.00| |
- | ^Total PHP ^ ^ ^ ^ ^ 17166^ | + | ^Total USD ^ ^ ^ ^ ^ 595.00^ |
- | + | ^Total PHP ^ ^ ^ ^ ^ 28940.00^ | |
- | ===== Milestones ===== | + | |
- | ^ Milestone ^ Title ^ Comments ^ Due date ^ | + | |
- | | 1. | Draft proposal | discuss and get ok from client. Include budget and planning. | | | + | |
- | | 2. | Final proposal | | | | + | |
- | | 3. | Security and privacy evaluation | All physical and electronic vulnerabilities identified and addressed | | | + | |
- | | 4. | RFID reader and controller design | | | | + | |
- | | 5. | Management application design | | | | + | |
- | | 6. | Testing plan | Requirements for testing the system and judge it successful | | | + | |
- | | 7. | First prototype | Both hardware and software developed and installed | | | + | |
- | | 8. | First prototype tested and design adjusted | After proper testing, adjust design according to test results | | | + | |
- | | 9. | Final prototype | Final prototype developed and installed | | | + | |
- | | 10. | Test period for final prototype completed and evaluated | After a trial period for the customer, evaluate the prototype and adjust design | | | + | |
- | | 11. | Final version developed and installed | | | | + | |
- | ===== Work breakdown ===== | + | |
- | Milestone 1 | + | |
- | * Research existing (open source) tools and software for reading RFID tags | + | |
- | * Roughly research different protocols, standards and tools for RFID communication and authentication, resulting in a list with short description of the tools | + | |
- | * Research rough list of required tools and materials | + | |
- | * Finalize our list of requirements | + | |
- | * Make a material list and budget | + | |
- | * Make a project planning (dates on the milestones) | + | |
- | * Finalize this project proposal | + | |
- | * Discuss proposal with client | + | |
- | * Discuss client requirements | + | |
- | + | ||
- | Milestone 2 | + | |
- | * Adjust proposal | + | |
- | * Discuss proposal with client and get final OK | + | |
- | + | ||
- | Milestone 3 | + | |
- | * Evaluate potential physical attack vectors (tampering with the hardware) | + | |
- | * Evaluate potential local software attack vectors | + | |
- | * Evaluate potential remote software attack vectors | + | |
- | * Evaluate potential privacy flaws | + | |
- | * Make software security management plan (signaling and updating security updates) | + | |
- | + | ||
- | Milestone 4 | + | |
- | * Study different standards and protocols regarding RFID/NFC authentication | + | |
- | * Research the possibilities for the connection of the controller to the door lock | + | |
- | * Research different libraries for RFID-reader/controller communication | + | |
- | * Research different hardware components, their functioning and available libraries and tools | + | |
- | * Create a technical design for the RFID reader, it's controller and the lock | + | |
- | + | ||
- | Milestone 5 | + | |
- | * Research different open-source authentication and authorization packages supporting RFID | + | |
- | * Make a technical design of the management software | + | |
- | + | ||
- | Rest: | + | |
- | * Get a final OK for the the designs | + | |
- | * Order parts | + | |
- | * Start writing software | + | |
- | * Make a software and hardware testing plan | + | |
- | * Install first prototype | + | |
- | * Train the client on use of the prototype | + | |
- | * Test first prototype | + | |
- | * Adjust design, hardware and software according to test results | + | |
- | * Install final prototype | + | |
- | * Let user evaluate the system for a while | + | |
- | * Evaluate the system with the user in a feedback session | + | |
- | * Create the final version based on the client's feedback | + | |
- | * Install and test the final version | + | |
===== Design ===== | ===== Design ===== | ||
Line 133: | Line 88: | ||
===== Progress ===== | ===== Progress ===== | ||
- | We made a 3D design for the connection between the servo and the lock, and a design for the mounting of the servo to the door. The files can be found on https://github.com/Waterspace/servo-lock-mount. If you click on the stl files, github shows you an interactive 3D view of the model. | + | * Students have started on the code side of the management and authentication application. |
- | + | * We made a 3D design for the connection between the servo and the lock, and a design for the mounting of the servo to the door. The files can be found on https://github.com/Waterspace/servo-lock-mount. If you click on the stl files, github shows you an interactive 3D view of the model. | |
- | The model has been printed, and after some tweaking, a heat gun and superglue we got it to fit! So now we need to create a casing for the electronics and hook everything up! | + | * The model has been printed, and after some tweaking, a heat gun and superglue we got it to fit! So now we need to create a casing for the electronics and hook everything up! {{:projects:servo_lock_mount.jpg?400|}} |
- | + | * The code for the current arduino version [[https://github.com/Waterspace/arduino-rfid-lock|can be found on github]]. | |
- | {{:projects:servo_lock_mount.jpg?400|}} | + | |
- | + | ||
- | The code for the current arduino version [[https://github.com/Waterspace/arduino-rfid-lock|can be found on github]]. | + | |
===== Interesting links ===== | ===== Interesting links ===== |