Build Your Own Lockitron With Twilio, Arduino, and Node.js
twilio.com
twilio.com
My project allows people in a given contact group to open my garage. A phone number is posted outside my garage and a sign that says "Text OPEN GARAGE" to this number."
Twilio contacts my nodejs script and if they are in the google contact group, it sends a message to the SmartThings API to trigger my ZWave relay.
This isn't very well documented, but if anyone has any questions let me know:
https://github.com/klinquist/GarageAccess/blob/master/garage...
Note this was my first real node project. :)
Another potential approach is to do access control using Twilio (make an interface to add/remove authorized numbers via SMS) and store that in a DB on your server
If the twilio number received a text from someone not in the db, it added it. If it was in the database, it would prefix any message they sent with their name: and send the text to everyone else in the db.
Worked out great. Cost me about $20 for the weekend though. :)
I consider myself a 'prototyping engineer' and when I want to learn a new technology, I try to learn it while solving a problem in my personal life :).
I built mine a couple years ago. I 3d printed most of the parts on a Makerbot Thing-o-matic. It uses 24 rare earth magnets built into the feet to attach to the door over the deadbolt. There is a 3d printed sleeve that slides over the deadbolt lever and turns with a servo.
A piezo sensor on the frame of the device detects knocks on the door. knock the correct pattern (shave and a hair cut, two bits, for example), and the servo turns the deadbolt.
It is easily modified with an ethernet sheild to be controlled with my phone when within range of wifi outside the house...
I still plan to do a proper write-up and share the source code and stl files for printing- i just havent gotten around to it yet. I've got a few other unique projects I'd like to share as well, I just need some time to organize some photos and info.
photo: http://now.oldman.ca/lib/img/bg/heimdall.jpg video (early test): http://www.youtube.com/watch?v=5zFRAlZB0Sw&list=UUl6Pnlqx1eh...
I enjoy reading stuff like the original post here and am always looking for such content but so easily forget that I could be sharing my projects and methods... perhaps time to stop lurking so much :)
It won't interfere with the regular operation of the door, and can be operated by a simple relay -- the more complex mechanical bits are handled for you.
You may also be able to use an electric deadbolt with keypad like http://www.amzn.com/B0045Y1LNM with your existing keys, or even the existing outer facade so it isn't obvious to a passerby (say, your landord) that you've swapped it out.
The only downside is installation cost? isn't it a job for a locksmith to install, especially when your existing strike faceplace is metal. Also, you'd need some power hooked up to it, on the inside of your door frame.
I have this one, which I bought from a local electronics supplier - AU $29.95 - http://www.jaycar.com.au/productView.asp?ID=LA5077
I have very little doubt that the insurance company would take a dim view of my front door lock being connected to the web, and leap on the chance to deny any claims on the grounds that the intruder could have broken in via my code, making it equivalent to leaving the door unlocked when going out.
Your insurance does essentially protect you from yourself. As long as you don't do anything that intentionally makes your house more attractive to burglars (like a neon sign in the window indicating door lock status) the likelihood of what you describe (a claim denial) is nil.
Turns out this is much more difficult than it sounds because bluetooth le rssi is pretty unreliable. I've figured how to get it working for my particular case but I would be curious how lockitron configures it to work consistently for a wider range of locations and devices.
On a separate note, the servo can be attached to the door without duct tape or modifying the door if you have a door like [1]. I simply bought a piece of rubber tubing that fits over the knob and then configured a smaller piece of rubber to fit the servo arm to the lock piece on the knob. This design is also nice in that if the device malfunctions a key can override it.
1 - http://www.happynews.com/living/livingimages/remove-door-kno...
Also, the duct tape will come off after around 100 locks/unlocks, so I eventually had to remake the whole thing with a 3D printed frame and shaft that would be secured to the door. My initial version was horrible, held together by glue/duct tape/cardboard/prayers.
If you want to turn the lock without the motor, you need to have the Arduino detach the servo after the rotation is complete. If you don't detach the servo, you'll damage the motor if you turn it by hand, because the internal tachometer will fight as hard as it can to maintain the servo's position.
Overall a very cool project and a great primer into using Node with Arduino.
http://kuxhausen.com/legoitron/
However, I stopped using it as the command strip's velcro would come apart whenever the door was slammed shut.
http://firmata.org/wiki/Main_Page
Very painless to use, and the script for the Arduino is included on the Aruidino SDK examples menu. You can get up and running in Node.JS in just a few lines of code.
For what it's worth, my project involved playing the brass bells on a christmas ornament from a game of 2048.
We used an electric imp and we 3D Printed a aperture for grabbing the deadbolt handle.
Interestingly, this was about 4 weeks before lockitron announced the presale of their current product...
Great work!
Mine uses NFC keys. Arduino does a lookup over GPRS against a web service to check if the key is permitted to unlock.
As someone else has commented, this uses an electric door strike rather than a servo.
You can register new keys using the webapp, make them allowed for certain time periods etc.
It's nice to see different homebrew options popping up -- hopefully it will lead to an open source equivalent that can be 3d printed eventually :)