We moved to a different host and this is outdated, but this article still exists! please click HERE to view the page. Thanks!
Computer Vision, Engineering and Technologies
--------------------------- Indie Game Development for VR and Mobile ---------------------------
VR Game development journal
Fresh hacks every day
Hi, I see in your code that every print statement has a ‘debug and’ Serial.print
what does the debug do and is it necessary?
prints out data onscreen in arduinos serial interface. It’s not necessary at all and only runs when debug=true
I have an Arduino Mega 2560 that’s been sitting around waiting for me to learn how to use it. I think this project has inspired me enough to unbox it. My wife wants to bring her plants in for the winter, and place them in front of a window. I knew somebody out there had probably thought of a way to control the slats on a venetian blind, and wahla! I would like to see a design that is solar powered. Could a capacitor be charged with enough juice to close the blind at night? Do you know the name brand of the blinds you used? Thank you for sharing all of the information on how to construct this.
Mine were just from bouclaire, I don’t know if that’s a chain or just local. I would like to get this solar powered, a battery would have to be added as well. It would charge as much as possible during the day when idle. However I think the arduino could be modified to use less power, or some other microcontroller could be used that is more power efficient.
Hello it’s me, I am also visiting this web page on a regular basis, this site is genuinely nice and
the visitors are truly sharing fastidious thoughts.
Hi,
Any chance I could send you blinds and a fee in exchange for about a dozen of these setups?
Thanks,
Mike
Can’t. Just do it yourself, it doesn’t take that long 🙂
Hello I am trying to just use the photocell in conjunction with the servo. Is there a code for that?
My code is linked on the blog post. It’s on github. I actually only use the photo cell and a few buttons. The code will work without the buttons.
Can this be used?
Arduino-Compatible R3 UNO ATmega16U2 AVR USB Board
http://www.banggood.com/Wholesale-UNO-Arduino-Compatible-R3-ATmega328P-ATMEGA16U2-AVR-USB-Board-p-68537.html?currency=USD&utm_source=google&utm_medium=shopping&utm_content=miko_ruby&utm_campaign=Electronic-xie-us&gclid=CJT79e6xt7oCFU8V7AoddR4A5Q
Absolutely
hello sir, i am very much immpressed by your project i just wanted to know the full parts list…..pls help me as i am highly interested……any help will be appreciated………thank you…
what help do you need?
Hi, I’m trying to follow your diagram but can’t find a schematic on the d31a. I’m just learning how to use a breadboard and arduino. The relay I got (diagram included) is the http://forum.arduino.cc/index.php?topic=114648.0. I can’t figure out how you setup your relay to work with the button. Can you explain?
What are you going to use the relay for? It’s completely optional. I only used it to tie it into my X10 system, but I dont’ actually use it.
Thanks for the idea. I just started setting this up and the Futaba works perfectly with the cheap-o home depot blinds. However, I am having trouble finding a decent mounting solution for the servo. Where did you get that bracket?
I went to a local RC toy shop and they had a few mounts. There are better ones online, this one needed a bit of creativity to work. For the other blinds I’ve done since I didn’t bother. I just got some of the solid pieces of packing foam. You can see an example of this in the photo here: https://homeawesomation.wordpress.com/2013/06/22/automated-window-blinds-with-arduino-how-to-section/ This is a photo of someone else’s work, they sent me that pic. But mine was similar, just enough foam for it to fit snug.
Any reason why you went with a servo motor over a stepper motor? I picked up a stepper motor (really cheap: http://www.amazon.com/gp/product/B0089JV2OM/ref=oh_details_o01_s00_i00?ie=UTF8&psc=1) and driver to play with and was going to implement essentially the exact same system as you have already put together. (I have blinds WAY up high in a room with 20 ft. ceilings… automation is essential!) I’m beginning to wonder if a servo is the better way to go since the stepper is continuously drawing power to keep the magnets charged, even when it’s not being given commands to move. Observed as the motor gets nice and warm while just sitting there. I was going to implement a switch/relay/something… to only power up the motor after a command was received… seems like a servo might solve this problem too. Nice project! I think the most challenging part for me is going to be wiring 20ft up behind the wall.
I don’t know much at all about stepper motors other than you want them for 3d printers. I used a servo because you can specify which degree you want it to move to, regardless of if it’s currently before or already past that position.
They’re also geared as well so maybe torque is a factor?
Servos are about $10. I’d be curious to know what sort of success you have with a stepper motor.
Also, if you don’t want to run wires, perhaps take my project to the next level and see what you can do to get it to run efficiently off of battery (and maybe solar) power. I hope to do this soon, but would appreciate others submitting their attempts.
Any input on the battery thing? I’ve been working on a similar project with an arduino micro, servo, and a li-ion 3.7v 850 mA battery. For some reason it’s making the servo buzz that burns out the battery in 24 hours.
Hmm buzzing, that’s strange. You might have to offset the position by a degree (if you’re at 180, try 179) I think I saw a similar issue with some servos being stuck between gears or something.
Are you using my code unmodified on battery? That’s probably why. Try making some edits to make it more power efficient. If you get it running on battery for a decent amount of time I would love to try your code.
i need ur mail address?
how come?
When running autoblinds_rev2b.ino my servo constantly turns. What could be wrong?
Constantly turns in one direction, or does it go clockwise then counter-clockwise and repeat? If it constantly turns in one direction then you bought a continuous servo instead of a normal servo. I made the exact mistake at first. Regular servos only go 180 degrees in either direction.
Also why are you using rev2, try the newest build.
It goes clockwise then counter-clockwise and repeat , then it does it again at about half the speed.
I used rev2 because it said “Hands free motion control, kill switch, change of logic to button pre.” and the others said “Updated License Information” . Sorry I’m still a little new at this
You probably dont have the LDR working properly. You might have to look at the code and add serial prints (debug) to try and narrow down the issue.
I wanted to use my universal remote for control, but I couldn’t find where in the code to input the ir code
I never implemented it. You could with little effort probably. There’s lots of resources on building IR receivers with arduino.
Hi, thanks for the info. How did you come up with the resistor values?
Honestly, just looking at other people’s examples. Are there particular reasons your wondering?
what battery pack to use to last longer? I tested it with only one 9 v battery and it dies after around 24 h . btw i don’t have any outlet by the windows…..Can we use 2 9 v batteries one for arduino and second just for a servo ?
I dont think 9v is a good choice. Arduinos run at 3.3v or 5v depending on the version and servos all run at 3.3v I think. If you hook up a 9v too it all you’re doing is burning off energy through a voltage converter. I think you’d have better luck with AA’s configured at 4.5v. I’ve never tested this on battery and i dont expect it would last long. Having said that I’m sure the code can be modified to be more efficient.
You can make it Android controlled, turning your blinds also on time base or manually when you want using souliss.net
Is an opensource framework for Arduino, have a look 🙂
Thanks I’ll look at it further later, looks near
Do you have any block diagram or software flow chart how you did it?
I’m not sure I follow but there’s diagrams on this website.
This is so awesome! Thanks a bunch for posting it. I’ve been wanting a solution for our blinds for ages. I figure this is the best place to start for home automation. Now I just have to learn!
Any recommendations on a good resource for how to learn about getting started with this type of thing? I don’t yet know anything about servos or Arduino, but I do have a little bit of programming background (and your code is commented beautifully so I’m not worried there).
Honestly go pick up and arduino and start playing. I didn’t know what I wanted to build until I grabbed one. There’s lot of sample code and the arduino community is really helpful
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
Hey there
Interesting project. I’m glad I found this page. I have 3 sets of blind for one window due to the size of the window. Would I need 3 separate units for all 3 or can I run with three servos all wired to one arduino? All 3 blinds would be essentially doing the same thing at the same time.
Thanks for your help in advance
Sorry for the delay. I’m currently running two servos for two side by side blinds using one arduino to control them. You can run as many servos as the number of PWM pins on the arduino. I think a servo draws 200-300ma, so anything more than a 1000ma (1 amp) 5v power supply should work. You just need to power the servos directly, not through the arduino.
Can you please tell me how you did the power distribution on the 3 sensors, servo and ardruino??
5v DC, split to the arduino’s 5v in and the servo’s 5v in. The sensors are just powered through the arduino pins. That’s all laid out in the diagrams
Awesome solution to automate blinds! Would this work for blinds that are vertical? Thank you!
I cant imagine why not, they both work on a similar principle, just might be a bit more trick to rig up. If you end up doing it I’d love to see some photos of how it’s connected.
Can you give any details on how you hooked the servo motor into the blind? mounting is the easy part, the rotation connection is the hard part. did your blinds come with a servvo spline already? did you cut a servo horn? have any photos for details on how to make the turning part work?
you can see in the photos it just connect to the spool with some hot glue. I posted a diagram on my site a while ago.
Dumb question.
How does the Servo motor know when to stop?
Is it timed by the Arduino?
Or is it done by hitting the end of what the blind can turn? Then stops?
servos unlike regular motors move to specific degrees.
Do you ever have the servo engage multiple times when going from one state to the other -i.e. if it’s near the morning thresholds and the blinds open, but then clouds obscure sun, tricking the controller to think it’s dusk again? I’m trying to build a similar project to yours, but it’s battery powered and I am running into this problem – which isn’t great for prolonging battery life…
I had this issue but should be addressed in my latest code by using deadzone thresholds. The issue isn’t random cloud cover, it’s when the light is so close to the threshold that is flaps above and below the threshold.
I’d be very interested to see you project, any code you have and do know how you’ve approached running it off battery.
Thanks,
Thank you for the great tutorial! I’m beginning to try your blind automation scheme but was thinking of re-purposing R/C parts to actually run the blinds. I’ve found that a lot of R/C airplane people have older transmitter/receivers that are obsolete due to FCC rule changes that they can’t bear to throw out. These can be picked up cheaply used. My thought is that the small receivers use considerably less power than an always-running Arduino board and that they may be more suitable for a solar power solution with everything mounted in the blind header. The transmitter can then be interfaced with the Arduino controller with the Arduino taking the place of manually moving the joystick pots. I still have to figure out a circuit to accomplish this electrical feat. Seems like it should be just applying a voltage across terminals. The transmitters will send a usable signal across the room without the antenna screwed in. This is how R/C enthusiasts test their systems without sending a bunch of unwanted RF out into the neighborhood. The R/C transmitters don’t have the power of communication transmitters so operating without an attached antenna doesn’t damage the output transistors. This way, the more power hungry Arduino can hide somewhere (plugged into wall power) with the transmitter and work the blinds from a central location. The only thing I see being a problem is a heat sensor would need to be wired over to the blinds if you wanted that function. I think that a real time clock could take the place of the light sensor so that wouldn’t need to be run to the blind.
Thanks. I actually don’t use the temp sensor very much, it’s mostly driven by the light sensor.
Do you mind sharing details about the servo itself? What one did you use how much power is needed, etc.
I saw that you used the ones that toggle directions, have you considered how to build a system like this to lift the blinds as well?
Thanks
I thought about raising the blinds but seemed like more effort and cost than what it’s worth to me. Any servo from a local RC car shop should do. It operates from 3.3v to 6v if I’m not mistaken.
Great project! I am going to give this a try. I hate walking around every morning opening all the blinds and closing them at night. One thing to watch out for if you buy those Futaba servos off eBay. They are fakes. They should still work but the speed rotation parameters are different and they probably aren’t as strong since they don’t seem to be geared the same. I got some for a different project and had to play around a lot with the settings to get them to work just right. I would spend the few extra dollars and buy the real ones from reputable source.
Quick question. Which .ino file is the latest build? I wasn’t sure if you are keeping autoblind.ino as the latest or increasing the version numbers?
5 I believe, sorry for the delay was on extended vacation.
Someone else mentioned solar, so I figured I’d chime in here. Since we’re in the realm of hiding cables and whatnot, obviously a battery and solar power would be nice.
You can get some cheap CIGS square solar cells on ebay for under 10 bucks that are pretty efficient thin films, and strap those facing outward for some low-noticeability. String that into a couple NiCd AA’s and you might be set, if your window has reasonable sunlight. They won’t last forever on a small panel, as the angle of light incident on the panel dictates how much current is produced, so being placed ‘vertically’ will limit the power coming from the panel to the batteries.
If you wanted to get cray, I’ve seen people successfully use the analog pins to read voltages, thus you could create some rudimentary charge controlling on the arduino as well.
Lastly, at least on the UNO r3, the chip is the atmega328p-pu for the most part. The ‘p’ at the very end stands for ‘pico’ and it was one of the final revisions to that chip that allows for an extremely low power mode. While the servo itself probably eats a lot of current on its own, its the few micoamps drawn by the arduino for the 12 hours in between servo…uses that will kill batteries eventually. Enabling pico power mode is something you have to call with the atmega C code, but its worth looking up as it can give you much higher efficiency for low duty cycle projects like this.
-R
Awesome info. Why not make one yourself I’d really love to see the results.
Did the rod runs through all the plastic “spools” on your blinds already leave room for the servo to attach to that first “spool”? I want to do this, but the rod in my blinds runs almost from end to end with only about an inch clearance on either side, so it seems I might need to find a new one. I’m having trouble finding what I need to get, so if you could help I’d greatly appreciate it. Out of all the info I found on doing this, yours was pretty much the only page that was very helpful! Lot’s of the videos I found out there just demo the blinds working but don’t explain how to do it!
Sorry for the late reply. I just slid the rod to the side a bit. You could also just cut it a bit shorter.
Thanks, I think I will have to trim it. I’ve been putting this off though because I can’t figure out how to physically connect the servo to the little plastic spool. In your video you said yours fit right in. You didn’t need any adapters or anything? Do you happen to know the size of the rod that was in yours?
Mine fit in and then I used some hot glue to make sure it stayed. A lot of people seem to have problems figuring this part out and I find it very confusing as this was obvious on mine. Curious whats so different on yours and others. Maybe you could send me some photos.
I have successfully gotten clear vinyl tubing to work as a coupler between the servo gear and the hexagonal rod which runs through mine. They are both fairly close to 1/4″ diameter. I used 5/16″ O.D. / 3/16″ I.D. tubing, It takes some finagling to get it on. It is VERY secure on the rod side, but has required a small tie wrap pulled very tightly on the servo gear side. So far, so good.
I also sawed a piece off of a thin aluminum L-bar, marked and drilled holes, and that secures my servo VERY well.
Good ideas
I like your style – two things are required in a solution: technical elegance and physical elegance. A job isn’t completed until you nail both. BTW – I’m new to arduino – I see it as the solution of choice to motorise 4 new roller blind, and link my Dynalite to control my fire’s RF. And I’ve already taken the short-cut and bought this awesome product http://rayshobby.net/?page_id=160. Now … Arduino tuturial 101…
Thanks! Let me know how open sprinkler is working for you. Seemed a little pricey to me, might build their open source version.
I’d like to automate all my downstairs blinds via one centrally located Arduino. Does anyone have experience with long wire runs (to servos at individual windows)?
I have a video of two servos running off one arduino within close proximity. You really just need one wire from the arduino to each servo to transmit data to it. The other two wires for power could be more local from a near by power source.
Hi there,
Im interested with this project but can you help me with the coding? Im not really good with software.
Thank you for your time.
Hi,
I was hoping you could help me with which servo you chose. Maybe you could tell me which type so i can base my choice on that.
thanks,
Ings
futaba 3003 I think. Honestly just go to your local rc shop and pick up a cheap servo and it will probably do fine.
Hi. I have a couple questions. Do you know if the servo knows which angle it is at? The reason I ask is because SWMBO needs the ability to open and close the blinds manually. I will need to add some logic to identify what angle the blinds are at to compensate for them being open when the arduino may think they are closed.
The second question is: have you considered putting in a motor to actually raise and drop the blinds? I suppose a different type of motor would be required for this.
thanks and great project!
How does this work wwhen the user opens the blinds, but the temperature/light sensors conflict with that decision? (I.e. I want to open the blinds at night, but since the LDR tells the blinds to close during the night, would it override my action and close the blinds back?)
So you only used the photocell sensor on this project you posted? is it possible to have all the sensors you posted to work on the blind at the same time?
Can you send me the code for the temp sensor please? I am trying to add it.
really dont remember. I actually dont use it in most of the ones I did
There is now an automated blind retrofit kit on kickstarter.
Ya I think they ripped me off, but it looks like they did a good job 🙂 lol Have you tried it yet?
A great example of DIY home automation. Great detail about the setup and very nice result 🙂
Thank a lot for bring this idea have been looking for this for some times now,thank god for the chance,please how can I get this motorized completely course There’s no way to find all this sensor.and need it please I need the link .thank
Hi what type of servo did you use micro servo doesn’t do anything on the basic light sensor set up , any help would be fantastic as am all new at this
Futaba s3003 but i doubt the kind matters.
Hi I was wondering if you have any ideas for connecting the servo motor to the rod. Unfortunately for me, this was not an easy fit (the rod is just a hair too big). Thank you!
My servo connects into the same thing the rod goes through. I use hot glue.
Great post. Not seen remote controlled venetian blinds before.
I know this is an older blog post, but can you explain how you are able to turn the blinds without any additional gearbox? My servo only does 1/2 turns and therefore cannot spin the blind spool
The servo spins 180 degrees. The travel from blinds open to closed is less than 180 degree turn of the spool rod. Thanks for checking it out, give me more detail if this isn’t clear. You might want to take a closer look at the photos
i do this project.. but not full function yet .. i do ldr to turn 90.. use tm35 to turn 45 .. on ldr its more easy .. on tm35 i got a problem.. not compile yet .. can anyone help me on coding for arduino plizzz .. thank you so much if anyone can help.. i need it .. urgent ..
I would like to say thank you. I know you did this some time ago, however this was the best blog and video on automating blinds that I could find. The others while interesting, were a bit less ascetically pleasing.
Basically following in your foot steps, I took my Arduino Uno, and IR receiver and automated my blinds that way. I got some cheap faux blinds from Hom Depot (like $26) as a test. Note, it’s the one with the twisting tilt turning pole (I believe that’s what they call it) not the pull string to open and close. The hardest part was figuring out how you got the motor to turn the spin wheel. It finally dawned on me (and you might have mentioned it but I missed it) to remove the manual tilter and the gear it was connected to. Once I did that my parallax conitnous servo was able to turn it – and you’re right, the servo wheel/head seemed to fit snug in the center hole of the spin wheel. The other hard part though was that the servo head seemed to be slipping in the spinwheel. I had to rig the properller that it came with and connect it to the rod actually (using some gorilla tape since thats what i had at the time). After getting everything fitting nicely in the shaft, controlling with my remote (volume up and down to open/close) works awesome. I made mine to partially open and close so i can vary the amount of light I want to come in. The other challenge is that not all servos are the same. I had a parallax continuous servo and all the servo examples didn’t work right. Had to use the manufacturers example sketch (duh – lol).
Anyway to anyone reading, it did take a while as I was new to Arduino and micrcontrollers (although I do have a background in electronics and software dev so coming up to speed wasn’t to bad). I used this as a way to learn a few concepts like IR, servo control, etc.). A nice challenge and very satisfying once it was done.
Your blog definitely got me to the 90% point as I was scratching my head for weeks looking at some other other videos out there. My next version is to control two blinds side by side with one arduino and two servos.
Thanks Again!
Wow, this here is a fine example of a DIY.
But to be honest, I’ll need my hubby’s help with setting up automation because I have difficulty reading some wiring schematics, let alone creating them. These are fine blinds, should I be able to make them.
Heh. I’ll inform you if I can do it as great as you! Thanks for this!
Heh, my bad, i thought it was a DIY project. But I’m definitely considering buying this!
At least I wouldn’t need hubby’s help! lol.
This is a diy project
Great projects, see also the carputer project.
used to own one myself, infact i made a whole dashbord with a 15″ touchscreen in it haha.
Anyway , im into homeautomation now and this is a great solution simple and cheap.
But what i was wondering about is the servo, does it twist i mean is the rotation big enough.
I do see that there are servo’s with 180 and 360 degree rotation but the blinds i have hanging you have to twist a couple of times before they start to open or close.
Is the rotation smaller because you fit the servo straight on the wheel in the blinds or something ?
Thanks
Vince
its very good solutions. all the projects is good. thanks for the good . i like all your posts