A long time ago, I strarted to connect my home-devices to my network. Today everyone is doing this. I was thinking to move my home-devices to a "standard" system, but I did not at the end. The first reason is because I do not want to share my home data with google, amazon or any third party, and the second... I would not throw into the bin all I have done ;-)
Ok, I will surely be the only one who use this solution... but with this small site, I will keep a small documentation about this system.
The main idea is that each device should have enough capability to do its job without the help of a central system. For example, my outside light should know that it has to "switch on" at sunset and keep lighting until midnight.
With this idea, each device should be able to deal with different events (time, for example).
But, if network is available, each device should also be able to deal with communication to a central system... or to other devices.
For example, a device which has a button, should be able to send a message to anothe device which as a light.
In few words, each device has its own program, and it has also the capability to communicate to other device and also to a central system. In the other way, a central system could also be able to send order or query to each device.