# \[SOLVED\] Directory with Node-Red write access in a GX device for storing parameters

**URL:** <https://community.victronenergy.com/t/solved-directory-with-node-red-write-access-in-a-gx-device-for-storing-parameters/59474>\
**Category:** Node-RED\
**Tags:** cerbo\_gx\
**Created:** [19 June 2026 13:04 UTC](https://community.victronenergy.com/t/solved-directory-with-node-red-write-access-in-a-gx-device-for-storing-parameters/59474 "2026-06-19T13:04:58Z")\
**Posts on this page:** 8\
**Page:** 1

<div class="post-metadata">

**Author:** ![VerreyckenGerd](https://avatars.discourse-cdn.com/v4/letter/v/2acd7d/32.png) [@VerreyckenGerd](https://community.victronenergy.com/u/VerreyckenGerd)\
**Post date:** [19 June 2026 13:04 UTC](https://community.victronenergy.com/t/solved-directory-with-node-red-write-access-in-a-gx-device-for-storing-parameters/59474/1 "2026-06-19T13:04:58Z")

</div>

I can’t seem te find any form of non-volatile memory location accessible from within Node-Red integrated in venus-os.

I manage to do it easily on machines dedicated to run Node-Red using the edit write file node

Any tips?

---

<div class="post-metadata">

**Author:** ![owenb79](https://avatars.discourse-cdn.com/v4/letter/o/8baadc/32.png) [@owenb79](https://community.victronenergy.com/u/owenb79)\
**Post date:** [20 June 2026 07:38 UTC](https://community.victronenergy.com/t/solved-directory-with-node-red-write-access-in-a-gx-device-for-storing-parameters/59474/2 "2026-06-20T07:38:19Z")

</div>

This is what I do to save something I want to use somewhere else. These are just for a dashboard, but I use the output in functions.

I did put some functions together to save some data, but I never found that I needed them. I put them in the post they did work. Maybe someone has some better ideas.

This could be used for things like daily automation flags or manual override states.

Send values through a rate-limit/delay node first, then into a Function node:

Wire that into a File node set to write/overwrite the file.

Load State On Boot

Use an Inject node set to run once after startup, read the file, then parse it:

Important don’t write every second. Use a delay/rate-limit node and only save every 30-60 seconds, or only when important values change, to reduce storage wear.

[soc mppt power.txt](https://community.victronenergy.com/uploads/short-url/mKpik2SD5axOSIVLX6ipR7YzAsN.txt) (10.2 KB)

[save data json.txt](https://community.victronenergy.com/uploads/short-url/9e2pFqvqaCN9aRCKR2GIee2w5B4.txt) (268 Bytes)

[save data run on startup.txt](https://community.victronenergy.com/uploads/short-url/uUHsxTjmNUipsnPMEGiIf6IDIm2.txt) (205 Bytes)

[save data read.txt](https://community.victronenergy.com/uploads/short-url/zDVOfS3QXrxQ5Activz3pFtpSka.txt) (68 Bytes)

 ![image](https://europe1.discourse-cdn.com/victron/original/3X/d/d/dda9d8f0a1fde41ea62858f7d7e87e697f4efc76.png)

---

<div class="post-metadata">

**Author:** ![dognose](https://dub1.discourse-cdn.com/victron/user_avatar/community.victronenergy.com/dognose/32/968_2.png) [@dognose](https://community.victronenergy.com/u/dognose)\
**Post date:** [20 June 2026 17:30 UTC](https://community.victronenergy.com/t/solved-directory-with-node-red-write-access-in-a-gx-device-for-storing-parameters/59474/3 "2026-06-20T17:30:28Z")

</div>

Depending on the amount of values to store, you could use a virtual switch, for example slider.

That is a persisted value und you even would have a virtual switch to alter it from within the gx and vrms control panels, whenever desired 🙂

---

<div class="post-metadata">

**Author:** ![VerreyckenGerd](https://avatars.discourse-cdn.com/v4/letter/v/2acd7d/32.png) [@VerreyckenGerd](https://community.victronenergy.com/u/VerreyckenGerd)\
**Post date:** [23 June 2026 11:23 UTC](https://community.victronenergy.com/t/solved-directory-with-node-red-write-access-in-a-gx-device-for-storing-parameters/59474/4 "2026-06-23T11:23:50Z")

</div>

Solved: De right pad with writing permissions in the latest venus-large firmware is /data/home/nodered/

---

<div class="post-metadata">

**Author:** ![TomBerger](https://avatars.discourse-cdn.com/v4/letter/t/848f3c/32.png) [@TomBerger](https://community.victronenergy.com/u/TomBerger)\
**Post date:** [23 June 2026 11:50 UTC](https://community.victronenergy.com/t/solved-directory-with-node-red-write-access-in-a-gx-device-for-storing-parameters/59474/5 "2026-06-23T11:50:06Z")

</div>

> [@owenb79](#):
>
> Important don’t write every second. Use a delay/rate-limit node and only save every 30-60 seconds, or only when important values change, to reduce storage wear.

There may well be applications where you want the data in the file to be as up-to-date as possible, especially after a reset or crash. But in my opinion, that is very rarely the case for the applications we are dealing with here. I would always just save the data in variables and write these to the file, say, once a day.

---

<div class="post-metadata">

**Author:** ![deon.korb](https://avatars.discourse-cdn.com/v4/letter/d/8c91f0/32.png) [@deon.korb](https://community.victronenergy.com/u/deon.korb)\
**Post date:** [23 June 2026 11:56 UTC](https://community.victronenergy.com/t/solved-directory-with-node-red-write-access-in-a-gx-device-for-storing-parameters/59474/6 "2026-06-23T11:56:54Z")

</div>

> [@dognose](#):
>
> a persisted value

This is not my experience. I just created a virtual switch dropdown with 3 options. When I restart the flow, it is back to Option 1 (just first in the list, not even specified as default)

Is there something that must be done to effect the persistence?

I had to do this:

> [@Persistent Context Modification Warnings](https://community.victronenergy.com/t/persistent-context-modification-warnings/58540):
>
> Hi, I love the virtual switches to expose some config custom logic, e.g. selecting if my auto AC Ignore logic to connect when ESS demands it is active. To use it, I needed to active a persistent context store. All good and well, but the official procedure results in the scary red modified warnings. I know one day I will need support on something entirely unrelated and the conversation will demand I undo whatever caused the modified flag. I feel like a persistent context store is a pretty stan…

---

<div class="post-metadata">

**Author:** ![VerreyckenGerd](https://avatars.discourse-cdn.com/v4/letter/v/2acd7d/32.png) [@VerreyckenGerd](https://community.victronenergy.com/u/VerreyckenGerd)\
**Post date:** [23 June 2026 13:29 UTC](https://community.victronenergy.com/t/solved-directory-with-node-red-write-access-in-a-gx-device-for-storing-parameters/59474/7 "2026-06-23T13:29:41Z")

</div>

I’am well aware of flash memory writing cycle limits so i took the right precautions. In my case I am storing around 50 switch positions/parameteric values. I only write when the end user changes the value. So no worries.

---

<div class="post-metadata">

**Author:** ![dognose](https://dub1.discourse-cdn.com/victron/user_avatar/community.victronenergy.com/dognose/32/968_2.png) [@dognose](https://community.victronenergy.com/u/dognose)\
**Post date:** [23 June 2026 18:06 UTC](https://community.victronenergy.com/t/solved-directory-with-node-red-write-access-in-a-gx-device-for-storing-parameters/59474/8 "2026-06-23T18:06:35Z")

</div>

> [@deon.korb](#):
>
> I just created a virtual switch dropdown with 3 options.

I’m not sure for the dropdown, may be a bug on that as well (but I can tell my sliders are persisted fine)

Eventually also the “initialize with defaults” avalailble on some nodes could cause the reset here? (If there is such an option for the Virtual Switch Node)
