EZ-HouseMode-SceneRunner

Just get a mini pc with ssd. I started with a PI, moved to a celeron mini pc and now I have an intel i3 with 16 gb ram and 512 gb ssd running Linux server. I got it from work, when they swapped desktops with laptops and even if it’s 3 years old, it’s rock solid. It’s a mini pc, so smaller than my vera plus, but it’s able to run whatever you want. I’m sure there are used ones on eBay and usually it’s about 200 eur new, where a pi with ssd and a case is usually 100+.

Which Linux distribution are you using?

Ubuntu, because I like it. No problems with drivers, I got Bluetooth working too, so I integrated a couple of bt only devices.

1 Like

Agreed, you might as well skip right over the Pi if there is a chance that would be your end step. I have a couple old Mac Minis running Ubuntu Linux and like @therealdb said, it supports pretty much any hardware. Both make heave use of docker and one sits within an isolated VLAN with a Vera Edge running Ezlo Linux for automated Ezlo-Hub-Kit regression tests). You can’t go wrong with the real deal, especially if you do want to run InfluxDB.

SIGH I wish the house modes plugin was baked into the new Ezlo firmware. I used it on my old Vera secure to run scenes whenever the house mode changed. Hopefully that will be added soon.

Hello @rlargent,
At the moment, you can change the house mode with an action in the scenes. Unfortunately, you can’t trigger scenes with the change in the house modes. However, you can create a scene that changes the house mode along with other actions and run it every time you need to change the house mode.
Also, you can use our Community Feature and Bug Tracker tool to send a feature request for this idea. More information on this tool can be found here.
Regards!

That’s how I have always done it on my Vera hub.

I have scenes that change the house mode and then run other actions as well.

I never change the house modes directly.

That doesn’t work very well when using a keypad though. I was hopeful that one of the virtual sensors available would allow me to make a status update through the house mode configuration that I could use to trigger a scene. The only one I see is the motion sensor and I don’t think it will work. Oh well I’ll keep trying to get creative and maybe I’ll come up with something. On my Vera Secure I was able to use the house mode plugin to trigger a voice monkey to announce whenever the scene changed via Alexa and turn on/off lights depending on the mode. For example I would turn on the porch lights for 10 minutes if it was after dark when changing to home mode. It doesn’t seem like much but was nice when coming home after dark to just have everything do what I needed when just disarming the system. Maybe this ability will get implemented soon. I love the responsiveness of the new system but am playing with the ideas of keeping the new, going back to the old, or getting rid of automation completely and returning the house to dumb switches and outlets.

Seems like a good idea to be able to trigger a scene when the house mode state changes from one mode to another.

Was a feature request made?

Yes I did make a feature request a couple weeks ago (ECS-747).
I don’t think it has been assigned or reviewed since the status still says “open”.

All mine say open and I have like 80 tickets. :blush:

I have asked them to bump your ticket up the list.

That’s great. Thank you for the report. Here is the link to the request in case anyone else wants to take a look Log in - MiOS.
In the meantime, you could create the scenes that trigger manually and run them from the app or with voice commands to Alexa.
Regards!

That is fantastic! thanks

1 Like

Ok so I decided to give this a try.
Once I have everything setup and running in a docker container I am seeing the site map but it doesn’t appear to discover my hub. I must be missing something but can’t seem to figure out what. Any suggestions? I’m thinking maybe username and password are wrong. Is this the same username and password used to login to the Ezlo Hub?

@rlargent, you use the same username and password that you use for the https://home.getvera.com portal. Give that a try and let me know how it works out. If that doesn’t work, I can help you with some additional troubleshooting steps.

Ok, I confirmed that my username and password are correct but maybe I’m missing a quote or something.

Here is what I used to create the docker container and start it:

I changed my username and password so I’m not sharing private information.

docker run -it --network host --name ez-mode-scenerunner -e miosUser=username -e miosPassword=password ghcr.io/bblacey/ez-housemode-scenerunner

This is what I get when this runs:
Screen Shot 2021-08-27 at 10.23.31 AM

Agreed. If the credentials were incorrect, EZ-HouseMode-SceneRunner would tell you.

That said, EZ-HouseMode-SceneRunner uses mdns to locate the available hubs. This means that the EZ-HouseMode-SceneRunner host needs to be on the same network segment as your Ezlo Hub. If that is the case, then the next thing to check is that your hub appears in mdns. It looks like you are running on macOS so an easy way to check is to download the Discovery App from the App Store and check to see if Discovery “discovers” your Ezlo Hub.

Thanks for the reply, the discovery app definitely does see it.
Screen Shot 2021-08-27 at 12.27.11 PM

Perfect. That means that docker --network=host does not bridge like it does on Linux or Windows. So, I see 3 options - let me know which one you prefer.

  1. Run EZ-HouseMode-SceneRunner in docker on a Linux or Windows host (only if you have one available like an RPI, etc.).
  2. Run Node natively on macOS. The steps would be something like this (I will verify first if you want to use this option):
  • brew install npm
  • git clone https://github.com/bblacey/ez-housemode-scenerunner
  • cd ez-housemode-scenerunner/node-app
  • npm install
  • node index.js
    I run node natively on macOS for development and it is very straight-forward.
  1. I can modify EZ-HouseMode-SceneRunner to allow you to override the mdns search with a specific hub identity. This means that it would only work for a single hub that is probably 90% of the cases.

Let me know your thoughts.

Running locally may be best since I already have home-brew installed.
With this option how do I pass login credentials?