From e4c517cd53775bd2e6bab3aeb3bd1dcad3a8f23f Mon Sep 17 00:00:00 2001 From: sjjh <2787214+sjjh@users.noreply.github.com> Date: Thu, 23 Jul 2026 10:46:40 +0200 Subject: [PATCH 1/2] Update readme.adoc: list formating added line break --- io.openems.edge.meter.api/readme.adoc | 2 ++ 1 file changed, 2 insertions(+) diff --git a/io.openems.edge.meter.api/readme.adoc b/io.openems.edge.meter.api/readme.adoc index 83b072fc781..77826ce97ed 100644 --- a/io.openems.edge.meter.api/readme.adoc +++ b/io.openems.edge.meter.api/readme.adoc @@ -15,6 +15,7 @@ This is an API/contract bundle - it does not implement any concrete meter compon The primary interface that all electricity meter implementations must implement. *Features*: + * Active Power (W) - Real power output/input * Reactive Power (var) - Reactive power measurement * Apparent Power (VA) - Total power including reactive @@ -25,6 +26,7 @@ The primary interface that all electricity meter implementations must implement. * Energy measurements (Wh) - Cumulative consumption/production *Meter Types*: + * GRID - Grid connection meter * PRODUCTION - Photovoltaic production meter * CONSUMPTION - Building consumption meter From 916c354aff93dd97166410edb1265c02448861e6 Mon Sep 17 00:00:00 2001 From: Stefan Feilmeier Date: Thu, 23 Jul 2026 15:08:52 +0200 Subject: [PATCH 2/2] Find and fix more of the same issues (vibe coded) --- io.openems.edge.battery.bmw/readme.adoc | 1 + .../readme.adoc | 1 + .../readme.adoc | 1 + .../readme.adoc | 1 + io.openems.edge.battery.pylontech/readme.adoc | 1 + io.openems.edge.battery.soltaro/readme.adoc | 5 + .../readme.adoc | 5 + .../readme.adoc | 1 + .../readme.adoc | 2 + .../readme.adoc | 1 + io.openems.edge.bosch.bpts5hybrid/readme.adoc | 3 + io.openems.edge.bridge.http/readme.adoc | 4 + io.openems.edge.bridge.mbus/readme.adoc | 3 + io.openems.edge.bridge.modbus/readme.adoc | 8 + io.openems.edge.bridge.mqtt/readme.adoc | 1 + io.openems.edge.bridge.onewire/readme.adoc | 4 + .../readme.adoc | 1 + .../readme.adoc | 1 + .../readme.adoc | 1 + io.openems.edge.controller.api/readme.adoc | 3 + .../readme.adoc | 1 + io.openems.edge.ess.samsung/readme.adoc | 3 + io.openems.edge.evcs.abl/readme.adoc | 1 + .../readme.adoc | 1 + io.openems.edge.evcs.goe/readme.adoc | 1 + io.openems.edge.evcs.heidelberg/readme.adoc | 1 + io.openems.edge.evcs.ocpp.abl/readme.adoc | 1 + io.openems.edge.evcs.ocpp.common/readme.adoc | 1 + .../readme.adoc | 2 + .../readme.adoc | 3 + .../readme.adoc | 2 + .../readme.adoc | 1 + .../readme.adoc | 4 + io.openems.edge.fronius/readme.adoc | 3 + io.openems.edge.heat.askoma/readme.adoc | 1 + io.openems.edge.io.siemenslogo/readme.adoc | 1 + io.openems.edge.io.weidmueller/readme.adoc | 3 + .../readme.adoc | 5 + io.openems.edge.kostal/readme.adoc | 7 + io.openems.edge.meter.abb/readme.adoc | 1 + io.openems.edge.meter.api/readme.adoc | 1 + io.openems.edge.meter.artemes.am2/readme.adoc | 1 + .../readme.adoc | 1 + io.openems.edge.meter.bgetech/readme.adoc | 83 +++---- .../readme.adoc | 1 + .../readme.adoc | 2 + io.openems.edge.meter.chint/readme.adoc | 3 + io.openems.edge.meter.discovergy/readme.adoc | 1 + io.openems.edge.meter.eastron/readme.adoc | 2 + io.openems.edge.meter.hager/readme.adoc | 1 + io.openems.edge.meter.janitza/readme.adoc | 6 + io.openems.edge.meter.kdk/readme.adoc | 85 ++++---- .../readme.adoc | 1 + io.openems.edge.meter.plexlog/readme.adoc | 1 + io.openems.edge.meter.pqplus/readme.adoc | 2 + .../readme.adoc | 1 + io.openems.edge.meter.siemens/readme.adoc | 205 +++++++++--------- io.openems.edge.meter.socomec/readme.adoc | 2 + io.openems.edge.meter.virtual/readme.adoc | 4 + io.openems.edge.meter.weidmueller/readme.adoc | 1 + io.openems.edge.meter.ziehl/readme.adoc | 1 + .../readme.adoc | 1 + io.openems.edge.pvinverter.kostal/readme.adoc | 1 + io.openems.edge.simulator/readme.adoc | 1 + 64 files changed, 315 insertions(+), 184 deletions(-) diff --git a/io.openems.edge.battery.bmw/readme.adoc b/io.openems.edge.battery.bmw/readme.adoc index 4e545d12219..055453149be 100644 --- a/io.openems.edge.battery.bmw/readme.adoc +++ b/io.openems.edge.battery.bmw/readme.adoc @@ -29,6 +29,7 @@ The battery communicates via Modbus protocol for standard industrial integration Main component for BMW battery system integration. Communicates via Modbus to read battery status and control charging/discharging operations. Includes HTTP-based token authentication for secure device access and state machine management for safe operation. Monitors state-of-charge with configurable limits and supports both grid-connected and island operation modes. .*Configuration*: + * `id` (String): Unique component identifier; default: `"battery0"` * `alias` (String): Human-readable name; default: same as id * `enabled` (Boolean): Enable/disable this component; default: `true` diff --git a/io.openems.edge.battery.bydcommercial/readme.adoc b/io.openems.edge.battery.bydcommercial/readme.adoc index 8de042e93ad..8b5f7c7d4c9 100644 --- a/io.openems.edge.battery.bydcommercial/readme.adoc +++ b/io.openems.edge.battery.bydcommercial/readme.adoc @@ -28,6 +28,7 @@ This bundle implements the following OpenEMS Components: *Description*: Modbus interface for the BYD Battery-Box Commercial C130 battery rack system. Manages charging and discharging of the battery pack, monitors state of charge, temperature, cell voltages, and supports multi-module rack configurations with up to 20 slaves. .*Configuration*: + * `id` (String): Component ID for unique identification (default: "battery0") * `alias` (String): Human-readable alias for the component * `enabled` (Boolean): Enable/disable this component (default: true) diff --git a/io.openems.edge.battery.fenecon.commercial/readme.adoc b/io.openems.edge.battery.fenecon.commercial/readme.adoc index 2817f4de82f..c766ff1ad96 100644 --- a/io.openems.edge.battery.fenecon.commercial/readme.adoc +++ b/io.openems.edge.battery.fenecon.commercial/readme.adoc @@ -28,6 +28,7 @@ This bundle implements the following OpenEMS Components: *Description*: Modbus interface for the FENECON Commercial Battery system. Manages charging and discharging of the battery pack, monitors state of charge, temperature, cell voltages, and health status. Supports relay-based automatic start/stop control for safety and operational optimization. .*Configuration*: + * `id` (String): Component ID for unique identification (default: "battery0") * `alias` (String): Human-readable alias for the component * `enabled` (Boolean): Enable/disable this component (default: true) diff --git a/io.openems.edge.battery.fenecon.home/readme.adoc b/io.openems.edge.battery.fenecon.home/readme.adoc index cf62bcd905f..14afb447dd1 100644 --- a/io.openems.edge.battery.fenecon.home/readme.adoc +++ b/io.openems.edge.battery.fenecon.home/readme.adoc @@ -43,6 +43,7 @@ Main component for FENECON Home battery integration. Communicates via Modbus to * Temperature-based protection and limiting .*Configuration*: + * `id` (String): Unique component identifier; default: `"battery0"` * `alias` (String): Human-readable name; default: same as id * `enabled` (Boolean): Enable/disable this component; default: `true` diff --git a/io.openems.edge.battery.pylontech/readme.adoc b/io.openems.edge.battery.pylontech/readme.adoc index b598fd3b75a..949cebab934 100644 --- a/io.openems.edge.battery.pylontech/readme.adoc +++ b/io.openems.edge.battery.pylontech/readme.adoc @@ -30,6 +30,7 @@ This bundle implements the following OpenEMS Components: *Note*: This implementation is tested and validated for the Pylontech Powercube M2 model. Compatibility with other Pylontech battery models has not been verified. .*Configuration*: + * `id` (String): Component ID for unique identification (default: "battery0") * `alias` (String): Human-readable alias for the component * `enabled` (Boolean): Enable/disable this component (default: true) diff --git a/io.openems.edge.battery.soltaro/readme.adoc b/io.openems.edge.battery.soltaro/readme.adoc index 3a627f5f500..90c06a29ed0 100644 --- a/io.openems.edge.battery.soltaro/readme.adoc +++ b/io.openems.edge.battery.soltaro/readme.adoc @@ -38,6 +38,7 @@ This bundle implements the following OpenEMS Components: *Description*: Modbus interface for Soltaro single-rack battery system Version A. Manages charging and discharging, monitors state of charge, temperature, and cell health. .*Configuration*: + * `id` (String): Component ID (default: "battery0") * `alias` (String): Human-readable alias * `enabled` (Boolean): Enable/disable (default: true) @@ -65,6 +66,7 @@ This bundle implements the following OpenEMS Components: *Description*: Modbus interface for Soltaro single-rack battery system Version B. Mid-generation hardware with improved battery management and monitoring capabilities. .*Configuration*: + * `id` (String): Component ID (default: "battery0") * `alias` (String): Human-readable alias * `enabled` (Boolean): Enable/disable (default: true) @@ -92,6 +94,7 @@ This bundle implements the following OpenEMS Components: *Description*: Modbus interface for Soltaro single-rack battery system Version C. Latest generation hardware with advanced thermal management and cell monitoring. .*Configuration*: + * `id` (String): Component ID (default: "battery0") * `alias` (String): Human-readable alias * `enabled` (Boolean): Enable/disable (default: true) @@ -119,6 +122,7 @@ This bundle implements the following OpenEMS Components: *Description*: Modbus interface for Soltaro multi-rack clustered battery system Version B. Coordinates multiple battery racks as single logical system for larger energy storage deployments. .*Configuration*: + * `id` (String): Component ID (default: "battery0") * `alias` (String): Human-readable alias * `enabled` (Boolean): Enable/disable (default: true) @@ -146,6 +150,7 @@ This bundle implements the following OpenEMS Components: *Description*: Modbus interface for Soltaro multi-rack clustered battery system Version C. Latest generation clustered configuration with advanced inter-rack coordination and thermal management. .*Configuration*: + * `id` (String): Component ID (default: "battery0") * `alias` (String): Human-readable alias * `enabled` (Boolean): Enable/disable (default: true) diff --git a/io.openems.edge.batteryinverter.api/readme.adoc b/io.openems.edge.batteryinverter.api/readme.adoc index a3b4ccb7f2f..50725b9f384 100644 --- a/io.openems.edge.batteryinverter.api/readme.adoc +++ b/io.openems.edge.batteryinverter.api/readme.adoc @@ -7,6 +7,7 @@ Defines interfaces for battery inverter implementations in OpenEMS. This API bundle defines the core interfaces and contracts for battery inverter components. A battery inverter is a critical component that converts between DC power from a battery and AC power for the grid or loads. Together with a battery component, a battery inverter builds an Energy Storage System (ESS). The bundle provides interfaces for: + * Symmetric battery inverters for three-phase systems * Managed battery inverters that can be controlled * Hybrid battery inverters that can also handle PV input @@ -39,6 +40,7 @@ Controllable battery inverter interface extending `SymmetricBatteryInverter`. *Purpose*: Control and manage battery inverter charging/discharging operations. *Key Methods*: + * `run(Battery battery, int setActivePower, int setReactivePower)` - Apply power setpoints * `getStaticConstraints()` - Get power constraints for the inverter * `getPowerPrecision()` - Get minimum power step resolution @@ -54,6 +56,7 @@ Extended interface for hybrid inverters that manage both battery and PV. *Purpose*: Control inverters that can simultaneously handle battery and photovoltaic inputs. *Additional Capabilities*: + * Manages DC side with battery input and PV input * Coordinates charging from both sources * Handles PV feed-to-grid scenarios @@ -66,6 +69,7 @@ Interface for off-grid battery inverter systems. *Purpose*: Support for island/microgrid mode where battery inverter operates independently from the main grid. *Use Cases*: + * Backup power systems * Island installations * Microgrids @@ -104,6 +108,7 @@ Test implementations: .ESS (Energy Storage System) Battery Inverter + Battery component together provide ESS functionality: + * Charge/discharge coordination * Reactive power support * Grid support services diff --git a/io.openems.edge.batteryinverter.kaco.blueplanetgridsave/readme.adoc b/io.openems.edge.batteryinverter.kaco.blueplanetgridsave/readme.adoc index 8fc8e3f5b33..ff60c052736 100644 --- a/io.openems.edge.batteryinverter.kaco.blueplanetgridsave/readme.adoc +++ b/io.openems.edge.batteryinverter.kaco.blueplanetgridsave/readme.adoc @@ -46,6 +46,7 @@ This bundle implements the following OpenEMS Components: *Description*: SunSpec Modbus interface for KACO blueplanet gridsave battery inverters. Manages bidirectional AC/DC power flow, monitors inverter status, temperature, and grid conditions. Supports automatic start/stop control, grid code compliance, and watchdog timer for safety. .*Configuration*: + * `id` (String): Component ID for unique identification (default: "batteryInverter0") * `alias` (String): Human-readable alias for the component * `enabled` (Boolean): Enable/disable this component (default: true) diff --git a/io.openems.edge.batteryinverter.refu/readme.adoc b/io.openems.edge.batteryinverter.refu/readme.adoc index 8fcce12d7ab..aa78c025c29 100644 --- a/io.openems.edge.batteryinverter.refu/readme.adoc +++ b/io.openems.edge.batteryinverter.refu/readme.adoc @@ -28,6 +28,7 @@ This bundle provides two implementations for REFU battery inverters: * StartStoppable .*Configuration*: + * `id` (String): Component ID for unique identification (default: "batteryInverter0") * `alias` (String): Human-readable alias for the component * `enabled` (Boolean): Enable/disable this component (default: true) @@ -53,6 +54,7 @@ This bundle provides two implementations for REFU battery inverters: * StartStoppable .*Configuration*: + * `id` (String): Component ID for unique identification (default: "batteryInverter0") * `alias` (String): Human-readable alias for the component * `enabled` (Boolean): Enable/disable this component (default: true) diff --git a/io.openems.edge.batteryinverter.sinexcel/readme.adoc b/io.openems.edge.batteryinverter.sinexcel/readme.adoc index 795a507f83b..c1791aa272e 100644 --- a/io.openems.edge.batteryinverter.sinexcel/readme.adoc +++ b/io.openems.edge.batteryinverter.sinexcel/readme.adoc @@ -42,6 +42,7 @@ This bundle implements the following OpenEMS Components: *Description*: Modbus interface for Sinexcel hybrid battery inverters. Manages bidirectional AC/DC power flow for both grid-tied and off-grid operation, monitors inverter status and parameters, and supports emergency power switching for backup scenarios. Country code settings ensure regulatory compliance across different markets. .*Configuration*: + * `id` (String): Component ID for unique identification (default: "batteryInverter0") * `alias` (String): Human-readable alias for the component * `enabled` (Boolean): Enable/disable this component (default: true) diff --git a/io.openems.edge.bosch.bpts5hybrid/readme.adoc b/io.openems.edge.bosch.bpts5hybrid/readme.adoc index a31ceae016e..31915c02cb4 100644 --- a/io.openems.edge.bosch.bpts5hybrid/readme.adoc +++ b/io.openems.edge.bosch.bpts5hybrid/readme.adoc @@ -37,6 +37,7 @@ This bundle implements the following OpenEMS Components: *Description*: Core communication component for the Bosch BPT-S 5 Hybrid system. Handles all device communication and coordinates data between ESS and PV components. Must be configured before ESS and PV components. .*Configuration*: + * `id` (String): Component ID for unique identification (default: "boschBpts5hybridCore0") * `alias` (String): Human-readable alias for the component * `enabled` (Boolean): Enable/disable this component (default: true) @@ -57,6 +58,7 @@ This bundle implements the following OpenEMS Components: *Description*: Energy storage system (ESS) component for the Bosch BPT-S 5 Hybrid. Manages battery charging/discharging control and monitoring. Depends on the Core component for device communication. .*Configuration*: + * `id` (String): Component ID for unique identification (default: "ess0") * `alias` (String): Human-readable alias for the component * `enabled` (Boolean): Enable/disable this component (default: true) @@ -78,6 +80,7 @@ This bundle implements the following OpenEMS Components: *Description*: PV DC charger component for the Bosch BPT-S 5 Hybrid. Handles DC power input from solar panels and controls charging of the battery. Depends on the Core component for device communication. .*Configuration*: + * `id` (String): Component ID for unique identification (default: "charger0") * `alias` (String): Human-readable alias for the component * `enabled` (Boolean): Enable/disable this component (default: true) diff --git a/io.openems.edge.bridge.http/readme.adoc b/io.openems.edge.bridge.http/readme.adoc index 8831ca82370..975c6bc245a 100644 --- a/io.openems.edge.bridge.http/readme.adoc +++ b/io.openems.edge.bridge.http/readme.adoc @@ -7,6 +7,7 @@ HTTP bridge for periodic communication with REST API endpoints. The HTTP Bridge provides cycle-synchronized HTTP communication with remote devices and services using REST APIs. It enables OpenEMS components to periodically fetch data from HTTP endpoints and handle responses asynchronously. The bridge is widely used to integrate hardware devices like electric meters, relays, inverters, and other devices that expose RESTful APIs. Key capabilities: + * Cycle-synchronized periodic HTTP requests (every N cycles) * Configurable connect and read timeouts * Automatic error handling and retry logic @@ -29,6 +30,7 @@ The HTTP Bridge consists of: *Purpose*: Provides cycle-synchronized HTTP communication with remote endpoints. *Key Features*: + * `subscribeCycle(int cycle, String url, Consumer>)` - Fetch every N cycles * `subscribeEveryCycle(String url, Consumer>)` - Fetch every cycle * `subscribeCycle(CycleEndpoint endpoint)` - Advanced configuration with custom callbacks @@ -50,6 +52,7 @@ httpBridgeCycleService.subscribeEveryCycle("http://device.local/status", ``` *Cycle Scheduling*: + * If cycle=1: Fetch every OpenEMS cycle * If cycle=5: Fetch every 5th cycle (reduced polling) * If request takes longer than cycle period: Wait for completion, then schedule next @@ -60,6 +63,7 @@ httpBridgeCycleService.subscribeEveryCycle("http://device.local/status", Configuration record for a single HTTP subscription: *Fields*: + * `cycle` (int): How many cycles to wait between requests (minimum 1) * `endpoint` (Supplier): Supplies the HTTP endpoint to fetch * `onResult` (Consumer>): Callback for successful responses diff --git a/io.openems.edge.bridge.mbus/readme.adoc b/io.openems.edge.bridge.mbus/readme.adoc index 3255b51039f..3225a7b510f 100644 --- a/io.openems.edge.bridge.mbus/readme.adoc +++ b/io.openems.edge.bridge.mbus/readme.adoc @@ -7,6 +7,7 @@ Serial bridge for meter communication using the M-Bus standard. M-Bus (Meter-Bus) is an international standard (EN 13757-2) for fieldbus communication with meter devices. The M-Bus Bridge enables OpenEMS to read data from M-Bus compatible meters such as water meters, gas meters, heat meters, and other utility meters via serial connection. M-Bus is ideal for: + * Reading utility meters (water, gas, heat, electricity) * Remote meter data collection * Utility billing and energy management @@ -27,6 +28,7 @@ The bridge uses the jMbus library for protocol implementation and RxTx for seria *Purpose*: Master bridge for M-Bus serial communication with utility and facility meters. *Use Cases*: + * Reading water meter consumption * Monitoring gas meter usage * Heat meter energy readings @@ -35,6 +37,7 @@ The bridge uses the jMbus library for protocol implementation and RxTx for seria * Building energy accounting systems .*Configuration*: + * `id` (String): Unique bridge identifier; default: `"mbus0"` * `alias` (String): Human-readable name; default: same as id * `enabled` (Boolean): Enable/disable this component; default: `true` diff --git a/io.openems.edge.bridge.modbus/readme.adoc b/io.openems.edge.bridge.modbus/readme.adoc index e359a25b535..e9eddc8e8ed 100644 --- a/io.openems.edge.bridge.modbus/readme.adoc +++ b/io.openems.edge.bridge.modbus/readme.adoc @@ -7,6 +7,7 @@ Master bridge for Modbus/TCP and Modbus/RTU communication with industrial device Modbus is a widely-used industrial communication standard for fieldbus communications. The Modbus Bridge enables OpenEMS to communicate with all kinds of hardware devices like photovoltaic inverters, electric meters, battery systems, and other industrial equipment that support Modbus protocol. The bridge manages: + * Modbus task execution scheduling and prioritization * Read and write request coordination across all Modbus components * Automatic defective component handling and retry logic @@ -14,6 +15,7 @@ The bridge manages: * Detailed logging and debugging capabilities Two transport protocols are supported: + * **Modbus/TCP** - Network-based communication via TCP/IP * **Modbus/RTU** - Serial-based communication via RS485 or RS232 @@ -29,12 +31,14 @@ Two transport protocols are supported: *Purpose*: Master bridge for Modbus/TCP network communication. *Use Cases*: + * Network-connected industrial devices * Distributed systems across network segments * Devices with native Ethernet interfaces * Preferred for modern installations .*Configuration*: + * `id` (String): Unique bridge identifier; default: `"modbusTcp0"` * `ip` (String): IP address of Modbus master; default: `"192.168.1.100"` * `port` (Integer): TCP port number; default: `502` (standard Modbus port) @@ -51,12 +55,14 @@ Two transport protocols are supported: *Purpose*: Master bridge for Modbus/RTU serial communication via RS485 or RS232. *Use Cases*: + * Legacy equipment with serial interfaces * Short-distance installations (under 1km) * Isolated systems without network connectivity * Multi-drop serial bus configurations .*Configuration*: + * `id` (String): Unique bridge identifier; default: `"modbusSerial0"` * `serialPort` (String): Serial port name; examples: `"/dev/ttyUSB0"`, `"COM3"` * `baudRate` (Integer): Baud rate; default: `9600` (typical: 9600, 19200, 38400) @@ -107,6 +113,7 @@ The **ModbusWorker** manages task execution: * Defective components gradually delay up to 5 minutes *Priority Levels*: + * `HIGH` - Executed every cycle (typical for control feedback) * `LOW` - Round-robin execution (one LOW task per cycle per component) @@ -131,6 +138,7 @@ If a component repeatedly fails: *Timing Optimization*: The ModbusWorker "learns" an ideal delay time each cycle: + * Measures time to execute all write tasks * Calculates when read tasks should start * Automatically applies CycleDelay for just-in-time reads diff --git a/io.openems.edge.bridge.mqtt/readme.adoc b/io.openems.edge.bridge.mqtt/readme.adoc index aea8d765d96..9afbc088442 100644 --- a/io.openems.edge.bridge.mqtt/readme.adoc +++ b/io.openems.edge.bridge.mqtt/readme.adoc @@ -20,6 +20,7 @@ MQTT is a perfect alternative to direct device protocols when devices support br *Purpose*: MQTT broker connection and message routing for OpenEMS components. .*Configuration*: + * `id` (String): Unique bridge identifier; default: `"mqtt0"` * `alias` (String): Human-readable name; default: same as id * `enabled` (Boolean): Enable/disable this component; default: `true` diff --git a/io.openems.edge.bridge.onewire/readme.adoc b/io.openems.edge.bridge.onewire/readme.adoc index 5b0c1d18cd3..d44cee94ff7 100644 --- a/io.openems.edge.bridge.onewire/readme.adoc +++ b/io.openems.edge.bridge.onewire/readme.adoc @@ -9,6 +9,7 @@ The OneWire Bridge provides direct communication with 1-Wire (OneWire) devices s The bridge communicates directly with a OneWire busmaster device (e.g., DS9490R USB dongle) without requiring the OneWire File System (OWFS). It accesses the native Maxim Integrated C library via Java JNI for optimal performance. Common use cases: + * Temperature monitoring (thermometers at different locations) * Humidity and environmental sensors * Battery voltage and current monitoring via smart battery controllers @@ -25,6 +26,7 @@ Common use cases: *Purpose*: Master bridge for 1-Wire communication with temperature and sensor devices. .*Configuration*: + * `id` (String): Unique bridge identifier; default: `"onewire0"` * `alias` (String): Human-readable name; default: same as id * `enabled` (Boolean): Enable/disable this component; default: `true` @@ -47,6 +49,7 @@ For complete device list, query the bridge via getDevices() JSON-RPC method (see === OneWire Adapter Supported adapters: + * **DS9490R** - USB dongle (recommended, most common) * **DS9481** - Serial adapter * Compatible third-party 1-Wire adapters @@ -168,6 +171,7 @@ Use the **address** field to configure individual thermometer components (see `i === Device Addresses Each 1-Wire device has a unique 64-bit address in hexadecimal format: + * Example: `4D0000094xxxxxxx` * Format: `FFXXXXXXXXXXXXXXXXXX` where FF is family code, X is unique serial diff --git a/io.openems.edge.controller.api.modbus/readme.adoc b/io.openems.edge.controller.api.modbus/readme.adoc index a7812fa1782..75e441f83b9 100644 --- a/io.openems.edge.controller.api.modbus/readme.adoc +++ b/io.openems.edge.controller.api.modbus/readme.adoc @@ -160,6 +160,7 @@ To read/write specific channels: 3. Read/write to register address = component_start + channel_offset Example: + * Read register `302` to get `_sum/EssSoc` (total ESS state of charge) * Write to register `806` to set `ess0/SetActivePowerEquals` (control charging/discharging) diff --git a/io.openems.edge.controller.api.mqtt/readme.adoc b/io.openems.edge.controller.api.mqtt/readme.adoc index 48b1ad8b72c..6318b6bedc5 100644 --- a/io.openems.edge.controller.api.mqtt/readme.adoc +++ b/io.openems.edge.controller.api.mqtt/readme.adoc @@ -100,6 +100,7 @@ Implements: |=== Uses standard MQTT wildcarding: + * `+` matches single level: `channel/_sum/+` matches `channel/_sum/GridActivePower` * `#` matches multiple levels: `channel/_sum/#` matches `channel/_sum/GridActivePower`, `channel/_sum/EssSoc`, etc. diff --git a/io.openems.edge.controller.api.rest/readme.adoc b/io.openems.edge.controller.api.rest/readme.adoc index 59fca4c12fd..8ff094e4bd1 100644 --- a/io.openems.edge.controller.api.rest/readme.adoc +++ b/io.openems.edge.controller.api.rest/readme.adoc @@ -421,6 +421,7 @@ Authorization: Basic base64(username:password) ---- Usernames are typically: + * `user` (default unprivileged) * `admin` (admin privileges) * `x` (if username is omitted) diff --git a/io.openems.edge.controller.api/readme.adoc b/io.openems.edge.controller.api/readme.adoc index 4de9435773f..8c8fae9e9c7 100644 --- a/io.openems.edge.controller.api/readme.adoc +++ b/io.openems.edge.controller.api/readme.adoc @@ -7,6 +7,7 @@ Defines the core interface for all OpenEMS edge controllers. The Controller API bundle defines the base interface that all OpenEMS edge controllers must implement. Controllers are the core logic components that automate energy management decisions - they run periodically to read sensor data and command power adjustments to batteries, inverters, EVCS chargers, and other actuators. A controller has: + * A `run()` method called every OpenEMS cycle * Access to all component data via the component registry * Ability to set target power, reactive power, charging current, etc. @@ -22,9 +23,11 @@ Base interface for all edge controllers. *Purpose*: Defines the contract that controllers must follow for execution in the OpenEMS control loop. *Key Method*: + * `run()` - Executes the controller logic every cycle *Channel*: + * `RUN_FAILED` - Fault channel indicating controller execution failure *Usage*: diff --git a/io.openems.edge.controller.io.heatingelement/readme.adoc b/io.openems.edge.controller.io.heatingelement/readme.adoc index 952b8f855fa..cc8d2558d7b 100644 --- a/io.openems.edge.controller.io.heatingelement/readme.adoc +++ b/io.openems.edge.controller.io.heatingelement/readme.adoc @@ -15,6 +15,7 @@ The Controller distinguishes the definition of Phase and Level. == Channels Example: + * the power of the heating element per phase is 1000 W * each "x" below represents one hour diff --git a/io.openems.edge.ess.samsung/readme.adoc b/io.openems.edge.ess.samsung/readme.adoc index 19d611c9910..44a28d1c532 100644 --- a/io.openems.edge.ess.samsung/readme.adoc +++ b/io.openems.edge.ess.samsung/readme.adoc @@ -40,6 +40,7 @@ This bundle implements the following OpenEMS Components: *Description*: Core battery management component for the Samsung ESS. Controls charge/discharge operations, monitors state of charge and battery health. Single-phase operation with configurable capacity and phase selection. .*Configuration*: + * `id` (String): Component ID for unique identification (default: "ess0") * `alias` (String): Human-readable alias for the component * `enabled` (Boolean): Enable/disable this component (default: true) @@ -63,6 +64,7 @@ This bundle implements the following OpenEMS Components: *Description*: Grid power monitoring component for Samsung ESS. Reads grid power consumption/production and monitors grid connection status. Provides visibility into net power flow between grid and home. .*Configuration*: + * `id` (String): Component ID for unique identification (default: "gridmeter0") * `alias` (String): Human-readable alias for the component * `enabled` (Boolean): Enable/disable this component (default: true) @@ -87,6 +89,7 @@ This bundle implements the following OpenEMS Components: *Description*: DC PV charger component for Samsung ESS. Manages DC power input from solar panels and controls battery charging. Monitors PV production power and provides PV inverter functionality. .*Configuration*: + * `id` (String): Component ID for unique identification (default: "charger0") * `alias` (String): Human-readable alias for the component * `enabled` (Boolean): Enable/disable this component (default: true) diff --git a/io.openems.edge.evcs.abl/readme.adoc b/io.openems.edge.evcs.abl/readme.adoc index df8ee6cdfb6..d5f23b77a60 100644 --- a/io.openems.edge.evcs.abl/readme.adoc +++ b/io.openems.edge.evcs.abl/readme.adoc @@ -13,6 +13,7 @@ Implementation of the ABL eM4 electric vehicle charging station. === Technical Data Implemented Natures: + * Evcs (Electric Vehicle Charging Station) diff --git a/io.openems.edge.evcs.goe.chargerhome/readme.adoc b/io.openems.edge.evcs.goe.chargerhome/readme.adoc index 1beb374d74e..dfda67c10b9 100644 --- a/io.openems.edge.evcs.goe.chargerhome/readme.adoc +++ b/io.openems.edge.evcs.goe.chargerhome/readme.adoc @@ -4,5 +4,6 @@ This component implements the go-e charger home charging station, which is contr It collects all relevant informations into the given Nature Channels and its own Channels and sends charging commands that have been set by another controllers. Implemented Natures: + * Evcs (Electric Vehicle Charging Station) * ManagedEvcs diff --git a/io.openems.edge.evcs.goe/readme.adoc b/io.openems.edge.evcs.goe/readme.adoc index 79be1cd6376..0790e999314 100644 --- a/io.openems.edge.evcs.goe/readme.adoc +++ b/io.openems.edge.evcs.goe/readme.adoc @@ -20,6 +20,7 @@ There are two implementations present: https://github.com/goecharger/go-eCharger-API-v2/blob/main/modbus-en.md Implemented Natures: + * Evcs (Electric Vehicle Charging Station) https://github.com/OpenEMS/openems/tree/develop/io.openems.edge.evcs.goe[Source Code icon:github[]] \ No newline at end of file diff --git a/io.openems.edge.evcs.heidelberg/readme.adoc b/io.openems.edge.evcs.heidelberg/readme.adoc index f30f174aa7f..8879db7fd94 100644 --- a/io.openems.edge.evcs.heidelberg/readme.adoc +++ b/io.openems.edge.evcs.heidelberg/readme.adoc @@ -9,6 +9,7 @@ Implementation of the Heidelberg electric vehicle charging station. === Technical Data Implemented Natures: + * Evcs (Electric Vehicle Charging Station) https://github.com/OpenEMS/openems/tree/develop/io.openems.edge.evcs.heidelberg[Source Code icon:github[]] \ No newline at end of file diff --git a/io.openems.edge.evcs.ocpp.abl/readme.adoc b/io.openems.edge.evcs.ocpp.abl/readme.adoc index 06748568b06..171e6997daf 100644 --- a/io.openems.edge.evcs.ocpp.abl/readme.adoc +++ b/io.openems.edge.evcs.ocpp.abl/readme.adoc @@ -41,6 +41,7 @@ This bundle implements the following OpenEMS Components: *Description*: OCPP interface for ABL electric vehicle charging stations. Controls charging current, monitors power consumption, and reports charging status. Enables dynamic charging based on grid conditions and energy availability. Extends AbstractOcppEvcsComponent for standard OCPP functionality. .*Configuration*: + * `id` (String): Component ID for unique identification (default: "evcs0") * `alias` (String): Human-readable alias for the component * `enabled` (Boolean): Enable/disable this component (default: true) diff --git a/io.openems.edge.evcs.ocpp.common/readme.adoc b/io.openems.edge.evcs.ocpp.common/readme.adoc index 69a99988d71..d878dc8f453 100644 --- a/io.openems.edge.evcs.ocpp.common/readme.adoc +++ b/io.openems.edge.evcs.ocpp.common/readme.adoc @@ -7,6 +7,7 @@ The whole bundle contains a library of the OCPP functions. It also provides a default abstract ocpp EVCS component that can be used by every specific charging station and a OcppServer interface that provides a minimum functionality, to be able to send data to a charging station. Implemented Natures: + * Evcs (Electric Vehicle Charging Station * MeasuringEvcs (Can get measured information) diff --git a/io.openems.edge.evcs.ocpp.ies.keywatt.singleccs/readme.adoc b/io.openems.edge.evcs.ocpp.ies.keywatt.singleccs/readme.adoc index 8bfd42f54db..76c700f60d3 100644 --- a/io.openems.edge.evcs.ocpp.ies.keywatt.singleccs/readme.adoc +++ b/io.openems.edge.evcs.ocpp.ies.keywatt.singleccs/readme.adoc @@ -4,11 +4,13 @@ This component implements the IES KeyWatt CCS charging station with a single plu It provides specific information for the AbstractOcppEvcsComponent. Implemented Natures: + * Evcs (Electric Vehicle Charging Station * ManagedEvcs * MeasuringEvcs (Can get measured information) Extended abstract class: + * AbstractOcppEvcsComponent https://github.com/OpenEMS/openems/tree/develop/io.openems.edge.evcs.ocpp.ies.keywatt.singleccs[Source Code icon:github[]] \ No newline at end of file diff --git a/io.openems.edge.evse.chargepoint.alpitronic/readme.adoc b/io.openems.edge.evse.chargepoint.alpitronic/readme.adoc index fa85932ae59..3599fae005f 100644 --- a/io.openems.edge.evse.chargepoint.alpitronic/readme.adoc +++ b/io.openems.edge.evse.chargepoint.alpitronic/readme.adoc @@ -41,6 +41,7 @@ This bundle implements the following OpenEMS Components: *Description*: EVSE (Electric Vehicle Supply Equipment) interface for Alpitronic Hypercharger. Provides charging point functionality with power measurement and status monitoring. Supports both read-only monitoring and managed charging control modes. .*Configuration*: + * `id` (String): Component ID for unique identification (default: "evcs0") * `alias` (String): Human-readable alias for the component * `enabled` (Boolean): Enable/disable this component (default: true) @@ -75,6 +76,7 @@ This bundle implements the following OpenEMS Components: *Description*: EVCS (Electric Vehicle Charging Station) interface for Alpitronic Hypercharger. Manages dynamic charging control, monitors power consumption, and enables integration with energy management systems. Supports per-connector configuration for multi-connector units. .*Configuration*: + * `id` (String): Component ID for unique identification (default: "evcs0") * `alias` (String): Human-readable alias for the component * `enabled` (Boolean): Enable/disable this component (default: true) @@ -87,6 +89,7 @@ This bundle implements the following OpenEMS Components: .Example Configuration For each physical connector, configure separate component: + * **Connector 1 (SLOT_0)**: - `id`: "evcs0" - `connector`: "SLOT_0" diff --git a/io.openems.edge.evse.chargepoint.hardybarth/readme.adoc b/io.openems.edge.evse.chargepoint.hardybarth/readme.adoc index 6210e936076..35d271ed5b3 100644 --- a/io.openems.edge.evse.chargepoint.hardybarth/readme.adoc +++ b/io.openems.edge.evse.chargepoint.hardybarth/readme.adoc @@ -43,6 +43,7 @@ This bundle implements the following OpenEMS Components: *Description*: EVSE (Electric Vehicle Supply Equipment) interface for Hardy Barth Salia charging station. Provides charging point functionality with real-time power measurement and status monitoring. Supports read-only monitoring or managed charging control modes. .*Configuration*: + * `id` (String): Component ID for unique identification (default: "evseChargePoint0") * `alias` (String): Human-readable alias for the component * `enabled` (Boolean): Enable/disable this component (default: true) @@ -71,6 +72,7 @@ This bundle implements the following OpenEMS Components: *Description*: EVCS (Electric Vehicle Charging Station) interface for Hardy Barth Salia. Manages dynamic charging control and enables integration with energy management systems for demand response and load optimization. Controls charging power and monitors real-time consumption. .*Configuration*: + * `id` (String): Component ID for unique identification * `alias` (String): Human-readable alias for the component * `enabled` (Boolean): Enable/disable this component diff --git a/io.openems.edge.evse.chargepoint.heidelberg/readme.adoc b/io.openems.edge.evse.chargepoint.heidelberg/readme.adoc index 4e3904cec60..51286f3ab7f 100644 --- a/io.openems.edge.evse.chargepoint.heidelberg/readme.adoc +++ b/io.openems.edge.evse.chargepoint.heidelberg/readme.adoc @@ -42,6 +42,7 @@ This bundle implements the following OpenEMS Components: *Description*: Modbus interface for Heidelberg Connect charging station. Provides charging point functionality with real-time power measurement and status monitoring. Supports both single-phase and three-phase configurations with optional dynamic phase switching for load optimization. .*Configuration*: + * `id` (String): Component ID for unique identification (default: "evseChargePoint0") * `alias` (String): Human-readable alias for the component * `enabled` (Boolean): Enable/disable this component (default: true) diff --git a/io.openems.edge.evse.chargepoint.keba/readme.adoc b/io.openems.edge.evse.chargepoint.keba/readme.adoc index bd5790e8da0..31548e5032f 100644 --- a/io.openems.edge.evse.chargepoint.keba/readme.adoc +++ b/io.openems.edge.evse.chargepoint.keba/readme.adoc @@ -44,6 +44,7 @@ This bundle implements the following OpenEMS Components: *Description*: Modbus interface for KEBA P40 charging station. Provides charging point functionality with real-time power measurement. Supports single-phase or three-phase wiring configurations with phase rotation support. .*Configuration*: + * `id` (String): Component ID (default: "evseChargePoint0") * `alias` (String): Human-readable alias * `enabled` (Boolean): Enable/disable (default: true) @@ -74,6 +75,7 @@ This bundle implements the following OpenEMS Components: *Description*: UDP interface for KEBA P30 charging station. Provides charging point functionality with UDP-based communication for simpler network setups. .*Configuration*: + * `id` (String): Component ID (default: "evseChargePoint0") * `alias` (String): Human-readable alias * `enabled` (Boolean): Enable/disable (default: true) @@ -104,6 +106,7 @@ This bundle implements the following OpenEMS Components: *Description*: EVCS interface for KEBA P40 via Modbus. Manages dynamic charging control for energy management system integration. .*Configuration*: + * `id` (String): Component ID * `alias` (String): Human-readable alias * `enabled` (Boolean): Enable/disable (default: true) @@ -131,6 +134,7 @@ This bundle implements the following OpenEMS Components: *Description*: EVCS interface for KEBA P30 via UDP. Manages dynamic charging control and integration with energy management systems. .*Configuration*: + * `id` (String): Component ID * `alias` (String): Human-readable alias * `enabled` (Boolean): Enable/disable (default: true) diff --git a/io.openems.edge.fronius/readme.adoc b/io.openems.edge.fronius/readme.adoc index e7be40a1852..f5d0b2453e8 100644 --- a/io.openems.edge.fronius/readme.adoc +++ b/io.openems.edge.fronius/readme.adoc @@ -7,6 +7,7 @@ Solar PV inverter and smart meter integration by Fronius. This bundle provides integration with Fronius photovoltaic (PV) inverter systems and Fronius Smart Meter devices. Fronius is an Austrian manufacturer of solar inverters and energy management solutions. The integration enables monitoring of solar production via the PV inverter and energy measurement via the Smart Meter using Modbus communication. The bundle supports two main components: + * **PV Inverter** - Monitors and can limit solar generation from Fronius Symo and compatible inverters * **Smart Meter** - Reads three-phase grid power measurement from Fronius Smart Meter @@ -48,6 +49,7 @@ The bundle supports two main components: Integration for Fronius solar PV inverters. Monitors real-time solar generation power and allows active power limitation to reduce feed-in to the grid. Communicates via Modbus using industry-standard SunSpec register map for interoperability. .*Configuration*: + * `id` (String): Unique component identifier; default: `"pvInverter0"` * `alias` (String): Human-readable name; default: same as id * `enabled` (Boolean): Enable/disable this component; default: `true` @@ -72,6 +74,7 @@ Integration for Fronius solar PV inverters. Monitors real-time solar generation Integration for Fronius Smart Meter devices. Measures three-phase AC power and energy values (production, consumption, active/reactive power) via Modbus. Commonly used to measure grid power when Fronius inverters are present in the installation. .*Configuration*: + * `id` (String): Unique component identifier; default: `"meter0"` * `alias` (String): Human-readable name; default: same as id * `enabled` (Boolean): Enable/disable this component; default: `true` diff --git a/io.openems.edge.heat.askoma/readme.adoc b/io.openems.edge.heat.askoma/readme.adoc index 45afe25f15f..c8e31657c5a 100644 --- a/io.openems.edge.heat.askoma/readme.adoc +++ b/io.openems.edge.heat.askoma/readme.adoc @@ -41,6 +41,7 @@ This bundle implements the following OpenEMS Components: *Description*: Modbus interface for Askoma heating elements. Monitors heating power consumption and enables dynamic control for demand response and load shifting. Can operate in read-only mode for monitoring only or managed mode for active heating control. .*Configuration*: + * `id` (String): Component ID for unique identification (default: "heat0") * `alias` (String): Human-readable alias for the component * `enabled` (Boolean): Enable/disable this component (default: true) diff --git a/io.openems.edge.io.siemenslogo/readme.adoc b/io.openems.edge.io.siemenslogo/readme.adoc index 0b102b11d2a..0f0549a0900 100644 --- a/io.openems.edge.io.siemenslogo/readme.adoc +++ b/io.openems.edge.io.siemenslogo/readme.adoc @@ -87,6 +87,7 @@ The LOGO! device uses virtual addresses (V addresses) which map to Modbus coils * **Custom Offsets**: Can be configured if LOGO! uses different virtual address ranges Example mapping: + * Virtual address 101.0 (first output) → Modbus address 800 + offset * Virtual address 110.0 (first input) → Modbus address 880 + offset diff --git a/io.openems.edge.io.weidmueller/readme.adoc b/io.openems.edge.io.weidmueller/readme.adoc index 02c8525a40e..9aa66f288a0 100644 --- a/io.openems.edge.io.weidmueller/readme.adoc +++ b/io.openems.edge.io.weidmueller/readme.adoc @@ -25,10 +25,12 @@ This bundle implements the following OpenEMS Component with individual configura *Factory-PID*: `io.openems.edge.io.weidmueller.ur20` *Implemented Natures/Interfaces*: + * DigitalInput * DigitalOutput .*Configuration*: + * `id` (String): Component ID for unique identification (default: "io0") * `alias` (String): Human-readable alias for the component * `enabled` (Boolean): Enable/disable this component (default: true) @@ -41,6 +43,7 @@ This bundle implements the following OpenEMS Component with individual configura The UR20 fieldbus coupler dynamically creates channels based on connected modules. Channel names follow this pattern: `\{component-id\}/\{channel-type\}M\{module-position\}C\{channel-number\}` Assumptions for all examples below: + * Component-ID is `io0` * Modules are in the first extension (M1) * For extensions 2, 3, etc., increment the number behind `M` diff --git a/io.openems.edge.kaco.blueplanet.hybrid10/readme.adoc b/io.openems.edge.kaco.blueplanet.hybrid10/readme.adoc index f6d0de26763..0695e9c1a8a 100644 --- a/io.openems.edge.kaco.blueplanet.hybrid10/readme.adoc +++ b/io.openems.edge.kaco.blueplanet.hybrid10/readme.adoc @@ -30,6 +30,7 @@ This bundle implements the following OpenEMS Components, each with its own Facto *Description*: Core communication component. Always required to establish communication with the hardware device. .*Configuration*: + * `id` (String): Component ID for unique identification (default: "kacoCore0") * `alias` (String): Human-readable alias for the component * `enabled` (Boolean): Enable/disable this component (default: true) @@ -53,6 +54,7 @@ This bundle implements the following OpenEMS Components, each with its own Facto *Description*: Implements energy storage system component for battery control. Supports both read-only (fast internal control) and read-write (slow external control) modes. .*Configuration*: + * `id` (String): Component ID for unique identification (default: "ess0") * `alias` (String): Human-readable alias for the component * `enabled` (Boolean): Enable/disable this component (default: true) @@ -79,6 +81,7 @@ This bundle implements the following OpenEMS Components, each with its own Facto *Description*: Implements DC Charger/MPP tracker for photovoltaic system. Note that there is only one instance for both MPP trackers because the inverter does not provide separated power values. .*Configuration*: + * `id` (String): Component ID for unique identification (default: "charger0") * `alias` (String): Human-readable alias for the component * `enabled` (Boolean): Enable/disable this component (default: true) @@ -101,6 +104,7 @@ This bundle implements the following OpenEMS Components, each with its own Facto *Description*: Implements the inverter as pure photovoltaics inverter. Use this instead of Ess+Charger if you are using the inverter purely as PV inverter without a battery. .*Configuration*: + * `id` (String): Component ID for unique identification (default: "pvInverter0") * `alias` (String): Human-readable alias for the component * `enabled` (Boolean): Enable/disable this component (default: true) @@ -124,6 +128,7 @@ This bundle implements the following OpenEMS Components, each with its own Facto *Description*: Implements the grid meter (product name "VECTIS" or "blueplanet hy-switch") connected to the inverter for grid monitoring. .*Configuration*: + * `id` (String): Component ID for unique identification (default: "meter0") * `alias` (String): Human-readable alias for the component * `enabled` (Boolean): Enable/disable this component (default: true) diff --git a/io.openems.edge.kostal/readme.adoc b/io.openems.edge.kostal/readme.adoc index 37792b4c3a4..3b990ce2478 100644 --- a/io.openems.edge.kostal/readme.adoc +++ b/io.openems.edge.kostal/readme.adoc @@ -38,6 +38,7 @@ The PIKO family components communicate via HTTP/REST API to the inverter. *Description*: Core communication component. Always required to establish communication with the inverter. .*Configuration*: + * `id` (String): Component ID for unique identification (default: "kostalPiko0") * `alias` (String): Human-readable alias for the component * `enabled` (Boolean): Enable/disable this component (default: true) @@ -59,6 +60,7 @@ The PIKO family components communicate via HTTP/REST API to the inverter. *Description*: Energy storage system component for battery control and monitoring. .*Configuration*: + * `id` (String): Component ID for unique identification (default: "ess0") * `alias` (String): Human-readable alias for the component * `enabled` (Boolean): Enable/disable this component (default: true) @@ -80,6 +82,7 @@ The PIKO family components communicate via HTTP/REST API to the inverter. *Description*: DC Charger/MPP tracker for photovoltaic system. .*Configuration*: + * `id` (String): Component ID for unique identification (default: "charger0") * `alias` (String): Human-readable alias for the component * `enabled` (Boolean): Enable/disable this component (default: true) @@ -100,6 +103,7 @@ The PIKO family components communicate via HTTP/REST API to the inverter. *Description*: Grid meter component for monitoring grid power. .*Configuration*: + * `id` (String): Component ID for unique identification (default: "meter0") * `alias` (String): Human-readable alias for the component * `enabled` (Boolean): Enable/disable this component (default: true) @@ -128,6 +132,7 @@ The Plenticore family components communicate via Modbus TCP. *Description*: Hybrid energy storage system (battery) with management capabilities. .*Configuration*: + * `id` (String): Component ID for unique identification (default: "ess0") * `alias` (String): Human-readable alias for the component * `enabled` (Boolean): Enable/disable this component (default: true) @@ -158,6 +163,7 @@ The Plenticore family components communicate via Modbus TCP. *Description*: Hybrid inverter component for photovoltaic production monitoring and power limiting. .*Configuration*: + * `id` (String): Component ID for unique identification (default: "pvInverter0") * `alias` (String): Human-readable alias for the component * `enabled` (Boolean): Enable/disable this component (default: true) @@ -183,6 +189,7 @@ The Plenticore family components communicate via Modbus TCP. *Description*: Smart Energy Meter (KSEM) for grid or inverter-based energy monitoring. .*Configuration*: + * `id` (String): Component ID for unique identification (default: "meter0") * `alias` (String): Human-readable alias for the component * `enabled` (Boolean): Enable/disable this component (default: true) diff --git a/io.openems.edge.meter.abb/readme.adoc b/io.openems.edge.meter.abb/readme.adoc index 33ffc5177f2..2aebba27ee9 100644 --- a/io.openems.edge.meter.abb/readme.adoc +++ b/io.openems.edge.meter.abb/readme.adoc @@ -30,6 +30,7 @@ This bundle implements the following OpenEMS Component: *Description*: Three-phase electricity meter for energy measurement via M-Bus protocol. .*Configuration*: + * `id` (String): Component ID for unique identification (default: "meter0") * `alias` (String): Human-readable alias for the component * `enabled` (Boolean): Enable/disable this component (default: true) diff --git a/io.openems.edge.meter.api/readme.adoc b/io.openems.edge.meter.api/readme.adoc index 77826ce97ed..30a5259bc4c 100644 --- a/io.openems.edge.meter.api/readme.adoc +++ b/io.openems.edge.meter.api/readme.adoc @@ -50,6 +50,7 @@ Meter implementations extend the `ElectricityMeter` interface to provide: * Specific protocol implementations (Modbus, M-Bus, REST, etc.) Example implementations include: + * `io.openems.edge.meter.abb` - ABB B23 M-Bus meter * `io.openems.edge.meter.janitza` - Janitza energy meters * `io.openems.edge.meter.eastron` - Eastron SDM meters diff --git a/io.openems.edge.meter.artemes.am2/readme.adoc b/io.openems.edge.meter.artemes.am2/readme.adoc index d6ab29eab6a..aa438d02fbd 100644 --- a/io.openems.edge.meter.artemes.am2/readme.adoc +++ b/io.openems.edge.meter.artemes.am2/readme.adoc @@ -32,6 +32,7 @@ This bundle implements the following OpenEMS Component: *Description*: Three-phase electricity meter for energy measurement via Modbus protocol. .*Configuration*: + * `id` (String): Component ID for unique identification (default: "meter0") * `alias` (String): Human-readable alias for the component * `enabled` (Boolean): Enable/disable this component (default: true) diff --git a/io.openems.edge.meter.bcontrol.em300/readme.adoc b/io.openems.edge.meter.bcontrol.em300/readme.adoc index 81a14d6f9bf..4c51a643655 100644 --- a/io.openems.edge.meter.bcontrol.em300/readme.adoc +++ b/io.openems.edge.meter.bcontrol.em300/readme.adoc @@ -32,6 +32,7 @@ This bundle implements the following OpenEMS Component: *Description*: Three-phase energy meter for power and energy measurement via Modbus protocol. .*Configuration*: + * `id` (String): Component ID for unique identification (default: "meter0") * `alias` (String): Human-readable alias for the component * `enabled` (Boolean): Enable/disable this component (default: true) diff --git a/io.openems.edge.meter.bgetech/readme.adoc b/io.openems.edge.meter.bgetech/readme.adoc index 0846a8e9b42..3a398ed2dfb 100644 --- a/io.openems.edge.meter.bgetech/readme.adoc +++ b/io.openems.edge.meter.bgetech/readme.adoc @@ -1,42 +1,43 @@ -= BGE-TECH DRT428M-2 Meter - -Three-phase bidirectional electricity meter for consumption and production measurement via Modbus protocol. - -== Overview - -This bundle provides integration with the B+G E-Tech DRT428M-2 meter, a bidirectional three-phase electricity meter with calibrated accuracy for grid-connected installations. The component communicates with the meter through the Modbus TCP protocol, enabling real-time energy monitoring in both consumption and production directions. - -The DRT428M-2 is designed for DIN rail mounting and supports S0 impulse output and RS485 communication. It measures both imported and exported energy, making it suitable for installations with solar inverters or battery systems. - -== Supported Devices - -* https://xn--stromzhler-v5a.eu/stromzaehler/drehstromzaehler/fuer-hutschiene-geeicht/252/drt428m-2-zweirichtungs-drehstromzaehler-geeicht-fuer-din-hutschiene-mit-s0-ir-rs485[B+G E-Tech DRT428M-2 Meter icon:external-link[]] - -== Components - -This bundle implements the following OpenEMS Component: - -=== B+G E-Tech DRT428M-2 Meter - -*Name*: Meter B+G E-Tech DRT428M-2 - -*Factory-PID*: `Meter.BGE-TECH.DRT428M2` - -.Implemented Natures/Interfaces -* MeterBgeTechDrt428M2 -* ElectricityMeter -* ModbusComponent -* OpenemsComponent -* ModbusSlave - -*Description*: Bidirectional three-phase electricity meter for consumption and production measurement via Modbus protocol. - -.*Configuration*: -* `id` (String): Component ID for unique identification (default: "meter0") -* `alias` (String): Human-readable alias for the component -* `enabled` (Boolean): Enable/disable this component (default: true) -* `modbus_id` (String): ID of Modbus bridge for communication (default: "modbus0") -* `modbusUnitId` (Integer): Modbus Unit ID of the meter device (default: 1) -* `type` (Enum): Meter type - GRID, PRODUCTION, CONSUMPTION, or CONSUMPTION_METERED (default: CONSUMPTION_METERED) - += BGE-TECH DRT428M-2 Meter + +Three-phase bidirectional electricity meter for consumption and production measurement via Modbus protocol. + +== Overview + +This bundle provides integration with the B+G E-Tech DRT428M-2 meter, a bidirectional three-phase electricity meter with calibrated accuracy for grid-connected installations. The component communicates with the meter through the Modbus TCP protocol, enabling real-time energy monitoring in both consumption and production directions. + +The DRT428M-2 is designed for DIN rail mounting and supports S0 impulse output and RS485 communication. It measures both imported and exported energy, making it suitable for installations with solar inverters or battery systems. + +== Supported Devices + +* https://xn--stromzhler-v5a.eu/stromzaehler/drehstromzaehler/fuer-hutschiene-geeicht/252/drt428m-2-zweirichtungs-drehstromzaehler-geeicht-fuer-din-hutschiene-mit-s0-ir-rs485[B+G E-Tech DRT428M-2 Meter icon:external-link[]] + +== Components + +This bundle implements the following OpenEMS Component: + +=== B+G E-Tech DRT428M-2 Meter + +*Name*: Meter B+G E-Tech DRT428M-2 + +*Factory-PID*: `Meter.BGE-TECH.DRT428M2` + +.Implemented Natures/Interfaces +* MeterBgeTechDrt428M2 +* ElectricityMeter +* ModbusComponent +* OpenemsComponent +* ModbusSlave + +*Description*: Bidirectional three-phase electricity meter for consumption and production measurement via Modbus protocol. + +.*Configuration*: + +* `id` (String): Component ID for unique identification (default: "meter0") +* `alias` (String): Human-readable alias for the component +* `enabled` (Boolean): Enable/disable this component (default: true) +* `modbus_id` (String): ID of Modbus bridge for communication (default: "modbus0") +* `modbusUnitId` (Integer): Modbus Unit ID of the meter device (default: 1) +* `type` (Enum): Meter type - GRID, PRODUCTION, CONSUMPTION, or CONSUMPTION_METERED (default: CONSUMPTION_METERED) + https://github.com/OpenEMS/openems/tree/develop/io.openems.edge.meter.bgetech[Source Code icon:github[]] \ No newline at end of file diff --git a/io.openems.edge.meter.camillebauer.aplus/readme.adoc b/io.openems.edge.meter.camillebauer.aplus/readme.adoc index d15485ef510..3c9e1fce182 100644 --- a/io.openems.edge.meter.camillebauer.aplus/readme.adoc +++ b/io.openems.edge.meter.camillebauer.aplus/readme.adoc @@ -34,6 +34,7 @@ This bundle implements the following OpenEMS Component: *Description*: Three-phase electricity meter for comprehensive energy measurement via Modbus protocol. .*Configuration*: + * `id` (String): Component ID for unique identification (default: "meter0") * `alias` (String): Human-readable alias for the component * `enabled` (Boolean): Enable/disable this component (default: true) diff --git a/io.openems.edge.meter.carlo.gavazzi/readme.adoc b/io.openems.edge.meter.carlo.gavazzi/readme.adoc index 2e8b5a96020..796d5542593 100644 --- a/io.openems.edge.meter.carlo.gavazzi/readme.adoc +++ b/io.openems.edge.meter.carlo.gavazzi/readme.adoc @@ -35,6 +35,7 @@ This bundle implements the following OpenEMS Components: *Description*: Single-phase electricity meter for single-phase installations via Modbus protocol. .*Configuration*: + * `id` (String): Component ID for unique identification (default: "meter0") * `alias` (String): Human-readable alias for the component * `enabled` (Boolean): Enable/disable this component (default: true) @@ -61,6 +62,7 @@ This bundle implements the following OpenEMS Components: *Description*: Three-phase electricity meter for three-phase installations via Modbus protocol. Supports EM330 and EM340 models. .*Configuration*: + * `id` (String): Component ID for unique identification (default: "meter0") * `alias` (String): Human-readable alias for the component * `enabled` (Boolean): Enable/disable this component (default: true) diff --git a/io.openems.edge.meter.chint/readme.adoc b/io.openems.edge.meter.chint/readme.adoc index 163e2710e90..41778b0f602 100644 --- a/io.openems.edge.meter.chint/readme.adoc +++ b/io.openems.edge.meter.chint/readme.adoc @@ -32,6 +32,7 @@ This bundle implements the following OpenEMS Components: *Description*: Single-phase electricity meter via Modbus. The device-specific communication address is exposed as a custom channel, while cumulative import energy is mapped to the standard OpenEMS energy channels. .*Configuration*: + * `id` (String): Component ID for unique identification (default: "meter0") * `alias` (String): Human-readable alias for the component * `enabled` (Boolean): Enable/disable this component (default: true) @@ -61,6 +62,7 @@ This bundle implements the following OpenEMS Components: Unlike the DDSU666 single-phase support in this bundle, DTSU666 uses `FC4` / input registers for the verified live register map. .*Configuration*: + * `id` (String): Component ID for unique identification (default: "meter0") * `alias` (String): Human-readable alias for the component * `enabled` (Boolean): Enable/disable this component (default: true) @@ -73,6 +75,7 @@ Unlike the DDSU666 single-phase support in this bundle, DTSU666 uses `FC4` / inp *Configuration note*: the OSGi attribute is named `modbus_id`, but in FileInstall/Felix `.config` files the property key is typically `modbus.id`. *Verified DTSU666 communication assumptions*: + * Use `FC4` / input registers * Recommended serial bridge settings are `9600-N-8-2` * Total import energy is read from register `0x4000` diff --git a/io.openems.edge.meter.discovergy/readme.adoc b/io.openems.edge.meter.discovergy/readme.adoc index b90b548283e..6810b500fd9 100644 --- a/io.openems.edge.meter.discovergy/readme.adoc +++ b/io.openems.edge.meter.discovergy/readme.adoc @@ -32,6 +32,7 @@ This bundle implements the following OpenEMS Component: *Description*: Cloud-based smart meter integration via REST API for energy monitoring. .*Configuration*: + * `id` (String): Component ID for unique identification (default: "meter0") * `alias` (String): Human-readable alias for the component * `enabled` (Boolean): Enable/disable this component (default: true) diff --git a/io.openems.edge.meter.eastron/readme.adoc b/io.openems.edge.meter.eastron/readme.adoc index 1e02141530b..4fe3bbca17f 100644 --- a/io.openems.edge.meter.eastron/readme.adoc +++ b/io.openems.edge.meter.eastron/readme.adoc @@ -36,6 +36,7 @@ This bundle implements the following OpenEMS Components: *Description*: Three-phase electricity meter via Modbus protocol. Compatible with SDM630 and SDM72D-M-2 models. .*Configuration*: + * `id` (String): Component ID for unique identification (default: "meter0") * `alias` (String): Human-readable alias for the component * `enabled` (Boolean): Enable/disable this component (default: true) @@ -66,6 +67,7 @@ This bundle implements the following OpenEMS Components: *Description*: Single-phase electricity meter via Modbus protocol. .*Configuration*: + * `id` (String): Component ID for unique identification (default: "meter0") * `alias` (String): Human-readable alias for the component * `enabled` (Boolean): Enable/disable this component (default: true) diff --git a/io.openems.edge.meter.hager/readme.adoc b/io.openems.edge.meter.hager/readme.adoc index 8e2912995b3..7a3ae115633 100644 --- a/io.openems.edge.meter.hager/readme.adoc +++ b/io.openems.edge.meter.hager/readme.adoc @@ -32,6 +32,7 @@ This bundle implements the following OpenEMS Component: *Description*: Three-phase electricity meter for energy measurement via Modbus protocol. .*Configuration*: + * `id` (String): Component ID for unique identification (default: "meter0") * `alias` (String): Human-readable alias for the component * `enabled` (Boolean): Enable/disable this component (default: true) diff --git a/io.openems.edge.meter.janitza/readme.adoc b/io.openems.edge.meter.janitza/readme.adoc index 53ebe70d397..9d34ee49786 100644 --- a/io.openems.edge.meter.janitza/readme.adoc +++ b/io.openems.edge.meter.janitza/readme.adoc @@ -38,6 +38,7 @@ This bundle implements the following OpenEMS Components for Janitza meters: *Description*: Power analyzer for energy measurement via Modbus protocol. .*Configuration*: + * `id` (String): Component ID for unique identification (default: "meter0") * `alias` (String): Human-readable alias for the component * `enabled` (Boolean): Enable/disable this component (default: true) @@ -62,6 +63,7 @@ This bundle implements the following OpenEMS Components for Janitza meters: *Description*: Power analyzer for energy measurement via Modbus protocol. .*Configuration*: + * `id` (String): Component ID for unique identification (default: "meter0") * `alias` (String): Human-readable alias for the component * `enabled` (Boolean): Enable/disable this component (default: true) @@ -86,6 +88,7 @@ This bundle implements the following OpenEMS Components for Janitza meters: *Description*: Power analyzer for energy measurement via Modbus protocol. .*Configuration*: + * `id` (String): Component ID for unique identification (default: "meter0") * `alias` (String): Human-readable alias for the component * `enabled` (Boolean): Enable/disable this component (default: true) @@ -110,6 +113,7 @@ This bundle implements the following OpenEMS Components for Janitza meters: *Description*: Power analyzer for energy measurement via Modbus protocol. Can also act as master for UMG 808. .*Configuration*: + * `id` (String): Component ID for unique identification (default: "meter0") * `alias` (String): Human-readable alias for the component * `enabled` (Boolean): Enable/disable this component (default: true) @@ -134,6 +138,7 @@ This bundle implements the following OpenEMS Components for Janitza meters: *Description*: Power analyzer for energy measurement via Modbus protocol. .*Configuration*: + * `id` (String): Component ID for unique identification (default: "meter0") * `alias` (String): Human-readable alias for the component * `enabled` (Boolean): Enable/disable this component (default: true) @@ -158,6 +163,7 @@ This bundle implements the following OpenEMS Components for Janitza meters: *Description*: Power analyzer for energy measurement via Modbus protocol. .*Configuration*: + * `id` (String): Component ID for unique identification (default: "meter0") * `alias` (String): Human-readable alias for the component * `enabled` (Boolean): Enable/disable this component (default: true) diff --git a/io.openems.edge.meter.kdk/readme.adoc b/io.openems.edge.meter.kdk/readme.adoc index 8d136edcae9..e58fb97b00a 100755 --- a/io.openems.edge.meter.kdk/readme.adoc +++ b/io.openems.edge.meter.kdk/readme.adoc @@ -1,43 +1,44 @@ -= KDK 420506PRO20-U (2PU CT) Professional Meter - -Three-phase professional electricity meter for energy measurement via Modbus protocol. - -== Overview - -This bundle provides integration with the KDK 420506PRO20-U (2PU CT) professional meter, a high-precision three-phase electricity meter designed for accurate energy measurement in commercial and industrial installations. The component communicates with the meter through the Modbus TCP protocol, enabling real-time energy monitoring and comprehensive data collection in OpenEMS. - -The KDK professional meter supports measurement of grid consumption, production, or consumption energy depending on configuration. It provides detailed per-phase and cumulative measurements for complete energy accounting. - -== Supported Devices - -* https://www.kdk-dornscheidt.de/produkte/420506pro20-ct/[KDK 420506PRO20-U (2PU CT) Professional Meter icon:external-link[]] - -== Components - -This bundle implements the following OpenEMS Component: - -=== KDK 2PU CT Meter - -*Name*: Meter KDK 2PU CT - -*Factory-PID*: `Meter.KDK.2PUCT` - -.Implemented Natures/Interfaces -* MeterKdk2puct -* ElectricityMeter -* ModbusComponent -* OpenemsComponent -* ModbusSlave - -*Description*: Three-phase professional electricity meter for energy measurement via Modbus protocol. - -.*Configuration*: -* `id` (String): Component ID for unique identification (default: "meter0") -* `alias` (String): Human-readable alias for the component -* `enabled` (Boolean): Enable/disable this component (default: true) -* `modbus_id` (String): ID of Modbus bridge for communication (default: "modbus0") -* `modbusUnitId` (Integer): Modbus Unit ID of the meter device (default: 1) -* `type` (Enum): Meter type - GRID, PRODUCTION, or CONSUMPTION (default: GRID) -* `invert` (Boolean): Invert power values and swap production/consumption energy (default: false) - += KDK 420506PRO20-U (2PU CT) Professional Meter + +Three-phase professional electricity meter for energy measurement via Modbus protocol. + +== Overview + +This bundle provides integration with the KDK 420506PRO20-U (2PU CT) professional meter, a high-precision three-phase electricity meter designed for accurate energy measurement in commercial and industrial installations. The component communicates with the meter through the Modbus TCP protocol, enabling real-time energy monitoring and comprehensive data collection in OpenEMS. + +The KDK professional meter supports measurement of grid consumption, production, or consumption energy depending on configuration. It provides detailed per-phase and cumulative measurements for complete energy accounting. + +== Supported Devices + +* https://www.kdk-dornscheidt.de/produkte/420506pro20-ct/[KDK 420506PRO20-U (2PU CT) Professional Meter icon:external-link[]] + +== Components + +This bundle implements the following OpenEMS Component: + +=== KDK 2PU CT Meter + +*Name*: Meter KDK 2PU CT + +*Factory-PID*: `Meter.KDK.2PUCT` + +.Implemented Natures/Interfaces +* MeterKdk2puct +* ElectricityMeter +* ModbusComponent +* OpenemsComponent +* ModbusSlave + +*Description*: Three-phase professional electricity meter for energy measurement via Modbus protocol. + +.*Configuration*: + +* `id` (String): Component ID for unique identification (default: "meter0") +* `alias` (String): Human-readable alias for the component +* `enabled` (Boolean): Enable/disable this component (default: true) +* `modbus_id` (String): ID of Modbus bridge for communication (default: "modbus0") +* `modbusUnitId` (Integer): Modbus Unit ID of the meter device (default: 1) +* `type` (Enum): Meter type - GRID, PRODUCTION, or CONSUMPTION (default: GRID) +* `invert` (Boolean): Invert power values and swap production/consumption energy (default: false) + https://github.com/OpenEMS/openems/tree/develop/io.openems.edge.meter.kdk[Source Code icon:github[]] \ No newline at end of file diff --git a/io.openems.edge.meter.phoenixcontact/readme.adoc b/io.openems.edge.meter.phoenixcontact/readme.adoc index 64cae0c3b50..974933128b5 100644 --- a/io.openems.edge.meter.phoenixcontact/readme.adoc +++ b/io.openems.edge.meter.phoenixcontact/readme.adoc @@ -32,6 +32,7 @@ This bundle implements the following OpenEMS Component: *Description*: Three-phase electricity meter for energy measurement via Modbus protocol. .*Configuration*: + * `id` (String): Component ID for unique identification (default: "meter0") * `alias` (String): Human-readable alias for the component * `enabled` (Boolean): Enable/disable this component (default: true) diff --git a/io.openems.edge.meter.plexlog/readme.adoc b/io.openems.edge.meter.plexlog/readme.adoc index b64f4919e23..09d01044936 100644 --- a/io.openems.edge.meter.plexlog/readme.adoc +++ b/io.openems.edge.meter.plexlog/readme.adoc @@ -31,6 +31,7 @@ This bundle implements the following OpenEMS Component: *Description*: Energy data logger for solar installations with remote monitoring via Modbus protocol. .*Configuration*: + * `id` (String): Component ID for unique identification (default: "meter0") * `alias` (String): Human-readable alias for the component * `enabled` (Boolean): Enable/disable this component (default: true) diff --git a/io.openems.edge.meter.pqplus/readme.adoc b/io.openems.edge.meter.pqplus/readme.adoc index 65134c55eb0..79aae037f37 100644 --- a/io.openems.edge.meter.pqplus/readme.adoc +++ b/io.openems.edge.meter.pqplus/readme.adoc @@ -34,6 +34,7 @@ This bundle implements the following OpenEMS Components: *Description*: Power quality analyzer for energy measurement via Modbus protocol. .*Configuration*: + * `id` (String): Component ID for unique identification (default: "meter0") * `alias` (String): Human-readable alias for the component * `enabled` (Boolean): Enable/disable this component (default: true) @@ -61,6 +62,7 @@ This bundle implements the following OpenEMS Components: *Description*: Power quality analyzer for energy measurement via Modbus protocol. .*Configuration*: + * `id` (String): Component ID for unique identification (default: "meter0") * `alias` (String): Human-readable alias for the component * `enabled` (Boolean): Enable/disable this component (default: true) diff --git a/io.openems.edge.meter.schneider.acti9.smartlink/readme.adoc b/io.openems.edge.meter.schneider.acti9.smartlink/readme.adoc index 34a15a79e64..71faf59935c 100644 --- a/io.openems.edge.meter.schneider.acti9.smartlink/readme.adoc +++ b/io.openems.edge.meter.schneider.acti9.smartlink/readme.adoc @@ -31,6 +31,7 @@ This bundle implements the following OpenEMS Component: *Description*: Three-phase electricity meter for energy measurement via Modbus protocol. .*Configuration*: + * `id` (String): Component ID for unique identification (default: "meter0") * `alias` (String): Human-readable alias for the component * `enabled` (Boolean): Enable/disable this component (default: true) diff --git a/io.openems.edge.meter.siemens/readme.adoc b/io.openems.edge.meter.siemens/readme.adoc index 6fbe0887f29..7ad31a3bc54 100644 --- a/io.openems.edge.meter.siemens/readme.adoc +++ b/io.openems.edge.meter.siemens/readme.adoc @@ -1,101 +1,104 @@ -= Siemens Energy Meters - -Integration with Siemens PAC series and SICAM energy meters via Modbus protocol. - -== Overview - -This bundle provides integration with Siemens energy meters, supporting multiple PAC models (PAC1600, PAC2200, PAC3200, PAC4200) and SICAM T7KG966 meters. The components communicate with meters through the Modbus TCP protocol, enabling real-time energy monitoring, power measurement, and comprehensive data collection in OpenEMS. - -Siemens meters are industrial-grade energy measurement devices designed for reliable energy accounting in commercial and industrial installations. - -== Supported Devices - -* https://www.siemens.com/[Siemens PAC1600 icon:external-link[]] -* https://www.siemens.com/[Siemens PAC2200 icon:external-link[]] -* https://www.siemens.com/[Siemens PAC3200 icon:external-link[]] -* https://www.siemens.com/[Siemens PAC4200 icon:external-link[]] -* https://www.siemens.com/[Siemens SICAM T7KG966 icon:external-link[]] - -== Components - -This bundle implements the following OpenEMS Components: - -=== <<_pac1600_meter,Siemens PAC1600 Meter>> - -*Name*: Meter Siemens PAC1600 - -*Factory-PID*: `Meter.Siemens.PAC1600` - -.Implemented Natures/Interfaces -* MeterSiemensPac1600 -* ElectricityMeter -* ModbusComponent -* OpenemsComponent -* ModbusSlave - -*Description*: Energy meter for energy measurement via Modbus protocol. - -.*Configuration*: -* `id` (String): Component ID for unique identification (default: "meter0") -* `alias` (String): Human-readable alias for the component -* `enabled` (Boolean): Enable/disable this component (default: true) -* `modbus_id` (String): ID of Modbus bridge for communication (default: "modbus0") -* `modbusUnitId` (Integer): Modbus Unit ID of the meter device (default: 1) -* `type` (Enum): Meter type - GRID, PRODUCTION, or CONSUMPTION (default: PRODUCTION) -* `invert` (Boolean): Invert power and current values (default: false) - -[[_pac1600_meter]] - -=== <<_pac2200_meter,Siemens PAC2200 Meter>> - -*Name*: Meter Siemens PAC2200 - -*Factory-PID*: `Meter.Siemens` - -.Implemented Natures/Interfaces -* MeterSiemensPac2200 -* ElectricityMeter -* ModbusComponent -* OpenemsComponent -* ModbusSlave - -*Description*: Energy meter for energy measurement via Modbus protocol. - -.*Configuration*: -* `id` (String): Component ID for unique identification (default: "meter0") -* `alias` (String): Human-readable alias for the component -* `enabled` (Boolean): Enable/disable this component (default: true) -* `modbus_id` (String): ID of Modbus bridge for communication (default: "modbus0") -* `modbusUnitId` (Integer): Modbus Unit ID of the meter device (default: 1) -* `type` (Enum): Meter type - GRID, PRODUCTION, or CONSUMPTION (default: PRODUCTION) -* `invert` (Boolean): Invert power and current values (default: false) - -[[_pac2200_meter]] - -=== <<_sicam_meter,Siemens SICAM T7KG966 Meter>> - -*Name*: Meter Siemens SICAM T7KG966 - -*Factory-PID*: `Meter.Siemens.SICAMT7KG966` - -.Implemented Natures/Interfaces -* MeterSiemensSicamt7kg966 -* ElectricityMeter -* ModbusComponent -* OpenemsComponent -* ModbusSlave - -*Description*: Industrial energy meter for energy measurement via Modbus protocol. - -.*Configuration*: -* `id` (String): Component ID for unique identification (default: "meter0") -* `alias` (String): Human-readable alias for the component -* `enabled` (Boolean): Enable/disable this component (default: true) -* `modbus_id` (String): ID of Modbus bridge for communication (default: "modbus0") -* `modbusUnitId` (Integer): Modbus Unit ID of the meter device (default: 1) -* `type` (Enum): Meter type - GRID, PRODUCTION, or CONSUMPTION (default: PRODUCTION) -* `invert` (Boolean): Invert power and current values (default: false) - -[[_sicam_meter]] - -https://github.com/OpenEMS/openems/tree/develop/io.openems.edge.meter.siemens[Source Code icon:github[]] += Siemens Energy Meters + +Integration with Siemens PAC series and SICAM energy meters via Modbus protocol. + +== Overview + +This bundle provides integration with Siemens energy meters, supporting multiple PAC models (PAC1600, PAC2200, PAC3200, PAC4200) and SICAM T7KG966 meters. The components communicate with meters through the Modbus TCP protocol, enabling real-time energy monitoring, power measurement, and comprehensive data collection in OpenEMS. + +Siemens meters are industrial-grade energy measurement devices designed for reliable energy accounting in commercial and industrial installations. + +== Supported Devices + +* https://www.siemens.com/[Siemens PAC1600 icon:external-link[]] +* https://www.siemens.com/[Siemens PAC2200 icon:external-link[]] +* https://www.siemens.com/[Siemens PAC3200 icon:external-link[]] +* https://www.siemens.com/[Siemens PAC4200 icon:external-link[]] +* https://www.siemens.com/[Siemens SICAM T7KG966 icon:external-link[]] + +== Components + +This bundle implements the following OpenEMS Components: + +=== <<_pac1600_meter,Siemens PAC1600 Meter>> + +*Name*: Meter Siemens PAC1600 + +*Factory-PID*: `Meter.Siemens.PAC1600` + +.Implemented Natures/Interfaces +* MeterSiemensPac1600 +* ElectricityMeter +* ModbusComponent +* OpenemsComponent +* ModbusSlave + +*Description*: Energy meter for energy measurement via Modbus protocol. + +.*Configuration*: + +* `id` (String): Component ID for unique identification (default: "meter0") +* `alias` (String): Human-readable alias for the component +* `enabled` (Boolean): Enable/disable this component (default: true) +* `modbus_id` (String): ID of Modbus bridge for communication (default: "modbus0") +* `modbusUnitId` (Integer): Modbus Unit ID of the meter device (default: 1) +* `type` (Enum): Meter type - GRID, PRODUCTION, or CONSUMPTION (default: PRODUCTION) +* `invert` (Boolean): Invert power and current values (default: false) + +[[_pac1600_meter]] + +=== <<_pac2200_meter,Siemens PAC2200 Meter>> + +*Name*: Meter Siemens PAC2200 + +*Factory-PID*: `Meter.Siemens` + +.Implemented Natures/Interfaces +* MeterSiemensPac2200 +* ElectricityMeter +* ModbusComponent +* OpenemsComponent +* ModbusSlave + +*Description*: Energy meter for energy measurement via Modbus protocol. + +.*Configuration*: + +* `id` (String): Component ID for unique identification (default: "meter0") +* `alias` (String): Human-readable alias for the component +* `enabled` (Boolean): Enable/disable this component (default: true) +* `modbus_id` (String): ID of Modbus bridge for communication (default: "modbus0") +* `modbusUnitId` (Integer): Modbus Unit ID of the meter device (default: 1) +* `type` (Enum): Meter type - GRID, PRODUCTION, or CONSUMPTION (default: PRODUCTION) +* `invert` (Boolean): Invert power and current values (default: false) + +[[_pac2200_meter]] + +=== <<_sicam_meter,Siemens SICAM T7KG966 Meter>> + +*Name*: Meter Siemens SICAM T7KG966 + +*Factory-PID*: `Meter.Siemens.SICAMT7KG966` + +.Implemented Natures/Interfaces +* MeterSiemensSicamt7kg966 +* ElectricityMeter +* ModbusComponent +* OpenemsComponent +* ModbusSlave + +*Description*: Industrial energy meter for energy measurement via Modbus protocol. + +.*Configuration*: + +* `id` (String): Component ID for unique identification (default: "meter0") +* `alias` (String): Human-readable alias for the component +* `enabled` (Boolean): Enable/disable this component (default: true) +* `modbus_id` (String): ID of Modbus bridge for communication (default: "modbus0") +* `modbusUnitId` (Integer): Modbus Unit ID of the meter device (default: 1) +* `type` (Enum): Meter type - GRID, PRODUCTION, or CONSUMPTION (default: PRODUCTION) +* `invert` (Boolean): Invert power and current values (default: false) + +[[_sicam_meter]] + +https://github.com/OpenEMS/openems/tree/develop/io.openems.edge.meter.siemens[Source Code icon:github[]] diff --git a/io.openems.edge.meter.socomec/readme.adoc b/io.openems.edge.meter.socomec/readme.adoc index 69ff5689bf7..24c5b9df520 100644 --- a/io.openems.edge.meter.socomec/readme.adoc +++ b/io.openems.edge.meter.socomec/readme.adoc @@ -46,6 +46,7 @@ This bundle implements the following OpenEMS Components: *Description*: Single-phase Socomec meter. Actual meter type is identified automatically. .*Configuration*: + * `id` (String): Component ID for unique identification (default: "meter0") * `alias` (String): Human-readable alias for the component * `enabled` (Boolean): Enable/disable this component (default: true) @@ -74,6 +75,7 @@ This bundle implements the following OpenEMS Components: *Description*: Three-phase Socomec meter. Actual meter type is identified automatically. .*Configuration*: + * `id` (String): Component ID for unique identification (default: "meter0") * `alias` (String): Human-readable alias for the component * `enabled` (Boolean): Enable/disable this component (default: true) diff --git a/io.openems.edge.meter.virtual/readme.adoc b/io.openems.edge.meter.virtual/readme.adoc index 826d222a889..1a9fd2590a4 100644 --- a/io.openems.edge.meter.virtual/readme.adoc +++ b/io.openems.edge.meter.virtual/readme.adoc @@ -31,10 +31,12 @@ This bundle implements the following OpenEMS Components: *Description*: Virtual meter that subtracts multiple meters or energy storage systems from a minuend. Useful for calculating derived energy values through arithmetic subtraction. *Use Cases*: + * Calculate grid meter from consumption - production - battery: `Grid = Consumption - ESS - Production` * Calculate consumption from grid + production - battery: `Consumption = Grid + Production - ESS` .*Configuration*: + * `id` (String): Component ID for unique identification (default: "meter0") * `alias` (String): Human-readable alias for the component * `enabled` (Boolean): Enable/disable this component (default: true) @@ -61,11 +63,13 @@ This bundle implements the following OpenEMS Components: *Description*: Virtual meter that sums values from multiple meters. Useful for aggregating measurements from multiple systems into a single virtual meter for averaging and statistics. *Use Cases*: + * Combine production from multiple PV inverters * Aggregate consumption across multiple buildings or zones * Create average values from distributed meter readings .*Configuration*: + * `id` (String): Component ID for unique identification (default: "meter0") * `alias` (String): Human-readable alias for the component * `enabled` (Boolean): Enable/disable this component (default: true) diff --git a/io.openems.edge.meter.weidmueller/readme.adoc b/io.openems.edge.meter.weidmueller/readme.adoc index 6117d0beddc..593f9d3a49e 100644 --- a/io.openems.edge.meter.weidmueller/readme.adoc +++ b/io.openems.edge.meter.weidmueller/readme.adoc @@ -36,6 +36,7 @@ This bundle implements the following OpenEMS Components: *Description*: Modbus interface for the Weidmueller 525 three-phase energy meter. Reads active power, reactive power, apparent power, energy counters, voltages, currents and power factor on all three phases. .*Configuration*: + * `id` (String): Component ID for unique identification (default: "meter0") * `alias` (String): Human-readable alias for the component * `enabled` (Boolean): Enable/disable this component (default: true) diff --git a/io.openems.edge.meter.ziehl/readme.adoc b/io.openems.edge.meter.ziehl/readme.adoc index 1c273eb3ed9..ce9e316522c 100644 --- a/io.openems.edge.meter.ziehl/readme.adoc +++ b/io.openems.edge.meter.ziehl/readme.adoc @@ -36,6 +36,7 @@ This bundle implements the following OpenEMS Components: *Description*: Modbus interface for the Ziehl EFR4001IP three-phase energy meter. Reads active power, reactive power, apparent power, energy counters, voltages, currents and power factor on all three phases. .*Configuration*: + * `id` (String): Component ID for unique identification (default: "meter0") * `alias` (String): Human-readable alias for the component * `enabled` (Boolean): Enable/disable this component (default: true) diff --git a/io.openems.edge.onewire.thermometer/readme.adoc b/io.openems.edge.onewire.thermometer/readme.adoc index 5c83cc2d9be..07e47ea6c9e 100644 --- a/io.openems.edge.onewire.thermometer/readme.adoc +++ b/io.openems.edge.onewire.thermometer/readme.adoc @@ -34,6 +34,7 @@ This bundle implements the following OpenEMS Components: *Description*: Interface for OneWire digital thermometer sensors. Reads temperature value from a specific 1-Wire device address. Multiple instances can be configured to read from different sensors on the same 1-Wire bus. .*Configuration*: + * `id` (String): Component ID for unique identification (default: "temp0") * `alias` (String): Human-readable alias for the component * `enabled` (Boolean): Enable/disable this component (default: true) diff --git a/io.openems.edge.pvinverter.kostal/readme.adoc b/io.openems.edge.pvinverter.kostal/readme.adoc index 98a1e0368a7..398939200cb 100644 --- a/io.openems.edge.pvinverter.kostal/readme.adoc +++ b/io.openems.edge.pvinverter.kostal/readme.adoc @@ -111,6 +111,7 @@ The HTML parsing is based on finding table cells with `bgcolor="#FFFFFF"` attrib This component is compatible with KOSTAL PIKO inverters that provide a web interface with Basic Authentication (typically username: `pvserver`, password: `pvwr`). Tested with: + * KOSTAL PIKO 10.1 === Known Limitations diff --git a/io.openems.edge.simulator/readme.adoc b/io.openems.edge.simulator/readme.adoc index d8cd8bcdb0b..6a5adcd0cc5 100644 --- a/io.openems.edge.simulator/readme.adoc +++ b/io.openems.edge.simulator/readme.adoc @@ -159,6 +159,7 @@ It provides typical charge-point and metering channels, accepts a charging curre Simulates a charge-point with configurable parameters and channels for testing and development purposes. Key features include: + * Simulates vehicle connection status via `vehicleConnected` * Define min and max charging current (`ApplySetPoint`) in milliampere * Calculates per-phase active power from `voltage * current`