# Unable to install node-red-contrib-zwave-js

**URL:** <https://discourse.nodered.org/t/unable-to-install-node-red-contrib-zwave-js/84156>\
**Category:** General\
**Tags:** docker\
**Created:** [31 December 2023 13:52 UTC](https://discourse.nodered.org/t/unable-to-install-node-red-contrib-zwave-js/84156 "2023-12-31T13:52:37Z")\
**Posts on this page:** 15\
**Page:** 1

<div class="post-metadata">

**Author:** ![Mastiff](https://avatars.discourse-cdn.com/v4/letter/m/ee7513/32.png) [@Mastiff](https://discourse.nodered.org/u/Mastiff)\
**Post date:** [31 December 2023 13:52 UTC](https://discourse.nodered.org/t/unable-to-install-node-red-contrib-zwave-js/84156/1 "2023-12-31T13:52:37Z")

</div>

I have my Node-RED running perfectly in Docker, and I haven't had any problems since I installed it. But I ran into a brick wall trying to install the node-red-contrib-zwave-js node. And I have no idea how to fix it, since the node version is probably controlled by the Docker image I am pulling. Is there anything I can do here? I have seen that there's a version 10 of this node, but I have no idea how to pull that instead of version 9 within Docker.

> 2023-12-31T13:49:11.629Z Install : node-red-contrib-zwave-js 9.0.3  
> 2023-12-31T13:49:11.315Z npm install --no-audit --no-update-notifier --no-fund --save --save-prefix=~ --production --engine-strict node-red-contrib-zwave-js@9.0.3  
> 2023-12-31T13:49:12.474Z [err] npm  
> 2023-12-31T13:49:12.476Z [err]  
> 2023-12-31T13:49:12.476Z [err] WARN  
> 2023-12-31T13:49:12.476Z [err]  
> 2023-12-31T13:49:12.476Z [err] config  
> 2023-12-31T13:49:12.478Z [err] production Use `--omit=dev` instead.  
> 2023-12-31T13:49:34.234Z [err] npm  
> 2023-12-31T13:49:34.234Z [err] ERR! code EBADENGINE  
> 2023-12-31T13:49:34.240Z [err] npm ERR!  
> 2023-12-31T13:49:34.240Z [err] engine Unsupported engine  
> 2023-12-31T13:49:34.240Z [err] npm ERR!  
> 2023-12-31T13:49:34.240Z [err] engine Not compatible with your version of node/npm: node-red-contrib-zwave-js@9.0.3  
> 2023-12-31T13:49:34.240Z [err] npm  
> 2023-12-31T13:49:34.240Z [err] ERR! notsup Not compatible with your version of node/npm: node-red-contrib-zwave-js@9.0.3  
> 2023-12-31T13:49:34.240Z [err] npm ERR!  
> 2023-12-31T13:49:34.240Z [err] notsup Required: {"node":"\>=18.0.0"}  
> 2023-12-31T13:49:34.240Z [err] npm  
> 2023-12-31T13:49:34.241Z [err] ERR! notsup Actual: {"npm":"8.19.4","node":"v16.20.2"}  
> 2023-12-31T13:49:34.246Z [err]  
> 2023-12-31T13:49:34.246Z [err] npm  
> 2023-12-31T13:49:34.246Z [err] ERR! A complete log of this run can be found in:  
> 2023-12-31T13:49:34.246Z [err] npm ERR! /data/.npm/\_logs/2023-12-31T13\_49\_12\_364Z-debug-0.log  
> 2023-12-31T13:49:34.271Z rc=1

---

<div class="post-metadata">

**Author:** ![E1cid](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/e1cid/32/77971_2.png) [@E1cid](https://discourse.nodered.org/u/E1cid)\
**Post date:** [31 December 2023 14:11 UTC](https://discourse.nodered.org/t/unable-to-install-node-red-contrib-zwave-js/84156/2 "2023-12-31T14:11:08Z")

</div>

> [@Mastiff](#):
>
> notsup Required: {"node":"\>=18.0.0"}  
> 2023-12-31T13:49:34.240Z [err] npm  
> 2023-12-31T13:49:34.241Z [err] ERR! notsup Actual: {"npm":"8.19.4","node":"v16.20.2"}  
> 2023-12-31T13:49:34.246Z [err]

It says the issue in the log requires nodejs 18, but your device seems to be 16. Update nodejs to 18+ to fix issue.

---

<div class="post-metadata">

**Author:** ![Mastiff](https://avatars.discourse-cdn.com/v4/letter/m/ee7513/32.png) [@Mastiff](https://discourse.nodered.org/u/Mastiff)\
**Post date:** [31 December 2023 14:20 UTC](https://discourse.nodered.org/t/unable-to-install-node-red-contrib-zwave-js/84156/3 "2023-12-31T14:20:47Z")

</div>

Thanks for answering, but I don't think you read the message... I said I'm running Node-RED in Docker, and as far as I know it's not possible to update nodejs there. Of course I may be totally wrong.

---

<div class="post-metadata">

**Author:** ![E1cid](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/e1cid/32/77971_2.png) [@E1cid](https://discourse.nodered.org/u/E1cid)\
**Post date:** [31 December 2023 14:25 UTC](https://discourse.nodered.org/t/unable-to-install-node-red-contrib-zwave-js/84156/4 "2023-12-31T14:25:23Z")

</div>

Yes I definately read that, I suggest you search the internet to see if it is possible. [update nodejs in docker at DuckDuckGo](https://duckduckgo.com/?q=update+nodejs+in+docker&ia=web)  
Or don't use docker, run node-red on a bare bones installation.

---

<div class="post-metadata">

**Author:** ![marcus-j-davies](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/marcus-j-davies/32/103435_2.png) [@marcus-j-davies](https://discourse.nodered.org/u/marcus-j-davies)\
**Post date:** [31 December 2023 14:25 UTC](https://discourse.nodered.org/t/unable-to-install-node-red-contrib-zwave-js/84156/5 "2023-12-31T14:25:38Z")

</div>

Being the author of **node-red-contrib-zwave-js** I am afraid it will require Node 18.  
so you will need to address the limitation of using Docker.

Node 18 is required by the upstream library I use

> [@Mastiff](#):
>
> have seen that there's a version 10 of this node

This is a WIP, and I am still working on V10 (still lots todo), but that will not help you in this situation.

---

<div class="post-metadata">

**Author:** ![Mastiff](https://avatars.discourse-cdn.com/v4/letter/m/ee7513/32.png) [@Mastiff](https://discourse.nodered.org/u/Mastiff)\
**Post date:** [31 December 2023 14:30 UTC](https://discourse.nodered.org/t/unable-to-install-node-red-contrib-zwave-js/84156/6 "2023-12-31T14:30:51Z")

</div>

@E1cid I see, thanks! I read in another search that it was consindered bad for the container to upgrade that, but then I'll try.

@marcus-j-davies Thanks for clearing that up!

---

<div class="post-metadata">

**Author:** ![Colin](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/colin/32/17040_2.png) [@Colin](https://discourse.nodered.org/u/Colin)\
**Post date:** [31 December 2023 15:09 UTC](https://discourse.nodered.org/t/unable-to-install-node-red-contrib-zwave-js/84156/7 "2023-12-31T15:09:29Z")

</div>

Which docker image are you using?

---

<div class="post-metadata">

**Author:** ![Mastiff](https://avatars.discourse-cdn.com/v4/letter/m/ee7513/32.png) [@Mastiff](https://discourse.nodered.org/u/Mastiff)\
**Post date:** [31 December 2023 15:12 UTC](https://discourse.nodered.org/t/unable-to-install-node-red-contrib-zwave-js/84156/8 "2023-12-31T15:12:16Z")

</div>

nodered/node-red:3.1-debian

---

<div class="post-metadata">

**Author:** ![marcus-j-davies](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/marcus-j-davies/32/103435_2.png) [@marcus-j-davies](https://discourse.nodered.org/u/marcus-j-davies)\
**Post date:** [31 December 2023 15:17 UTC](https://discourse.nodered.org/t/unable-to-install-node-red-contrib-zwave-js/84156/9 "2023-12-31T15:17:18Z")

</div>

I cant really add much tho this, as I am not a Docker user.

But once Node has been updated to \>= 18, you will need to ensure the serial port (that your stick is assigned to) is correctly mapped in docker also, again I'm not sure of the mechanics involved in how to do that (Sorry)

---

<div class="post-metadata">

**Author:** ![Mastiff](https://avatars.discourse-cdn.com/v4/letter/m/ee7513/32.png) [@Mastiff](https://discourse.nodered.org/u/Mastiff)\
**Post date:** [31 December 2023 15:19 UTC](https://discourse.nodered.org/t/unable-to-install-node-red-contrib-zwave-js/84156/10 "2023-12-31T15:19:20Z")

</div>

Not a problem. Z-Wave-JS-UI is running it's own separate container (like almost everything on my Pi's), and that is not affected.

---

<div class="post-metadata">

**Author:** ![marcus-j-davies](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/marcus-j-davies/32/103435_2.png) [@marcus-j-davies](https://discourse.nodered.org/u/marcus-j-davies)\
**Post date:** [31 December 2023 15:22 UTC](https://discourse.nodered.org/t/unable-to-install-node-red-contrib-zwave-js/84156/11 "2023-12-31T15:22:17Z")

</div>

Yup, I work relatively closely with @robertsLando (we form part of the ZWave JS org on GH), and I think the docker image is purposely built for it.

Also bare in mind - this module is its own runtime, it's not to interact with other ZWave JS implementations (if that is what you were hoping for 😬 )

This will spin up the Driver runtime, exclusively running in Node RED

---

<div class="post-metadata">

**Author:** ![Mastiff](https://avatars.discourse-cdn.com/v4/letter/m/ee7513/32.png) [@Mastiff](https://discourse.nodered.org/u/Mastiff)\
**Post date:** [31 December 2023 15:29 UTC](https://discourse.nodered.org/t/unable-to-install-node-red-contrib-zwave-js/84156/12 "2023-12-31T15:29:46Z")

</div>

Oh, damn... Then I misunderstood totally! I thought this would work over MQTT with the running ZWave JS UI container. Well, then I will stop wasting everybody's time now. 🤣

---

<div class="post-metadata">

**Author:** ![marcus-j-davies](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/marcus-j-davies/32/103435_2.png) [@marcus-j-davies](https://discourse.nodered.org/u/marcus-j-davies)\
**Post date:** [31 December 2023 15:32 UTC](https://discourse.nodered.org/t/unable-to-install-node-red-contrib-zwave-js/84156/13 "2023-12-31T15:32:50Z")

</div>

No worries,

There are many ZWave JS implementations / plugins

- Home Assistant
- MQTT
- Node RED
- IO.Broker

All have their own UI/way of working. Your not the first, won't be the last 😄

---

<div class="post-metadata">

**Author:** ![Mastiff](https://avatars.discourse-cdn.com/v4/letter/m/ee7513/32.png) [@Mastiff](https://discourse.nodered.org/u/Mastiff)\
**Post date:** [31 December 2023 15:44 UTC](https://discourse.nodered.org/t/unable-to-install-node-red-contrib-zwave-js/84156/14 "2023-12-31T15:44:49Z")

</div>

Yeah, I have been using Homeassistant for several years, from the old Z-Wave integration via Open Z-Wave to ZWaveJS. It's just one thing I would like to automate with Node-RED, but I guess I will have to do it indirectly and send an MQTT to an automation in Hass instead.

All though I would like to run a newer NodeJS, mainly so I have everything with fixes and whatever happens on the versions. Kind of strange that the image I'm using (which I was told when I started running in Docker was the one to use) does not have that updated.

---

<div class="post-metadata">

**Author:** ![system](https://us1.discourse-cdn.com/flex026/uploads/nodered/original/1X/d073cd938eafa2e558d7c2cd59003b3ef4963033.png) [@system](https://discourse.nodered.org/u/system)\
**Post date:** [14 January 2024 15:45 UTC](https://discourse.nodered.org/t/unable-to-install-node-red-contrib-zwave-js/84156/15 "2024-01-14T15:45:39Z")

</div>

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.
