Hi everyone, I wanted to share my recent project to automate shading in my home using OpenHAB. I’ve always been frustrated with how weather forecasts aren’t precise enough for my automated blinds, so I decided to create a system based on illuminance measurements. Here’s how I approached it:
Challenges I Faced:
- Finding the right sensors that could cover the entire day without obstruction.
- Ensuring the system works year-round without manual adjustments.
- Keeping the investment under €150 and minimizing maintenance.
My Solution:
I went with the Philips Hue outdoor sensors. They’re battery-powered and wireless, making placement a breeze. I placed two on my carport and one on a garden wall. The south-facing sensor needed a slight modification to point directly at the sun, which I did by removing the cover and spraying it white to keep it discreet.
How It Works:
- The sensors measure Lux levels every 5 minutes and send the data to OpenHAB.
- I developed a system to normalize these readings based on the sun’s elevation and azimuth using the Astro binding.
- This gives me a Cloud Index for each direction, which I then combine to get an overall cloudiness state: “Sunny”, “Partly Cloudy”, or “Cloudy”.
Implementation Details:
- I set up three sensors to cover different directions (East, South, West).
- The system uses a weighted average based on the sun’s position to ensure accurate readings.
- I added a hysteresis of 15 minutes to prevent over-adjusting the blinds for every passing cloud.
Outcome:
This system has been a game-changer for me. It automatically adjusts my blinds based on real-time cloud cover, saving me energy and maintaining consistent indoor lighting. Plus, the setup is affordable and low maintenance, which was a key priority.
Tips for Others:
- Ensure your sensors are placed strategically to cover all sun directions.
- Calibrate your thresholds based on your sensor readings and preferences.
- Don’t hesitate to modify sensors slightly if needed, but keep it subtle to maintain aesthetics.
I’d love to hear if anyone else has tried something similar or has tips to improve this system further! Happy automating! ![]()