This project provides a webpage and automated interface for controlling Belkin’s WEMO light switches and plug switches using the Miranda library.
At the end of the project you will have a webpage that can show real time state of all WEMO switches. Clicking the lightbulbs will toggle the state of the WEMO switch.
The backend sqlite database which stores the states of the WEMO switches can pave the way for all kinds of automated triggers including turning switches on/off at sunset or sunrise as shown in the last step.
Step 1: Setup WEMO Switches and Plugs
The only two devices which work with this project are Belkin’s WEMO Light Switch and Belkin’s WEMO Plug; all other WEMO devices are unsupported at this time, mainly because full automation is available via this app without the need for the WEMO motion sensors etc.
Record the MAC addresses which are physically printed on each of the switches/plugs and use those MAC address to setup a static IP address for each WEMO device on your Wireless router.
Note: the process for configuring a static IP address is going to be different on each router.
Once static IP assignment has been setup for the WEMOs proceed to setup your WEMOs via manufacturer recommended WEMO app for IOS or android.
tep 2: Install Raspbian on your Raspberry Pi
Download the image provided here –>
Follow the instructions to install the image and get your raspberry pi booted which is outside of the scope of this document.
Step 3: Setup Apache to Execute Python Scripts
Install the following dependencies:
Read the document here:
Confirm that your apache installation can handle python scripts by referencing the sample script at the link above.
The CGI-BIN directory used to place your test python scripts can be found at “/usr/lib/cgi-bin” on Raspbian, Debian, and Ubuntu systems.
Step 4: Download GitHub Code
If you do not have GIT installed already, install it with:
Then download the code using:
Make sure all python files are executable with:
For more detail: Raspberry Pi WEMO Control Center