My home automator – nicknamed “Botman” – has some nice features:
- Indoor data: shows the current room temperature, humidity and barometric pressure on the display (1st row)
- Outdoor weather: regularly requests current weather conditions from a weather API and displays them on the display (2nd row) and moves the servo arm to what we normally call the “weather icon”
- Public transportation info: current departure times of public transport options around my flat are pulled from the web allowing me to better schedule when I have to leave my flat.
- Archive indoor conditions: temperature, humidity and barometric pressure are regularly sent to a Google Spreadsheet to archive and visualize the data over time.
- Android App: allows me to check the current data and lets me switch my remote controlled outlets on and off.
Technical overview:
- Arduino Ethernet acting as a web server but also as web client when it pulls data from APIs.
- I2C Display (lcm1602)
- Laser cut dashboard (thanks to metalab.at)
- Servo arm showing current weather forecast
- Wooden self built enclosure
- Temperature, barometric pressure, humidity sensor (BMP085, DHT11)
- 433MHz wireless sender for remotely controlled outlets
As you might know the Arduino does not have a lot of memory. So parsing current JSON APIs might be a big pain in the *** or would simply not be possible – e.g. due to unsupported https connections. That is why I have installed a separate Google App Engine instance which does all the hard work and only returns the small data chunks I really need on the Arduino.
Of course security is always a big issue when it comes to home automation. All the data is transported on an unencrypted standard http connection. At the moment I can cope with this imperfect approach.
Codebender:
- This is the first project I moved to the Arduino browser based IDE codebender. It really helps me to save plenty of time as I do not have the hassles of setting up the Arduino IDE with all the proper libraries. Perfect for people who tend to experiment a lot or switch their dev. machine too often :)
Todos:
- make a better hand for the pointer of the weather icon
- prepared to control door opener of house
- prepared to add Ir diode to control any device with an Ir remote