node.js xbee home automation
One day, I’ll get round to writing this up in more detail. Frustrated at the lack of integration between existing products, I built my own home automation system.
It runs on a Raspberry Pi, using event-driven javascript (node.js) and wireless mesh networking (xbee) to link various bits of my house together, and connect them to the outside world.
I can, from any browser:
- switch the outdoor lights on and off
- detect doors opening and closing
- switch my burglar alarm on and off (it saves pictures of intruders, and texts me when they enter)
- turn radios on and off, play notifications
- turn the central heating up/down/on/off
- read the temperature at various points
- monitor the noise and motion levels in my kitchen (plus webcam)
- flashing lights on my kitchen clock (pictured) tell me what’s going on, as well as the website
The system can log things like the doors opening or the power use/temperature into a database.
I open-sourced some of the node.js and xbee code, and it’s grown into a little project of its own.
Favourite posts
- On wiggly lines and being normal
- On infinite villages
- Running a race backwards
- Brainmaking
- Their tables were stored full, to glad the sight
- The structure of a smell
Recent posts
- Skill swaps
- Times Table Hack Stars
- Long, crustless hypotenuses
- Standing up a prototype
- Optimising the FA Cup
Blog archives
Posts from 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020, 2021, 2022, 2023, 2024.