Hidden Servo Automates Slat-style Window Blinds


[Home Awesomation] has been working on automating his slat-style window blinds. His focus has been on adjusting the angle of the slats, not on completely retracting the shades. Since the slat angle adjustment requires little torque a servo motor turns out to be just perfect for the job. The good news is that the existing blinds in his house have room in the top enclosure to completely hide his add-on hardware.

The image above is a screenshot from the demo which you can watch after the break. The top enclosure for the blinds is just shown at the top of the frame. Here [HA] is demonstrating a few different control designs which he has been trying out. You can see what looks like a Molex connector with some type of component attached to it. That’s an IR motion sensor and he’s really happy with its performance. He feels the same way about the black momentary push switch sticking down next to the power cable. But his DIY solution that works quite well is the pull string attached to a flexible piece of metal. When that metal bends enough to touch a stationary conductor it completes the circuit, telling the Arduino to start driving the servo.

The main idea behind the project is to poll a temperature sensor, closing the blind automatically to help keep the place cool during the day. We figure if he’s already using a microcontroller to drive the project he might as well throw a cheap Bluetooth in module there and make it controllable with a smart phone.

[via Ariccio]

36 thoughts on “Hidden Servo Automates Slat-style Window Blinds

  1. I like that he tied it to temperature readings rather than just time of day or whatever. I wonder how far you could take this concept. Maybe get the vertical kind of blinds that can rotate either way and glue mylar on one side to try to reflect energy back out the window, so you could control shiny/matte in addition to open/closed.

    Wonder how hard it would be to rig up a system that can open the windows when it’s hotter outside than in (provided outside is a comfortable temperature).

  2. Ha! Ya beat me to it – I’m just building the same thing myself.
    One thing I was going to experiment with is calculating where the sun is relative to the blinds (or having some photo sensor to detect it) and having the blinds automatically tilt to an angle that would reflect the most sun light into the room (aimed at the ceiling).

    1. Hey so.. this is my project and I’m pretty flattered to see it on hackaday. There is some incorrect info in this blog post so let me clear this up. I already do use a photosensor to control the position of the blinds based on day/night and how bright it is. The temp sensor is to flip the blinds up when it’s very hot out, keeping the sun rays off your furniture.

      A bluetooth module is expensive, so I’m using a cheap hack to control these from my cellphone/computer, etc/ Just an x10 universal module.

      Follow my blog and youtube channel, and read the comments on my page for more info.

      Also I’d appreciate anyone who takes my source code to contribute your changes back.

  3. But will these blinds automatically detect when I’m walking around with my ding-dong hanging out, the neighbours are threatening to call the cop!

    @ Bob Fleming – Couldn’t you find the suns angle for any time of the year at your location on the internet? Program this into your controller, tie it to a realtime clock and Bobs your uncle.

    1. Yes, that’s the plan – find equations to calculate the sun’s position based on lat/long and time of day and just tilt the blinds to reflect light onto ceiling to give that natural diffuse light effect. For those asking why do this at all instead of just opening the blinds – I live on the first floor, so I can put bounds on the blind angle to minimise people peeking into my room, as well as maximising light.

      1. If you just want to optimize the lighting in the room you don’t really have to care about the sun’s position – just place a photo resistor on the inside and try a few angles until you have the optimal light level. Should be enough to do that once an hour or so…

        1. Actually, it’s not overkill because our purposes are a little different.
          I want to tilt the blinds so that they catch the sun rays at the right angle to reflect (and gently diffuse) light towards the ceiling and naturally illuminate the room.
          A single photosensor will measure the instantaneous brightness (subject to clouds and trees etc), but not the angle of the incoming rays.
          The angle could probably be approximated with two sensors which are mounted next to each other and with a small partition between them, but if I have a microcontroller (I’m using a Zigbit actually) why not just simply calculate the sun’s angle from the current time? no need for two sensors. I’d rather minimise component count (and complexity and cost) and do what I can in software.
          I already have a networked dusk sensor elsewhere to signal the closing of the blinds when it is dark outside.

          1. Fair enough. My needs were met by tiling the blinds up when it’s very bright to reflect the light towards the ceiling. If it’s not a very bright day I don’t care about that and the blinds can just be open as normal. Main goal is to keep sunlight from heating up the room by beating down on furniture and floors.

      2. I did this for my Senior Design project several years ago… Considered the photo route but decided against. Ended up using a PIC18Fxxx with LCD and QT240 for input, it calculates the blind angle based on Lat/Long, Time Zone, Time of day, Day of the year and window orientation. You could set it to either pass all direct sunlight or block direct sunlight…

  4. Hey all, I work with a commercial system which has a 360 sensor on the roof of the building with adjusts the up/down and slat angle of blinds and and dimming level of lighting within the space according to the sun direction and amount of daylight. Have a google for ‘Zumtobel Skyscanner’ and perhaps this may give you some ideas for you own hacks!

  5. I like this but I would just use a photoresistor on the under side of the bracket and mount if flush so it is out of sight. Then calibrate so that it is closed on direct sunlight and open on ambient light….prolly close it at night too. Good project.

  6. Just my 2 cents… how hard be it to drive the whole thing with solar power? I guess you could drive the whole thing with no more than 4-6 AA nicads, charging out of a couple PV panels you could locate in the window. That would help out a little bit with the aesthetics of having a cable dangling around. I’m no EE, so just offering some food for thought…

  7. This is one of those hacks that’s been floating around my brain, but has never come out. Congrats for getting it accomplished.

    A couple of ideas would be to use an ATtiny13. You can run a servo off of one, has A/D input, and you could use any number of addressable protocols to communicate with them. I’m thinking DMX, Midi, I2C

    1. Second video (Automated windows blinds with Arduino [not ugly]) @ 1:07 – he removes the servo and you can see the metal shaft running through the frame is directly coupled to the servo.
      It’s the only video I watched – could be details in other videos too.

  8. Aaaand the string just fell off…

    Best line in a hack video, yet. Just goes to prove that it’s all about perseverance.

    Good job. I’ve been wanting to automate my blinds for a while, but I live in a rented flat and I need to be able to return the place to the same state I found it in. This is a good starting point for me, though.

  9. Hi guys! Let me take a minute of your time.
    Our young startup has developed a revolutionary product for automation of existing window blinds. It is Wi-Fi and ZigBee enabled. We have launched a Pre-Order campaign today – please like, share and contribute!
    Check out the link below: http://bit.ly/1bkbCHh

Leave a Reply

Please be kind and respectful to help make the comments section excellent. (Comment Policy)

This site uses Akismet to reduce spam. Learn how your comment data is processed.