thanks all for the feedback. I will check out Hubitat and see how it does.
sebby
Following on from my last thread, some progress has been made over the weekend.
With 18G of spanky RAM in my Synology DS224+. I've jumped into the murky world of virtualisation and already eliminated the need for two Raspberry Pi's from my system.
Home Assistant: In theory they provide an OVA file which is supported by the Synology. I couldn't get it to work, however, so grabbed a copy of the .img file they supply, renamed it .iso and imported it as a VM. Restored from my full back up and that all seems fantastic.
Minidnla Music server: Trivial. Grabbed a Debian .iso for Bookworm and copied that onto the NAS. Created a new machine which mirrored the specs of the Raspberry Pi, booted from the ISO then did an expert install. Once that was all stable with a basic core of stuff and networking, I've made a copy of that as a good base system. Then fired up minidnla on it, mounted my media and that's also woking. Not bad for a short weekend's work.
Still not sure about the main NUC though. I'm thinking of buying a new USB stick so I can mess around getting it working on the Synology before I do anything drastic.
Once that hurdle is sorted I'm torn between:
Using a brand new install of Bookworm, re-installing Z-way server, OpenLuup, AltUI, MSR and HA bridge, then restoring across or Making an ISO of the current system, importing that and upgrading in place (which will be pretty risk free since I can snapshot everything before I make any changes.)Decisions, decisions.
C
Morning, experts. Hard on learning about the internet check script in MSR tools, I was wondering what suggestions anyone has about a local (i.e. non-internet dependent) notification method.
This was prompted by yesterday's fun and games with my ISP.
I've got the script Cronned and working properly but short of flashing a light on and off, I'm struggling to think of a way of alerting me (ideally to my phone)
I guess I could set up a Discord server at home, but that feels like overkill for a rare occasion. Any other suggestions?
TIA
C
Hi everyone. Thanks for all your input recently on the topic of local notifications. I think we got some really interesting solutions 🙂
Back to more prosaic matters. Most of you will know that I've been messing around with this stuff for some years. My last major change was when I migrated from Vera, which was something like 4-5 years ago.
While my system has grown, it's not really altered very regularly, although I try to keep most of it kind of up to date.
Current set up:
Intel NUC that runs:
Bare metal install of Debian
Z-way server with Z-wave.me USB stick
Openluup
Altui
Multi system reactor
HA Bridge
Mosquito
Raspberry Pi
Running Home Assistant
About 40 varied Z-wave and Wifi devices
I also have a Synology DS224+ which may inform some responses.
Home Assistant recovery is pretty simple. I get a full backup of the system every night dumped onto my SAN and I know from experience that it would simply be a case of booting up a new install and feeding it the backup.
The NUC on the other hand....
Coming from a commercial IT world, I am becoming more and more conscious that I don't really feel I have a suitable disaster recovery plan, and my core system is running on hardware heading for 10 years old.
My initial thought, which I've kept putting off as it's awkward would be to grab a nice SSD, reboot the NUC into Mint or something similar and simply do a dd copy onto a new drive. I can get a replacement NUC on ebay simply enough, and keep it in a cupboard if anything other than the hard drive fails on the existing one, but this feels rather like a stop gap. However one immediate question:
If I had to use the replacement NUC would all the Z-wave devices simply carry on talking to the stick, or would they all need to be re-paired?
How easy would it be to move everything the NUC does (as a start) onto the NAS? Create a VM and clone the disc onto it?
Should I move to Docker? Something else?
What are the hive mind's thoughts?
Apologies if we've done this before, but while it all just works...
Cheers!
C
Morning world. Looking for some thoughts on recent experience 🙂
Yesterday my ISP had something of a catastrophic failure (in theory not yet fixed but seems OK for now)
While this is annoying for several reasons, one thing that I wasn't expecting was for AltUI to become pretty much un-usable.
Unless I have a tab already open and active, connecting to the Home page is pretty much random / impossible, just presenting with a white page and (sometimes) 'Waiting for initial data' on the bottom. Everything works (i.e. where I have controllers or Reactions I can trigger, they function flawlessly) it's just something of a pain since 99.9% of my control is via Alexa now, and not being able to access devices in AltUI makes things like turning some lights of a bit tricky 😉
I suspect that this is due to AltUI trying to pull licence info and Weather data, and failing. What I should do is probably access the OpelLuup console direct and see if that works better in future.
Does that make sense to anyone, or am I completely off track?
Cheers
C
Hi all. First post so please be gentle.
I have an Eachen two-gang smart wall switch wired no neutral (with capacitor) connected to existing bathroom lights which works perfectly. It's also wired to a Sonoff Mini R4 Extreme connected to LED lights. I want the LED lights to switch on when the bathroom lights switch on (and vice versa). The Mini R4 works separately on my phone via Ewelink as well as on the Mini R4 itself (physical button). The switch is installed inside the wall and the rest of the components are in the ceiling / attic / roof cavity. The Mini R4 is set to Edge switch mode which works in my example I wired.
How I wired it:
cb919874-6933-460a-8cd0-f063bac88674-image.png
I have a video showcasing the example I wired today works. I could share it if required. Ignore the white cable. I only used it to power the example.
77ebbc23-83de-48ee-a4bf-247bfd24f121-image.png
3827ede6-cf5c-47aa-8fdb-c75470101c4a-image.png
The wiring diagram I used for the mini R4.
485de912-e656-4da3-b6f6-81cb076e0261-image.png
I wired it together with the existing lights of the bathroom so that L1 switches on both the Mini R4 and the bathroom lights:
a3ea5c93-a9ae-4aaf-8dce-24018bcdb4d1-image.png
This is the wiring diagram for the Eachen switch:
b867a3c7-c1ac-428c-a90f-7f0f4b62a609-image.png
The Eachen's first gang (L1) doesn't trigger the Mini R4 in any way.
Any help or advice will be much appreciated.
Thanks,
R
Hi,
I'm trying to integrate the sonos-mqtt (https://sonos2mqtt.svrooij.io/) with the MSR and it's coming along nicely so far.
But cannot wrap my head around how to define custom capabilities in MQTT templates. I need this for the TTS announcements and similarly for the notification sounds where I would pass the sound file as parameter.
So this is what I have in the local_mqtt_devices.yaml
capabilities: x_sonos_announcement: attributes: actions: speak: arguments: text: type: string volume: type: int delay: type: intAnd this is the template:
templates: sonos-announcement: capabilities: - x_sonos_announcement actions: x_sonos_announcement: speak: topic: "sonos/cmd/speak" payload: expr: > { "text": parameters.text, "volume": parameters.volume, "delayMs": parameters.delay, "onlyWhenPlaying": false, "engine": "neural" } type: jsonSo the speak action should send something like this to topic sonos/cmd/speak
{ "text": "message goes here", "volume": 50, "delayMs": 100, "onlyWhenPlaying": false, "engine": "neural" }At startup the MSR seems to be quite unhappy with my configuration:
reactor | [latest-25016]2025-02-09T08:19:59.029Z <MQTTController:WARN> MQTTController#mqtt entity Entity#mqtt>sonos-announcement unable to configure capabilities [Array][ "x_sonos_announcement" ] reactor | i18n: missing fi-FI language string: Configuration for {0:q} is incomplete because the following requested capabilities are undefined: {1} reactor | i18n: missing fi-FI language string: Configuration for {0:q} has unrecognized capability {1:q} in actions reactor | Trace: Configuration for {0:q} is incomplete because the following requested capabilities are undefined: {1} reactor | at _T (/opt/reactor/server/lib/i18n.js:611:28) reactor | at AlertManager.addAlert (/opt/reactor/server/lib/AlertManager.js:125:25) reactor | at MQTTController.sendWarning (/opt/reactor/server/lib/Controller.js:627:30) reactor | at MQTTController.start (/var/reactor/ext/MQTTController/MQTTController.js:268:26) reactor | at async Promise.allSettled (index 0) Configuration for "sonos-announcement" has unrecognized capability "x_sonos_announcement" in actions Controller: MQTTController#mqtt Last 10:21:37 AM Configuration for "sonos-announcement" is incomplete because the following requested capabilities are undefined: x_sonos_announcement Controller: MQTTController#mqtt Last 10:21:37 AMThis is probably a pretty stupid question and the approach may not even work at all, but maybe someone or @toggledbits for sure, could point me to the right direction.
Basically the idea is to be able to send TTS messages from reactions using entity actions. I've previously used HTTP requests to Sonos HTTP API (https://hub.docker.com/r/chrisns/docker-node-sonos-http-api/) for the same functionality, but since moving to sonos-mqtt, I need a way to send the TTS notifications using MQTTController. Along with the actual message, volume and delay must also be parameterizable.
br,
mgvra
MSR latest-25016-d47fea38 / MQTTController [0.2.24293]
Hi, @toggledbits
I just noticed that following a reboot of my raspberry pi, some of the rules, that I was expecting to recover, are not catching up following a reboot. I have made a simple test rule (rule-m6rz6ol1) with only "after Date/time" as trigger and "turn on a lamp" as a set reaction. All my infrastructure is on the same board so Reactor, Hass, Zwavejs, ... are all rebooting.
Here is the sequence of the test case (All time converted to Zulu to match logs):
Rule "after Date/Time" set to 14:05:00z Shutdown on Raspberry Pi at 14:04:00z Power back up at 14:08:00z Rule overview shows true as of 14:08:14z waiting for 00:00:00 in GUIFrom the log I can see that MSR is picking up the rule and knows that the state of the rule has changed from false to true and tries to send the update to HASS but failed with websocket error.
Here is what I see from the log:
14:04:04z shutdown complete 14:08:08z Power up 14:08:13.111z websocket connection 14:08:15:323z Reaction to the light failed, Websocket not opened After there is a series of websocket connection attempt until 14:08:51z where it seemed to be really ready.Back in 2021 we had a discussion (https://smarthome.community/topic/700/solved-start-up?_=1738766986566) and you proposed to add a startup_delay:xxxx and startup_wait:xxxx parameter in the engine section of "reactor.yaml". When I try the startup_delay (this used to be a hard delay), the engine failed to start (I think). I then try the startup_wait:xxxx without any success. Since it wait for the connection status to be up to cancel the delay, it does not do anyting since Hass is reporting the socket up without really being up ( I think...).
Questions:
Did I figured it all wrong? should the startup_delay:xxxxx have worked? Any ideas?Here is the log:
OK now I am stuck. I did add the log but when I submit the editor complained saying that I am limited to 32767 characters. The log from the shutdown to the time the websocket is stable is about 300000 character long. What are my options?
Not a big issue simply a request if easily doable.
The MSR logs files inside the container are owned by root witch is fine however, the permissions are very restrictive. I do not know if there is something wrong with my installation but the logs permission are set to 222 (write only). Even if the docker volume is set for Read/Write the log files are retaining these values.
I go around the problem by doing a chmod 777 on all reactor logs but every time there is an MSR log rotation the permissions are set back to 222. So unless the permission are implemented in the container there is no permanent solution to this (that I know of).
I do not know much about Docker container so I do not know what is involved here.
Can the logfiles permission be simply chaged in the container to at least allow "other" read permission?
Could the MSR log rotation routine implement a chmod to set the permission?
Just a small anoyance
Thanks
@toggledbits In the MSR documentation, under Standard Capabilities, I noticed that the
button.since attribute was deprecated as of version 22256 and the metadata is the preferred way to access the last-modified time of an attribute.
Am I reading this right? Should I stop using it in my rules?
Thanks
When on my bare metal RPi with MSR I had a rule that ran every minute to check Internet status via a script in MSR called reactor_inet_check.sh
I've moved to containerized MSR and see in the instructions that this cannot be run from the container.
The script cannot run within the Reactor docker container. If you are using Reactor in a docker container, the script needs to be run by cron or an equivalent facility on the host system (e.g. some systems, like Synology NAS, have separate task managers that may be used to schedule the repeated execution of tasks such as this).
I've put a script on my container host that calls the reator_inet_check.sh script and it isn't erroring... but I still see the internet status within MSR as null.
Before I go diving down the rabbit hole... should this work?
My cronjob on the proxmox host:
909fe6f0-77fd-4734-80a4-c9e354c910b6-image.png
The contents of msr_internet_check_caller.sh
16337528-cf31-4968-bffe-af1149f7103e-image.png
Just bought a couple of generic smart plugs and set them up easily using SmartLife app in the house I then plugged one into a workshop over 100m away This workshop has a hardwired internet connection with a separate wireless access router (not mesh) after doing a reset on the device and pairing to the new router it actually works from the house when my phone is connected to a completely separate wifi network - how is that possible ?
I did read something about these devices connecting to a server somewhere in China similar to IP cameras but there is no lag
I need to replace about 15 traditional wall light switches (no neutral wire) to turn on/off all lights with one operation inside the warehouse. And still maintain the ability to control each light individually.
The preference is not to set up a Wifi for each switch to reduce the number of devices connected to the network, and also, they change the Wifi password regularly, so they do not want to change all 15 switches.
I am looking for some solution that will achieve this with either Bluetooth/RF or any other technology.
The warehouse dimensions are about 100ftx100ft with sheetrock walls.
Please assist.
Background: this is a Windows MSR install I've done for our local pool/amenity center just to run some fans and lights (not my daily driver at home). Install went perfectly fine.
Scenario: I want the lights to go on when it's dark enough (even if during a storm, not just after sunset) so I'm using solarRadiation from my weather station to drive that Trigger. Easy stuff.
Issue: sometimes, someone goes in the office and just starts flipping switches and the result can be lights turned on in the daytime or off at night. I'm trying to create a "catch-all" wherein if it is daytime and the lights somehow find their way ON, they will turn themselves back OFF.
I have the following Reaction built:
b30eab5b-5a14-4a3a-8c9a-47e3e7e53dc3-image.png
I also have this Reaction for opposite, ie the lights find themselves turned off after dark and they will turn themselves back on:
5c6946b1-297c-4eb1-9618-74820979df29-image.png
Here are my two rules:
288cba86-f941-4157-86d9-d8e7487905f7-image.png *NOTE that in my manual testing, ie I turn on the light switch at the incorrect time, when the solarRadiation level changes the Lights ON rule flags and shows as SET. On the next change of solarRadiation it goes back to reset again.
My expectation is that Lights OFF rule should see the lights are on, the solarRadiation is above the set limit, and turn them off. Instead, every other run, the ON rule moves to SET and then reset again on the following run.
Logs appear angry:
[latest-25016]2025-01-26T22:03:31.696Z <Engine:INFO> Enqueueing "Lights ON<RESET>" (rule-m6e4ajh7:R) [latest-25016]2025-01-26T22:03:31.712Z <Engine:NOTICE> Starting reaction Lights ON<RESET> (rule-m6e4ajh7:R) [latest-25016]2025-01-26T22:03:31.713Z <Engine:INFO> Lights ON<RESET> all actions completed. [latest-25016]2025-01-26T22:03:42.565Z <wsapi:INFO> client "127.0.0.1#3" closed, code=1001, reason= [latest-25016]2025-01-26T22:03:42.753Z <httpapi:INFO> [HTTPAPI]#1 API request from ::ffff:127.0.0.1: GET /api/v1/lang [latest-25016]2025-01-26T22:03:42.754Z <httpapi:INFO> [HTTPAPI]#1 request for /api/v1/lang from ::ffff:127.0.0.1 user anonymous auth none matches /api/v1/lang ACL (#7): [Object]{ "url": "/api/v1/lang", "allow": true, "index": 7 } [latest-25016]2025-01-26T22:03:42.790Z <wsapi:INFO> wsapi: connection from ::ffff:127.0.0.1 [latest-25016]2025-01-26T22:03:42.839Z <wsapi:INFO> [WSAPI]wsapi#1 client "127.0.0.1#6" authorized [latest-25016]2025-01-26T22:03:43.353Z <httpapi:INFO> [HTTPAPI]#1 API request from ::ffff:127.0.0.1: GET /api/v1/systime [latest-25016]2025-01-26T22:03:43.353Z <httpapi:INFO> [HTTPAPI]#1 request for /api/v1/systime from ::ffff:127.0.0.1 user anonymous auth none matches /api/v1/systime ACL (#5): [Object]{ "url": "/api/v1/systime", "allow": true, "index": 5 } [latest-25016]2025-01-26T22:03:48.146Z <wsapi:INFO> client "127.0.0.1#6" closed, code=1001, reason= [latest-25016]2025-01-26T22:03:48.308Z <httpapi:INFO> [HTTPAPI]#1 API request from ::ffff:127.0.0.1: GET /api/v1/lang [latest-25016]2025-01-26T22:03:48.309Z <httpapi:INFO> [HTTPAPI]#1 request for /api/v1/lang from ::ffff:127.0.0.1 user anonymous auth none matches /api/v1/lang ACL (#7): [Object]{ "url": "/api/v1/lang", "allow": true, "index": 7 } [latest-25016]2025-01-26T22:03:48.346Z <wsapi:INFO> wsapi: connection from ::ffff:127.0.0.1 [latest-25016]2025-01-26T22:03:48.390Z <wsapi:INFO> [WSAPI]wsapi#1 client "127.0.0.1#7" authorized [latest-25016]2025-01-26T22:03:49.412Z <httpapi:INFO> [HTTPAPI]#1 API request from ::ffff:127.0.0.1: GET /api/v1/systime [latest-25016]2025-01-26T22:03:49.413Z <httpapi:INFO> [HTTPAPI]#1 request for /api/v1/systime from ::ffff:127.0.0.1 user anonymous auth none matches /api/v1/systime ACL (#5): [Object]{ "url": "/api/v1/systime", "allow": true, "index": 5 } [latest-25016]2025-01-26T22:03:52.734Z <wsapi:INFO> client "127.0.0.1#7" closed, code=1001, reason= [latest-25016]2025-01-26T22:03:52.891Z <httpapi:INFO> [HTTPAPI]#1 API request from ::ffff:127.0.0.1: GET /api/v1/lang [latest-25016]2025-01-26T22:03:52.892Z <httpapi:INFO> [HTTPAPI]#1 request for /api/v1/lang from ::ffff:127.0.0.1 user anonymous auth none matches /api/v1/lang ACL (#7): [Object]{ "url": "/api/v1/lang", "allow": true, "index": 7 } [latest-25016]2025-01-26T22:03:52.925Z <wsapi:INFO> wsapi: connection from ::ffff:127.0.0.1 [latest-25016]2025-01-26T22:03:52.965Z <wsapi:INFO> [WSAPI]wsapi#1 client "127.0.0.1#8" authorized [latest-25016]2025-01-26T22:03:54.383Z <httpapi:INFO> [HTTPAPI]#1 API request from ::ffff:127.0.0.1: GET /api/v1/systime [latest-25016]2025-01-26T22:03:54.384Z <httpapi:INFO> [HTTPAPI]#1 request for /api/v1/systime from ::ffff:127.0.0.1 user anonymous auth none matches /api/v1/systime ACL (#5): [Object]{ "url": "/api/v1/systime", "allow": true, "index": 5 } [latest-25016]2025-01-26T22:04:01.590Z <wsapi:INFO> [WSAPI]wsapi#1 rpc_echo [Object]{ "comment": "UI activity" } [latest-25016]2025-01-26T22:04:39.646Z <Rule:INFO> Lights OFF (rule-m6e33ja3 in Atrium Lights) evaluated; rule state transition from RESET to SET! [latest-25016]2025-01-26T22:04:39.656Z <Rule:INFO> Lights ON (rule-m6e4ajh7 in Atrium Lights) evaluated; rule state transition from RESET to SET! [latest-25016]2025-01-26T22:04:39.663Z <Engine:INFO> Enqueueing "Lights OFF<SET>" (rule-m6e33ja3:S) [latest-25016]2025-01-26T22:04:39.665Z <Engine:INFO> Enqueueing "Lights ON<SET>" (rule-m6e4ajh7:S) [latest-25016]2025-01-26T22:04:39.668Z <Engine:NOTICE> Starting reaction Lights OFF<SET> (rule-m6e33ja3:S) [latest-25016]2025-01-26T22:04:39.669Z <Engine:NOTICE> Starting reaction Lights ON<SET> (rule-m6e4ajh7:S) [latest-25016]2025-01-26T22:04:39.669Z <Engine:INFO> Lights ON<SET> all actions completed. [latest-25016]2025-01-26T22:04:39.675Z <Rule:INFO> Lights OFF (rule-m6e33ja3 in Atrium Lights) evaluated; rule state transition from SET to RESET! [latest-25016]2025-01-26T22:04:39.680Z <Engine:NOTICE> ReactionHistory: no entry for [latest-25016]2025-01-26T22:04:39.683Z <Engine:NOTICE> [Engine]Engine#1 entry 256 reaction rule-m6e33ja3:S-1q2f1j0p: [Error] terminated [parent terminating] [latest-25016]2025-01-26T22:04:39.683Z <Engine:CRIT> Error: terminated [parent terminating] Error: terminated at Engine._process_reaction_queue (C:\Users\Jalan\msr\reactor\server\lib\Engine.js:1644:47) [latest-25016]2025-01-26T22:04:39.699Z <Engine:NOTICE> [Engine]Engine#1 entry 254 reaction rule-m6e33ja3:S: [Error] terminated [preempted by rule state change] [latest-25016]2025-01-26T22:04:39.699Z <Engine:CRIT> Error: terminated [preempted by rule state change] Error: terminated at Engine._process_reaction_queue (C:\Users\Jalan\msr\reactor\server\lib\Engine.js:1644:47) [latest-25016]2025-01-26T22:04:39.700Z <Engine:INFO> Enqueueing "Lights OFF<RESET>" (rule-m6e33ja3:R) [latest-25016]2025-01-26T22:04:39.704Z <Engine:NOTICE> Starting reaction Lights OFF<RESET> (rule-m6e33ja3:R) [latest-25016]2025-01-26T22:04:39.705Z <Engine:INFO> Lights OFF<RESET> all actions completed. [latest-25016]2025-01-26T22:05:48.822Z <Rule:INFO> Lights ON (rule-m6e4ajh7 in Atrium Lights) evaluated; rule state transition from SET to RESET! [latest-25016]2025-01-26T22:05:48.831Z <Engine:INFO> Enqueueing "Lights ON<RESET>" (rule-m6e4ajh7:R) [latest-25016]2025-01-26T22:05:48.847Z <Engine:NOTICE> Starting reaction Lights ON<RESET> (rule-m6e4ajh7:R) [latest-25016]2025-01-26T22:05:48.847Z <Engine:INFO> Lights ON<RESET> all actions completed.Hi @toggledbits
I found this very old post that talked about a way to limit device reading to avoid the throttled problem, because it's not a question of logic, it's that the device actually sends a lot of information, in my case the NUT ups installed in HE.
https://smarthome.community/topic/687/flapping-device?_=1737652139854
It mentions engine section of reactor.yaml by setting update_rate_limit, but I looked in the current MSR documentation and I can't find this information, so I don't know if it's still valid, its effect and parameters.
My situation is simple, when I have a UPS problem the NUT is sending dozens of reports per second and then I have the throttled problem. The same rule applies when the power is normal.
This is the rule, and the parameter that fails is the Tripp Lite UPS status.
cf9ddabf-3144-4e5a-80a4-0dc7664b9573-image.png
a813a077-974e-4737-897c-e383085b3d8f-image.png
All error is the same scenario.
[latest-25016]2025-01-23T12:01:32.753Z <Rule:WARN> (13) NUT Disconected (rule-l4djr0p7 in Warning) update rate 121/min exceeds limit (120/min)! Logic loop? Throttl> [latest-25016]2025-01-23T12:01:32.756Z <Rule:WARN> (27) Falta de Energia (rule-l4h9ceod in Warning) update rate 121/min exceeds limit (120/min)! Logic loop? Thrott> [latest-25016]2025-01-23T12:01:32.769Z <Rule:WARN> (73) UPS Battery Low (rule-l4hj850o in Warning) update rate 121/min exceeds limit (120/min)! Logic loop? Throttl> [latest-25016]2025-01-23T12:01:32.772Z <Rule:WARN> (74) UPS Comm Fail (rule-l4kbs5cp in Warning) update rate 121/min exceeds limit (120/min)! Logic loop? Throttlin> [latest-25016]2025-01-23T12:01:32.776Z <Rule:WARN> (76) UPS Utility Back (rule-l4hjhs6m in Warning) update rate 121/min exceeds limit (120/min)! Logic loop? Thrott> [latest-25016]2025-01-23T12:01:32.780Z <Rule:WARN> UPS On Battery (rule-l4hjuka5 in Datacenter) update rate 121/min exceeds limit (120/min)! Logic loop? Throttling> [latest-25016]2025-01-23T12:01:32.781Z <Rule:WARN> UPS Info (rule-l4gheo63 in Datacenter) update rate 121/min exceeds limit (120/min)! Logic loop? Throttling... [latest-25016]2025-01-23T12:01:40.757Z <Rule:WARN> (13) NUT Disconected (rule-l4djr0p7 in Warning) update rate 121/min exceeds limit (120/min)! Logic loop? Throttl> [latest-25016]2025-01-23T12:01:40.759Z <Rule:WARN> (27) Falta de Energia (rule-l4h9ceod in Warning) update rate 121/min exceeds limit (120/min)! Logic loop? Thrott> [latest-25016]2025-01-23T12:01:40.776Z <Rule:WARN> (73) UPS Battery Low (rule-l4hj850o in Warning) update rate 121/min exceeds limit (120/min)! Logic loop? Throttl> [latest-25016]2025-01-23T12:01:40.777Z <Rule:WARN> (74) UPS Comm Fail (rule-l4kbs5cp in Warning) update rate 121/min exceeds limit (120/min)! Logic loop? Throttlin> [latest-25016]2025-01-23T12:01:40.778Z <Rule:WARN> (76) UPS Utility Back (rule-l4hjhs6m in Warning) update rate 121/min exceeds limit (120/min)! Logic loop? Thrott>Thanks.
Hello -
Long time. Hope everyone is good.
I have a rule that looks at a number of temperature sensors around the house. It simply sends a general alert if any of them fall below their threshold. (A basic “House is too cold” alert for when we’re away)
Generally, this has worked well. But I was wondering if there’s a way to make the message somewhat dynamic without creating separate rules for each sensor.
E.g. “House is too cold due to Sump Temperature below 45 degrees.”
I thought I remember reading about someone doing this in the past but couldn’t find it.
Thanks for any ideas!
After upgrade from 24366 to 25016 toggle on Vera (openLuup) lock entity doesn't seem to work.
VeraController log level 5
24366:
25016:
[latest-25016]2025-01-20T20:30:25.457Z <VeraController:INFO> VeraController#vera perform action toggle.toggle on Lock#vera>device_10016 with [Object]{ } [latest-25016]2025-01-20T20:30:25.458Z <VeraController:5:VeraController.js:1210> VeraController#vera no configured implementation for toggle.toggle on Lock#vera>device_10016; calling super [latest-25016]2025-01-20T20:30:25.458Z <VeraController:INFO> VeraController#vera perform action lock.set on Lock#vera>device_10016 with [Object]{ "state": false } [latest-25016]2025-01-20T20:30:25.461Z <VeraController:5:VeraController.js:1255> VeraController#vera sending action request [Object]{ "newTargetValue": "0", "DeviceNum": 10016, "id": "action", "serviceId": "urn:upnp-org:serviceId:DoorLock1", "action": "SetTarget" } [latest-25016]2025-01-20T20:30:25.461Z <VeraController:5:VeraController.js:515> [VeraController:verarequest] requesting http://127.0.0.1:3480/data_request?newTargetValue=0&DeviceNum=10016&id=action&serviceId=urn%3Aupnp-org%3AserviceId%3ADoorLock1&action=SetTarget&output_format=json&_r=1737405025461 ([Object]{ }) [latest-25016]2025-01-20T20:30:25.463Z <VeraController:NOTICE> VeraController#vera action lock.set([Object]{ "state": false }) on Lock#vera>device_10016 succeededI tried to log an issue in Mantis Bug Tracker but I can't log in anymore?
Trying to understand what cause a local expresssion to be evaluated. I have read the manual but I am still not clear about it. Using the test rule below, I can see in the log that the rule is being automatically evaluated every time the temperature entity is changing. That is great...
What I am trying to understand is why the expression is not evaluated based on time as well since the "case" statement has time dependencies.
Any help would be appreciated
I have the following test rule:
eba6a3ea-ff61-4610-88c9-9b9864f11ff8-Screenshot 2025-01-21 095244.png
2d9c1ff5-7b73-4005-b324-9029c2709db9-Screenshot 2025-01-21 095302.png
Here is the expressioncode:
vFrom1 = "09:25:00", vFrom2 = "09:30:00", vFrom3 = "09:41:00", vTo = "10:55:00", # Get current time (format HH:MM:SS) vToDay = strftime("%H:%M:%S"), #Get current house temperature CurrentHouseTemp = getEntity( "hass>Thermostat2 " ).attributes.temperature_sensor.value, case when CurrentHouseTemp <= 19 and vToDay >= vFrom1 && vToDay <= vTo: "true1" # From1 when CurrentHouseTemp <= 20 and vToDay >= vFrom2 && vToDay <= vTo: "true2" # From2 when CurrentHouseTemp < 26 and vToDay >= vFrom3 && vToDay <= vTo: "true3" # From3 else "false" endI’ve set up an automation in Apple Home to turn on the lights when the first person arrives. However, the lights also turn on when I leave for work. It seems like the automation is triggered when I cross the geofence, whether arriving or leaving.
I’m using Matter-compatible Tapo smart plugs. Is there a way to fix this behavior?
Hi,
I started home automation in 2013 and using Vera controllers from the start. When Reactor plugin became available (super plugin of @toggledbits !!) I transferred all scenes to Reactor.
I must say everything here works still okay and I have a lot of devices, plugins and Reactors. But I fear at some point my Vera's will stop working.
I recognize many of your names here from the Vera forum. I also was banned a couple of years ago.
Recently I decided to switch to Home Assistant. I already transferred some of my zwave devices from Vera to HA and made some new automations.
I must say HA is great and with huge amount of integrations, add-ons, the HACS store and many examples (like blueprints) the opportunites to increase home automation are huge.
HA will be for sure my central system (incl UI)
But... the learning curve is quite steap (YAML is completely different from Lua/luup).
So for the time being I will keep my most complex Reactor automations.
I already found how I can connect/integrate Vera for binairy sensors via webhooks (as an example: changes in my home modes are directly send from Vera to HA).
Now I also want to use some data like sensors or Reactor variables automatically to HA via https requests (put those in Reactor).
I know I can create virtual sensors in HA via templates.
As an example: I have my own PWS with a rainmeter. In Reactor I compare the amount of rain (in mm) in the actual year with historical figures (past 15 years) and calculate the difference actual vs history in % Every day at 0.00h these figures are updated. I defined variables in Reactor and use Multistring plugin (Variable container) to show the data.
I know several specialists in coding with experience in both Vera and HA are active here on this forum.
Who can help me with this ?
And then MSR...
My first issue: I'm logged into the msr CT as reactor (I used the suggested username just to keep things simple as this is new space for me and I was high off my success of migrating HA over).
When I run
docker pull toggledbits/reactor:latest-amd64... it assigns the \reactor\ subdirectory where installed root ownership. I am absolutely logged in with the correct non-root user.
1c58aead-85ca-4b2c-8f48-c3d1f57d7fe3-image.png
Second issue: I copied over the following folders:
67e7e4a5-cee8-4de1-90c7-1df35f1070b9-image.png
When MSR loads, all of my Global Expressions are missing.
Third issue:
All controllers connect wonderfully (Hubitat, etc)... except HA.
After changing ownership of the logs to reactor again I can see this when MSR calls HA:
Yes, I created a fresh new long-lived access token for the MSR containerized install and updated the reactor.yaml config file correctly.
Honestly, all-in-all, for my total lack of expertise here I'm very pleased that I only have these three issues. But they are def blockers atm.
My RPi bare metal install of MSR hooked right up to the new HA and is humming along just fine (I used hostnames were possible and shuffled some IPs in other places so I wouldn't run into things later that were mapped incorrectly that I'd forgotten about.)
Proxmox 8.3.2 MSR lives in an Ubuntu 24.04 Proxmox container MSR is latest docker versionWhat else can I provide to those smarter than me here?
Posts
-
Recommendation for new hub -
Recommendation for new hubMy trusty vera plus is starting to have some issues that are making me think that it is about to die. i now get constant luup reloads even though i've moved almost everything except for z-wave devices and the iphone locator off that machine. it is even booting off an ssd drive to minimize wear and tear on the internal memory. I've moved all my logic off box to MSR, so it is just a glorified zwave adapter. I would love to hear any ideas that would make moving 60ish devices off that box to something else as painless as possible. the thought of excluding and including the devices sends shivers down my spine, so anything that helps me migrate the network would be greatly welcomed. anyone have any suggestions?
-
Set Entity value in expression?- The
performAction()
expression function will perform an action from an expression. If you have an object stored in a variableold_status
that contains data like this:[ { id: "vera>Livingroom Fan", status: true }, { id: "vera>Loft Fan", status: false }, { id: "vera>Office Fan", status: true } ]
, then you can set those statuses in one expression:each d in old_status: performAction( d.id, "power_switch.set", d.status )
This is exactly what i was looking for! thank you!!!!!! i was looking at the docs and completely glossed over that section...
- The
-
Set Entity value in expression?no rush, i was able to work around it by inserting the status of the fans as a number:
{ "Livingroom Fan" : getEntity("vera>Livingroom Fan").attributes.power_switch.state == false ? 0 : 1, "Loft Fan" : getEntity("vera>Loft Fan").attributes.power_switch.state == false ? 0 : 1, "Office Fan" : getEntity("vera>Office Fan").attributes.power_switch.state == false ? 0 : 1 }
then used the SetTarget entity action to turn them on or off.
-
Set Entity value in expression? -
Set Entity value in expression?Hi Rigpapa, I updated the build, the variable is a drop-down with only the true/false option and not a variable that can be substituted. do i need to do something else to make it a string entry?
-
Set Entity value in expression?wow, thank you so much for that, as always greatly appreciated.
-
Set Entity value in expression? -
Set Entity value in expression?I get that, but the power_switch service only has on or off. I am trying to set it from a stored variable, so i don't know if it is on or off to begin, hence my attempt to set it via the SwitchPower1.SetTarget.
-
Set Entity value in expression?@toggledbits said in Set Entity value in expression?:
I can't see anything in the screen shot, it's too low res.
You have to run an action to set the state of a device. Attributes are generally echoes of device state, but you don't modify them directly, just like on Vera (setting a state variable on Vera doesn't change the device, running an action changes the device and updates the state variable).
Gotcha, and thanks for the explanation. I guess the question would be, is there a way to trigger an action from an expression? Also, kind of related, but what service would i use in set_variable in order to act on x_vera_svc_upnp_org_SwitchPower1.SetTarget? i've tried x_vera_svc_upnp_org_SwitchPower1, vera_svc_upnp_org_SwitcPower1, svc_upnp_org_SwitchPower1 and all combinations i could think of.
-
Set Entity value in expression?@sebby
the object that i am looking at is an expression that gets the current status of all fans (CurrentFanStatus). When the AC kicks off, i copy the current fan status to another variable (lastFanStatus) so i can re-set the fans to what they were set at originally (i.e. if the Office fan was running, i don't want the reset reaction to turn it off. I figure i can set the values from thee object, via the set_variable (as in the image above), but was just wondering if there was a better way to iterate through my object and set the values for the corresponding fans since i have the entity name and the status.
EDIT: I guess what i am looking for is a setEntity that i may be able to issue from an expression. does that exist?
-
Set Entity value in expression?Not sure if i am asking this correctly, but here it goes... I am trying to make the ceiling fans run if the AC unit is running for more than a few minutes. That part is easy and done. Now, what i really want to do is that when the AC kicks off, the fans go back to whatever state they were at before they kicked on. I have an expression that captures the before status into a variable, but now i am racking my brain trying to figure out how to iterate through that array (really an object with "fan name" : status) and set the fan variables. I can do it manually via the set_variable for each entity, but I would think there should be an easier way with an expression since i have everything i need to set the values in the object. is there a better way?
-
Import questionFYI, the new release worked like a charm, than you
-
Feature Request - Reaction to MQTT -
Import questionok, done. very low priority as I'd rather you spend time polishing the builds than dealing with my clusterf**k.
-
Feature Request - Reaction to MQTTawesome and thanks! sorry for spamming the boards.
-
Import questionhaving some issues importing, my guess is that my reactors on vera are a complete disaster, but thought i would ask:
/opt/reactor # node tools/import_reactor_backup.js tools/reactor-config-backup_so.json vera
Fetching current rulesets...
Pass 1: Translating...
ReactorSensor 182 RS-AUTO HOME MODE
Creating ruleset for ReactorSensor 182 RS-AUTO HOME MODE
Creating rule rule-182
(node:3881) UnhandledPromiseRejectionWarning: TypeError: (node.data.value || "").split is not a function
at fixConditions1 (/opt/reactor/tools/import_reactor_backup.js:94:53)
at /opt/reactor/tools/import_reactor_backup.js:44:13
at Array.forEach (<anonymous>)
at fixConditions1 (/opt/reactor/tools/import_reactor_backup.js:41:35)
at /opt/reactor/tools/import_reactor_backup.js:44:13
at Array.forEach (<anonymous>)
at fixConditions1 (/opt/reactor/tools/import_reactor_backup.js:41:35)
at /opt/reactor/tools/import_reactor_backup.js:44:13
at Array.forEach (<anonymous>)
at fixConditions1 (/opt/reactor/tools/import_reactor_backup.js:41:35)
(Usenode --trace-warnings ...
to show where the warning was created)
(node:3881) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). To terminate the node process on unhandled promise rejection, use the CLI flag--unhandled-rejections=strict
(see https://nodejs.org/api/cli.html#cli_unhandled_rejections_mode). (rejection id: 1)
(node:3881) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code./opt/reactor # node --trace-warnings tools/import_reactor_backup.js tools/reactor-config-backup_so.json vera
Fetching current rulesets...
Pass 1: Translating...
ReactorSensor 182 RS-AUTO HOME MODE
Creating ruleset for ReactorSensor 182 RS-AUTO HOME MODE
Creating rule rule-182
(node:3898) UnhandledPromiseRejectionWarning: TypeError: (node.data.value || "").split is not a function
at fixConditions1 (/opt/reactor/tools/import_reactor_backup.js:94:53)
at /opt/reactor/tools/import_reactor_backup.js:44:13
at Array.forEach (<anonymous>)
at fixConditions1 (/opt/reactor/tools/import_reactor_backup.js:41:35)
at /opt/reactor/tools/import_reactor_backup.js:44:13
at Array.forEach (<anonymous>)
at fixConditions1 (/opt/reactor/tools/import_reactor_backup.js:41:35)
at /opt/reactor/tools/import_reactor_backup.js:44:13
at Array.forEach (<anonymous>)
at fixConditions1 (/opt/reactor/tools/import_reactor_backup.js:41:35)
at emitUnhandledRejectionWarning (internal/process/promises.js:168:15)
at processPromiseRejections (internal/process/promises.js:247:11)
at processTicksAndRejections (internal/process/task_queues.js:94:32)
(node:3898) TypeError: (node.data.value || "").split is not a function
at fixConditions1 (/opt/reactor/tools/import_reactor_backup.js:94:53)
at /opt/reactor/tools/import_reactor_backup.js:44:13
at Array.forEach (<anonymous>)
at fixConditions1 (/opt/reactor/tools/import_reactor_backup.js:41:35)
at /opt/reactor/tools/import_reactor_backup.js:44:13
at Array.forEach (<anonymous>)
at fixConditions1 (/opt/reactor/tools/import_reactor_backup.js:41:35)
at /opt/reactor/tools/import_reactor_backup.js:44:13
at Array.forEach (<anonymous>)
at fixConditions1 (/opt/reactor/tools/import_reactor_backup.js:41:35)
(node:3898) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.
at emitDeprecationWarning (internal/process/promises.js:180:11)
at processPromiseRejections (internal/process/promises.js:249:13)
at processTicksAndRejections (internal/process/task_queues.js:94:32) -
Feature Request - Reaction to MQTTI looked through the forum, but could not find it, so my apologies if this has been asked. It would be nice to be able to push a message to MQTT for further upstream integrations.
-
iPhoneLocator: Alternate Map Serverscould it be that it is getting confused because it is loading the iphone locator devices from the old vera?
2020-10-05 20:37:28.841 luup.create_device:: [10025] D_IPhone.xml / X / D_IPhone_UI7.json (urn:schemas-upnp-org:device:IPhoneLocator:1)
2020-10-05 20:37:28.850 luup.create_device:: [10026] D_IPhone.xml / X / D_IPhone_UI7.json (urn:schemas-upnp-org:device:IPhoneLocator:1) -
iPhoneLocator: Alternate Map Serversthe previous log was with the standard iphone locator plugin enabled, i removed it, re-copied the files from rafale's repo and this is the new startup after those changes
2020-10-01 13:06:54.633 :: openLuup STARTUP :: /etc/cmh-ludl
2020-10-01 13:06:54.633 openLuup.init:: version 2020.05.01 @akbooer
2020-10-01 13:06:54.682 openLuup.scheduler:: version 2020.01.25 @akbooer
2020-10-01 13:06:54.726 openLuup.wsapi:: version 2019.08.12 @akbooer
2020-10-01 13:06:54.726 openLuup.servlet:: version 2020.01.29 @akbooer
2020-10-01 13:06:54.727 openLuup.client:: version 2019.10.14 @akbooer
2020-10-01 13:06:54.731 openLuup.io:: version 2019.11.29 @akbooer
2020-10-01 13:06:54.731 openLuup.server:: version 2020.03.20 @akbooer
2020-10-01 13:06:54.742 openLuup.scenes:: version 2020.03.16 @akbooer
2020-10-01 13:06:54.749 openLuup.chdev:: version 2020.03.07 @akbooer
2020-10-01 13:06:54.749 openLuup.userdata:: version 2020.03.31 @akbooer
2020-10-01 13:06:54.750 openLuup.requests:: version 2020.04.15 @akbooer
2020-10-01 13:06:54.751 openLuup.gateway:: version 2020.03.08 @akbooer
2020-10-01 13:06:54.757 openLuup.smtp:: version 2018.04.12 @akbooer
2020-10-01 13:06:54.766 openLuup.historian:: version 2020.02.12 @akbooer
2020-10-01 13:06:54.766 openLuup.luup:: version 2020.03.21 @akbooer
2020-10-01 13:06:54.769 openLuup.pop3:: version 2018.04.23 @akbooer
2020-10-01 13:06:54.770 openLuup.compression:: version 2016.06.30 @akbooer
2020-10-01 13:06:54.770 openLuup.timers:: version 2019.05.03 @akbooer
2020-10-01 13:06:54.770 openLuup.logs:: version 2018.03.25 @akbooer
2020-10-01 13:06:54.770 openLuup.json:: version 2020.05.20 @akbooer
2020-10-01 13:06:54.770 openLuup.init:: using Cjson 2.1.0 for fast decoding
2020-10-01 13:06:54.887 luup.create_device:: [1] D_ZWaveNetwork.xml / I_ZWave.xml / (urn:schemas-micasaverde-com:device:ZWaveNetwork:1)
2020-10-01 13:06:54.918 luup.create_device:: [2] D_openLuup.xml / I_openLuup.xml / D_openLuup.json (openLuup)
2020-10-01 13:06:54.919 openLuup.init:: loading configuration user_data.json
2020-10-01 13:06:54.932 openLuup.userdata:: loading user_data json...
2020-10-01 13:06:55.020 luup.variable_set:: 2.openLuup.HouseMode was: EMPTY now: 1 #hooks:0
2020-10-01 13:06:55.021 openLuup.userdata:: loading rooms...
2020-10-01 13:06:55.021 openLuup.userdata:: room#1 'MiOS-50001615'
2020-10-01 13:06:55.021 openLuup.userdata:: room#101 'Room 101'
2020-10-01 13:06:55.021 openLuup.userdata:: ...room loading completed
2020-10-01 13:06:55.021 openLuup.userdata:: loading devices...
2020-10-01 13:06:55.028 luup.create_device:: [1] D_ZWaveNetwork.xml / X / (urn:schemas-micasaverde-com:device:ZWaveNetwork:1)
2020-10-01 13:06:55.218 openLuup.scheduler.sandbox:: device 3 defined 'string.starts' (a function value)
2020-10-01 13:06:55.218 openLuup.scheduler.sandbox:: device 3 defined 'string.altui_split' (a function value)
2020-10-01 13:06:55.218 openLuup.scheduler.sandbox:: device 3 defined 'string.template' (a function value)
2020-10-01 13:06:55.219 openLuup.scheduler.sandbox:: device 3 defined 'string.trim' (a function value)
2020-10-01 13:06:55.219 luup.create_device:: [3] D_ALTUI.xml / I_ALTUI.xml / D_ALTUI_UI7.json (urn:schemas-upnp-org:device:altui:1)
2020-10-01 13:06:55.236 luup.create_device:: [4] D_AltAppStore.xml / I_AltAppStore.xml / D_AltAppStore.json (urn:schemas-upnp-org:device:AltAppStore:1)
2020-10-01 13:06:55.260 luup.create_device:: [5] D_VeraBridge.xml / I_VeraBridge.xml / D_VeraBridge.json (VeraBridge)
2020-10-01 13:06:55.370 luup.create_device:: [6] D_Reactor.xml / I_Reactor.xml / D_Reactor_UI7.json (urn:schemas-toggledbits-com:device:Reactor:1)
2020-10-01 13:06:55.437 luup.create_device:: [8] D_DeusExMachinaII1.xml / I_DeusExMachinaII1.xml / D_DeusExMachinaII1_UI7.json (urn:schemas-toggledbits-com:device:DeusExMachinaII:1)
2020-10-01 13:06:55.501 luup.create_device:: [9] D_SiteSensor1.xml / I_SiteSensor1.xml / D_SiteSensor1.json (urn:schemas-toggledbits-com:device:SiteSensor:1)
2020-10-01 13:06:55.504 luup.create_device:: [10] D_BroadLink_Mk2_1.xml / / ()
2020-10-01 13:06:55.504 openLuup.chdev:: ERROR: unable to read XML file D_BroadLink_Mk2_1.xml
2020-10-01 13:06:55.575 luup.create_device:: [11] D_Switchboard1.xml / I_Switchboard1.xml / D_Switchboard1_UI7.json (urn:schemas-toggledbits-com:device:Switchboard:1)
2020-10-01 13:06:55.614 luup.create_device:: [12] D_ReactorSensor.xml / / D_ReactorSensor_UI7.json (urn:schemas-toggledbits-com:device:ReactorSensor:1)
2020-10-01 13:06:55.686 openLuup.scheduler.sandbox:: device 25 defined 'string.mytemplate' (a function value)
2020-10-01 13:06:55.686 openLuup.scheduler.sandbox:: device 25 defined 'string.trim' (a function value)
2020-10-01 13:06:55.687 luup.create_device:: [25] D_IPhone.xml / I_IPhone.xml / D_IPhone_UI7.json (urn:schemas-upnp-org:device:IPhoneLocator:1)
2020-10-01 13:06:55.725 luup.create_device:: [10002] D_ZigbeeNetwork.xml / X / (urn:schemas-micasaverde-com:device:ZigbeeNetwork:1)
2020-10-01 13:06:55.740 luup.create_device:: [10003] D_BluetoothNetwork.xml / X / (urn:schemas-micasaverde-com:device:BluetoothNetwork:1)
2020-10-01 13:06:55.751 luup.create_device:: [10004] D_SceneController1.xml / X / D_SceneController1.json (urn:schemas-micasaverde-com:device:SceneController:1)
2020-10-01 13:06:55.755 luup.create_device:: [10005] D_SmartHomeHelper.xml / X / (urn:schemas-upnp-org:device:GoogleHome:1)
2020-10-01 13:06:55.870 luup.create_device:: [10006] D_DimmableLight1.xml / X / D_DimmableLight1.json (urn:schemas-upnp-org:device:DimmableLight:1)
2020-10-01 13:06:55.883 luup.create_device:: [10007] D_BinaryLight1.xml / X / D_BinaryLight1.json (urn:schemas-upnp-org:device:BinaryLight:1)
2020-10-01 13:06:55.893 luup.create_device:: [10008] D_DimmableLight1.xml / X / D_DimmableLight1.json (urn:schemas-upnp-org:device:DimmableLight:1)
2020-10-01 13:06:55.903 luup.create_device:: [10009] D_BinaryLight1.xml / X / D_BinaryLight1.json (urn:schemas-upnp-org:device:BinaryLight:1)
2020-10-01 13:06:55.913 luup.create_device:: [10012] D_DimmableLight1.xml / X / D_DimmableLight1.json (urn:schemas-upnp-org:device:DimmableLight:1)
2020-10-01 13:06:55.923 luup.create_device:: [10013] D_BinaryLight1.xml / X / D_BinaryLight1.json (urn:schemas-upnp-org:device:BinaryLight:1)
2020-10-01 13:06:55.936 luup.create_device:: [10017] D_DimmableLight1.xml / X / D_DimmableLight1.json (urn:schemas-upnp-org:device:DimmableLight:1)
2020-10-01 13:06:55.948 luup.create_device:: [10018] D_DimmableLight1.xml / X / D_DimmableLight1.json (urn:schemas-upnp-org:device:DimmableLight:1)
2020-10-01 13:06:55.958 luup.create_device:: [10020] D_BinaryLight1.xml / X / D_BinaryLight1.json (urn:schemas-upnp-org:device:BinaryLight:1)
2020-10-01 13:06:55.969 luup.create_device:: [10021] D_DimmableLight1.xml / X / D_DimmableLight1.json (urn:schemas-upnp-org:device:DimmableLight:1)
2020-10-01 13:06:55.981 luup.create_device:: [10023] D_DimmableLight1.xml / X / D_DimmableLight1.json (urn:schemas-upnp-org:device:DimmableLight:1)
2020-10-01 13:06:55.990 luup.create_device:: [10025] D_IPhone.xml / X / D_IPhone_UI7.json (urn:schemas-upnp-org:device:IPhoneLocator:1)
2020-10-01 13:06:56.000 luup.create_device:: [10026] D_IPhone.xml / X / D_IPhone_UI7.json (urn:schemas-upnp-org:device:IPhoneLocator:1)
2020-10-01 13:06:56.012 luup.create_device:: [10028] D_DimmableLight1.xml / X / D_DimmableLight1.json (urn:schemas-upnp-org:device:DimmableLight:1)
2020-10-01 13:06:56.023 luup.create_device:: [10029] D_DimmableLight1.xml / X / D_DimmableLight1.json (urn:schemas-upnp-org:device:DimmableLight:1)
2020-10-01 13:06:56.216 luup.create_device:: [10030] D_HVAC_ZoneThermostat1.xml / X / D_HVAC_ZoneThermostat2.json (urn:schemas-upnp-org:device:HVAC_ZoneThermostat:1)
2020-10-01 13:06:56.226 luup.create_device:: [10031] D_TemperatureSensor1.xml / X / D_TemperatureSensor1.json (urn:schemas-micasaverde-com:device:TemperatureSensor:1)
2020-10-01 13:06:56.236 luup.create_device:: [10032] D_HumiditySensor1.xml / X / D_HumiditySensor1.json (urn:schemas-micasaverde-com:device:HumiditySensor:1)
2020-10-01 13:06:56.255 luup.create_device:: [10034] D_HVAC_ZoneThermostat1.xml / X / D_HVAC_ZoneThermostat2.json (urn:schemas-upnp-org:device:HVAC_ZoneThermostat:1)
2020-10-01 13:06:56.264 luup.create_device:: [10035] D_TemperatureSensor1.xml / X / D_TemperatureSensor1.json (urn:schemas-micasaverde-com:device:TemperatureSensor:1)
2020-10-01 13:06:56.269 luup.create_device:: [10036] D_HumiditySensor1.xml / X / D_HumiditySensor1.json (urn:schemas-micasaverde-com:device:HumiditySensor:1)
2020-10-01 13:06:56.276 luup.create_device:: [10039] D_BinaryLight1.xml / X / D_BinaryLight1.json (urn:schemas-upnp-org:device:BinaryLight:1)
2020-10-01 13:06:56.284 luup.create_device:: [10107] D_BinaryLight1.xml / X / D_BinaryLight1.json (urn:schemas-upnp-org:device:BinaryLight:1)
2020-10-01 13:06:56.293 luup.create_device:: [10108] D_BinaryLight1.xml / X / D_BinaryLight1.json (urn:schemas-upnp-org:device:BinaryLight:1)
2020-10-01 13:06:56.301 luup.create_device:: [10109] D_BinaryLight1.xml / X / D_BinaryLight1.json (urn:schemas-upnp-org:device:BinaryLight:1)
2020-10-01 13:06:56.309 luup.create_device:: [10110] D_BinaryLight1.xml / X / D_BinaryLight1.json (urn:schemas-upnp-org:device:BinaryLight:1)
2020-10-01 13:06:56.384 luup.create_device:: [10118] D_DoorLock1.xml / X / D_DoorLock1.json (urn:schemas-micasaverde-com:device:DoorLock:1)
2020-10-01 13:06:56.391 luup.create_device:: [10119] D_DoorLock1.xml / X / D_DoorLock1.json (urn:schemas-micasaverde-com:device:DoorLock:1)
2020-10-01 13:06:56.399 luup.create_device:: [10121] D_DoorLock1.xml / X / D_DoorLock1.json (urn:schemas-micasaverde-com:device:DoorLock:1)
2020-10-01 13:06:56.409 luup.create_device:: [10122] D_SiteSensor1.xml / X / D_SiteSensor1.json (urn:schemas-toggledbits-com:device:SiteSensor:1)
2020-10-01 13:06:56.421 luup.create_device:: [10123] D_Switchboard1.xml / X / D_Switchboard1_UI7.json (urn:schemas-toggledbits-com:device:Switchboard:1)
2020-10-01 13:06:56.428 luup.create_device:: [10125] D_SiteSensor1.xml / X / D_SiteSensor1.json (urn:schemas-toggledbits-com:device:SiteSensor:1)
2020-10-01 13:06:56.440 luup.create_device:: [10126] D_SiteSensor1.xml / X / D_SiteSensor1.json (urn:schemas-toggledbits-com:device:SiteSensor:1)
2020-10-01 13:06:56.450 luup.create_device:: [10131] D_BinaryLight1.xml / X / D_BinaryLight1.json (urn:schemas-upnp-org:device:BinaryLight:1)
2020-10-01 13:06:56.458 luup.create_device:: [10132] D_BinaryLight1.xml / X / D_BinaryLight1.json (urn:schemas-upnp-org:device:BinaryLight:1)
2020-10-01 13:06:56.467 luup.create_device:: [10133] D_BinaryLight1.xml / X / D_BinaryLight1.json (urn:schemas-upnp-org:device:BinaryLight:1)
2020-10-01 13:06:56.476 luup.create_device:: [10134] D_SiteSensor1.xml / X / D_SiteSensor1.json (urn:schemas-toggledbits-com:device:SiteSensor:1)
2020-10-01 13:06:56.488 luup.create_device:: [10135] D_SiteSensor1.xml / X / D_SiteSensor1.json (urn:schemas-toggledbits-com:device:SiteSensor:1)
2020-10-01 13:06:56.497 luup.create_device:: [10158] D_BinaryLight1.xml / X / D_BinaryLight1.json (urn:schemas-upnp-org:device:BinaryLight:1)
2020-10-01 13:06:56.504 luup.create_device:: [10159] D_BinaryLight1.xml / X / D_BinaryLight1.json (urn:schemas-upnp-org:device:BinaryLight:1)
2020-10-01 13:06:56.512 luup.create_device:: [10160] D_BinaryLight1.xml / X / D_BinaryLight1.json (urn:schemas-upnp-org:device:BinaryLight:1)
2020-10-01 13:06:56.519 luup.create_device:: [10162] D_BinaryLight1.xml / X / D_BinaryLight1.json (urn:schemas-upnp-org:device:BinaryLight:1)
2020-10-01 13:06:56.527 luup.create_device:: [10163] D_BinaryLight1.xml / X / D_BinaryLight1.json (urn:schemas-upnp-org:device:BinaryLight:1)
2020-10-01 13:06:56.536 luup.create_device:: [10164] D_BinaryLight1.xml / X / D_BinaryLight1.json (urn:schemas-upnp-org:device:BinaryLight:1)
2020-10-01 13:06:56.544 luup.create_device:: [10165] D_BinaryLight1.xml / X / D_BinaryLight1.json (urn:schemas-upnp-org:device:BinaryLight:1)
2020-10-01 13:06:56.552 luup.create_device:: [10166] D_BinaryLight1.xml / X / D_BinaryLight1.json (urn:schemas-upnp-org:device:BinaryLight:1)
2020-10-01 13:06:56.562 luup.create_device:: [10167] D_DimmableLight1.xml / X / D_DimmableLight1.json (urn:schemas-upnp-org:device:DimmableLight:1)
2020-10-01 13:06:56.570 luup.create_device:: [10173] D_BinaryLight1.xml / X / D_BinaryLight1.json (urn:schemas-upnp-org:device:BinaryLight:1)
2020-10-01 13:06:56.582 luup.create_device:: [10174] D_LightSensor1.xml / X / D_LightSensor1.json (urn:schemas-micasaverde-com:device:LightSensor:1)
2020-10-01 13:06:56.589 luup.create_device:: [10175] D_BinaryLight1.xml / X / D_BinaryLight1.json (urn:schemas-upnp-org:device:BinaryLight:1)
2020-10-01 13:06:56.597 luup.create_device:: [10181] D_Reactor.xml / X / D_Reactor_UI7.json (urn:schemas-toggledbits-com:device:Reactor:1)
2020-10-01 13:06:56.607 luup.create_device:: [10182] D_ReactorSensor.xml / X / D_ReactorSensor_UI7.json (urn:schemas-toggledbits-com:device:ReactorSensor:1)
2020-10-01 13:06:56.618 luup.create_device:: [10183] D_ReactorSensor.xml / X / D_ReactorSensor_UI7.json (urn:schemas-toggledbits-com:device:ReactorSensor:1)
2020-10-01 13:06:56.628 luup.create_device:: [10184] D_ReactorSensor.xml / X / D_ReactorSensor_UI7.json (urn:schemas-toggledbits-com:device:ReactorSensor:1)
2020-10-01 13:06:56.638 luup.create_device:: [10185] D_ReactorSensor.xml / X / D_ReactorSensor_UI7.json (urn:schemas-toggledbits-com:device:ReactorSensor:1)
2020-10-01 13:06:56.648 luup.create_device:: [10186] D_ReactorSensor.xml / X / D_ReactorSensor_UI7.json (urn:schemas-toggledbits-com:device:ReactorSensor:1)
2020-10-01 13:06:56.658 luup.create_device:: [10187] D_ReactorSensor.xml / X / D_ReactorSensor_UI7.json (urn:schemas-toggledbits-com:device:ReactorSensor:1)
2020-10-01 13:06:56.670 luup.create_device:: [10188] D_ReactorSensor.xml / X / D_ReactorSensor_UI7.json (urn:schemas-toggledbits-com:device:ReactorSensor:1)
2020-10-01 13:06:56.679 luup.create_device:: [10189] D_ReactorSensor.xml / X / D_ReactorSensor_UI7.json (urn:schemas-toggledbits-com:device:ReactorSensor:1)
2020-10-01 13:06:56.689 luup.create_device:: [10190] D_ReactorSensor.xml / X / D_ReactorSensor_UI7.json (urn:schemas-toggledbits-com:device:ReactorSensor:1)
2020-10-01 13:06:56.700 luup.create_device:: [10191] D_ReactorSensor.xml / X / D_ReactorSensor_UI7.json (urn:schemas-toggledbits-com:device:ReactorSensor:1)
2020-10-01 13:06:56.711 luup.create_device:: [10192] D_ReactorSensor.xml / X / D_ReactorSensor_UI7.json (urn:schemas-toggledbits-com:device:ReactorSensor:1)
2020-10-01 13:06:56.720 luup.create_device:: [10196] D_DoorSensor1.xml / X / D_DoorSensor1.json (urn:schemas-micasaverde-com:device:DoorSensor:1)
2020-10-01 13:06:56.728 luup.create_device:: [10198] D_BinaryLight1.xml / X / D_BinaryLight1.json (urn:schemas-upnp-org:device:BinaryLight:1)
2020-10-01 13:06:56.739 luup.create_device:: [10199] D_DimmableLight1.xml / X / D_DimmableLight1.json (urn:schemas-upnp-org:device:DimmableLight:1)
2020-10-01 13:06:56.747 luup.create_device:: [10203] D_BinaryLight1.xml / X / D_BinaryLight1.json (urn:schemas-upnp-org:device:BinaryLight:1)
2020-10-01 13:06:56.755 luup.create_device:: [10204] D_SmokeSensor1.xml / X / D_SmokeSensor1.json (urn:schemas-micasaverde-com:device:SmokeSensor:1)
2020-10-01 13:06:56.762 luup.create_device:: [10205] D_SmokeSensor1.xml / X / D_COSensor1_FirstAlert.json (urn:schemas-micasaverde-com:device:SmokeSensor:1)
2020-10-01 13:06:56.798 luup.create_device:: [10206] D_SonosSystem1.xml / X / D_SonosSystem1.json (urn:schemas-toggledbits-com:device:SonosSystem:1)
2020-10-01 13:06:57.374 luup.create_device:: [10207] D_Sonos1.xml / X / D_Sonos1_S21.json (urn:schemas-micasaverde-com:device:Sonos:1)
2020-10-01 13:06:57.389 luup.create_device:: [10208] D_Sonos1.xml / X / D_Sonos1_S1.json (urn:schemas-micasaverde-com:device:Sonos:1)
2020-10-01 13:06:57.404 luup.create_device:: [10209] D_Sonos1.xml / X / D_Sonos1_S16.json (urn:schemas-micasaverde-com:device:Sonos:1)
2020-10-01 13:06:57.418 luup.create_device:: [10210] D_Sonos1.xml / X / D_Sonos1_S1.json (urn:schemas-micasaverde-com:device:Sonos:1)
2020-10-01 13:06:57.433 luup.create_device:: [10211] D_Sonos1.xml / X / D_Sonos1_S14.json (urn:schemas-micasaverde-com:device:Sonos:1)
2020-10-01 13:06:57.447 luup.create_device:: [10212] D_Sonos1.xml / X / D_Sonos1_S21.json (urn:schemas-micasaverde-com:device:Sonos:1)
2020-10-01 13:06:57.462 luup.create_device:: [10213] D_Sonos1.xml / X / D_Sonos1_S1.json (urn:schemas-micasaverde-com:device:Sonos:1)
2020-10-01 13:06:57.481 luup.create_device:: [10214] D_Sonos1.xml / X / D_Sonos1_S12.json (urn:schemas-micasaverde-com:device:Sonos:1)
2020-10-01 13:06:57.510 luup.create_device:: [10218] D_UPnPProxy1.xml / X / D_UPnPProxy1.json (urn:schemas-futzle-com:device:UPnPProxy:1)
2020-10-01 13:06:57.530 luup.create_device:: [10219] D_SceneControllerLED1.xml / X / D_SwitchboardSC_219.json (urn:schemas-micasaverde-com:device:SceneControllerLED:1)
2020-10-01 13:06:57.591 luup.create_device:: [10220] D_VirtualSensor1.xml / X / D_VirtualSensor1.json (urn:schemas-toggledbits-com:device:VirtualSensor:1)
2020-10-01 13:06:57.599 luup.create_device:: [10221] D_MotionSensor1.xml / X / D_MotionSensor1.json (urn:schemas-micasaverde-com:device:MotionSensor:1)
2020-10-01 13:06:57.606 luup.create_device:: [10223] D_MotionSensor1.xml / X / D_MotionSensor1.json (urn:schemas-micasaverde-com:device:MotionSensor:1)
2020-10-01 13:06:57.613 luup.create_device:: [10224] D_BinaryLight1.xml / X / D_BinaryLight1.json (urn:schemas-upnp-org:device:BinaryLight:1)
2020-10-01 13:06:57.624 luup.create_device:: [10225] D_DimmableLight1.xml / X / D_DimmableLight1.json (urn:schemas-upnp-org:device:DimmableLight:1)
2020-10-01 13:06:57.636 luup.create_device:: [10226] D_DimmableLight1.xml / X / D_DimmableLight1.json (urn:schemas-upnp-org:device:DimmableLight:1)
2020-10-01 13:06:57.648 luup.create_device:: [10227] D_DimmableLight1.xml / X / D_DimmableLight1.json (urn:schemas-upnp-org:device:DimmableLight:1)
2020-10-01 13:06:57.685 luup.create_device:: [10229] D_VeraAlexa1.xml / X / D_ComboDevice1.json (urn:bochicchio-com:device:VeraAlexa:1)
2020-10-01 13:06:57.693 luup.create_device:: [10233] D_BinaryLight1.xml / X / D_BinaryLight1.json (urn:schemas-upnp-org:device:BinaryLight:1)
2020-10-01 13:06:57.700 luup.create_device:: [10234] D_BinaryLight1.xml / X / D_BinaryLight1.json (urn:schemas-upnp-org:device:BinaryLight:1)
2020-10-01 13:06:57.709 luup.create_device:: [10235] D_BinaryLight1.xml / X / D_BinaryLight1.json (urn:schemas-upnp-org:device:BinaryLight:1)
2020-10-01 13:06:57.719 luup.create_device:: [10237] D_DimmableLight1.xml / X / D_DimmableLight1.json (urn:schemas-upnp-org:device:DimmableLight:1)
2020-10-01 13:06:57.728 luup.create_device:: [10238] D_BinaryLight1.xml / X / D_BinaryLight1.json (urn:schemas-upnp-org:device:BinaryLight:1)
2020-10-01 13:06:57.736 luup.create_device:: [10239] D_BinaryLight1.xml / X / D_BinaryLight1.json (urn:schemas-upnp-org:device:BinaryLight:1)
2020-10-01 13:06:57.749 luup.create_device:: [10240] D_DimmableRGBLight1.xml / X / D_DimmableRGBLight1.json (urn:schemas-upnp-org:device:DimmableRGBLight:1)
2020-10-01 13:06:57.752 luup.create_device:: [10241] / X / (urn:schemas-toggledbits-com:device:ReactorSensor:1)
2020-10-01 13:06:57.753 luup.create_device:: [10242] / X / (urn:schemas-toggledbits-com:device:ReactorSensor:1)
2020-10-01 13:06:57.753 luup.create_device:: [10243] / X / (urn:schemas-toggledbits-com:device:ReactorSensor:1)
2020-10-01 13:06:57.761 luup.create_device:: [10246] D_ReactorSensor.xml / X / D_ReactorSensor_UI7.json (urn:schemas-toggledbits-com:device:ReactorSensor:1)
2020-10-01 13:06:57.768 luup.create_device:: [10247] D_HumiditySensor1.xml / X / D_HumiditySensor1.json (urn:schemas-micasaverde-com:device:HumiditySensor:1)
2020-10-01 13:06:57.775 luup.create_device:: [10248] D_BinaryLight1.xml / X / D_BinaryLight1.json (urn:schemas-upnp-org:device:BinaryLight:1)
2020-10-01 13:06:57.787 luup.create_device:: [10249] D_DimmableLight1.xml / X / D_DimmableLight1.json (urn:schemas-upnp-org:device:DimmableLight:1)
2020-10-01 13:06:57.796 luup.create_device:: [10250] D_BinaryLight1.xml / X / D_BinaryLight1.json (urn:schemas-upnp-org:device:BinaryLight:1)
2020-10-01 13:06:57.806 luup.create_device:: [10251] D_DimmableLight1.xml / X / D_DimmableLight1.json (urn:schemas-upnp-org:device:DimmableLight:1)
2020-10-01 13:06:57.815 luup.create_device:: [10252] D_BinaryLight1.xml / X / D_BinaryLight1.json (urn:schemas-upnp-org:device:BinaryLight:1)
2020-10-01 13:06:57.821 luup.create_device:: [10253] D_SmokeSensor1.xml / X / D_SmokeSensor1.json (urn:schemas-micasaverde-com:device:SmokeSensor:1)
2020-10-01 13:06:57.827 luup.create_device:: [10254] D_SmokeSensor1.xml / X / D_COSensor1_FirstAlert.json (urn:schemas-micasaverde-com:device:SmokeSensor:1)
2020-10-01 13:06:57.839 luup.create_device:: [10255] D_DeusExMachinaII1.xml / X / D_DeusExMachinaII1_UI7.json (urn:schemas-toggledbits-com:device:DeusExMachinaII:1)
2020-10-01 13:06:57.846 luup.create_device:: [10256] D_DoorSensor1.xml / X / D_DoorSensor1.json (urn:schemas-micasaverde-com:device:DoorSensor:1)
2020-10-01 13:06:57.854 luup.create_device:: [10257] D_ReactorSensor.xml / X / D_ReactorSensor_UI7.json (urn:schemas-toggledbits-com:device:ReactorSensor:1)
2020-10-01 13:06:57.866 luup.create_device:: [10259] D_DimmableLight1.xml / X / D_DimmableLight1.json (urn:schemas-upnp-org:device:DimmableLight:1)
2020-10-01 13:06:57.875 luup.create_device:: [10260] D_BinaryLight1.xml / X / D_BinaryLight1.json (urn:schemas-upnp-org:device:BinaryLight:1)
2020-10-01 13:06:57.882 luup.create_device:: [10261] D_BinaryLight1.xml / X / D_BinaryLight1.json (urn:schemas-upnp-org:device:BinaryLight:1)
2020-10-01 13:06:57.893 luup.create_device:: [10262] D_DimmableLight1.xml / X / D_DimmableLight1.json (urn:schemas-upnp-org:device:DimmableLight:1)
2020-10-01 13:06:57.905 luup.create_device:: [10263] D_DimmableLight1.xml / X / D_DimmableLight1.json (urn:schemas-upnp-org:device:DimmableLight:1)
2020-10-01 13:06:57.913 luup.create_device:: [10264] D_BinaryLight1.xml / X / D_BinaryLight1.json (urn:schemas-upnp-org:device:BinaryLight:1)
2020-10-01 13:06:57.922 luup.create_device:: [10265] D_BinaryLight1.xml / X / D_BinaryLight1.json (urn:schemas-upnp-org:device:BinaryLight:1)
2020-10-01 13:06:57.930 luup.create_device:: [10266] D_BinaryLight1.xml / X / D_BinaryLight1.json (urn:schemas-upnp-org:device:BinaryLight:1)
2020-10-01 13:06:57.937 luup.create_device:: [10267] D_BinaryLight1.xml / X / D_BinaryLight1.json (urn:schemas-upnp-org:device:BinaryLight:1)
2020-10-01 13:06:57.944 luup.create_device:: [10268] D_BinaryLight1.xml / X / D_BinaryLight1.json (urn:schemas-upnp-org:device:BinaryLight:1)
2020-10-01 13:06:57.946 openLuup.userdata:: loading scenes...
2020-10-01 13:06:57.946 openLuup.userdata:: number of scenes = 0
2020-10-01 13:06:57.946 openLuup.userdata:: ...scene loading completed
2020-10-01 13:06:57.946 openLuup.userdata:: loading installed plugin info...
2020-10-01 13:06:57.947 openLuup.userdata:: [openLuup] openLuup (20.5.22)
2020-10-01 13:06:57.947 openLuup.userdata:: [AltAppStore] Alternate App Store (20.3.30)
2020-10-01 13:06:57.947 openLuup.userdata:: [VeraBridge] VeraBridge (20.4.30)
2020-10-01 13:06:57.947 openLuup.userdata:: [8246] Alternate UI (2.50.)
2020-10-01 13:06:57.947 openLuup.userdata:: [Z-Way] Z-Way (not.installed)
2020-10-01 13:06:57.947 openLuup.userdata:: [Arduino] MySensors (not.installed)
2020-10-01 13:06:57.947 openLuup.userdata:: [9086] Reactor (GitHub.master)
2020-10-01 13:06:57.947 openLuup.userdata:: [8702] DeusExMachinaII (2.9)
2020-10-01 13:06:57.947 openLuup.userdata:: [8942] SiteSensor (1.15)
2020-10-01 13:06:57.947 openLuup.userdata:: [5665def1-9e1b-415b-97c8-7b75565f64c0] BroadLink-Mk2 (1.0)
2020-10-01 13:06:57.947 openLuup.userdata:: [9194] Switchboard (1.7)
2020-10-01 13:06:57.947 openLuup.userdata:: ...user_data loading completed
2020-10-01 13:06:57.947 openLuup.init:: running openLuup_STARTUP
2020-10-01 13:06:57.948 luup_log:0: startup code completed
2020-10-01 13:06:57.948 openLuup.init:: init phase completed
2020-10-01 13:06:57.948 :: openLuup LOG ROTATION :: (runtime 0.0 days)