Home Automation
Contents
Roadmap
- Pick an authentication method DONE USB
- Computer driven scripts to send signal to USB DONE
- read in USB info DONE
- send out serial command DONE
- Pick an physical entry method DONE
- Use serial command to trigger entry method DONE
- Attach everything to the door DONE
Entry Automation
General Implementation Notes
- The system needs to be powered, and preferably include a UPS
- Overriding key access is nice for graceful failure
- Of course, this just underlines the fact that this is an access registry system more than anything
- Probably need a normal handle in the door with an electric door strike for the cheapest implementation.
- If the implementation simply replaces the metal key with a token, it will have the same problems. Unless two- or three-factor authentication is used and/or the physical security of the lock and door are improved, it's about as secure as it was.
- Simple enough to manage the coming and going of people.
RFID
Pros
- Hands-off access
- Hands-off tracking of access
- As long as user has their RFID tag on them, their presence within a certain proximity around the reader will be recorded.
Cons
- Keys easily stolen with anonymity
Implementation
Materials
- Need a reader. Can be found for under $100
- Need tags
- Need a server
iButton
Pros
- Rotating keys are available
- Physical access is required for key duplication
Cons
- Hands-on access
- Interface may be fakable with any interface that has the same signal levels iButton Spoofing --Omegix 23:02, 8 May 2008 (CDT)
- Unimportant, because the threat of theft through kicking the door in is much higher than spoofing --Korc 20:51, 8 May 2008 (CDT)
USB Authentication
Pros
Each USB device has a unique serial ID. USB keys are cheap, readily available, and many can fit on a standard metal keyring.
Cons
Implementation
Authentication Flow
- User inserts key into USB hub hooked to a PC
- Computer reads serial ID of key
- Computer compares serial ID to list of valid serial ID in a table \ DB \ Flat File
- If good, computer writes data ("Unlock!") to USB line of Microcontroller
- Microcontroller throws a pin high for 5-10 seconds.
- Pin is likely 3-5volts. Pin is wired to either a 200ma transistor or relay
- Relay, when thrown, sends 12V of 200mA current to an electric doorstrike
Useful Microcontroller (Arduino/Freeduino) Resources
Suggested Implementation Phases
- Get microcontroller to throw a pin high
- Get microntroller to read commands issued from external system (serial/USB)
- Get microcontroller to throw Pin high after recieving external command
- Build and test simple door strike circuit
Circuit
In order to get 12V of 200mA current to the doorstrike, we'll need to protect the freeduino from flyback current. After consulting with protomech, 1kOhm resistor, one 1N4002 diode, and one 2N2222 transistor should do the trick for making a safe 12V relay for the doorstrike.
Other Materials
- Door Strike, Normally Open (NO) Normally Open means that it doesn't require power to stay locked.
Mechanical Implementation
DoorStrike
Electric Deadbolt
- This Guide Shows how to easily hack a Powerbolt 1000.
- Cost is roughly $80
Servo Controlled
The idea here is to have a servo attached to a standard deadbolt. The microcontroller will need to not only receive a signal from the computer, but also sense a window-open detector, and control a servo.
This sketch from Feltinix shows how a stick hanging from the servo casing could be used to action / reaction hold the servo in place.
If you were to attach the stick to the deadbolt turner or the plastic connected to the servo motor shaft, that would allow for a manual unlocker for the door in the event of a power failure
This image from gregabyte shows a mechanical override system that could be implemented for under $20
The flowchart for the circuit is below.
Edits to Flowchart
- Sound a buzzer right before the door unlocks or locks so that users are aware that something is about to happen