WifiLamp
I have a lamp in my room where I intercepted the powerline using a relais and ESP2866 to control it from my phone/amazon dash button.
The micro controller connects to my home WiFi and starts a webserver to control it. APIs exist to simplify control from other software components like android app.
Parts
- Wemos D1 Mini
- Wemos D1 Mini Relais Board
- IKEA Aläng Lamp
- Random 5V 1A Phone charger with USB plug unsoldered (see photo)a
- (optional) Amazon Dash Button
Software components
- There is the code running on the micro controller. The code is here. I compiled it using the Arduino IDE. There is some setup needed to get it running on ESP2866. I don't know how to set it up anymore. I also implemented some remote update functionality to apply updates via WiFi.
- I could not fit the switch on/off images into the firmware, so I moved them to a CDN apache webserver in my LAN. The contents of the cdn are here.
- To control my light using a (free) amazon dash button, i have a small nodejs script running inside a 256MB Ram ubuntu vm on my home server. The code is here. I hate scripting languages like JavaScript and I have no clue how to get it running on your machine. There is a dependency to the amazon dash button library. I don't know how to install it. That's why I have a VM that I can backup!
Other implementations
You can use the same circuit / software in other projects too. I made a WiFi-controlled power plug too!
Languages
C++
92.9%
JavaScript
5%
QMake
1.1%
Dockerfile
1%