Currently ESP's are by far the simplest to set up time wise, in under 2 hours a house can be rewired and connected with these devices.
The end result is a voice controlled, completely hands free environment with autonomous functionality.
Basically making a self-checking system with the User only notified in an alarm state, or there can be an approve/disallow state where the system presents options to the User of what route to take in a system defined event, by voice, sound, sms, windows notification, email, phone call, etc. Either way, the User can take control at any time either by voice, manual input like a button or NFC tag or by directly inputting in the Dashboard and if by chance every system failed there is another fail safe panel available to manually override any switch or command. The User can have the choice to allow the system to make all decisions or not make any its really just preference.
This type of error checking and lockout prevention is crucial.
As of right now this project is coming out of what I would call a Beta Stage. I started with MySensors/Domoticz then Pidome and I tried OpenHAB. LOTS OF TIME SPENT and
I came to the conclusion simplicity is what the goal is with a focus on security and safety. Where simplicity is sacrificed is only where security and safety play a bigger role.
I installed magnetic door locks in my house when I very first began trying to accomplish integration and I ended up locked in or out of certain parts of my house. Definitely not something you would want to happen in an emergency I believe after exhausting every possible route with hardware the solution is now clear on how to make sure no errors occur and that is cutting the AVR devices from crucial applications, for simple things they are useful but that is it.
My solution allows no external hardware other than a simple Esps' and a Rpi.
RPI acts as a dns server running PIHOLE and a Server to run the automation software Domoticz.
So you get Web filtering, which lowers congestion, pretty decent latency and response time and a very stable automation foundation.
Simplifying execution by writing scripts in blockly definitely is easier than dealing with the AVR way. For example I sometimes forget to turn my soldering iron off when I'm done working and its set to turn itself off after 900 seconds or 10 minutes, obviously it does get annoying when Im still using it, but this is just a Beta adding an "if "statement to make it check for a variable would not be too hard I've just been busy. Another easy example is my security sensor which is integrated with pushbullet. Talking here about cross-device compatibility, I made it work with cortana and google assistant as well. The server crashed a couple times running all 3 systems but it was an interesting stress test.
Variables can be set to trigger and do whatever there isn't really a limit with the availability of current technology. From PH sensors, water flow, gas flow, burden-resistors and split-core transformers controlling anything autonomously and with your voice remotely never has been so easy.