Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Unsolved
Collapse
Discussion Forum to share and further the development of home control and automation, independent of platforms.
  1. Home
  2. Software
  3. Multi-System Reactor
  4. Running Lua Code ? And watching device properties?
Requesting a proper ARM64/aarch64 Docker image (Pi 5 support)
M
Hi, I'm in the process of migrating from a Raspberry Pi 4 (ARMv7) to a Raspberry Pi 5 (ARMv8/aarch64), but I’ve run into an issue: there is no proper ARMv8/aarch64 image available. None of the existing images run on the Pi 5 - they all exit immediately with code 139 (segmentation fault), which typically indicates that the binaries inside the image are not compatible with the ARM64/aarch64 architecture used by the Pi 5. Would it be possible to publish a correct ARMv8/aarch64 (linux/arm64) image? Building one should be relatively straightforward using docker buildx with multi-arch support. For example, my own Node.js images are built this way: docker buildx build --push \ -t <localrepo>/<project>:<tag> \ --platform=linux/arm64,linux/amd64 \ --file ./apps/<project>/Dockerfile . This produces both the AMD64 and ARM64/v8 variants automatically. Also, as a side note, it may be best to avoid using Alpine as the base image for the ARM64 build, since musl-based builds often cause compatibility issues and unnecessary headaches. A glibc-based base image (e.g., Debian or Ubuntu) tends to work far more reliably on ARM64, especially for Node.js applications. @toggledbits - tagging you in case you missed this. Thanks, mgvra
Multi-System Reactor
Script action and custom timers
therealdbT
Sorry to write here without trying, but I’m flying today. Am I correct if i say that script action with alarm() makes it possible to execute a reaction in a given interval, lets say 15 seconds or 3.5 minutes? That sounds amazing, since I’ve used weird tricks, including a custom controller, just to do this.
Multi-System Reactor
Help resolve change in behaviour post update
CatmanV2C
Topic thumbnail image
Multi-System Reactor
Reactor (Multi-System/Multi-Hub) Announcements
toggledbitsT
Build 21228 has been released. Docker images available from DockerHub as usual, and bare-metal packages here. Home Assistant up to version 2021.8.6 supported; the online version of the manual will now state the current supported versions; Fix an error in OWMWeatherController that could cause it to stop updating; Unify the approach to entity filtering on all hub interface classes (controllers); this works for device entities only; it may be extended to other entities later; Improve error detail in messages for EzloController during auth phase; Add isRuleSet() and isRuleEnabled() functions to expressions extensions; Implement set action for lock and passage capabilities (makes them more easily scriptable in some cases); Fix a place in the UI where 24-hour time was not being displayed.
Multi-System Reactor
Reactor w/HA 2025.11 error on set_datetime service call setting only time
CrilleC
@toggledbits Do you know if this is related to that PR or is it a change they made in 2025.11.1? [latest-25310]2025-11-11T13:16:24.319Z <HassController:INFO> HassController#hass perform x_hass_input_datetime.set_datetime on Entity#hass>input_datetime_vvb_dag with { "time": "10:45" } [latest-25310]2025-11-11T13:16:24.320Z <HassController:INFO> HassController#hass: sending payload for x_hass_input_datetime.set_datetime on Entity#hass>input_datetime_vvb_dag action: { "type": "call_service", "service_data": { "date": (null), "time": "10:45", "datetime": (null), "timestamp": (null) }, "domain": "input_datetime", "service": "set_datetime", "target": { "entity_id": "input_datetime.vvb_dag" } } [latest-25310]2025-11-11T13:16:24.321Z <HassController:ERR> HassController#hass request 1762866984320<2025-11-11 14:16:24> (call_service) failed: [Error] Not a parseable type for dictionary value @ data['date'] [-] [latest-25310]2025-11-11T13:16:24.321Z <HassController:WARN> HassController#hass action x_hass_input_datetime.set_datetime({ "time": "10:45" }) on Entity#hass>input_datetime_vvb_dag failed! [latest-25310]2025-11-11T13:16:24.321Z <HassController:INFO> Service call payload: {"type":"call_service","service_data":{"date":null,"time":"10:45","datetime":null,"timestamp":null},"domain":"input_datetime","service":"set_datetime","target":{"entity_id":"input_datetime.vvb_dag"},"id":1762866984320} [latest-25310]2025-11-11T13:16:24.322Z <HassController:INFO> Service data: {"fields":{"date":{"example":"\"2019-04-20\"","selector":{"text":{"multiline":false,"multiple":false}}},"time":{"example":"\"05:04:20\"","selector":{"time":{}}},"datetime":{"example":"\"2019-04-20 05:04:20\"","selector":{"text":{"multiline":false,"multiple":false}}},"timestamp":{"selector":{"number":{"min":0,"max":9223372036854776000,"mode":"box","step":1}}}},"target":{"entity":[{"domain":["input_datetime"]}]}} [latest-25310]2025-11-11T13:16:24.322Z <Engine:ERR> Engine#1 reaction rule-mgb8pfhs:S step 0 perform x_hass_input_datetime.set_datetime failed: [Error] Not a parseable type for dictionary value @ data['date'] [-] [latest-25310]2025-11-11T13:16:24.322Z <Engine:INFO> Engine#1 action args: { "time": "10:45" } [latest-25310]2025-11-11T13:16:24.322Z <Engine:INFO> Resuming reaction Sätt Schema VVB i Home Assistant<AKTIV> (rule-mgb8pfhs:S) from step 1 [latest-25310]2025-11-11T13:16:24.323Z <HassController:INFO> HassController#hass perform x_hass_input_datetime.set_datetime on Entity#hass>input_datetime_vvb_natt with { "time": "03:00", "timestamp": 0 } [latest-25310]2025-11-11T13:16:24.323Z <HassController:INFO> HassController#hass: sending payload for x_hass_input_datetime.set_datetime on Entity#hass>input_datetime_vvb_natt action: { "type": "call_service", "service_data": { "date": (null), "time": "03:00", "datetime": (null), "timestamp": 0 }, "domain": "input_datetime", "service": "set_datetime", "target": { "entity_id": "input_datetime.vvb_natt" } } [latest-25310]2025-11-11T13:16:24.324Z <HassController:ERR> HassController#hass request 1762866984323<2025-11-11 14:16:24> (call_service) failed: [Error] Not a parseable type for dictionary value @ data['date'] [-] [latest-25310]2025-11-11T13:16:24.324Z <HassController:WARN> HassController#hass action x_hass_input_datetime.set_datetime({ "time": "03:00", "timestamp": 0 }) on Entity#hass>input_datetime_vvb_natt failed! [latest-25310]2025-11-11T13:16:24.324Z <HassController:INFO> Service call payload: {"type":"call_service","service_data":{"date":null,"time":"03:00","datetime":null,"timestamp":0},"domain":"input_datetime","service":"set_datetime","target":{"entity_id":"input_datetime.vvb_natt"},"id":1762866984323} [latest-25310]2025-11-11T13:16:24.324Z <HassController:INFO> Service data: {"fields":{"date":{"example":"\"2019-04-20\"","selector":{"text":{"multiline":false,"multiple":false}}},"time":{"example":"\"05:04:20\"","selector":{"time":{}}},"datetime":{"example":"\"2019-04-20 05:04:20\"","selector":{"text":{"multiline":false,"multiple":false}}},"timestamp":{"selector":{"number":{"min":0,"max":9223372036854776000,"mode":"box","step":1}}}},"target":{"entity":[{"domain":["input_datetime"]}]}} [latest-25310]2025-11-11T13:16:24.324Z <Engine:ERR> Engine#1 reaction rule-mgb8pfhs:S step 1 perform x_hass_input_datetime.set_datetime failed: [Error] Not a parseable type for dictionary value @ data['date'] [-] [latest-25310]2025-11-11T13:16:24.324Z <Engine:INFO> Engine#1 action args: { "time": "03:00", "timestamp": 0 } [latest-25310]2025-11-11T13:16:24.325Z <Engine:INFO> Resuming reaction Sätt Schema VVB i Home Assistant<AKTIV> (rule-mgb8pfhs:S) from step 2 [latest-25310]2025-11-11T13:16:24.325Z <Engine:INFO> Sätt Schema VVB i Home Assistant<AKTIV> all actions completed.
Multi-System Reactor
Reactor Version 25310 : Office Light control via rule in reactor no longer working since last update.
P
Hello, I currently have an office light (connected via a Leviton Zwave Dimmer switch) controlled from a Gen5 Aeotech Zwave switch installed on my Synology 720+ NAS. I run HA(2025.11.10) in a virtual machine from my NAS and Reactor on the container manager of the same NAS. Prior to updating to 25304 the rule I had set to turn the light on to a specific dimming value worked correctly. Now the rule appears to follow the decision tree, however the reaction does not trigger setting the dimming or turning on the office light? Strangely I can still turn the light on and off as well as dim it directly from HASS..? I have tried using the ''try this action'' button in the rules reaction setting and it will not control the light and does not throw an error flagÉ Please help, P.S Reactor has been rock steady for me over the last few years and I'm a big fan of this solution.
Multi-System Reactor
[Solved] alarm() in global expression throws error in log.
CrilleC
Topic thumbnail image
Multi-System Reactor
[Solved] Define function issue in latest-25304
CrilleC
Topic thumbnail image
Multi-System Reactor
No Upgrade Notification for Build 25308?
CatmanV2C
FWIW I'm no longer getting a notification from MSR that there's an update. Just thought I'd mention it C
Multi-System Reactor
Strange behavior in MSR latest-25304 with disabled groups in Reaction
therealdbT
Topic thumbnail image
Multi-System Reactor
[Reactor] Variables not updating correctly in latest-25201-2aa18550
therealdbT
Topic thumbnail image
Multi-System Reactor
The reaction stopped working (Google Nest max playing a video)
F
Topic thumbnail image
Multi-System Reactor
Handling Dead Entities and Renamed Entities
PablaP
Hello all.. been a minute! I recently rebuilt my Z wave network and migrated to a new z wave stick. In order to prevent any downtime I kept my original z wave network up and ran a docker version of Z Wave JS UI with my new controller. This way I could add device by device without having any devices down. I finally moved all the devices over to my new stick today. The final step was to migrate everything from my Docker instance of Z Wave JS UI to the HA add-on of Z Wave JS UI. However during this migration some of the names didn't populate correctly which I later managed to import back into Z Wave JS UI. The issue was in Reactor it is stuck on the default names and the entities are not updating. I removed the controller from Reactor, restarted, hard refreshed, and added the controller back however the new entity names have not updated. Also it seems like the old entities from my previous instance of Z Wave JS UI are lingering and not being marked as dead (I believe a certain amount of time needs to lapse before they're marked as dead in Reactor). My goal is to basically purge all the entities for the 'ZWaveJS' controller in Reactor so it can pull all the updated entity names and only the entities that exist in Z Wave JS UI. I cannot find a quick way to do this, I know entities can be deleted one by one, but with over 100 entities this would take long I am guessing that if I added the controller with a new name in in the Reactor config it would pull the updated entities and names but I think that would break my rules since the entity IDs would change (I made sure to name all the entities the exact same as they were previously to prevent this issue).
Multi-System Reactor
Strange behavior for MQTT templates using payload and attributes
therealdbT
Topic thumbnail image
Multi-System Reactor
[MSR] reactor-mqtt-contrib package for additional MQTT templates
therealdbT
I'm slowly migrating all my stuff to MQTT under MSR, so I have a central place to integrate everything (and, in a not-so-distant future, to remove virtual devices from my Vera and leave it running zwave only). Anyway, here's my reactor-mqtt-contrib package: https://github.com/dbochicchio/reactor-mqtt-contrib Simply download yaml files (everything or just the ones you need) and you're good to go. I have mapped my most useful devices, but I'll add others soon. Feel free to ask for specific templates, since I've worked a lot in the last weeks to understand and operate them. The templates are supporting both init and query, so you have always up-to-date devices at startup, and the ability to poll them. Online status is supported as well, so you can get disconnected devices with a simple expression. Many-many thanks to @toggledbits for its dedication, support, and patience with me and my requests
Multi-System Reactor
HA 2025.9.4 Supported Yet?
CatmanV2C
Tangentially did I miss 2025.9.4 getting blessed in MSR? I've been holding off Cheers C
Multi-System Reactor
Rule Set UI bug - RESOLVED
3
Topic thumbnail image
Multi-System Reactor
[Reactor] Copy&Paste of Rules
therealdbT
I don't know if I'm the only one, but managing more than one Reactor installs, the need to have some sort of copy&paste for rules has grown on me. While I understand the technical challenges, I'm wondering if a "god mode" where I could copy the raw JSON rule and paste it into another rule could be an advanced, flag only feature that could benefit power users. I know I can copy the JSON file and proceed, but I must stop Reactor and when doing maintenance, it's more clicks to do. Just an idea
Multi-System Reactor
[Reactor] Help with scene controller cycling logic
therealdbT
I’ve added a couple of Shelly Wave i4 as scene controllers and I’m planning to add more, since I can just use standard buttons instead of battery-powered scene controllers, which also looks better aesthetically. That said, I’m struggling to figure out how to write a simple rule that cycles between states every time I press a button. Example: Light 1 ON → OFF, then Light 2 ON → OFF. The part I can’t get right is handling the case where Light 1 or Light 2 might already be ON independently of the rule. Maybe it’s just too much sun and relaxation clouding my brain, but any hint would be appreciated.
Multi-System Reactor
Stop the MSR by an external switch on Hubitat.
wmarcolinW
Use case: When performing home maintenance, such as air conditioning, I want all rules involving air conditioning to be disabled. To do this, to day, I have a virtual switch that I placed within all rules involving air conditioning, meaning that if I turn it off, none of them work. Then another situation: the water pump system and garden irrigation, another switch. In short, I had to create several virtual switches in Hubitat to disable rules in MSR. Unfortunately, however, I was unable to cover all scenarios, so I wondered if it would be possible for MSR to support a virtual MSR switch, which, when configured in the reactor settings, would function as a general on/off switch for MSR. If it is configured and turned off, the entire rules and actions in MSR stops working, except for the status change reading process, specifically for this switch, which, when turned on, would restart the MSR. Would it be possible to do something like this? Any recommendations from the experts?
Multi-System Reactor

Running Lua Code ? And watching device properties?

Scheduled Pinned Locked Moved Multi-System Reactor
69 Posts 7 Posters 13.3k Views 6 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • cw-kidC Offline
    cw-kidC Offline
    cw-kid
    wrote on last edited by cw-kid
    #1

    Hi

    In some of my PLEG actions I run Lua code.

    I guess I can't do that now with MSR. Assume I have to create a Vera scene with that same LUA code and have the MSR action call that scene etc.

    What about the people who were using Reactor plugin for Vera? I assume they can run Lua code.

    But won't be able to when using MSR on a separate box to Vera.

    I am also seeing other things I am doing in PLEG but don't think I will be able to on MSR? Like monitoring devices for certain things.

    For example I use PLEG with Fibaro Dimmer 2 modules to enable me to use the Scene Activation for double and triple clicks on the actual wall switches, PLEG sees this happening and then my action can run a Vera scene or whatever else I want.

    I have three "Device Properties" setup in PLEG to monitor those aspects of the Fibaro Dimmer 2 device.

    078cad4f-ebee-4951-a631-304da033d60f-image.png

    Then this condition in PLEG:

    (LoungeSceneActivated;LoungeLastSceneTime) and (LoungeLastSceneID == 14)
    

    Runs an action when I double click the Lounge Light wall switch.

    Thanks

    1 Reply Last reply
    0
    • therealdbT Offline
      therealdbT Offline
      therealdb
      wrote on last edited by
      #2

      I have a similar in scope system and I run dynamic code via RunLua action. So, I have a function on a lib imported at startup and I’m sending values this way. Another route is to use RunScene and write the code in your scene. So, plenty of choices.

      --
      On a mission to automate everything.

      My MS Reactor contrib
      My Luup Plug-ins

      cw-kidC 1 Reply Last reply
      0
      • cw-kidC Offline
        cw-kidC Offline
        cw-kid
        wrote on last edited by
        #3

        Another example of something I am doing in PLEG and not sure if I can do this in MSR?

        I have two side table lamps in my lounge.

        I have a virtual device dimmer switch in Vera.

        In PLEG I have a "Device Property" to monitor the current Dimming Level of the virtual device dimmer switch

        87de8b9b-1a70-46bb-bd12-00ae7dbbda69-image.png

        My PLEG condition just references the device property "LoungeLampsMaster"

        And in my PLEG action I added the two real lamp devices

        6d0cf0a0-c872-4ffd-8ae6-3c170bec1838-image.png

        And set their loadleveltarget to be whatever the virtual device "Master" dimmer is, by using this in the newLoadLevelTarget

        {(LoungeLampsMaster)}

        Can something like this be setup in MSR ?

        1 Reply Last reply
        0
        • therealdbT therealdb

          I have a similar in scope system and I run dynamic code via RunLua action. So, I have a function on a lib imported at startup and I’m sending values this way. Another route is to use RunScene and write the code in your scene. So, plenty of choices.

          cw-kidC Offline
          cw-kidC Offline
          cw-kid
          wrote on last edited by
          #4

          @therealdb said in Running Lua Code ? And watching device properties?:

          Another route is to use RunScene and write the code in your scene

          That I understand

          @therealdb said in Running Lua Code ? And watching device properties?:

          I run dynamic code via RunLua action. So, I have a function on a lib imported at startup and I’m sending values this way

          This I don't understand, you might as well be talking in Greek.

          Where are these "RunScene" and "RunLua" actions ?

          I only see these in the Set Reaction area.

          10343c4e-e597-4759-b8e2-403c9b75c95d-image.png

          therealdbT 1 Reply Last reply
          0
          • IanI Offline
            IanI Offline
            Ian
            wrote on last edited by
            #5

            You need to select 'Entity Action' in the first drop down and then from --choose device-- in the dropdown that appears, select the script you want to run from the 'Scripts' section.

            1 Reply Last reply
            1
            • cw-kidC Offline
              cw-kidC Offline
              cw-kid
              wrote on last edited by cw-kid
              #6

              Thanks Ian I can see that now its listing all my Vera scenes so that's easy enough to have your Reaction run a Vera scene and then in turn any Lua Code that scene may contain.

              I'm interested to hear more about what TheRealDB mentioned regarding a RunLua action.

              1 Reply Last reply
              0
              • ElcidE Offline
                ElcidE Offline
                Elcid
                wrote on last edited by Elcid
                #7

                To RunLua you would need reactor on the vera. you could then call it from MSR

                Also the {variable or luaxp} works in reactor and will be working in MSR in the near future

                cw-kidC 1 Reply Last reply
                0
                • ElcidE Elcid

                  To RunLua you would need reactor on the vera. you could then call it from MSR

                  Also the {variable or luaxp} works in reactor and will be working in MSR in the near future

                  cw-kidC Offline
                  cw-kidC Offline
                  cw-kid
                  wrote on last edited by cw-kid
                  #8

                  @elcid said in Running Lua Code ? And watching device properties?:

                  To RunLua you would need reactor on the vera. you could then call it from MSR

                  Yep that also make sense. Is that what TheRealDB was referring too ?

                  @elcid said in Running Lua Code ? And watching device properties?:

                  Also the {{variable or luaxp}} works in reactor

                  I don't know what this means.

                  1 Reply Last reply
                  0
                  • ElcidE Offline
                    ElcidE Offline
                    Elcid
                    wrote on last edited by Elcid
                    #9

                    {variable} - refers to expression variable.
                    you can set dynamic names in input fields and you can also use luaxp

                    This reactor page explains more https://www.toggledbits.com/static/reactor/docs/3.6/Expressions-%26-Variables/#luaxp-built-in-functions

                    This will probably be available in MSR to.

                    1 Reply Last reply
                    0
                    • toggledbitsT Offline
                      toggledbitsT Offline
                      toggledbits
                      wrote on last edited by
                      #10

                      You can monitor the dimming level of a dimmer using an Entity Attribute condition and checking dimming.level for the dimmable entity. You can easily do a "master-slave" (or Submasters !) style of dimming mirroring in MSR.

                      I'm still working on the scene controller device mapping. Please remember that this is a developer preview, first time this code has run outside of my hands, and is expected to be incomplete. It's not a finished product at this point and isn't intended to be. If you're using it with that eye, you may want to wait a couple of months.

                      You can run scenes from MSR on the Vera using an Entity Action. Each scene has a corresponding script entity in MSR, with a script.run action available.

                      And of course, the XY-Problem aspect of this... if you tell us what you think you need to run in Lua, there's a chance there may actually be a way to do it without Lua, or its something reasonable to consider as a regular feature addition to MSR, Vera Reactor, or both.

                      Author of Multi-system Reactor and Reactor, DelayLight, Switchboard, and about a dozen other plugins that run on Vera and openLuup.

                      1 Reply Last reply
                      0
                      • cw-kidC cw-kid

                        @therealdb said in Running Lua Code ? And watching device properties?:

                        Another route is to use RunScene and write the code in your scene

                        That I understand

                        @therealdb said in Running Lua Code ? And watching device properties?:

                        I run dynamic code via RunLua action. So, I have a function on a lib imported at startup and I’m sending values this way

                        This I don't understand, you might as well be talking in Greek.

                        Where are these "RunScene" and "RunLua" actions ?

                        I only see these in the Set Reaction area.

                        10343c4e-e597-4759-b8e2-403c9b75c95d-image.png

                        therealdbT Offline
                        therealdbT Offline
                        therealdb
                        wrote on last edited by
                        #11

                        @cw-kid you can run lua code via http call. Just compose a call like this

                        http://ip-address:3480/data_request?id=lu_action&serviceId=urn:micasaverde-com:serviceId:HomeAutomationGateway1&action=RunLua&Code=YourLuaVode

                        Ie, if you have a function named doSomething in your startup code, accepting two values, just call this endpoint

                        http://ip-address:3480/data_request?id=lu_action&serviceId=urn:micasaverde-com:serviceId:HomeAutomationGateway1&action=RunLua&Code=doSomething(1, ‘abc’)

                        I’m using it to concatenate multiple actions in one http call, while still maintaining flexibility.

                        --
                        On a mission to automate everything.

                        My MS Reactor contrib
                        My Luup Plug-ins

                        cw-kidC 1 Reply Last reply
                        1
                        • cw-kidC Offline
                          cw-kidC Offline
                          cw-kid
                          wrote on last edited by
                          #12

                          Thanks guys for the information.

                          Yes I admit I need to keep remembering things might not be implemented yet.

                          But as I have never used Reactor plugin for Vera, I have nothing to compare MSR against other than PLEG.

                          I don't know what is currently possible in the Reactor plugin for Vera etc which isn't helping me when looking at MSR.

                          I am moving my more simple PLEG actions over to MSR now and have already disabled several PLEG conditions on the Vera box.

                          Schedules in MSR I am still testing and struggling with a bit, so I only have two moved over to MSR currently and one isn't running at all and one ran this morning but later than I expected it to do so.

                          I have some pretty long LUA scrips in PLEG for some stuff, I don't think I could do it easily without using LUA code.

                          Are there any examples of a Master Slave dimmer setup which I can follow ?

                          Cheers.

                          1 Reply Last reply
                          0
                          • therealdbT therealdb

                            @cw-kid you can run lua code via http call. Just compose a call like this

                            http://ip-address:3480/data_request?id=lu_action&serviceId=urn:micasaverde-com:serviceId:HomeAutomationGateway1&action=RunLua&Code=YourLuaVode

                            Ie, if you have a function named doSomething in your startup code, accepting two values, just call this endpoint

                            http://ip-address:3480/data_request?id=lu_action&serviceId=urn:micasaverde-com:serviceId:HomeAutomationGateway1&action=RunLua&Code=doSomething(1, ‘abc’)

                            I’m using it to concatenate multiple actions in one http call, while still maintaining flexibility.

                            cw-kidC Offline
                            cw-kidC Offline
                            cw-kid
                            wrote on last edited by
                            #13

                            @therealdb said in Running Lua Code ? And watching device properties?:

                            you can run lua code via http call

                            OK that's a clever idea.

                            So the LUA code is stored where? In a function in the Vera startup right. And then you are just calling it to run via a HTTP request from MSR.

                            therealdbT 1 Reply Last reply
                            0
                            • cw-kidC Offline
                              cw-kidC Offline
                              cw-kid
                              wrote on last edited by cw-kid
                              #14

                              Regarding a Master Dimmer

                              Think I have the Trigger (Condition) correct but don't know what to do with the Reaction ?

                              Do I need to create a variable some where? Or can I directly control the real lamps based on the "changes" of the virtual Master dimmer ?

                              b312bf64-710d-4a9f-85fc-36ee716dad84-image.png

                              toggledbitsT 1 Reply Last reply
                              0
                              • cw-kidC cw-kid

                                Regarding a Master Dimmer

                                Think I have the Trigger (Condition) correct but don't know what to do with the Reaction ?

                                Do I need to create a variable some where? Or can I directly control the real lamps based on the "changes" of the virtual Master dimmer ?

                                b312bf64-710d-4a9f-85fc-36ee716dad84-image.png

                                toggledbitsT Offline
                                toggledbitsT Offline
                                toggledbits
                                wrote on last edited by toggledbits
                                #15

                                This is how it will go:

                                faf26da0-6165-4668-b1d8-04053ea24b72-image.png

                                That said, this won't work today, because I haven't yet connected the expressions to the action parameters (the {master_level} value in the dimming action won't work yet). That's coming, but not yet. You can, however, do exactly this in Vera Reactor to see how it works. It will work the same way in MSR.

                                Edit... let me explain how it works (on both Vera Reactor and MSR):

                                The expression keeps the current value of the master dimmer. So on my system, vera>device_105 is named "Virtual Dimmer 18". The trigger condition looks for any change in the dimming level of that dimmer. When it changes, the set reaction sets the current value (from the expression master_level) on the slave dimmer "Virtual Dimmer 20". Bob's your uncle.

                                Author of Multi-system Reactor and Reactor, DelayLight, Switchboard, and about a dozen other plugins that run on Vera and openLuup.

                                cw-kidC 3 Replies Last reply
                                1
                                • toggledbitsT toggledbits

                                  This is how it will go:

                                  faf26da0-6165-4668-b1d8-04053ea24b72-image.png

                                  That said, this won't work today, because I haven't yet connected the expressions to the action parameters (the {master_level} value in the dimming action won't work yet). That's coming, but not yet. You can, however, do exactly this in Vera Reactor to see how it works. It will work the same way in MSR.

                                  Edit... let me explain how it works (on both Vera Reactor and MSR):

                                  The expression keeps the current value of the master dimmer. So on my system, vera>device_105 is named "Virtual Dimmer 18". The trigger condition looks for any change in the dimming level of that dimmer. When it changes, the set reaction sets the current value (from the expression master_level) on the slave dimmer "Virtual Dimmer 20". Bob's your uncle.

                                  cw-kidC Offline
                                  cw-kidC Offline
                                  cw-kid
                                  wrote on last edited by
                                  #16

                                  @toggledbits What you just explained makes perfect sense.

                                  However I would not have had a clue how to correctly construct that expression with the correct syntax.

                                  I think I have mine setup correctly now.

                                  I understand it wont actually work yet though.

                                  7d7b44f6-7348-455a-bebb-89805591502b-image.png

                                  toggledbitsT 1 Reply Last reply
                                  0
                                  • cw-kidC cw-kid

                                    @toggledbits What you just explained makes perfect sense.

                                    However I would not have had a clue how to correctly construct that expression with the correct syntax.

                                    I think I have mine setup correctly now.

                                    I understand it wont actually work yet though.

                                    7d7b44f6-7348-455a-bebb-89805591502b-image.png

                                    toggledbitsT Offline
                                    toggledbitsT Offline
                                    toggledbits
                                    wrote on last edited by
                                    #17

                                    @cw-kid said in Running Lua Code ? And watching device properties?:

                                    However I would not have had a clue how to correctly construct that expression with the correct syntax.

                                    Right, so I think this is a big issue in your case. My intent with this developer preview was to have experienced Reactor users help me test MSR. You're in the tough spot of coming from PLEG, with no prior Reactor experience, so not only do you not know the current product, but you also don't know if what you're looking at in the new product is right or wrong, same or different. That makes it palpably frustrating for you, and frankly for me as well, because you are not at the level I set for this test. I suspect you're also a bit irritated at having to do this at all, since Richard seems to have abandoned his product years ago (as evidenced by his near-total absence in the forums, the maturity of his product notwithstanding), and the prospect that no PLEG for eZLO seems to be in the works that I've heard.

                                    None of that matters, at least to me, and I appreciate the effort you're putting in, and you're finding bugs and helping, so all is cool in my book, but for the fact that I feel like you're sometimes losing your perspective and treating this as if it's finished and shipped. This is a developer preview, and again, it's known to be incomplete, and its intended audience was existing Reactor users. Those users would know how to build the expression. If you're going to continue to participate, and I hope that you do, please keep this in mind. Making contact with the product this early, you are not only positioning yourself to be a master of it in future, but you're in a position to shape its future, and you have my attention.

                                    You might take a read of the docs for Vera Reactor, to get a better lay of the land, including expressions. Things are different between the two systems, for sure, but the strong flavor is nonetheless there. You can also experiment with Vera Reactor on your Vera directly, and this may actually be very useful in helping identify other differences or gaps that should be at least documented if not closed. Either way, as the more mature product and very stable, it should help remove some of the questions and the trips in your learning curve caused by my errors in the new product. That said, I think I've shown that I will work as quickly as possible to get things shored up so that you can be productive on MSR.

                                    Vera Reactor Docs: https://www.toggledbits.com/static/reactor/docs/

                                    Author of Multi-system Reactor and Reactor, DelayLight, Switchboard, and about a dozen other plugins that run on Vera and openLuup.

                                    1 Reply Last reply
                                    0
                                    • cw-kidC cw-kid

                                      @therealdb said in Running Lua Code ? And watching device properties?:

                                      you can run lua code via http call

                                      OK that's a clever idea.

                                      So the LUA code is stored where? In a function in the Vera startup right. And then you are just calling it to run via a HTTP request from MSR.

                                      therealdbT Offline
                                      therealdbT Offline
                                      therealdb
                                      wrote on last edited by
                                      #18

                                      @cw-kid yes, but if you define a library and register it at startup, you could do that too. I’m currently using this approach, and I like it because it’s inside a file and not a textbox.

                                      --
                                      On a mission to automate everything.

                                      My MS Reactor contrib
                                      My Luup Plug-ins

                                      cw-kidC 1 Reply Last reply
                                      0
                                      • cw-kidC Offline
                                        cw-kidC Offline
                                        cw-kid
                                        wrote on last edited by
                                        #19

                                        All fair comments and observations Patrick. I certainly don't want to cause frustration to anyone.

                                        In PLEG there was no need to of even written an expression just to monitor the value of a devices Dimming level for example. I'd just create a device property.

                                        PLEG device properties are similar to how you build triggers in MSR, in the respect that you just select things from drop down lists. So monitoring a devices Dimming level in PLEG is trivial to setup.

                                        Conditions in PLEG are not so trivial however and are more like writing expressions.

                                        If MSR could build device properties or watch variables as PLEG does I think you'd be making it super easy for any user to pick up and run with MSR.

                                        toggledbitsT 1 Reply Last reply
                                        0
                                        • ElcidE Offline
                                          ElcidE Offline
                                          Elcid
                                          wrote on last edited by
                                          #20

                                          In vera reactor to watch a device state you just set a variable and there is a button to pick what you want to get/watch, this creates the expression for you. The button exists in MSR, but as Patrick says expressions are not fully implemented yet. When it is you will see how simple it is. Install Vera reactor just to have a play.

                                          1 Reply Last reply
                                          1
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          Recent Topics

                                          • Requesting a proper ARM64/aarch64 Docker image (Pi 5 support)
                                            M
                                            mgvra
                                            1
                                            1
                                            15

                                          • Script action and custom timers
                                            toggledbitsT
                                            toggledbits
                                            0
                                            2
                                            37

                                          • Help resolve change in behaviour post update
                                            CatmanV2C
                                            CatmanV2
                                            0
                                            12
                                            170

                                          • Reactor (Multi-System/Multi-Hub) Announcements
                                            CatmanV2C
                                            CatmanV2
                                            5
                                            128
                                            72.5k

                                          • There is an alternative to homebridge-mqttthing
                                            akbooerA
                                            akbooer
                                            1
                                            2
                                            60

                                          • Reactor w/HA 2025.11 error on set_datetime service call setting only time
                                            CrilleC
                                            Crille
                                            0
                                            6
                                            54

                                          • Reactor Version 25310 : Office Light control via rule in reactor no longer working since last update.
                                            toggledbitsT
                                            toggledbits
                                            0
                                            17
                                            252

                                          • Shelly Wall Display XL
                                            akbooerA
                                            akbooer
                                            2
                                            9
                                            665

                                          • [Solved] alarm() in global expression throws error in log.
                                            toggledbitsT
                                            toggledbits
                                            0
                                            26
                                            403

                                          • [Solved] Define function issue in latest-25304
                                            CrilleC
                                            Crille
                                            0
                                            12
                                            330

                                          • No Upgrade Notification for Build 25308?
                                            toggledbitsT
                                            toggledbits
                                            0
                                            2
                                            79

                                          • Strange behavior in MSR latest-25304 with disabled groups in Reaction
                                            toggledbitsT
                                            toggledbits
                                            0
                                            2
                                            114
                                          Powered by NodeBB | Contributors
                                          Hosted freely by 10RUPTiV - Solutions Technologiques | Contact us
                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Categories
                                          • Recent
                                          • Tags
                                          • Popular
                                          • Unsolved