We had a problem at the Levo League with our intercom system. The doorbell rings and it rings a lot. Every single time a human would have to get up and press the door open button. We have an office manager who sits by the door and will eventually answer it. But if they're not around it's the front vs the back of the office both getting bitter that the other side never answers the door. (Usually it's both of us!)
This had to be stopped so during a hack weekend Dorby was born.
Dorby works like this.
- The Raspberry pi is on our network and runs a node.js web server
- The node.js web server in server.js listens for a GET request to /openDoor and runs openDoor() from arduino.js
- arduino.js uses Johnny-Five to talk to the arduino over the usb serial port (leveraging a protocol called firmata) and tells it to move the servo to press the door open button on the intercom
- Dorby tells our user to keep an eye out for the human who's on their way into the office.
The coolest part is the mounting for the servo. Dorby has two angle brackets, double sided mounting tape, two drywall anchors, two nuts, two bolts and a zip tie.
The servo, mounting boards, arduino and wires all came in the excellent SparkFun Inventor's Kit for Arduino but if you have an arduino you can pickup the micro servo from adafruit for $6 and call it a day.
- USB Wifi Card that someone said worked on the raspberry pi
- Powered usb hub because the raspberry pi doesn't have much power to spare and it kept resetting when trying to power the wifi
- Cool Raspberry Pie Case
- Arduino Uno with Firmata Firmware 2.4
- Breadboard (not really needed)
- Micro Servo
- Angle brackets, nuts, bolts, and mounting tape (go patronize your local hardware store)
- Good old fashion gumption and a drill.
Rick Waldron for Johnny Five and being a good sport, Julian Gautier and Jeff Hoefs and whoever else worked on Firmata which is awesome, The raspberry pi guys and gals, Levo League for hosting the hack weekend and myself Francis Gulotta.