Automating you blinds, is a great weekend project, you can put together usingMediatek LinkIt ONE platform and 3D printed parts for which the STL files are attached in step 2.
To rotate the blind wand/rod we will use a continuos rotation servo. And the movement of the blinds will be triggered from a Wi-Fi web app hosted on the LinkIt one as part of the Arduino code, which you can access using your phone,tablet or computer.
Step 1: Things you'll need to complete the build
Collected/buy the electronic compontes you'll need
- LinkIt One board
- Wi-Fi antenna for the LinkIt One, this comes as part of the LinkIt ONE board package
- Micro Continuous rotation servo - FS90R
- Jumper wire
- Micro USB cable
- Screws - 4X40 - at-least 2
- 3D printed parts - STL attached in the next step
In addition you will also need the following tools
- Screw Driver
- 3D printer and Filament
- Dremel 3000 or something similar to drill holes in the 3D printed part.
Step 2: 3D print STL files attached
Download the STL files attached and using 3D printing software slice and 3D print the files.If you don't have a 3D printer handy you can use one at your local maker club or library or use a 3D printing service like 3D hubs.
In my case I am using Repetier-Host as my 3D printing software with the Printrbot Simple metal, and the slicer set at 0.2mm layer height .And printing the files should takes about couple of hours.
In addition, I am using Makerbot white 1.75mm PLA filament for 3D printing.
Step 3: Putting the 3D Printed parts and electronic together
Add the LinkIt one to the 3D printed part and attached the WiFi antenna as shown in the second picture above.
Using a power tool like Dream or a small nail and hammer drill holes into the top cover of the LinkIt one. Note I dint design/add holes for screws for the top 3D printed part so that you have flexibility to mount the server based on your setup at home.
Now add the screws to the servo mount and attach it to the top.
Now connect the servo to pin 9 using jumper wire of the LinkIt one which is one of the PWM pins.
Step 4: Upload the Arduino Code
To setup the Arduino IDE for the LinkIt ONE register and create an account on the MediaTek Labs website
Then follow the link below to download the latest driver and software LinkOne Board
Upload the blink example sketch that comes with the Arduino IDE and see if the LED on the LinkIt one board blinks, this is to confirm that your setup is successful.
Now download the ino file attached and change the WIFI_AP and WIFI_PASSWORD to you home Wifi router name and password.
Also change the "blindOpenTime" variable value to 2000(that is 2 seconds).
Select the board and the port and upload the code as shown in the first picture above and test as shown in the video above.
If you want to debug/modify the code, un-comment the Serial.begin(115200); line and you should be able to use your serial monitor for debugging as shown in the second picture above when a link on the web app is pressed.
Once you uploaded the code and opened the web page if the servo is rotating, this means that your servo is not calibrated to stop at value 90. using a small screw driver turn the potentiometer just below the servo as shown in the second picture above.
Step 5: Adding the circuit to the blinds
You are almost done, not get the LinkIt One out of the base 3D printed part and screw the base to the wall the as shown in the picture above, depending on the type of your wall/mounting point you will have to use a power tool like Dremel to drill holes for the screws.
Now mount the other components as we did in step 3 and give it a quick test
Here you will have to keep increasing the "blindOpenTime" value as part of the Arduino code as part of the previous step to a value so that your blinds are fully open.