(Last Updated: July 4, 2020)

The Home Automation Controller Pyramid



  • Since one member asked at one point about the "front end" and "back end", I drew this showing the controller from the base to the tip along with what I have found to be the best options from my testing. Almost every controller will try to integrate all elements, especially commercial ones but... they all have strengths and weaknesses so if one can have a medley of the best ones...

    Screen Shot 2020-05-14 at 07.11.06.png



  • Good picture, but isn't home assistant not also a bit of Front-end?



  • You could argue the same for the Z-way, since there the possiblilty to create virtual devices and scenes.

    @rafale77 said in The Home Automation Controller Pyramid:

    Almost every controller will try to integrate all elements

    ...so there's bound to be some fuzzy edges.



  • The controllers on the drawing are the best ones in that box in my opinion. As I said, almost every controller actually tries to fulfill the pyramid. Home Assistant has a pretty good GUI now though its controls of automation from the GUI is poor and the automation logic itself is pretty incomplete causing some people to run node-red as the front end for Home-Assistant. I run openLuup... 🙂
    For the Integration layer, I run both Home-Assitant with all its integration component and openLuup and its many vera plugins, manually bridged together.
    For the backend, I run z-way into openLuup and Bellows into Home-Assistant.

    All boxes are important but each box depends on the box below it. As an illustration, when I start my system, I have to start it from bottom to top. When a controller is built and tested, it should be done from bottom to top as well in order to make sense and be effiscient.

    The z-way-server also does all three and each API: the zwave API, JS API, Automation API, pretty much corresponds to each of the APIs I drew in order from bottom to top. It is just very good at the bottom layer but not as good as others as you go up the boxes. The best part of vera was the middle box with the community plugins and pretty complete virtual device set and is what openLuup has improved on.



  • From my reading of different forums it doesn't look like Homeseer is doing all that great with their HS4 release. So between them and vera going down dead ends, it looks like Z-way and the in beta openzwave-QT will soon be the only contenders for zwave and I would slide in hubitat as third in spite of their lack of S2 support... Pretty sad to see good choices get smaller and smaller.



  • I think part of the problem is that there are too many standards to chose from. None of them have a complete offering in terms of the hardware, the big boys have tried to create closed ecosystems (also not complete, or lacking in some other way) and very few (none) of the current offerings are succeeding at supporting the whole shooting match.

    Feels like there are no decent devs / architects out there with a focus on a clear end model and some decent funding that's not making bad technical decisions.

    C



  • I think also that there is a business problem issue. The controller is absolutely critical and getting the right hardware and software is a lot of work. However they are being sold as a very low cost to attract new customers into the ecosystem while the real business is actually in the devices. The controller is only an enabler. Homeseer was the only one selling theirs at a high price... And then there is open source... Vera tried very hard to differentiate from the rest, attempting self maintenance and trying to get a lot of smart in the zwave management, taking control away from their customers. It tanked because not only was it mostly unnecessary but above all, it was very poorly designed. Let's see how the others do...



  • @rafale77 that's a good point.

    However, I fear that seeing how the others 'do' is pretty much how they've 'done' I had a X10 system running off a USB 'thing' and Indigo automation software. That was about 15 years ago. If anything it was easier and more reliable than stuff today (let's talk about how my magnetic door sensors don't un trip if you don't have the door open for more than about 3 seconds).

    There is a significant difference that I have more money to throw at it than I did then, but progress seems, well, erratic. What do we have? Switches, dimmers and thermostats really.....

    C



  • I run QT-openzwave... beta but very steady and very easy! After the holiday it will by bye bye vera... almost all logics are already transferred to home assistant and node-red just some pleg and the "garaga door plugin" running on vera... I moved all problematic devices to QT and since then it's rock solid. Even Vera is fast. And since zwave devices are included (secure) in qt zwave I did not even know they were also so good and fast 🙂



  • Vera’s zwave is a mess and I’m giving them a compliment.
    I still think the idea behind Vera was good, the execution made it what it is. With more attention to details and the ability to really fix bugs, it could have been a good solution.

    I still want a plug and play solution with easy customization, but maybe we’re just at the beginning and this market needs to reach its peak to become more mainstream.



  • The closest to a plug and play local all in one is probably Hubitat at this point but they have their limitations in each area. For a large system with a lot of plugins, it seems like the RAM and CPU on their unit is a limiter.
    Home Assistant is also going through some strange strategic changes and is really not plug and play... though that's what they aim towards but the rate of breaking changes and tedious "templating" for automation has me much prefer openLuup at this point. It is a bit of pitching lua vs. python+yaml...



  • @rafale77 said in The Home Automation Controller Pyramid:

    much prefer openLuup at this point

    AT THIS POINT ...? 😮



  • haha... yeah and for the foreseeable future. I just started learning a little python because all the machine learning libraries seem to have a python API so it makes things much easier... But for home automation, I for one am way too invested in lua and two, don't see python as being suitable... which is, I am guessing, why Home Assistant has supplemented it with yaml. Gosh and I am not even a coder/developer by trade... I just am enjoying the learning.



  • to be fair, ezlo seems to have implemented Zwave (and Zigbee) stack in a modern way. but I'm not convinced at all by their new programming environment. they're adopting an approach very similar to HA's, where you can launch scripts to intercept events, instead of having services always executing. So, openluup it's probably the safest bet in terms of features and stability for luup refugees.



  • and yes, I don't like python neither. I learned LUA quite easily (being a dev for the latest 25 years helped) and I was really tempted to build my own engine running C# (on Linux, it's xplat now thanks to .NET Core) at some point, and move all my logic there, and use some hub just to send ZWave commands. I have already tons of code doing integrations with Vera, MiLight, OpenSprinkler, MQTT running in my own C# service, but it was just for fun.
    The real problem is more about building a compelling UI, today, and offer side services (Alexa/GoogleHome, remote access, etc) than anything else.
    A couple of friends approached me (because you know, home automation addiction has grown in me) because they wanted to build something and I always told them to not do anything like I did, because it needs maintenance. I dream of a day when we'll get a real plug&play system. We're not there, clearly.



  • @therealdb said in The Home Automation Controller Pyramid:

    to be fair, ezlo seems to have implemented Zwave (and Zigbee) stack in a modern way.

    But what they (appear) to be shipping a beta seems way too immature. When would you think there's a production product? Feels to me like 2021 some time?

    C



  • @CatmanV2 said in The Home Automation Controller Pyramid:

    But what they (appear) to be shipping a beta seems way too immature. When would you think there's a production product? Feels to me like 2021 some time?

    yes. current system is barely usable. They are targeting next September, and they can improve fast, because they want to release a new build every 2 weeks. The real problem is their priorities: in order to migrate, you have to unpair and pair again all your devices. It's impossible for me (70+ devices, sometimes buried into boxes I really don't know where, since they were first installed by my electricians when building the house) and for many more people.
    The concerning problem is that it's quite impossible for them to have plug-ins ready, because their new runtime is completely different and porting is not easy. But from a Zwave standpoint, they seem to have learned the lesson, by decoupling devices from implementation, and by allowing device definition to be updated separately. We'll see, it's probably too early and a lot of customers will migrate to anything better when the product will be really ready.



  • @therealdb said in The Home Automation Controller Pyramid:

    next September

    2020 or 2021? 2021 seems more likely. Short sprints only means lots of progress if you're actually capable of writing code. Given the number of recurring issues, this seems something that may be beyond them.
    And who's going to hang around for 2021?

    C



  • @rafale77 said in The Home Automation Controller Pyramid:

    I just started learning a little python because all the machine learning libraries seem to have a python API so it makes things much easier... But for home automation, I for one am way too invested in lua and two, don't see python as being suitable...

    My view entirely! Python is a huge language compared to Lua. Its real plus is the vast number of libraries, but the huge minus is the size of the system. Parts of openLuup (the Historian's graphite_cgi module, and the Whisper database were translated from Graphite's Python code, so I had to learn it a bit.

    @CatmanV2 said in The Home Automation Controller Pyramid:

    I think part of the problem is that there are too many standards to chose from.

    Indeed... always the problem with 'Standards'.



  • @akbooer

    Indeed... always the problem with 'Standards'.

    Of course, we only need one. TCP/IP would do just dandy! 😉

    C


Log in to reply