Home Assistant Community Add-on: Node-RED

Yes, I try to catch this by leaving the node-red window open and debug pane up but the issue I have is intermittent, and Murphy is hanging around, and it never seems to fail when I prepare.

Argg… last night I “caught” it, with the debug window open, but apparently it is quite limited in content and I only had from 4am on of a problem that occured around midnight.

Any way to stream this info to a file or something more persistent?

Hi everyone,

I’m running Hassio inside a docker container on an Ubuntu server machine. I installed node-red-contrib-amazon-echo but my Echo Gen3 cannot find any new device. Documentation says:

1 - Amazon Echo Hub node is starting a service listening on port 80 which requires Node-Red process to be started with root user.

Is it possible to log in as root in my environment?

2 - About Node-Red in a Docker container: Echo device will try to discover Amazon Echo Hub using SSDP protocol. In order to allow multicast messages to be routed you have to use host network.

docker run -it --network host --user 0 --name mynodered nodered/node-red-docker

Note: –user 0 will run Node-Red with root user

Is it possible to pass those parameters to Node-Red add-on in Hassio? Maybe using init_commands ?

Thank you!

Tales - thermseekr

The add-on already runs with those parameters…

I had Alexa integration active in Nabu Casa. Disabling it makes node-red-contrib-amazon-echo correctly detect the devices created in Node-Red.

I’m supposing Alexa integration is already using port 80, is there any way to make both active at the same time?

Thanks
Tales

Hi all, I’m trying to update the palette node-red-contrib-modbus from version 5.2.0 to 5.8.0
but I get the following error.
Is there a way for install it in manual mode?
thanks
Matteo

2020-04-05T19:12:57.180Z Install : node-red-contrib-modbus 5.8.0

2020-04-05T19:12:57.124Z npm install --no-audit --no-update-notifier --save --save-prefix="~" --production [email protected]
2020-04-05T19:13:40.740Z [out] 
2020-04-05T19:13:40.740Z [out] > @serialport/[email protected] install /config/node-red/node_modules/@serialport/bindings
2020-04-05T19:13:40.740Z [out] > prebuild-install --tag-prefix @serialport/[email protected] || node-gyp rebuild
2020-04-05T19:13:40.740Z [out] 
2020-04-05T19:13:43.526Z [err] prebuild-install
2020-04-05T19:13:43.527Z [err]  WARN install No prebuilt binaries found (target=12.15.0 runtime=node arch=arm libc=musl platform=linux)
2020-04-05T19:13:48.698Z [err] gyp
2020-04-05T19:13:48.700Z [err]  
2020-04-05T19:13:48.701Z [err] ERR! build error 
2020-04-05T19:13:48.704Z [err] gyp
2020-04-05T19:13:48.704Z [err]  ERR! stack Error: not found: make
2020-04-05T19:13:48.705Z [err] gyp ERR! stack     at getNotFoundError (/usr/lib/node_modules/npm/node_modules/which/which.js:13:12)
2020-04-05T19:13:48.705Z [err] gyp
2020-04-05T19:13:48.706Z [err]  ERR! stack     at F (/usr/lib/node_modules/npm/node_modules/which/which.js:68:19)
2020-04-05T19:13:48.706Z [err] gyp ERR!
2020-04-05T19:13:48.706Z [err]  stack     at E (/usr/lib/node_modules/npm/node_modules/which/which.js:80:29)
2020-04-05T19:13:48.706Z [err] gyp ERR!
2020-04-05T19:13:48.706Z [err]  stack     at /usr/lib/node_modules/npm/node_modules/which/which.js:89:16
2020-04-05T19:13:48.706Z [err] gyp ERR!
2020-04-05T19:13:48.707Z [err]  stack     at /usr/lib/node_modules/npm/node_modules/isexe/index.js:42:5
2020-04-05T19:13:48.707Z [err] gyp ERR!
2020-04-05T19:13:48.707Z [err]  stack     at /usr/lib/node_modules/npm/node_modules/isexe/mode.js:8:5
2020-04-05T19:13:48.707Z [err] gyp 
2020-04-05T19:13:48.708Z [err] ERR! stack     at FSReqCallback.oncomplete (fs.js:158:21)
2020-04-05T19:13:48.708Z [err] gyp 
2020-04-05T19:13:48.709Z [err] ERR! System Linux 4.19.106-v7
2020-04-05T19:13:48.709Z [err] gyp ERR! 
2020-04-05T19:13:48.709Z [err] command "/usr/bin/node" "/usr/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
2020-04-05T19:13:48.709Z [err] gyp
2020-04-05T19:13:48.709Z [err]  ERR! cwd /config/node-red/node_modules/@serialport/bindings
2020-04-05T19:13:48.710Z [err] gyp ERR!
2020-04-05T19:13:48.710Z [err]  node -v v12.15.0
2020-04-05T19:13:48.710Z [err] gyp ERR! 
2020-04-05T19:13:48.710Z [err] node-gyp -v v5.0.5
2020-04-05T19:13:48.711Z [err] gyp ERR! not ok
2020-04-05T19:13:48.711Z [err]  
2020-04-05T19:13:51.502Z [err] npm
2020-04-05T19:13:51.503Z [err]  ERR! code ELIFECYCLE
2020-04-05T19:13:51.504Z [err] npm ERR! errno 1
2020-04-05T19:13:51.515Z [err] npm ERR! @serialport/[email protected] install: `prebuild-install --tag-prefix @serialport/[email protected] || node-gyp rebuild`
2020-04-05T19:13:51.515Z [err] npm ERR!
2020-04-05T19:13:51.517Z [err]  Exit status 1
2020-04-05T19:13:51.517Z [err] npm ERR! 
2020-04-05T19:13:51.517Z [err] npm ERR! Failed at the @serialport/[email protected] install script.
2020-04-05T19:13:51.517Z [err] npm 
2020-04-05T19:13:51.518Z [err] ERR! This is probably not a problem with npm. There is likely additional logging output above.
2020-04-05T19:13:51.719Z [err] 
2020-04-05T19:13:51.720Z [err] npm ERR! A complete log of this run can be found in:
2020-04-05T19:13:51.721Z [err] npm ERR!     /root/.npm/_logs/2020-04-05T19_13_51_666Z-debug.log
2020-04-05T19:13:51.782Z rc=1

Hi,

I am having problems to have any debug messages displayed. I am trying to see the output of deconz_events to identify the proper info to put in for my Xiaomi button, but nothing is showing up…

I also saw in a youtube video that one can connect the node-red to deConz and get the devices from there and don’t need to listen for events.

Would this be possible?

you need to add “debug node” and connect your “deconz_event” on it
https://nodered.org/docs/user-guide/nodes

How to debug Dashboard 404

I’ve looked and haven’t seen an answer for this problem. I’m using Nginx Proxy Manager for mydomain.com. Everything works, and the Node Red dashboard worked last time I checked a couple of months ago. Now, however (with everything updated to most recent versions) trying to access mydomain.com/endpoint/ui just gives me a 404 error. How would I debug this?

Is that in the node-red addon config?

Thanks @Bard!

@frenck kind of a random question, but does the http_static part in the config for this add-on actually do anything? I’ve been trying to figure out what it does just because I like to know my settings but I really can’t figure it out.

I found what Node RED says it does in their doc on securing Node-RED but what it secures appears to be a special folder you can designate for Node RED that just holds static content. I think by default this gets set to /home/nol/node-red-static in the Node RED settings file based on some googling but obviously that folder doesn’t exist in a typical Home Assistant deployment. And when I took a look into the config/node-red/settings.js the line setting the httpStatic field is commented out.

So I’m at a bit of a loss. Is Node-RED falling back on some other default folder for httpStatic that is protected with this option? Does this option only do something if you go in and tweak the httpStatic field in the settings.js file? Or maybe if you manaully create a folder called /home/nol/node-red-static/ and start putting static content in it? Or is it really kind of a legacy option that doesn’t do anything anymore?

Hi Dmitry! Did you solve this issue? I have the same problem and I can’t found solution! I have a Home assistant un Docker, with Node red addons over Raspberry Pi 3B+. Regards!!!

I’m novice. I have been installed addon and opened web UI on mobile. I move side panels to sides and now it is not possible to open it again, because mobile sides or application uses side for own actions. Could anyone help me? Reinstall? Make reinstall always when I do this by mistake? Thanks

NodeRED doesn’t have a mobile friendly UI. Use a computer to display and use it properly.

Hey, I hope someone is able to help me. Today I restarted my HA instance and out of nothing node-red stopped working. It seems that it tries to install a package on startup but this fails. I didnt add any package in the last months and I’m pretty sure there wasnt an update of the addon available. So I’m unsure where this could come from.

System: HassOS 3.13  (amd64 / qemux86-64)
 Home Assistant Core: 0.109.6
 Home Assistant Supervisor: 222
-----------------------------------------------------------
 Please, share the above information when looking for help
 or support in, e.g., GitHub, forums or the Discord chat.
-----------------------------------------------------------
[cont-init.d] 00-banner.sh: exited 0.
[cont-init.d] 01-log-level.sh: executing... 
Log level is set to INFO
[cont-init.d] 01-log-level.sh: exited 0.
[cont-init.d] nginx.sh: executing... 
[cont-init.d] nginx.sh: exited 0.
[cont-init.d] node-red.sh: executing... 
patching file nodes/ui_base.html
Hunk #1 succeeded at 1244 (offset 713 lines).
npm WARN [email protected] No repository field.
npm WARN [email protected] No license field.
audited 50 packages in 0.831s
found 1 moderate severity vulnerability
  run `npm audit fix` to fix them, or `npm audit` for details
[cont-init.d] node-red.sh: exited 0.
[cont-init.d] user.sh: executing... 
[10:33:41] INFO: Starting installation of custom NPM/Node-RED packages...
npm WARN deprecated @types/[email protected]: This is a stub types definition. p-retry provides its own type definitions, so you do not need this installed.
npm WARN deprecated @types/[email protected]: This is a stub types definition. p-cancelable provides its own type definitions, so you do not need this installed.
npm WARN deprecated @types/[email protected]: This is a stub types definition. form-data provides its own type definitions, so you do not need this installed.
npm WARN deprecated [email protected]: https://github.com/lydell/resolve-url#deprecated
npm WARN deprecated [email protected]: Please see https://github.com/lydell/urix#deprecated
npm WARN deprecated [email protected]: [email protected]<3 is no longer maintained and not recommended for usage due to the number of issues. Please, upgrade your dependencies to the actual version of [email protected]
npm WARN deprecated [email protected]: If using 2.x branch, please upgrade to at least 2.1.6 to avoid a serious bug with socket data flow and an import issue introduced in 2.1.0
> [email protected] install /opt/node_modules/grpc
> node-pre-gyp install --fallback-to-build --library=static_library
node-pre-gyp WARN Using request for node-pre-gyp https download 
[grpc] Success: "/opt/node_modules/grpc/src/node/extension_binary/node-v72-linux-x64-musl/grpc_node.node" is installed via remote
> [email protected] install /opt/node_modules/sqlite3
> node-pre-gyp install --fallback-to-build
node-pre-gyp WARN Using request for node-pre-gyp https download 
node-pre-gyp ERR! UNCAUGHT EXCEPTION 
node-pre-gyp ERR! stack Error: Cannot find module 'minipass'
node-pre-gyp ERR! stack Require stack:
node-pre-gyp ERR! stack - /opt/node_modules/tar/lib/pack.js
node-pre-gyp ERR! stack - /opt/node_modules/tar/lib/create.js
node-pre-gyp ERR! stack - /opt/node_modules/tar/index.js
node-pre-gyp ERR! stack - /opt/node_modules/sqlite3/node_modules/node-pre-gyp/lib/install.js
node-pre-gyp ERR! stack - /opt/node_modules/sqlite3/node_modules/node-pre-gyp/lib/node-pre-gyp.js
node-pre-gyp ERR! stack - /opt/node_modules/sqlite3/node_modules/node-pre-gyp/bin/node-pre-gyp
node-pre-gyp ERR! stack     at Function.Module._resolveFilename (internal/modules/cjs/loader.js:793:17)
node-pre-gyp ERR! stack     at Function.Module._load (internal/modules/cjs/loader.js:686:27)
node-pre-gyp ERR! stack     at Module.require (internal/modules/cjs/loader.js:848:19)
node-pre-gyp ERR! stack     at require (internal/modules/cjs/helpers.js:74:18)
node-pre-gyp ERR! stack     at Object.<anonymous> (/opt/node_modules/tar/lib/pack.js:27:18)
node-pre-gyp ERR! stack     at Module._compile (internal/modules/cjs/loader.js:955:30)
node-pre-gyp ERR! stack     at Object.Module._extensions..js (internal/modules/cjs/loader.js:991:10)
node-pre-gyp ERR! stack     at Module.load (internal/modules/cjs/loader.js:811:32)
node-pre-gyp ERR! stack     at Function.Module._load (internal/modules/cjs/loader.js:723:14)
node-pre-gyp ERR! stack     at Module.require (internal/modules/cjs/loader.js:848:19)
node-pre-gyp ERR! System Linux 4.19.115
node-pre-gyp ERR! command "/usr/bin/node" "/opt/node_modules/sqlite3/node_modules/.bin/node-pre-gyp" "install" "--fallback-to-build"
node-pre-gyp ERR! cwd /opt/node_modules/sqlite3
node-pre-gyp ERR! node -v v12.15.0
node-pre-gyp ERR! node-pre-gyp -v v0.11.0
node-pre-gyp ERR! This is a bug in `node-pre-gyp`.
node-pre-gyp ERR! Try to update node-pre-gyp and file an issue if it does not help:
node-pre-gyp ERR!     <https://github.com/mapbox/node-pre-gyp/issues>
npm WARN [email protected] requires a peer of [email protected] but none is installed. You must install peer dependencies yourself.
npm WARN [email protected] requires a peer of [email protected] || 3 || 4 but none is installed. You must install peer dependencies yourself.
npm ERR! code ELIFECYCLE
npm ERR! errno 7
npm ERR! [email protected] install: `node-pre-gyp install --fallback-to-build`
npm ERR! Exit status 7
npm ERR! 
npm ERR! Failed at the [email protected] install script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
npm ERR! A complete log of this run can be found in:
npm ERR!     /root/.npm/_logs/2020-05-18T08_35_15_235Z-debug.log
[10:35:15] FATAL: Failed to install a specified npm package
[cont-init.d] user.sh: exited 1.
[cont-finish.d] executing container finish scripts...
[cont-finish.d] 99-message.sh: executing... 
-----------------------------------------------------------
                Oops! Something went wrong.

 We are so sorry, but something went terribly wrong when
 starting or running this add-on.
 
 Be sure to check the log above, line by line, for hints.
-----------------------------------------------------------
[cont-finish.d] 99-message.sh: exited 0.
[cont-finish.d] done.
[s6-finish] waiting for services.
[s6-finish] sending all processes the TERM signal.
[s6-finish] sending all processes the KILL signal and exiting.

Just wanted to share a fork of this great add-on for anyone interested. I required Node-Red to be only accessible from within Home Assistant, so I removed a lot of functionality that frenck created in this addon. Perhaps it seems counter-intuitive to do so, but on the upside, the minimized version scores top marks in the Supervisor’s security rating. :lock:

So if anyone has the same requirements as I do (Node-Red on Ingress only, no network connectivity, no HTTP nodes, etc.), take a look here.
If not, please stay right where you are and keep on using this official community add-on. Because here you can get support and have a verified up-to-date source that supplies you with tested software before every release. So thanks to frenck and the entire addon community for keeping this up.

I would call it maximal…

As this is not how you think it works…

Also, good to mention it is not shipped pre-build, if you install this on a, for example, Pi2, you are going to be pretty unhappy.

Thanks frenck, forgot to cleanup there and I added a warning for now regarding the image status.

:+1: Lot better :slight_smile:

Hi,
I recently upgraded my node-red install to 6.3.0 on HA 0.110.4 (HassOS 4.8 / Supervisor 225).

On previous version, node-red was connecting to HA without any problem but now there seems to be a problem with the WebSocket API.

Here is the logs from Supervisor

20-06-01 18:06:53 INFO (MainThread) [supervisor.api.proxy] Home Assistant WebSocket API request initialize
20-06-01 18:06:53 INFO (MainThread) [supervisor.api.proxy] WebSocket access from a0d7b954_nodered
20-06-01 18:06:53 INFO (MainThread) [supervisor.api.proxy] Home Assistant WebSocket API request running
20-06-01 18:06:57 INFO (MainThread) [supervisor.api.proxy] Home Assistant WebSocket API error: Received message 258:WebSocketError('Message size 4392952 exceeds limit 4194304') is not str
20-06-01 18:06:57 INFO (MainThread) [supervisor.api.proxy] Home Assistant WebSocket API connection is closed

Here is the logs from the node-red add-on

1 Jun 14:06:36 - [info] [server:Home Assistant] WebSocket Connecting http://supervisor/core
1 Jun 14:06:36 - [info] [server:Home Assistant] WebSocket Connected to http://supervisor/core
1 Jun 14:06:36 - [debug] [server:Home Assistant] config server event listener connected
1 Jun 14:06:40 - [info] [server:Home Assistant] WebSocket Closed http://supervisor/core

My node-red Home Assistant palette is configured with the “I use the Home Assistant Add-on” setting.

Any one can help me solve this issue?

Thanks.
Pierre-Olivier