bio photo

Email Twitter Facebook LinkedIn Github

doorJarvis is a programmable assistant in your front door that interacts with devices. It sends an SMS if somebody comes home (e.g an SMS alert that kids are home from school) or when you’re not expecting anyone it defaults to an intruder alert. It also turns lights ON or OFF when you enter or leave your home, and programs a kettle to turn on, on a rainy day so you can get your cuppa when you come home.

The doorknob interacts with the homeowner in absentia (via SMS alerts) as well as in person (light/kettle) and despite these fairly simple physical interactions there are complex software interactions taking place under-the-hood.

My motivation for doing this project was to showcase home automation on the cheap. The primary sensor I used costs 60 cents and offers high interaction from devices. This also opens the door for entrepreneurs to expose masses to physical computing. I opted to incorporate SMS’s into my project to open up important use cases particularly in the context of developing countries. SMS’s are the lowest common denominator for all phones.

Sending an O (for ON) from this dashboard to the doorknob will switch on the kettle and door lights when you come home. Sending an F (for OFF) will deactivate it.

In this project the browser is the primary mode of communication between objects and devices. The browser talks to the door knob which in turn talks to a cell phone using JavaScript (p5), Node.js, Express and Twilio.

Nodejs is used to setup the server, Express middleware takes in values and makes objects pass over to Twilio for sending SMS. Lastly, we needed serial communication between the sensor, Node and Twilio, callibrated for accuracy (triggering the sensor by default sends an SMS for each sensor value received (hundreds in seconds)). The door knob is calibrated for errant hand gestures (like shaking the doorknob or incomplete turning) to avoid triggering an unwanted SMS’s.