Files
EOS/docs/akkudoktoreos/adapter/adapternodered.md
SchaafAlexander a25b336f19
Some checks are pending
Bump Version / Bump Version Workflow (push) Waiting to run
docker-build / platform-excludes (push) Waiting to run
docker-build / build (push) Blocked by required conditions
docker-build / merge (push) Blocked by required conditions
pre-commit / pre-commit (push) Waiting to run
Run Pytest on Pull Request / test (push) Waiting to run
chore: Node-RED adapter documentation (#829)
Updated the documentation to describe the Node-RED adapter functionality
2026-01-29 13:30:04 +01:00

3.7 KiB

% SPDX-License-Identifier: Apache-2.0 (adapter-nodered-page)=

Node-RED Adapter

The Node-RED adapter provides a bidirectional interface between NodeRED and the Akkudoktor-EOS (EOS) energy optimisation system.

It allows EOS to:

  • Provide control instructions via HTTP-IN Node
  • Receive measurements and device states via Node-RED (The HTTP-IN Node "eos_data_acquisition" is NOT yet functional)

This adapter enables a handover of the EOS control instructions (EV, battery & home appliance) for the current timeslot via Node-RED to any desired integration, while keeping EOS device simulations and optimisation logic decoupled from other implementations.

1. Exchanging data between EOS and Node-RED

Basic concept

EOS receives e.g. measurements via HTTP-IN by Node-RED before each energy management run. (The HTTP-IN Node "eos_data_acquisition" is NOT yet functional)

EOS provides control instructions via HTTP-IN to Node-RED after each optimisation run.

Typical use cases with Node-RED:

  • optimal for heterogeneous systems
  • Automations and scripts
  • Device or manufacturer integrations
  • Debugging and validation

Configuration steps in EOS

1. Enable and configure the Node-RED adapter

EOS must be configured with access to the Node-RED instance in Config->adapter.

  • prerequisite is an already installed and running Node-RED instance
  • adapter.nodered.host: 192.168.1.109 (example IP of your Node-RED instance)
  • adapter.nodered.port: 1880 (default)
  • adapter.provider: ["NodeRED"]

2. Run energy optimisation

Before the run, EOS receives:

  • EOS receives measurement values via HTTP-IN "eos_data_acquisition" before optimisation. (The HTTP-IN Node "eos_data_acquisition" is NOT yet functional)

After the run, EOS provides:

  • The device instruction and solution entities for the current time slot via HTTP-IN "Control Dispatch".

Configuration steps in NodeRED

1. Create Node-RED flow with nodes for processing

  • EOS Control Disptach

My Picture My Picture My Picture My Picture

2. Data obtained from EOS

2.1 Device instruction (Control Dispatch)

After each energy optimisation run, EOS produces device instructions for the controlled resources.

E.g.: {"battery1_op_mode":"SELF_CONSUMPTION","battery1_op_factor":1,"ev11_op_mode":"IDLE","ev11_op_factor":1,"homeappliance1_op_mode":"RUN","homeappliance1_op_factor":1}

  • The entity state represents the device's selected operation mode.

  • Entity attributes provide additional parameters for the operation mode, such as:

    • operation_mode_factor
    • Power or rate limits
    • Mode-specific control parameters

3. Data retrieved by EOS via Node-RED

"Under construction".

4. Further processing of EOS data

Once published, EOS data can be used in any needed scenario:

  • Used as triggers or conditions in automations
  • Mapped to device-specific services or integrations
  • Visualised in dashboards
  • Compared with measured values for monitoring and validation

EOS does not directly control devices. It provides structured optimisation results, while your tool of choice remains responsible for executing the actual control actions.

Summary

  • EOS focuses on forecasting, simulation, and optimisation
  • Node-RED can focus on moving, processing, integration and execution

The Node-RED adapter provides a structured interface between EOS and a heterogeneous environment, allowing flexible integration without coupling EOS to device specifics.