Introduction
I have been a fan of IoT (Internet of Things) since 2015. At that time, some IoT products existed, such as smart lights Philips Hue, smart home control system Fibaro, etc.
However, they were not as smart as what I had expected. For example, Philips Hue did not provide any detectors and their smart bulbs could be controlled only by their mobile app. To turn the lights on/off, I had to open the app instead of pressing the physical switch in a traditional way. I still needed to do an action to control the light. I wanted a hand free solution, if I am present then the lights should turn on, otherwise, they should turn off. A motion/presence detector was required. Then I found Fibaro, they provided motion sensors. Fibaro provides a web interface and configurable scenes which make it possible to trigger Philips Hue bulbs by Fibaro motion sensors. However if you want to have more fun, such as controlling light only by specific people with facial recognition or voice controlled lights (Amazon Echo and Google Home didn’t exist in France in 2015), you will need to build your own server and make it work with the bulbs and sensors.
Here is the link to the Github repo of a web server working with Philips Hue bulbs and Fibaro motion sensors. The web server is written in Python (flask), the script for Fibaro is in Lua.