User Tools

Site Tools


venus-os:large

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
venus-os:large [2025-08-05 23:13] warwickchapmanvenus-os:large [2025-11-27 12:16] (current) – [5.9 Node-RED Dashboard] dfaber
Line 26: Line 26:
 ===== 2. Where to find support ===== ===== 2. Where to find support =====
  
-Victron maintains the integration of Node-RED and SignalK into Venus OS for GX-devices.  However, Victron does not provide support for systems which make use of these extended features to implement advanced solutions.+Node-RED and SignalK are a stable and reliable features in Venus OS Large for GX devices.  There are tens of thousands of systems running Node-RED or SignalK in the field.  However, Victron does not provide support for systems which make use of these extended features to implement advanced solutions.
  
 **Node-RED support** **Node-RED support**
Line 234: Line 234:
 === Charger relays === === Charger relays ===
 The only charger which has a relay that is controllable is the Smart IP43 Charger. To use that for remote control, set its mode, using the VictronConnect app, to be remote controllable. Note that its use is limited: the relay is only powered (and thus only controllable) when the charger is switched on. It doesn't work when it's turned off with AC connected. This limitation applies to the 230V models as well as the later 120V/240V models. The only charger which has a relay that is controllable is the Smart IP43 Charger. To use that for remote control, set its mode, using the VictronConnect app, to be remote controllable. Note that its use is limited: the relay is only powered (and thus only controllable) when the charger is switched on. It doesn't work when it's turned off with AC connected. This limitation applies to the 230V models as well as the later 120V/240V models.
-==== 5.8 Node-RED Dashboard ==== 
  
 +==== 5.8 Virtual devices ====
 +
 +Virtual devices make it possible to connect equipment and data sources that are not natively supported by Victron to a GX device. Once created in Node-RED, these devices appear on the GX-device and behave like real Victron-supported hardware, becoming part of the larger Victron-based solution.
 +
 +=== Purpose and Examples ===
 +
 +Virtual devices are ideal for integrating third-party or DIY equipment:
 +  * **Virtual meteo** – weather data from an unsupported or custom weather system with an API can be injected into a virtual meteo device. The data (e.g. wind speed, temperature, humidity) then becomes visible to the GX and in VRM.
 +  * **Virtual grid meter** – calculated grid import/export values can be published to the GX device, allowing systems without a supported grid meter to present grid data.
 +  * **Virtual GPS** – GPSd or another data sources can be used to provide live positional data.
 +  * **Virtual tank/temperature sensor** – integrate LoRa, MQTT, or custom sensors.
 +
 +=== Supported Virtual Devices ===
 +
 +Currently supported device types include:
 +  * **Battery**
 +  * **Generator**
 +  * **GPS**
 +  * **Grid meter**
 +  * **Meteo** (eg. weather station data)
 +  * **Motor drive** (eg. electric boats)
 +  * **PV inverter**
 +  * **Tank sensor**
 +  * **Temperature sensor**
 +
 +=== Setup ===
 +
 +  - Update to the latest version of Venus OS.
 +  - Add the relevant **Virtual Device node** in the Node-RED flow.
 +  - Configure the device type.
 +  - Connect it to a data source or control logic.
 +
 +==== 5.9 Node-RED Dashboard ====
 Besides the flow and automation functionally, Node-RED also offers a fully customisable dashboard. Including graphs, indicators as well as controls such as switches and sliders. Besides the flow and automation functionally, Node-RED also offers a fully customisable dashboard. Including graphs, indicators as well as controls such as switches and sliders.
  
-It is viewable in a web browser - both locally as well as remote, via the VRM Servers. See chapter 6.2 for how to see it remotely.+It is viewable in a web browser - both locally as well as remote, via the VRM Servers. See chapter for how to see it remotely.
  
-The [[https://flows.nodered.org/node/node-red-dashboard|dashboard]] needs to be installed, just like other extra palettes, using the Manage Palette feature, on the right of the screen in the menus.+The [[https://flows.nodered.org/node/@flowfuse/node-red-dashboard|dashboard]] needs to be installed, just like other extra palettes, using the Manage Palette feature, on the right of the screen in the menus. Note that the dashboard package is called @flowfuse/node-red-dashboard (Dashboard 2.0), which is the successor to the deprecated node-red-dashboard package.
  
 Once that is done, you can find the nodes in the palettes on the left. Once the dashboard has been configured and deployed, an extra tile will appear in the //Venus OS Large// menu on VRM, allowing to connect to the dashboard via VRM. Once that is done, you can find the nodes in the palettes on the left. Once the dashboard has been configured and deployed, an extra tile will appear in the //Venus OS Large// menu on VRM, allowing to connect to the dashboard via VRM.
Line 247: Line 279:
 {{ :venus-os:vrm_node_red_ui_step_3.png?direct&600 |VRM Node-RED UI - Step 3}} {{ :venus-os:vrm_node_red_ui_step_3.png?direct&600 |VRM Node-RED UI - Step 3}}
  
-==== 5.Configuration files ====+==== 5.10 Configuration files ====
  
 WARNING: the vast majority of systems using Node-RED will not, and should not (!), have to modify any of the files here described. Venus OS itself, including Venus OS large and Node-RED, is made such that its not necessary to dive into the command line. WARNING: the vast majority of systems using Node-RED will not, and should not (!), have to modify any of the files here described. Venus OS itself, including Venus OS large and Node-RED, is made such that its not necessary to dive into the command line.
Line 266: Line 298:
 For more information on such Node-RED configuration customisations, see https://nodered.org/docs/user-guide/runtime/configuration. For more information on such Node-RED configuration customisations, see https://nodered.org/docs/user-guide/runtime/configuration.
  
-==== 5.10 Ready-to-use solutions ====+==== 5.11 Ready-to-use solutions ====
  
 Node-RED can also be used for doing more advanced tasks. Some examples of ready-to-use solutions are: Node-RED can also be used for doing more advanced tasks. Some examples of ready-to-use solutions are:
Line 272: Line 304:
   * [[https://flows.nodered.org/node/node-red-contrib-eskomsepush|EskomSePush]] - use Node-RED for charging the batteries before the next load shedding happens (for South African users)   * [[https://flows.nodered.org/node/node-red-contrib-eskomsepush|EskomSePush]] - use Node-RED for charging the batteries before the next load shedding happens (for South African users)
  
-==== 5.11 Using data from VRM  ====+==== 5.12 Using data from VRM  ====
  
 For some flows it can be useful to retrieve data from the VRM Portal Database. For example to retrieve de Solar irradiation or yield forecasts. For some flows it can be useful to retrieve data from the VRM Portal Database. For example to retrieve de Solar irradiation or yield forecasts.
Line 297: Line 329:
 The [[https://flows.nodered.org/node/victron-vrm-api|Victron VRM API node]] makes it easy to use the VRM API from a Node-RED flow. Alternatively take a look at above mentioned Dynamic-ESS flow. The [[https://flows.nodered.org/node/victron-vrm-api|Victron VRM API node]] makes it easy to use the VRM API from a Node-RED flow. Alternatively take a look at above mentioned Dynamic-ESS flow.
  
-==== 5.12 Node-RED FAQ ====+==== 5.13 Node-RED files, folders & settings  ==== 
 + 
 +On GX devices, the ''nodered'' system user has its home in ''/data/home/nodered/''. The actual Node-RED runtime (flows, nodes, configuration, and ''settings-user.js'') lives in ''/data/home/nodered/.node-red/''
 + 
 +All files or folders below are in ''/data/home/nodered/.node-red/'': 
 + 
 +| File / Folder | Purpose | Notes / Caution | 
 +| ''settings-user.js'' | Main Node-RED config. See [[https://nodered.org/docs/user-guide/runtime/configuration|here]]. | Controls ports, security, editor options, and contextStorage. Syntax errors here will break startup. | 
 +| ''flows.json'' | Flow definitions | Do not hand-edit unless necessary. Corruption risk. | 
 +| ''flows_cred.json'' | Encrypted flow credentials | Same as above. Hand-editing may break decryption. | 
 +| ''context'' | Stores persistent variables | Only used if explicitly enabled in ''settings.js''. Don't store large or binary data. | 
 +| ''lib'' | Optional library for subflows/functions | Safe for advanced users. Persistent and editable. | 
 + 
 +Note: If created, ''/data/home/nodered/settings.js'' will be ignored by Node-RED on GX devices.  Only ''/data/home/nodered/.node-red/settings-user.js'' will be processed. 
 + 
 +To serve media files (like images) from Node-RED on a GX device, create and edit the file ''/data/home/nodered/.node-red/settings-user.js'' and add: 
 + 
 +<code> 
 +module.exports = { 
 +  httpStatic: "/data/home/nodered/www" 
 +
 +</code> 
 + 
 +Then create a subfolder such as ''/data/home/nodered/www'', make sure it is owned by the ''nodered'' user (''chown -R nodered:nodered''), and place your media files there, for example ''image.png''. The image can be referenced in dashboards using relative URLs like: 
 + 
 +<code>background-image: url(/image.png);</code> 
 + 
 +Restart Node-RED to apply the changes: 
 + 
 +**Stop**   
 +<code>svc -d /service/node-red-venus</code> 
 + 
 +**Start**   
 +<code>svc -u /service/node-red-venus</code> 
 + 
 +**Restart**   
 +<code>svc -t /service/node-red-venus</code> 
 + 
 +NOTE: All files are stored on ''/data'', which has limited space. Do not store large media files, logs, or large images in ''/data''. Consider hosting such data externally and reference via URL or another Node-RED supported external storage mechanism (database, cloud storage, MQTT, FTP, etc). 
 + 
 +==== 5.14 Node-RED FAQ ====
  
 === Q1: Write/read file gives "Error: EACCESS: permission denied' === === Q1: Write/read file gives "Error: EACCESS: permission denied' ===
venus-os/large.1754428408.txt.gz · Last modified: by warwickchapman

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki