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. Which user to install nodejs as ? Debian Linux
Gradually turn on lights.
Tom_DT
I have several lights that I would like to turn on very gradually over 15 or 20 seconds. from 0 to .25 in .01 increments. I have tried a few things that came nowhere near working, so here I am.
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
Error After Upgrade
T
Topic thumbnail image
Multi-System Reactor
Reset attribute value of entity in event handler
R
Topic thumbnail image
Multi-System Reactor
Need help figuring out how to delay a reset on reaction
T
Topic thumbnail image
Multi-System Reactor
Way to search for rules (rule state) in other rules
T
@toggledbits, not sure if this is a feature request or I'm using the search tool wrong. You have a "Search for rule" in the Rules Set tab in MSR. It works nicely to find a rule and bring up said rule, but can it/could it be used for as a "where used?" global search? For instance, I have a fairly large set of rules, divided up into 10 different rulesets. There's easily a hundred individual rules, and many of the rules have Rule State triggers, which of course refer to other rules. Amongst my troubleshooting today, I came across what may have been a duplicate or troubleshooting attempt, but I can't tell if it's actually used as a Rule State in another rule without opening each rule that I suspect it may be a part of. Thanks.
Multi-System Reactor
Links to MSR from HA
Tom_DT
I am using Home Assistant a lot recently. On a dashboard showing the devices, I would like to show a link to the MSR rule that controls the devices. Is there a way to link directly into MSR?
Multi-System Reactor
Set Reaction > Script Action
wmarcolinW
Topic thumbnail image
Multi-System Reactor
Errors after updating to MQTTController build 25139
tunnusT
I'm running MSR build 25139 on Docker, using MQTT controller 24293, and everything working as expected. But if I try to upgrade to MQTTController build 25139, I'm getting the following errors on MSR UI: An Entity Attribute condition in "Lay-Z-Spa auto heating off" (Terrace) failed because the referenced entity "Lay-Z-Spa States" (mqtt>layzspa_states) does not have attribute value_sensor.god Last 11:20:37 An Entity Attribute condition in "Lay-Z-Spa auto heating off" (Terrace) failed because the referenced entity "Lay-Z-Spa States" (mqtt>layzspa_states) does not have attribute temperature_sensor.green Last 11:20:37 An Entity Attribute condition in "Lay-Z-Spa filter pump auto off" (Terrace) failed because the referenced entity "Lay-Z-Spa States" (mqtt>layzspa_states) does not have attribute temperature_sensor.red Last 11:20:37 An Entity Attribute condition in "Lay-Z-Spa filter pump auto run" (Terrace) failed because the referenced entity "Lay-Z-Spa States" (mqtt>layzspa_states) does not have attribute value_sensor.pump Last 11:20:37 An Entity Attribute condition in "Lay-Z-Spa watchdog" (Terrace) failed because the referenced entity "Lay-Z-Spa States" (mqtt>layzspa_states) does not have attribute value_sensor.status Last 11:20:37 My MQTT configuration (local_mqtt_devices.yaml) for the related entity is: layzspa_message: type: ValueSensor capabilities: ["temperature_sensor", "value_sensor", "power_sensor"] primary_attribute: power_sensor.value events: "layzspa/message": "power_sensor.value": json_payload: true if_expr: '! isnull( payload?.PWR )' expr: "float(payload.PWR)" "value_sensor.air": json_payload: true if_expr: '! isnull( payload?.AIR )' expr: "float(payload.AIR)" "value_sensor.pump": json_payload: true if_expr: '! isnull( payload?.FLT )' expr: "float(payload.FLT)" "value_sensor.god": json_payload: true if_expr: '! isnull( payload?.GOD )' expr: "float(payload.GOD)" "value_sensor.lock": json_payload: true if_expr: '! isnull( payload?.LCK )' expr: "float(payload.LCK)" "value_sensor.unit": json_payload: true if_expr: '! isnull( payload?.UNT )' expr: "float(payload.UNT)" "value_sensor.error": json_payload: true if_expr: '! isnull( payload?.ERR )' expr: "float(payload.ERR)" "temperature_sensor.green": json_payload: true if_expr: '! isnull( payload?.GRN )' expr: "float(payload.GRN)" "temperature_sensor.red": json_payload: true if_expr: '! isnull( payload?.RED )' expr: "float(payload.RED)" "temperature_sensor.target": json_payload: true if_expr: '! isnull( payload?.TGT )' expr: "float(payload.TGT)" "temperature_sensor.value": json_payload: true if_expr: '! isnull( payload?.TMP )' expr: "float(payload.TMP)" "temperature_sensor.virtual": json_payload: true if_expr: '! isnull( payload?.VTM )' expr: "round(float(payload.VTM), 1)" "temperature_sensor.ambient": json_payload: true if_expr: '! isnull( payload?.AMB )' expr: "float(payload.AMB)" "layzspa/Status": "value_sensor.status": if_expr: '! isnull( payload )' expr: "payload" "layzspa/button": "value_sensor.button": if_expr: '! isnull( payload )' expr: "payload" and in reactor.yaml I have: "layzspa_states": name: "Lay-Z-Spa States" friendly_name: 'Lay-Z-Spa States' include: layzspa_message I realize my MQTT configuration might be a bit unorthodox, but could there still be something unintentional in the latest MQTTController build? If needed, I can provide detailed logs.
Multi-System Reactor
🎉 My very first MSR controller: OpenSprinkler
therealdbT
Since today is my birthday - and I still pretend to be unconventional - I'm giving away a present to this wonderful community and I'm releasing my first OpenSprinkler controller for MSR. It was real fun to code it - and while it's still WIP, it seems to work OK for me. It's polling-based at the moment, but I'll add support for updates via MQTT very soon (it's already partially coded). Get it at (install is similar to MQTTController and such): https://github.com/dbochicchio/reactor-opensprinkler Feel free to try it. It's beta software, but it's stable. I'll update it weekly until all the tasks from my todo list are empty. Since I've learnt a lot from this controller, I'll explore new controllers soon.
Multi-System Reactor
Advice reqeusted to migrate MSR from Bare Metal to Container
T
Good day all, I'm in the process of trying to shut down my 10 year old Linux home server that served many purposes, but primarily it's what I used for my NAS/Plex Media server. I migrated the NAS aspect of the server in November of last year to a true NAS solution (Ubiquti UNAS Pro), which is rack mount and much more efficient than my old tower, which it's only side benefit was heating my home office during the winter. Unfortunately it also means heating my home office during the summer, which were about to be in full swing. I have two things running on this 10 year old server at this point. MSR and pi-hole. I'm running Plex Media Server on Fedora Workstation in Podman on mini PC, which is much more energy efficient than my old tower. My next step is to migrate MSR. I know there are images of MSR out there, and creating it is well documented. I'm going to be using Podman instead of Docker for various reasons, but they work very similar. What I don't know, is what I need to do to migrate my existing Bare Metal installation over to a container. Has anyone done this? Any advice?
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
Can´t restart or upgrade/deploy MSR
F
Topic thumbnail image
Multi-System Reactor
[Solved] Limit HA Entity in MSR
wmarcolinW
Topic thumbnail image
Multi-System Reactor
Organizing/ structuring rule sets and rules
R
Hi guys, Just wondering how you guys organize your rule sets and rules. I wish I had an extra layer to have some more granularity, but my feature request was not popular. Maybe there are better ways to organize my rule sets. I use the rule sets now primarily for rooms. So a rule set per room. But maybe grouping by functionality works better. Any examples/ suggestions would be appreciated.
Multi-System Reactor
Moving MSR from a QNAP container to RP 5 - some issues
Tom_DT
Topic thumbnail image
Multi-System Reactor
Widget deletion does not work and landing page (status) is empy
M
Topic thumbnail image
Multi-System Reactor
Need help reducing false positive notifications
T
Topic thumbnail image
Multi-System Reactor
Deleting widgets
tunnusT
Hopefully a trivial question, but how do you delete widgets in a status page? Using build 22266
Multi-System Reactor
MQTT configuration question
tunnusT
I have the following yaml configuration in local_mqtt_devices file x_mqtt_device: set_speed: arguments: speed: type: str topic: "command/%friendly_name%" payload: type: json expr: '{ "fan": parameters.speed }' While this works fine, I'm wondering how this could be changed to "fixed" parameters, as in this case "fan" only accepts "A", "Q" or a numeric value of 1-5?
Multi-System Reactor

Which user to install nodejs as ? Debian Linux

Scheduled Pinned Locked Moved Multi-System Reactor
20 Posts 4 Posters 1.7k Views 4 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.
  • toggledbitsT Offline
    toggledbitsT Offline
    toggledbits
    wrote on last edited by toggledbits
    #9

    If that's the case, your global expressions file is damaged/unreadable for some reason. I'll send you a link privately to upload it to me, and I'll see if I can repair it for you.

    When backing up and restoring, the entire storage folder should always go as a unit. No cherry-picking.

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

    cw-kidC 1 Reply Last reply
    1
    • toggledbitsT toggledbits

      If that's the case, your global expressions file is damaged/unreadable for some reason. I'll send you a link privately to upload it to me, and I'll see if I can repair it for you.

      When backing up and restoring, the entire storage folder should always go as a unit. No cherry-picking.

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

      @toggledbits said in Which user to install nodejs as ? Debian Linux:

      When backing up and restoring, the entire storage folder should always go as a unit. No cherry-picking

      Understood now thanks.

      I uploaded the file to your dropbox. Cheers for the help!

      Btw I formatted everything and started again earlier, no longer using NVM to install node.js I installed it globally instead with apt via the command from this webpage here. That seems to have fixed my Node-Red service file issues anyways. Both MSR and Node-Red are auto starting at boot now.

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

        @toggledbits said in Which user to install nodejs as ? Debian Linux:

        When backing up and restoring, the entire storage folder should always go as a unit. No cherry-picking

        Understood now thanks.

        I uploaded the file to your dropbox. Cheers for the help!

        Btw I formatted everything and started again earlier, no longer using NVM to install node.js I installed it globally instead with apt via the command from this webpage here. That seems to have fixed my Node-Red service file issues anyways. Both MSR and Node-Red are auto starting at boot now.

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

        @cw-kid said in Which user to install nodejs as ? Debian Linux:

        I installed it globally instead with apt via the command from this webpage here.

        Sigh. OK. Unfortunately, that version (20) is already out of development, but at least it's LTS and will hold until 2026. Or maybe the header on the page is wrong and it's been updated to install the latest LTS. Either way, Reactor will support it as long as it's under maintenance with the authors.

        There's nothing wrong with your expressions.json file. I'm guessing it's a permissions problem after you copy it from whatever source you copied it from (it's keeping the user and group IDs on the file from whatever source, and the user ID has changed between the two systems).

        As I said, you should copy the entire storage directory, don't cherry pick, because there are other important files in there that align with your installation. Once you've copied everything, run the following commands in a shell from the Reactor install directory (where Reactor's app.js is located), substituting <user> and <group> with the user and group names, respectively:

        sudo chown -R <user>:<group> .
        sudo chmod -R ug=rwX,o= .
        

        This should fix all file permissions. Then start Reactor.

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

        cw-kidC 1 Reply Last reply
        0
        • toggledbitsT toggledbits

          @cw-kid said in Which user to install nodejs as ? Debian Linux:

          I installed it globally instead with apt via the command from this webpage here.

          Sigh. OK. Unfortunately, that version (20) is already out of development, but at least it's LTS and will hold until 2026. Or maybe the header on the page is wrong and it's been updated to install the latest LTS. Either way, Reactor will support it as long as it's under maintenance with the authors.

          There's nothing wrong with your expressions.json file. I'm guessing it's a permissions problem after you copy it from whatever source you copied it from (it's keeping the user and group IDs on the file from whatever source, and the user ID has changed between the two systems).

          As I said, you should copy the entire storage directory, don't cherry pick, because there are other important files in there that align with your installation. Once you've copied everything, run the following commands in a shell from the Reactor install directory (where Reactor's app.js is located), substituting <user> and <group> with the user and group names, respectively:

          sudo chown -R <user>:<group> .
          sudo chmod -R ug=rwX,o= .
          

          This should fix all file permissions. Then start Reactor.

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

          @toggledbits

          I used WINSCP to copy the file from my Windows PC to the Linux box.

          00936b30-dc96-4b99-b184-32534269c217-image.png

          It says rw-r--r-- next to the expressions file and has me as the owner of the file.

          29861561-54e2-4f54-93b4-d5c92e0625df-image.png

          Regarding nodejs installed via apt it says its version v20.18.1 I think version 22.x is the latest. Maybe I can upgrade it somehow later.

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

            Yeah, but I can see in that screen shot that there are other broken permissions that are going to cause problems. For example, look at the reactions folder. It's owned by root, with no write permission for group or other users, so that's going to prevent you from saving new reactions, at least, and depending on individual file permissions within that folder, editing and saving any existing reactions. So I suspect the parent folder storage, and maybe even the Reactor install directory itself, have gotten broken permissions/ownership along the way of your efforts.

            You need to fix the entire directory tree to be safe, using the commands I gave you.

            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 Offline
              cw-kidC Offline
              cw-kid
              wrote on last edited by cw-kid
              #14

              OK I ran these commands in the home/stuart/reactor folder where the app.js file is located. That appears to have worked and changed some of the folders and files from root to my name now.

              Also after restarting MSR the expressions.json file is no longer changing from 9k to 1k in size and I can open the file from the Linux machine and see its contents are still all intact. It wasn't doing that before.

              However in the MSR GUI in Expressions its still empty.

              image.png

              88bf0fe7-c1e1-4437-a3c9-21232af71bf5-image.png

              Edit I seem to have ballsed something up, i have a path now of /home/stuart/reactor/reactor hang on let me try and fix that.

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

                Not sure how I ended up with a reactor folder in the reactor folder. I deleted it.
                It now looks correct and I ran the commands again for the permssions.

                be37bb7d-dfb8-4b60-957d-e543e8ea78d4-image.png

                46bbf45c-a84e-42b7-b45e-fcef80a5d13b-image.png

                However every time I copy the expression file from the PC to the Linux box its 9k in file size. But when I restart MSR it changes that file to be 1k and wipes out all its contents.

                2144a076-86e5-4c08-9017-d253e9881581-image.png

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

                  Think I have got it working now!
                  95101eda-401d-4f99-99b3-73b9a97acf55-image.png

                  I ran these commands again logged in as me.

                  cd /home/stuart
                  pkill -QUIT node
                  tar xzvf /home/stuart/reactor-latest-24302-751a06b6.tar.gz
                  sudo systemctl start reactor

                  cd /home/stuart/reactor
                  npm i --no-save --omit dev

                  Will try and figure out how to update nodejs now from 20.x to 22.x.

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

                    It seems nodesource is just out of date and does not have the latest versions of nodejs

                    I tried this command instead and it still only wants to get version v20.18.1 as the latest one.

                    curl -fsSL https://deb.nodesource.com/setup_current.x | -E bash -

                    apt-get install -y nodejs

                    And when I run a "Which node" command its put it in this directory which I don't think is ideal?

                    /usr/bin/node

                    So now sure now the best way to update nodejs.

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

                      Frankly, I wouldn't update. The amount of changes you've made are making your entire system a moving target. You're good until 2026. Leave it alone for now. Get everything else working, and get it stable.

                      In the meanwhile, grab yourself a Pi or something else cheap that can run Linux, and practice. Install versions and get to know where things go and how they are connected together. Upgrade it. Blow it up, wipe it, and do it again until you understand why it blows up. The time you invest will pay you back later when you deal with your "production" system. Sandboxes are a lovely thing. Go play!

                      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
                      • therealdbT Offline
                        therealdbT Offline
                        therealdb
                        wrote on last edited by
                        #19

                        Ah this point, if I was you @cw-kid , I’ll start taking a look at docker. That’s exactly why they built it: to easily install and manage applications. Just backup your docker file and settings and you’ll move in seconds. I have a backup installation always ready on my synology and ready to run in minutes in case of problems.

                        --
                        On a mission to automate everything.

                        My MS Reactor contrib
                        My Luup Plug-ins

                        G 1 Reply Last reply
                        0
                        • therealdbT therealdb

                          Ah this point, if I was you @cw-kid , I’ll start taking a look at docker. That’s exactly why they built it: to easily install and manage applications. Just backup your docker file and settings and you’ll move in seconds. I have a backup installation always ready on my synology and ready to run in minutes in case of problems.

                          G Offline
                          G Offline
                          gwp1
                          wrote on last edited by
                          #20

                          @therealdb I have the hardware, just haven't had the time yet, to do exactly this.

                          *Hubitat C-7 2.4.1.177
                          *Proxmox VE v8, Beelink MiniPC 12GBs, SSD

                          *HASS 2025.6.0
                          w/ ZST10-700 fw 7.18.3

                          *Prod MSR in docker/portainer
                          MSR: latest-25139-fbd67abc
                          MQTTController: 25139
                          ZWave Controller: 25139

                          1 Reply Last reply
                          0
                          • toggledbitsT toggledbits unlocked this topic on
                          • toggledbitsT toggledbits locked this topic on
                          Reply
                          • Reply as topic
                          Log in to reply
                          • Oldest to Newest
                          • Newest to Oldest
                          • Most Votes


                          Recent Topics

                          • Gradually turn on lights.
                            G
                            gwp1
                            0
                            4
                            105

                          • Stop the MSR by an external switch on Hubitat.
                            wmarcolinW
                            wmarcolin
                            0
                            1
                            23

                          • Error After Upgrade
                            G
                            gwp1
                            0
                            4
                            93

                          • Reset attribute value of entity in event handler
                            R
                            RHCPNG
                            0
                            5
                            182

                          • Need help figuring out how to delay a reset on reaction
                            G
                            gwp1
                            0
                            22
                            902

                          • Way to search for rules (rule state) in other rules
                            T
                            tamorgen
                            0
                            3
                            97

                          • Links to MSR from HA
                            Tom_DT
                            Tom_D
                            0
                            1
                            81

                          • Set Reaction > Script Action
                            wmarcolinW
                            wmarcolin
                            0
                            11
                            431

                          • Wiring Samotech SM308-S into light fitting
                            akbooerA
                            akbooer
                            0
                            2
                            137

                          • Errors after updating to MQTTController build 25139
                            toggledbitsT
                            toggledbits
                            0
                            6
                            235

                          • 🎉 My very first MSR controller: OpenSprinkler
                            therealdbT
                            therealdb
                            5
                            13
                            907

                          • Advice reqeusted to migrate MSR from Bare Metal to Container
                            T
                            tamorgen
                            0
                            5
                            252
                          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