# Meshtastic and Node.js v20

**URL:** <https://discourse.nodered.org/t/meshtastic-and-node-js-v20/97164>\
**Category:** General\
**Created:** [20 May 2025 13:28 UTC](https://discourse.nodered.org/t/meshtastic-and-node-js-v20/97164 "2025-05-20T13:28:26Z")\
**Posts on this page:** 8\
**Page:** 1

<div class="post-metadata">

**Author:** ![nygma2004](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/nygma2004/32/1308_2.png) [@nygma2004](https://discourse.nodered.org/u/nygma2004)\
**Post date:** [20 May 2025 13:28 UTC](https://discourse.nodered.org/t/meshtastic-and-node-js-v20/97164/1 "2025-05-20T13:28:26Z")

</div>

I am on NR 4.0.9 but somehow still on Node.js v18.19.0.  
I want to play around with Meshtastic and wanted to use `@danpeig/node-red-meshtastic-msg`, but it required Node.js v20.  
So far I only used the upgrade script to keep Node-Red up-to-date, and I probably did not check which node version it was upgrading to.

But wanted to ask before I break anything. Which version I should be on? What is the eaiest way to upgrade now?

---

<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:** [20 May 2025 14:15 UTC](https://discourse.nodered.org/t/meshtastic-and-node-js-v20/97164/2 "2025-05-20T14:15:10Z")

</div>

You can upgrade nodejs using the upgrade script. Just add to the end (after a space) `--node20` to get nodejs 20. In fact I suggest using 22, so `--node22` unless the node you are trying to use requires exactly 20.  
When you run the script without explicitly specifying the nodejs version it just checks that a valid version is installed, and 18 is ok for the current version of node-red.

---

<div class="post-metadata">

**Author:** ![TotallyInformation](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/totallyinformation/32/31_2.png) [@TotallyInformation](https://discourse.nodered.org/u/TotallyInformation)\
**Post date:** [20 May 2025 16:19 UTC](https://discourse.nodered.org/t/meshtastic-and-node-js-v20/97164/3 "2025-05-20T16:19:25Z")

</div>

> [@Colin](#):
>
> 18 is ok for the current version of node-red.

Really, Node-RED should be clear. v18 is the MINIMUM version of Node.js for Node-RED v4. You should always be using one of the current LTS versions.

> **[Node.js — Node.js Releases](https://nodejs.org/en/about/previous-releases)**
>
> Node.js® is a JavaScript runtime built on Chrome's V8 JavaScript engine.

Though occasionally a cutting-edge version might cause a few issues. So the general recommendation is to be on an EVEN-NUMBERED, "CURRENT" LTS version.

Odd numbered versions should never be used as they may contain breaking experiments. v22 ("Jod") is the Current LTS version right now.

---

<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:** [20 May 2025 16:36 UTC](https://discourse.nodered.org/t/meshtastic-and-node-js-v20/97164/4 "2025-05-20T16:36:43Z")

</div>

> [@TotallyInformation](#):
>
> So the general recommendation is to be on an EVEN-NUMBERED, "CURRENT" LTS version.

Actually their nomenclature is a bit confusing confusing. The LTS version at the moment is 22, but the Current version is 24, but it isn't the LTS version yet. At least that is my interpretation of [Node.js — Node.js Releases](https://nodejs.org/en/about/previous-releases)

Edit: Reading it again, I think the correct terminology is Active LTS (which is 22 at the moment). 20 is a Maintenance LTS and 18 was a Maintenance LTS but has just gone End Of Life.

---

<div class="post-metadata">

**Author:** ![TotallyInformation](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/totallyinformation/32/31_2.png) [@TotallyInformation](https://discourse.nodered.org/u/TotallyInformation)\
**Post date:** [20 May 2025 16:44 UTC](https://discourse.nodered.org/t/meshtastic-and-node-js-v20/97164/5 "2025-05-20T16:44:25Z")

</div>

You are right, it IS confusing! Since they use "current" with 2 different meanings! ☹

---

<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:** [20 May 2025 16:45 UTC](https://discourse.nodered.org/t/meshtastic-and-node-js-v20/97164/6 "2025-05-20T16:45:53Z")

</div>

I just added an edit to my previous post clarifying it I think.

---

<div class="post-metadata">

**Author:** ![nygma2004](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/nygma2004/32/1308_2.png) [@nygma2004](https://discourse.nodered.org/u/nygma2004)\
**Post date:** [20 May 2025 17:01 UTC](https://discourse.nodered.org/t/meshtastic-and-node-js-v20/97164/7 "2025-05-20T17:01:12Z")

</div>

Upgrade to 22 was without any issues. All looking good.  
I got the meshtastic component installed already. Even more stuff to play with.

---

<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:** [3 June 2025 17:01 UTC](https://discourse.nodered.org/t/meshtastic-and-node-js-v20/97164/8 "2025-06-03T17:01:16Z")

</div>

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