Skip to content
🏠 My zeromq based home-automation system.
CoffeeScript Other HTML
Branch: master
Clone or download

Latest commit

Fetching latest commit…
Cannot retrieve the latest commit at this time.

Files

Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
broker
microcontroller
node_modules/homeauto
services
.gitignore
README.md
homeautomation-pm2.json
run.coffee

README.md

Home automation

My Coffee/NodeJS + 0MQ home automation setup. See my blog for more details: blagg.tadkom.net

It consists of multiple services connected via a bus (zeromq):

  • Broker - Push/pull + pub/sub message hub. Message central.
  • Logger - Logs sensor data to cosm.com
  • Event-Triggers - Triggers events based on certain sensor data situations
  • MCU-Relay - Microcontroller relay - receives sensor data from jeenodes
  • Notification - Sends notifications to iOS devices (prowl) and to email
  • Powercontrol - Controls and receives events from 433 mhz receivers/transmitter (RFXtrx433)
  • Heating - Time based thermostat service (Todo: PID + motion sensors)

They can be launched using pm2. pm2 start homeautomation-pm2.json

The system also contains some microcontroller-code for arduino-compatible controllers (Jeenode) with RFM12b radios.

  • MasterNode - Receives sensors readings from slavenodes, controls Pioneer Home-Cinema Receiver via SR-bus. Acts as a simple serial bridge.
  • SlaveNode - Sleeps, wakes once every minute, gather sensor data, transmits wirelessly to masternode.

Other hardware used:

  • Raspberry Pi - I have everything running on this little linux capable ARM board. It's connected via serial/TTL to a Jeenode.
  • RFXtrx433 - 433 mhz transceiver, from RFXcom. Controls Nexa power-relays, etc.
  • Jeenode - Small arduino-compatible AVR boards with HopeRF rfm12b radios on them.
You can’t perform that action at this time.