DIY or Buy – Motorized Smart CurtainsJanuary 30, 2019
Today on the hookup we’re going to automate some curtains. I’m going to show you an off the shelf solution and a DIY solution and help you figure out which option is best for you.
A few weeks ago in my house tour I mentioned that my bedroom is mostly free of smart products, but that my wife’s most requested project has been for me to automate the curtains. I had been working on a DIY solution, but after I posted that video the great people over at Zemismart offered to send me their wifi motorized curtain track to review.
But the hook up is is more than just a product review channel, so I decided to take on two projects at once. In the bedroom I installed the zemismart curtains, and downstairs I built, coded, and installed a DIY solution. In this video I’m going to address the pros and cons of each system and help you decide whether it’s better to DIY or buy.
Before we start, lets see each of them in action.
Starting with the zemismart curtains.
And here’s my diy setup.
I’m going to split up this comparison into 5 categories, and then pick an overall winner.
The first comparison catagory is going to be ease of setup.
The zemismart kit is extremely well made. There’s a motor unit that mounts behind the curtains, a wifi open/close switch, and all the hardware you need including an extruded aluminum curtain rail that can fit a ton of custom sizes without having to cut it. The install process is pretty simple and only requires a screwdriver and a pair of scissors. Overall it took me about 2 hours to get everything installed, but it would have been much faster if I wasn’t such an idiot. The instructions clearly stated to leave 10 centimeters of clearance on each side of the rail, and my stupid American brain immediately went “okay, 10 centimeters, that’s like half an inch”. Long story short, I had to take apart the whole curtain rail to shorten it and then completely reassemble, but that’s on me, not zemismart. After plugging the curtains in I paired them with the tuya app and was immediately able to control them and add them to home assistant.
The DIY setup was significantly more involved. Since I have rail and grommet style curtains I needed to sew the individual pleats into the curtains so they would spread out at the correct distance. Then since these weren’t pull cord style curtains I needed to install some pulleys and curtain cord to be able to open and close them in a more standard fashion. Then I used a stepper motor, an extruder gear, a rubberized bearing, and a 3d printed bracket to motorize the pulley system. If the two options I was presenting to you were buying the zemismart curtains or designing an automated curtain solution from scratch, it would be the easiest recommendation ever. I went through about 20 different iterations of this system before I got it to it’s current state, and there are still many improvements to be made.
Luckily, you don’t have to choose between those options, you just need to choose between my solution or zemismart’s. Still in the ease of installation department, I’m going to give a resounding win to the zemismart curtains.
The second category is aesthetics.
I’ll fully admit that the aesthetics category isn’t going to be fair because the zemismart curtains are designed to be used with pinch pleat style curtains, but I already owned grommet type curtains. To convert them I purchased some of these curtain hooks. Ideally these hooks would be installed about 6 inches from the top of the curtains to hide the curtain rail and you can fold back the grommets to accomplish a more finished look, but I didn’t want to give up any overall height in my curtains, so I left the grommets there. I’m planning on adding a wooden valence to the top to hide the grommets and the rail. The valence will also give me a great place to install some RGBW LEDs and hide the wires that I’ll need to automate the blinds later on.
The motor on the Zemismart solution is mostly hidden by the curtains themselves and the drive belt is located inside the rail, so no points are lost there.
On my DIY solution the motor and controller are also behind the blinds, but the curtain string and pulleys can be seen when the curtains are open. It’s a super minor thing, but I’ll deduct a couple of points for it.
My largest gripe with the zemismart setup is that when the curtains are closed they don’t have the same satisfying uniformity in pleat size that they used to when the curtains were installed using the grommets. Again, I know this is unfair since I’m not using the right type of curtains, but it was also the first thing my wife brought up after I finished the install.
On my DIY solution, the pleats are extremely uniform, and that’s because they have to be. As I mentioned before, one of the main hurdles I needed to overcome when designing a diy solution was the fact that on grommet style curtains the pleats will naturally overextend as you pull them causing them to bind up on the curtain rod. To counteract this, I got out my needle and thread and manually sewed each pleat to a maximum size. This was pretty tedious, so take some points away from the ease of installation, but the end result looks perfect every time.
In the aesthetics category I’m going to give the edge to the DIY solution… and again, yes, I know it wasn’t a fair category.
The third category is control.
The zemismart curtains set up in just a few minutes. You install the tuya app on your phone, connect to the wifi AP that the switch broadcasts, and then you’re done. Want google home and echo control? Just install he tuya skill. Want to control it with home assistant? Use the tuya integration. There’s a reason tuya was ubiquitous at CES, it’s super easy and it just works. Now, I won’t be sticking with tuya (because I’m a bit of an anti cloud crazy person), but I haven’t decided exactly how I’m going to control these curtains yet. The good news is that all of the magic that controls how far the curtains open is in the curtain motor, not the switch, so I’m free to explore other options. I wasn’t able to flash tasmota on the included switch because TX is tied to another chip that messes with the serial connection during the flash process, maybe this will be a good candidate for the TuyaOTA method that has been worked out recently.
My DIY option has local control MQTT, which means if you don’t have an MQTT enabled home automation hub like home assistant or Open HAB you’ll have a tough time controlling them. That being said, I do have them working with echo and they even support percent based commands, though I can’t immediately think of a situation where I’d want to close the curtains halfway. If you’re familiar with the Arduino IDE getting my program onto an ESP8266 is pretty simple, and setting the curtains up for your specific windows just involves sending values via mqtt to the shade position topic until your curtains are fully closed, and then you just put that value into the user configuration section in the Arduino program. Just like my Holiday Lights 2.0 sketch, you shouldn’t need to edit anything outside of the user configuration section.
If you’re against the cloud, the DIY solution might have an edge here, but if you’re looking for smart control that sets up quickly and easily, the zemismart is the way to go.
The fourth category is speed and noise.
The bedroom curtains are double the size of the patio curtains, but since they open from both sides we can directly compare the time it takes to open them.
Oddly enough, they both take exactly 15 seconds to open. But the problem is that the diy solution is quite noisy. I could make it quieter if I just ran a full open and full closed commands, but then you wouldn’t have the option to stop the curtains mid-way though if they were caught, or something else was wrong. In my code it registers every full rotation and then checks mqtt to see if a new message is coming in, but the issue with that is that it causes a few microseconds of pause in the rotation which results in an audible “click”. I’ll hopefully figure out a fix for this in the future, but as of publishing this video it’s still an issue. In contrast, the zemismart curtain motor is almost silent, the only sound you can hear when the curtains are opening is the sound of the curtain rollers themselves.
Zemismart is the clear winner in this category.
The fifth and last category is price.
As I mentioned, zemismart sent me these curtains for free, but the 5.2m version that I used only costs $220 US on the official zemismart aliexpress site.
My DIY solution costs about $85, not counting all the parts that I bought but didn’t end up using. Some of the parts I had to buy multipacks of, so you could decrease the price per curtain if you were making more than one. But I should also note that I already had a curtain rod, and the zemismart does come with a rod, so when you consider that a non-motorized curtain rod of the same size will set you back an additional $95 you’re really only saving $40 going with the DIY solution.
So which curtains should you get?
If you already have an existing curtain set, especially if that curtain set already has a pull cord, or if you absolutely love grommet style curtains, the DIY solution makes sense, but if you are buying all new hardware you should get the zemismart curtains 100% of the time. They are affordably priced, easier to install, quieter, and even though I haven’t experienced any issues with either of my curtains, at the end of the day the zemismart curtains are probably more reliable too.
If you’re looking for a fun project, I’ve included links to all of the parts that I used for my DIY setup and a link to the github page with the code.
If you made it all the way to the end of this video you must have liked it, so hit the thumbs up button so this video will show up in the suggest video section for other makers and home automation enthusiasts.
Thank you to all my wonderful patrons over at patreon for your continued support. If you’d like to support my channel check out the links at the bottom of the description. If you enjoyed this video please consider subscribing, and as always, thanks for watching the hookup.