For a couple of weeks ago i decided to re-write my home server application that I use to manage my lighting in my apartment. The current application I’m using, which is called enlight and is the first I wrote, is a program that checks if someone comes home or leav. If someone (must be a trusted person) enters the apartment it will turn on the lights. If everyone leave the lights will be turned off.
Enlight uses arp-scan to see if a trusted user is at home by comparing the IP addresses returned by a list with trusted IPs (users). This works pretty well, except that the devices of course must be turned on.
The new application, named homelink, runs as a daemon on a Debian server installed on a Raspberry Pi. It listens for IP packets containing so called actions, which contain different types of home actions. Turning on and off lights are examples of actions. The server is pretty general so it will be easy to extend with support for other types of actions in the future.
I will post more updates on homelink as the development progress. The source-code is available at github if you are interested. https://github.com/klarre908/homelink