sidebar_position |
---|
2 |
import Tabs from "@theme/Tabs"; import TabItem from "@theme/TabItem"; import DeviceConfig from "/src/components/DeviceConfig"; import DeviceFeatures from "/src/components/DeviceFeatures"; import DeviceFeatureFilter from "/src/components/DeviceFeatureFilter"; import SponsorshipRequired from "/docs/_sponsorship_required.mdx";
The devices on this page can all be used as energy measuring points (meter
) for various purposes:
grid
: Grid supplypv
: Solar powerbattery
: House batterycharge
: Charging power at the wallboxaux
: Smart consumer with its own surplus regulationext
: Additional meter, e.g. for load management or data logging
The configuration is formatted as follows:
# Definition of all devices
meters:
- name: grid1
type: ...
- name: pv1
type: ...
- name: pv2
type: ...
- name: battery1
type: ...
# Mapping by purpose
site:
meters:
grid: grid1
pv:
- pv1
- pv2
battery:
- battery1
aux:
- ...
ext:
- ...
This page lists the configurations for all supported components that can be used as energy measuring points (meter
).
Once you have adapted the code samples to suit your meters in evcc.yaml
, you can test the connection using the evcc meter
command, which returns the current status of all connected meters.
The command evcc meter --name grid1
can be used to test a single meter by name.
$ ./evcc meter
grid1
-----
Power: -31W
Energy: 5195.5kWh
Current L1..L3: 3.05A 1.07A 1.15A
:::note Most components used in modern Solar / Battery installations, especially inverters and battery storage (but also some metering devices!) have support for the standardised SunSpec data model, which can be queried via Modbus TCP without requiring device-specific data registers. If your system isn't listed here, that might mean that it is 100% SunSpec-compatible, so try that as your first port of call. (You may need to enable network support on your device - check the manual) :::
- active battery control: Passive battery control is possible with all home batteries. The charging of the vehicle is dynamically adjusted depending on the charge level of the house battery. If the house battery supports active control, further optimizations can be made. Currently, a home battery discharge lock is implemented when fast charging a vehicle.
<DeviceConfig code={`meters: - name: my_grid type: template template: wattsonic usage: grid
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 247
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 247
host: 192.0.2.2 # Hostname
port: 502 # Port`} advanced={`meters:
- name: my_grid
type: template
template: wattsonic
usage: grid
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 247
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 247
host: 192.0.2.2 # Hostname
port: 502 # Port
delay: 100ms # optional`} />
<DeviceConfig code={`meters: - name: my_pv type: template template: wattsonic usage: pv
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 247
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 247
host: 192.0.2.2 # Hostname
port: 502 # Port`} advanced={`meters:
- name: my_pv
type: template
template: wattsonic
usage: pv
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 247
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 247
host: 192.0.2.2 # Hostname
port: 502 # Port
delay: 100ms # optional`} />
<DeviceConfig code={`meters: - name: my_battery type: template template: wattsonic usage: battery
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 247
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 247
host: 192.0.2.2 # Hostname
port: 502 # Port`} advanced={`meters:
- name: my_battery
type: template
template: wattsonic
usage: battery
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 247
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 247
host: 192.0.2.2 # Hostname
port: 502 # Port
capacity: 50 # Battery capacity in kWh (optional)
delay: 100ms # optional`} />
<DeviceConfig code={`meters: - name: my_grid type: template template: abb-ab usage: grid
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} />
<DeviceConfig code={`meters: - name: my_charger type: template template: abb-ab usage: charge
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} />
<DeviceConfig code={`meters: - name: my_grid type: template template: acrel-adw300 usage: grid
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 1200 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} />
<DeviceConfig code={`meters: - name: my_pv type: template template: acrel-adw300 usage: pv
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 1200 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} />
<DeviceConfig code={`meters: - name: my_charger type: template template: acrel-adw300 usage: charge
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 1200 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} />
<DeviceConfig code={`meters: - name: my_battery type: template template: storaxe usage: battery
# Modbus TCP
modbus: tcpip
id: 2
host: 192.0.2.2 # Hostname
port: 502 # Port`} advanced={`meters:
- name: my_battery
type: template
template: storaxe
usage: battery
# Modbus TCP
modbus: tcpip
id: 2
host: 192.0.2.2 # Hostname
port: 502 # Port
capacity: 50 # Battery capacity in kWh (optional)`} />
To use active battery control, times for grid charging must be defined once via the web interface or app. (Settings->Function settings->Grid charging/discharging) A continuous time period should be entered here (e.g.: Charging time 1 00:00-23:00, Charging time 2 23:00-00:00). However, deactivate the "Grid charging" switch. The actual control takes place via evcc. Discharge stop is realized via a scheduled grid charge with a target SoC of 10%. Alternatively, it can also be configured via Modbus. To do this, set the registers 2134,2142,2135,2136,2144,2137,2175
to the values 0,0,23,0,23,0,0,0,0
.
<DeviceConfig code={`meters: - name: my_grid type: template template: alpha-ess-smile usage: grid
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 85
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 85
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 85
host: 192.0.2.2 # Hostname
port: 502 # Port`} advanced={`meters:
- name: my_grid
type: template
template: alpha-ess-smile
usage: grid
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 85
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 85
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 85
host: 192.0.2.2 # Hostname
port: 502 # Port
minsoc: 20 # Lower limit when discharging the battery (normal operation) (optional)
maxsoc: 95 # Upper limit when charging the battery from the grid (optional)`} />
<DeviceConfig code={`meters: - name: my_pv type: template template: alpha-ess-smile usage: pv
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 85
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 85
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 85
host: 192.0.2.2 # Hostname
port: 502 # Port`} advanced={`meters:
- name: my_pv
type: template
template: alpha-ess-smile
usage: pv
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 85
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 85
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 85
host: 192.0.2.2 # Hostname
port: 502 # Port
minsoc: 20 # Lower limit when discharging the battery (normal operation) (optional)
maxsoc: 95 # Upper limit when charging the battery from the grid (optional)
maxacpower: 0 # Maximum AC power of the hybrid inverter in W (optional)`} />
<DeviceConfig code={`meters: - name: my_battery type: template template: alpha-ess-smile usage: battery
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 85
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 85
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 85
host: 192.0.2.2 # Hostname
port: 502 # Port`} advanced={`meters:
- name: my_battery
type: template
template: alpha-ess-smile
usage: battery
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 85
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 85
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 85
host: 192.0.2.2 # Hostname
port: 502 # Port
capacity: 50 # Battery capacity in kWh (optional)
minsoc: 20 # Lower limit when discharging the battery (normal operation) (optional)
maxsoc: 95 # Upper limit when charging the battery from the grid (optional)`} />
<DeviceConfig code={`meters: - name: my_grid type: template template: saj-h2 usage: grid
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 115200 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} advanced={`meters:
- name: my_grid
type: template
template: saj-h2
usage: grid
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 115200 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
minsoc: 20 # Lower limit when discharging the battery (normal operation) (optional)
maxsoc: 95 # Upper limit when charging the battery from the grid (optional)`} />
<DeviceConfig code={`meters: - name: my_pv type: template template: saj-h2 usage: pv
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 115200 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} advanced={`meters:
- name: my_pv
type: template
template: saj-h2
usage: pv
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 115200 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
minsoc: 20 # Lower limit when discharging the battery (normal operation) (optional)
maxsoc: 95 # Upper limit when charging the battery from the grid (optional)`} />
<DeviceConfig code={`meters: - name: my_battery type: template template: saj-h2 usage: battery
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 115200 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} advanced={`meters:
- name: my_battery
type: template
template: saj-h2
usage: battery
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 115200 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
capacity: 50 # Battery capacity in kWh (optional)
defaultmode: 2 # Default mode for battery control to which the inverter falls back after charging the battery or after stopping discharge. (optional)
minsoc: 20 # Lower limit when discharging the battery (normal operation) (optional)
maxsoc: 95 # Upper limit when charging the battery from the grid (optional)`} />
<DeviceConfig code={`meters: - name: my_pv type: template template: deye-mi usage: pv
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} />
<DeviceConfig code={meters: - name: my_pv type: template template: apsystems-ez1 usage: pv host: 192.0.2.2 # IP address or hostname
} />
<DeviceConfig code={`meters: - name: my_grid type: template template: solis-hybrid-s usage: grid
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} />
<DeviceConfig code={`meters: - name: my_pv type: template template: solis-hybrid-s usage: pv
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} advanced={`meters:
- name: my_pv
type: template
template: solis-hybrid-s
usage: pv
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
maxacpower: 0 # Maximum AC power of the hybrid inverter in W (optional)`} />
<DeviceConfig code={`meters: - name: my_battery type: template template: solis-hybrid-s usage: battery
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} advanced={`meters:
- name: my_battery
type: template
template: solis-hybrid-s
usage: battery
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
capacity: 50 # Battery capacity in kWh (optional)`} />
<DeviceConfig code={`meters: - name: my_grid type: template template: mpm3pm usage: grid
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} />
<DeviceConfig code={`meters: - name: my_charger type: template template: mpm3pm usage: charge
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} />
<DeviceConfig code={`meters: - name: my_grid type: template template: bge_tech_ds100 usage: grid
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 1200 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} />
<DeviceConfig code={`meters: - name: my_pv type: template template: bge_tech_ds100 usage: pv
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 1200 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} />
<DeviceConfig code={`meters: - name: my_charger type: template template: bge_tech_ds100 usage: charge
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 1200 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} />
<DeviceConfig code={`meters: - name: my_aux type: template template: bge_tech_ds100 usage: aux
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 1200 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} />
<DeviceConfig code={`meters: - name: my_grid type: template template: bge_tech_ws100 usage: grid
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 1200 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} />
<DeviceConfig code={`meters: - name: my_pv type: template template: bge_tech_ws100 usage: pv
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 1200 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} />
<DeviceConfig code={`meters: - name: my_charger type: template template: bge_tech_ws100 usage: charge
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 1200 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} />
<DeviceConfig code={`meters: - name: my_aux type: template template: bge_tech_ws100 usage: aux
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 1200 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} />
<DeviceConfig code={`meters: - name: my_pv type: template template: deye-mi usage: pv
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} />
<DeviceConfig code={`meters: - name: my_pv type: template template: cg-emt1xx usage: pv
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} />
<DeviceConfig code={`meters: - name: my_charger type: template template: cg-emt1xx usage: charge
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} />
<DeviceConfig code={`meters: - name: my_grid type: template template: cg-em24 usage: grid
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} />
<DeviceConfig code={`meters: - name: my_charger type: template template: cg-em24 usage: charge
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} />
<DeviceConfig code={`meters: - name: my_grid type: template template: cg-emt3xx usage: grid
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} />
<DeviceConfig code={`meters: - name: my_charger type: template template: cg-emt3xx usage: charge
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} />
<DeviceConfig code={`meters: - name: my_grid type: template template: cg-emt3xx usage: grid
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} />
<DeviceConfig code={`meters: - name: my_charger type: template template: cg-emt3xx usage: charge
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} />
<DeviceConfig code={`meters: - name: my_pv type: template template: cg-emt1xx usage: pv
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} />
<DeviceConfig code={`meters: - name: my_charger type: template template: cg-emt1xx usage: charge
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} />
<DeviceConfig code={`meters: - name: my_grid type: template template: cg-emt3xx usage: grid
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} />
<DeviceConfig code={`meters: - name: my_charger type: template template: cg-emt3xx usage: charge
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} />
<DeviceConfig code={`meters: - name: my_charger type: template template: cfos usage: charge
# Modbus TCP
modbus: tcpip
id: 2
host: 192.0.2.2 # Hostname
port: 4702 # Port`} />
<DeviceConfig code={`meters: - name: my_grid type: template template: deye-hybrid-3p usage: grid
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} advanced={`meters:
- name: my_grid
type: template
template: deye-hybrid-3p
usage: grid
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
minsoc: 20 # Lower limit when discharging the battery (normal operation) (optional)
maxsoc: 95 # Upper limit when charging the battery from the grid (optional)`} />
<DeviceConfig code={`meters: - name: my_pv type: template template: deye-hybrid-3p usage: pv
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} advanced={`meters:
- name: my_pv
type: template
template: deye-hybrid-3p
usage: pv
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
minsoc: 20 # Lower limit when discharging the battery (normal operation) (optional)
maxsoc: 95 # Upper limit when charging the battery from the grid (optional)
maxacpower: 0 # Maximum AC power of the hybrid inverter in W (optional)`} />
<DeviceConfig code={`meters: - name: my_battery type: template template: deye-hybrid-3p usage: battery
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} advanced={`meters:
- name: my_battery
type: template
template: deye-hybrid-3p
usage: battery
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
capacity: 50 # Battery capacity in kWh (optional)
minsoc: 20 # Lower limit when discharging the battery (normal operation) (optional)
maxsoc: 95 # Upper limit when charging the battery from the grid (optional)`} />
<DeviceConfig code={`meters: - name: my_grid type: template template: deye-hybrid-hp3 usage: grid
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} advanced={`meters:
- name: my_grid
type: template
template: deye-hybrid-hp3
usage: grid
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
storageunit: 1 # optional
minsoc: 20 # Lower limit when discharging the battery (normal operation) (optional)
maxsoc: 95 # Upper limit when charging the battery from the grid (optional)`} />
<DeviceConfig code={`meters: - name: my_pv type: template template: deye-hybrid-hp3 usage: pv
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} advanced={`meters:
- name: my_pv
type: template
template: deye-hybrid-hp3
usage: pv
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
storageunit: 1 # optional
minsoc: 20 # Lower limit when discharging the battery (normal operation) (optional)
maxsoc: 95 # Upper limit when charging the battery from the grid (optional)
maxacpower: 0 # Maximum AC power of the hybrid inverter in W (optional)`} />
<DeviceConfig code={`meters: - name: my_battery type: template template: deye-hybrid-hp3 usage: battery
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} advanced={`meters:
- name: my_battery
type: template
template: deye-hybrid-hp3
usage: battery
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
storageunit: 1 # optional
capacity: 50 # Battery capacity in kWh (optional)
minsoc: 20 # Lower limit when discharging the battery (normal operation) (optional)
maxsoc: 95 # Upper limit when charging the battery from the grid (optional)`} />
<DeviceConfig code={`meters: - name: my_pv type: template template: deye-mi usage: pv
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} />
<DeviceConfig code={`meters: - name: my_pv type: template template: deye-storage usage: pv
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} />
<DeviceConfig code={`meters: - name: my_battery type: template template: deye-storage usage: battery
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} advanced={`meters:
- name: my_battery
type: template
template: deye-storage
usage: battery
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
capacity: 50 # Battery capacity in kWh (optional)`} />
<DeviceConfig code={`meters: - name: my_grid type: template template: deye-storage usage: grid
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} />
<DeviceConfig code={`meters: - name: my_pv type: template template: deye-string usage: pv
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} />
<DeviceConfig code={meters: - name: my_grid type: template template: discovergy usage: grid user: # User account (e.g. email address, user id, etc.) password: # Password of the user account (use single quotes in case of leading zeros) meter: 1ESY1161229886
} />
<DeviceConfig code={meters: - name: my_pv type: template template: discovergy usage: pv user: # User account (e.g. email address, user id, etc.) password: # Password of the user account (use single quotes in case of leading zeros) meter: 1ESY1161229886
} />
<DeviceConfig code={meters: - name: my_grid type: template template: dsmr usage: grid host: 192.0.2.2 # IP address or hostname port: 1502 # Port (optional)
} advanced={meters: - name: my_grid type: template template: dsmr usage: grid host: 192.0.2.2 # IP address or hostname port: 1502 # Port (optional) energy: # Typically 1-0:1.8.0 or 1-0:1.8.1/1-0:1.8.2 with multiple tariffs (optional)
} />
<DeviceConfig code={`meters: - name: my_charger type: template template: dzg usage: charge
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} />
Username and password are identical to Web Portal or My E3/DC App access. Key (=RSCP-Password) must be set in the E3/DC system at Personalize/User Profile. The IP adresses of evcc and E3/DC system must be in the same subnet.
Note: Active battery control will override Smart-Power/Operating Range settings.
<DeviceConfig code={meters: - name: my_grid type: template template: e3dc-rscp usage: grid host: 192.0.2.2 # IP address or hostname port: 5033 # Port (optional) user: # User account (e.g. email address, user id, etc.) password: # Password of the user account (use single quotes in case of leading zeros) key:
} advanced={meters: - name: my_grid type: template template: e3dc-rscp usage: grid host: 192.0.2.2 # IP address or hostname port: 5033 # Port (optional) user: # User account (e.g. email address, user id, etc.) password: # Password of the user account (use single quotes in case of leading zeros) key: dischargelimit: # Limits discharge power in 'Hold' battery mode (optional)
} />
<DeviceConfig code={meters: - name: my_pv type: template template: e3dc-rscp usage: pv host: 192.0.2.2 # IP address or hostname port: 5033 # Port (optional) user: # User account (e.g. email address, user id, etc.) password: # Password of the user account (use single quotes in case of leading zeros) key:
} advanced={meters: - name: my_pv type: template template: e3dc-rscp usage: pv host: 192.0.2.2 # IP address or hostname port: 5033 # Port (optional) user: # User account (e.g. email address, user id, etc.) password: # Password of the user account (use single quotes in case of leading zeros) key: dischargelimit: # Limits discharge power in 'Hold' battery mode (optional)
} />
<DeviceConfig code={meters: - name: my_battery type: template template: e3dc-rscp usage: battery host: 192.0.2.2 # IP address or hostname port: 5033 # Port (optional) user: # User account (e.g. email address, user id, etc.) password: # Password of the user account (use single quotes in case of leading zeros) key:
} advanced={meters: - name: my_battery type: template template: e3dc-rscp usage: battery host: 192.0.2.2 # IP address or hostname port: 5033 # Port (optional) user: # User account (e.g. email address, user id, etc.) password: # Password of the user account (use single quotes in case of leading zeros) key: dischargelimit: # Limits discharge power in 'Hold' battery mode (optional) capacity: 50 # Battery capacity in kWh (optional)
} />
<DeviceConfig code={`meters: - name: my_grid type: template template: eastron-sdm120 usage: grid
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} />
<DeviceConfig code={`meters: - name: my_charger type: template template: eastron-sdm120 usage: charge
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} />
<DeviceConfig code={`meters: - name: my_pv type: template template: eastron-sdm120 usage: pv
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} />
<DeviceConfig code={`meters: - name: my_grid type: template template: eastron-sdm220_230 usage: grid
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} />
<DeviceConfig code={`meters: - name: my_charger type: template template: eastron-sdm220_230 usage: charge
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} />
<DeviceConfig code={`meters: - name: my_grid type: template template: eastron usage: grid
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} />
<DeviceConfig code={`meters: - name: my_charger type: template template: eastron usage: charge
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} />
<DeviceConfig code={`meters: - name: my_grid type: template template: eastron-sdm72 usage: grid
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} />
<DeviceConfig code={`meters: - name: my_charger type: template template: eastron-sdm72 usage: charge
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} />
<DeviceConfig code={`meters: - name: my_grid type: template template: eastron usage: grid
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} />
<DeviceConfig code={`meters: - name: my_charger type: template template: eastron usage: charge
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} />
Only batteries of type "AC Battery" are currently supported by Enphase-API.
<DeviceConfig code={meters: - name: my_grid type: template template: enphase usage: grid host: 192.0.2.2 # IP address or hostname token: # Required if Envoy Firmware D7.x.xxx. Token is valid for one year. Instructions for obtaining a token via web UI: https://enphase.com/download/accessing-iq-gateway-local-apis-or-local-ui-token-based-authentication (optional)
} advanced={meters: - name: my_grid type: template template: enphase usage: grid host: 192.0.2.2 # IP address or hostname token: # Required if Envoy Firmware D7.x.xxx. Token is valid for one year. Instructions for obtaining a token via web UI: https://enphase.com/download/accessing-iq-gateway-local-apis-or-local-ui-token-based-authentication (optional) cache: 1s # Time interval with when data should be reloaded from the vehicle (optional)
} />
<DeviceConfig code={meters: - name: my_pv type: template template: enphase usage: pv host: 192.0.2.2 # IP address or hostname token: # Required if Envoy Firmware D7.x.xxx. Token is valid for one year. Instructions for obtaining a token via web UI: https://enphase.com/download/accessing-iq-gateway-local-apis-or-local-ui-token-based-authentication (optional)
} advanced={meters: - name: my_pv type: template template: enphase usage: pv host: 192.0.2.2 # IP address or hostname token: # Required if Envoy Firmware D7.x.xxx. Token is valid for one year. Instructions for obtaining a token via web UI: https://enphase.com/download/accessing-iq-gateway-local-apis-or-local-ui-token-based-authentication (optional) cache: 1s # Time interval with when data should be reloaded from the vehicle (optional)
} />
<DeviceConfig code={meters: - name: my_battery type: template template: enphase usage: battery host: 192.0.2.2 # IP address or hostname token: # Required if Envoy Firmware D7.x.xxx. Token is valid for one year. Instructions for obtaining a token via web UI: https://enphase.com/download/accessing-iq-gateway-local-apis-or-local-ui-token-based-authentication (optional)
} advanced={meters: - name: my_battery type: template template: enphase usage: battery host: 192.0.2.2 # IP address or hostname token: # Required if Envoy Firmware D7.x.xxx. Token is valid for one year. Instructions for obtaining a token via web UI: https://enphase.com/download/accessing-iq-gateway-local-apis-or-local-ui-token-based-authentication (optional) capacity: 50 # Battery capacity in kWh (optional) cache: 1s # Time interval with when data should be reloaded from the vehicle (optional)
} />
<DeviceConfig code={meters: - name: my_grid type: template template: slimmelezer usage: grid host: 192.0.2.2 # IP address or hostname
} advanced={meters: - name: my_grid type: template template: slimmelezer usage: grid host: 192.0.2.2 # IP address or hostname scale: 1000 # Use scale of 1000 for Zuidwijk Slimmelezer. Use scale 1 for ESPHome DSMR and mhendriks P1 Dongle
} />
<DeviceConfig code={meters: - name: my_grid type: template template: openems usage: grid host: 192.0.2.2 # IP address or hostname
} advanced={meters: - name: my_grid type: template template: openems usage: grid host: 192.0.2.2 # IP address or hostname password: user # Password of the user account (use single quotes in case of leading zeros) (optional)
} />
<DeviceConfig code={meters: - name: my_pv type: template template: openems usage: pv host: 192.0.2.2 # IP address or hostname
} advanced={meters: - name: my_pv type: template template: openems usage: pv host: 192.0.2.2 # IP address or hostname password: user # Password of the user account (use single quotes in case of leading zeros) (optional) maxacpower: 0 # Maximum AC power of the hybrid inverter in W (optional)
} />
<DeviceConfig code={meters: - name: my_battery type: template template: openems usage: battery host: 192.0.2.2 # IP address or hostname
} advanced={meters: - name: my_battery type: template template: openems usage: battery host: 192.0.2.2 # IP address or hostname password: user # Password of the user account (use single quotes in case of leading zeros) (optional) capacity: 50 # Battery capacity in kWh (optional)
} />
<DeviceConfig code={`meters: - name: my_pv type: template template: fox-ess-h1 usage: pv
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 247
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 247
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 247
host: 192.0.2.2 # Hostname
port: 502 # Port`} />
<DeviceConfig code={`meters: - name: my_battery type: template template: fox-ess-h1 usage: battery
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 247
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 247
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 247
host: 192.0.2.2 # Hostname
port: 502 # Port`} />
<DeviceConfig code={`meters: - name: my_grid type: template template: fox-ess-h3 usage: grid
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 247
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 247
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 247
host: 192.0.2.2 # Hostname
port: 502 # Port`} advanced={`meters:
- name: my_grid
type: template
template: fox-ess-h3
usage: grid
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 247
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 247
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 247
host: 192.0.2.2 # Hostname
port: 502 # Port
minsoc: 25 # Lower limit when discharging the battery (normal operation) (optional)
maxsoc: 95 # Upper limit when charging the battery from the grid (optional)`} />
<DeviceConfig code={`meters: - name: my_pv type: template template: fox-ess-h3 usage: pv
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 247
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 247
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 247
host: 192.0.2.2 # Hostname
port: 502 # Port`} advanced={`meters:
- name: my_pv
type: template
template: fox-ess-h3
usage: pv
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 247
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 247
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 247
host: 192.0.2.2 # Hostname
port: 502 # Port
minsoc: 25 # Lower limit when discharging the battery (normal operation) (optional)
maxsoc: 95 # Upper limit when charging the battery from the grid (optional)
maxacpower: 0 # Maximum AC power of the hybrid inverter in W (optional)`} />
<DeviceConfig code={`meters: - name: my_battery type: template template: fox-ess-h3 usage: battery
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 247
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 247
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 247
host: 192.0.2.2 # Hostname
port: 502 # Port`} advanced={`meters:
- name: my_battery
type: template
template: fox-ess-h3
usage: battery
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 247
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 247
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 247
host: 192.0.2.2 # Hostname
port: 502 # Port
capacity: 50 # Battery capacity in kWh (optional)
minsoc: 25 # Lower limit when discharging the battery (normal operation) (optional)
maxsoc: 95 # Upper limit when charging the battery from the grid (optional)`} />
<DeviceConfig code={meters: - name: my_aux type: template template: fronius-ohmpilot usage: aux host: 192.0.2.2 # IP address or hostname
} advanced={meters: - name: my_aux type: template template: fronius-ohmpilot usage: aux host: 192.0.2.2 # IP address or hostname key: 0 # optional
} />
<DeviceConfig code={meters: - name: my_grid type: template template: fronius-gen24 usage: grid host: 192.0.2.2 # IP address or hostname port: 502 # Port (optional)
} advanced={meters: - name: my_grid type: template template: fronius-gen24 usage: grid host: 192.0.2.2 # IP address or hostname port: 502 # Port (optional) id: 200 # Meter address of primary or secondary meters. On the web interface of the inverter, only the address of the first meter (e.g., 200) can be set. Additional meters receive an ascending number (e.g., 201). (optional)
} />
<DeviceConfig code={meters: - name: my_pv type: template template: fronius-gen24 usage: pv host: 192.0.2.2 # IP address or hostname port: 502 # Port (optional)
} advanced={meters: - name: my_pv type: template template: fronius-gen24 usage: pv host: 192.0.2.2 # IP address or hostname port: 502 # Port (optional) maxacpower: 0 # Maximum AC power of the hybrid inverter in W (optional)
} />
<DeviceConfig code={meters: - name: my_battery type: template template: fronius-gen24 usage: battery host: 192.0.2.2 # IP address or hostname port: 502 # Port (optional)
} advanced={meters: - name: my_battery type: template template: fronius-gen24 usage: battery host: 192.0.2.2 # IP address or hostname port: 502 # Port (optional) maxchargerate: 100 # Power limit for grid charging. (optional) capacity: 50 # Battery capacity in kWh (optional)
} />
Solar API should only be used as fallback. Integration via Modbus is preferred.
Username and password are only required for active battery control.
Attention: Active battery control should only be used if no other settings for time-dependent battery control were made in the inverter configuration under "Energy Management" - "Battery Management", as existing settings will be overwritten.
<DeviceConfig code={meters: - name: my_grid type: template template: fronius-solarapi-v1 usage: grid host: 192.0.2.2 # IP address or hostname user: customer # User account (e.g. email address, user id, etc.) (optional) password: # Password of the user account (use single quotes in case of leading zeros) (optional)
} />
<DeviceConfig code={meters: - name: my_pv type: template template: fronius-solarapi-v1 usage: pv host: 192.0.2.2 # IP address or hostname user: customer # User account (e.g. email address, user id, etc.) (optional) password: # Password of the user account (use single quotes in case of leading zeros) (optional)
} />
<DeviceConfig code={meters: - name: my_battery type: template template: fronius-solarapi-v1 usage: battery host: 192.0.2.2 # IP address or hostname user: customer # User account (e.g. email address, user id, etc.) (optional) password: # Password of the user account (use single quotes in case of leading zeros) (optional)
} advanced={meters: - name: my_battery type: template template: fronius-solarapi-v1 usage: battery host: 192.0.2.2 # IP address or hostname user: customer # User account (e.g. email address, user id, etc.) (optional) password: # Password of the user account (use single quotes in case of leading zeros) (optional) capacity: 50 # Battery capacity in kWh (optional)
} />
<DeviceConfig code={meters: - name: my_grid type: template template: fronius-gen24 usage: grid host: 192.0.2.2 # IP address or hostname port: 502 # Port (optional)
} advanced={meters: - name: my_grid type: template template: fronius-gen24 usage: grid host: 192.0.2.2 # IP address or hostname port: 502 # Port (optional) id: 200 # Meter address of primary or secondary meters. On the web interface of the inverter, only the address of the first meter (e.g., 200) can be set. Additional meters receive an ascending number (e.g., 201). (optional)
} />
<DeviceConfig code={meters: - name: my_pv type: template template: fronius-gen24 usage: pv host: 192.0.2.2 # IP address or hostname port: 502 # Port (optional)
} advanced={meters: - name: my_pv type: template template: fronius-gen24 usage: pv host: 192.0.2.2 # IP address or hostname port: 502 # Port (optional) maxacpower: 0 # Maximum AC power of the hybrid inverter in W (optional)
} />
<DeviceConfig code={meters: - name: my_battery type: template template: fronius-gen24 usage: battery host: 192.0.2.2 # IP address or hostname port: 502 # Port (optional)
} advanced={meters: - name: my_battery type: template template: fronius-gen24 usage: battery host: 192.0.2.2 # IP address or hostname port: 502 # Port (optional) maxchargerate: 100 # Power limit for grid charging. (optional) capacity: 50 # Battery capacity in kWh (optional)
} />
<DeviceConfig code={`meters: - name: my_grid type: template template: solis-hybrid usage: grid
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} />
<DeviceConfig code={`meters: - name: my_pv type: template template: solis-hybrid usage: pv
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} advanced={`meters:
- name: my_pv
type: template
template: solis-hybrid
usage: pv
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
maxacpower: 0 # Maximum AC power of the hybrid inverter in W (optional)`} />
<DeviceConfig code={`meters: - name: my_battery type: template template: solis-hybrid usage: battery
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} advanced={`meters:
- name: my_battery
type: template
template: solis-hybrid
usage: battery
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
capacity: 50 # Battery capacity in kWh (optional)`} />
<DeviceConfig code={`meters: - name: my_grid type: template template: solis-hybrid-s usage: grid
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} />
<DeviceConfig code={`meters: - name: my_pv type: template template: solis-hybrid-s usage: pv
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} advanced={`meters:
- name: my_pv
type: template
template: solis-hybrid-s
usage: pv
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
maxacpower: 0 # Maximum AC power of the hybrid inverter in W (optional)`} />
<DeviceConfig code={`meters: - name: my_battery type: template template: solis-hybrid-s usage: battery
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} advanced={`meters:
- name: my_battery
type: template
template: solis-hybrid-s
usage: battery
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
capacity: 50 # Battery capacity in kWh (optional)`} />
<DeviceConfig code={`meters: - name: my_grid type: template template: solis usage: grid
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} />
<DeviceConfig code={`meters: - name: my_pv type: template template: solis usage: pv
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} />
<DeviceConfig code={meters: - name: my_grid type: template template: go-e-controller usage: grid host: 192.0.2.2 # IP address or hostname
} />
<DeviceConfig code={meters: - name: my_pv type: template template: go-e-controller usage: pv host: 192.0.2.2 # IP address or hostname
} />
<DeviceConfig code={`meters: - name: my_grid type: template template: goodwe-hybrid usage: grid
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 247
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 247
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 247
host: 192.0.2.2 # Hostname
port: 502 # Port
battery: 1 # optional`} />
<DeviceConfig code={`meters: - name: my_pv type: template template: goodwe-hybrid usage: pv
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 247
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 247
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 247
host: 192.0.2.2 # Hostname
port: 502 # Port
battery: 1 # optional`} advanced={`meters:
- name: my_pv
type: template
template: goodwe-hybrid
usage: pv
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 247
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 247
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 247
host: 192.0.2.2 # Hostname
port: 502 # Port
battery: 1 # optional
maxacpower: 0 # Maximum AC power of the hybrid inverter in W (optional)`} />
<DeviceConfig code={`meters: - name: my_battery type: template template: goodwe-hybrid usage: battery
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 247
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 247
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 247
host: 192.0.2.2 # Hostname
port: 502 # Port
battery: 1 # optional`} advanced={`meters:
- name: my_battery
type: template
template: goodwe-hybrid
usage: battery
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 247
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 247
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 247
host: 192.0.2.2 # Hostname
port: 502 # Port
battery: 1 # optional
capacity: 50 # Battery capacity in kWh (optional)`} />
<DeviceConfig code={meters: - name: my_grid type: template template: goodwe-wifi usage: grid uri: # HTTP(S) address (optional)
} />
<DeviceConfig code={meters: - name: my_pv type: template template: goodwe-wifi usage: pv uri: # HTTP(S) address (optional)
} />
<DeviceConfig code={meters: - name: my_battery type: template template: goodwe-wifi usage: battery uri: # HTTP(S) address (optional)
} />
<DeviceConfig code={`meters: - name: my_pv type: template template: goodwe-dt usage: pv
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 247
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 247
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 247
host: 192.0.2.2 # Hostname
port: 502 # Port`} />
To use the active battery control, a one-time manual setup is necessary.
The modbus registers 1100, 1101, 1102
need to be set to the values 0, 5947, 0
at the same time (via "write multiple", FC 16).
This can be done by e.g. using the Modbus CLI: modbus [...] H@1100=0 H@1101=5947 H@1102=0
.
The active battery control uses the first "Battery first" timeslot, so it cannot be used otherwise.
<DeviceConfig code={`meters: - name: my_grid type: template template: growatt-hybrid usage: grid
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} />
<DeviceConfig code={`meters: - name: my_pv type: template template: growatt-hybrid usage: pv
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} advanced={`meters:
- name: my_pv
type: template
template: growatt-hybrid
usage: pv
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
maxacpower: 0 # Maximum AC power of the hybrid inverter in W (optional)`} />
<DeviceConfig code={`meters: - name: my_battery type: template template: growatt-hybrid usage: battery
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} advanced={`meters:
- name: my_battery
type: template
template: growatt-hybrid
usage: battery
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
capacity: 50 # Battery capacity in kWh (optional)`} />
<DeviceConfig code={`meters: - name: my_grid type: template template: growatt-hybrid-tlxh usage: grid
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} />
<DeviceConfig code={`meters: - name: my_pv type: template template: growatt-hybrid-tlxh usage: pv
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} advanced={`meters:
- name: my_pv
type: template
template: growatt-hybrid-tlxh
usage: pv
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
maxacpower: 0 # Maximum AC power of the hybrid inverter in W (optional)`} />
<DeviceConfig code={`meters: - name: my_battery type: template template: growatt-hybrid-tlxh usage: battery
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} advanced={`meters:
- name: my_battery
type: template
template: growatt-hybrid-tlxh
usage: battery
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
capacity: 50 # Battery capacity in kWh (optional)`} />
<DeviceConfig code={meters: - name: my_pv type: template template: homewizard-kwh usage: pv host: 192.0.2.2 # IP address or hostname
} />
<DeviceConfig code={meters: - name: my_grid type: template template: homewizard usage: grid host: 192.0.2.2 # IP address or hostname
} />
<DeviceConfig code={meters: - name: my_pv type: template template: hoymiles-ahoydtu usage: pv host: 192.0.2.2 # IP address or hostname id: 0 # optional
} />
<DeviceConfig code={meters: - name: my_pv type: template template: hoymiles-opendtu usage: pv host: 192.0.2.2 # IP address or hostname
} />
<DeviceConfig code={`meters: - name: my_grid type: template template: huawei-emma usage: grid
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} />
<DeviceConfig code={`meters: - name: my_pv type: template template: huawei-emma usage: pv
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} />
<DeviceConfig code={`meters: - name: my_battery type: template template: huawei-emma usage: battery
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} advanced={`meters:
- name: my_battery
type: template
template: huawei-emma
usage: battery
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
capacity: 50 # Battery capacity in kWh (optional)`} />
<DeviceConfig code={`meters: - name: my_grid type: template template: huawei-smartlogger usage: grid
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
timeout: 15s # optional`} advanced={`meters:
- name: my_grid
type: template
template: huawei-smartlogger
usage: grid
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
timeout: 15s # optional
storageunit: 1 # optional`} />
<DeviceConfig code={`meters: - name: my_pv type: template template: huawei-smartlogger usage: pv
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
timeout: 15s # optional`} advanced={`meters:
- name: my_pv
type: template
template: huawei-smartlogger
usage: pv
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
timeout: 15s # optional
storageunit: 1 # optional
maxacpower: 0 # Maximum AC power of the hybrid inverter in W (optional)`} />
<DeviceConfig code={`meters: - name: my_battery type: template template: huawei-smartlogger usage: battery
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
timeout: 15s # optional`} advanced={`meters:
- name: my_battery
type: template
template: huawei-smartlogger
usage: battery
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
timeout: 15s # optional
storageunit: 1 # optional
capacity: 50 # Battery capacity in kWh (optional)`} />
Grid and Battery require the PowerSensor. Modbus/TCP requires activation using "maintenance access" within the communication settings of the inverter. See https://forum.huawei.com/enterprise/en/modbus-tcp-guide/thread/667250677153415168-667213868771979264
<DeviceConfig code={`meters: - name: my_grid type: template template: huawei-sun2000 usage: grid
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
timeout: 15s # optional`} advanced={`meters:
- name: my_grid
type: template
template: huawei-sun2000
usage: grid
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
timeout: 15s # optional
storageunit: 1 # optional`} />
<DeviceConfig code={`meters: - name: my_pv type: template template: huawei-sun2000 usage: pv
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
timeout: 15s # optional`} advanced={`meters:
- name: my_pv
type: template
template: huawei-sun2000
usage: pv
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
timeout: 15s # optional
storageunit: 1 # optional
maxacpower: 0 # Maximum AC power of the hybrid inverter in W (optional)`} />
<DeviceConfig code={`meters: - name: my_battery type: template template: huawei-sun2000 usage: battery
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
timeout: 15s # optional`} advanced={`meters:
- name: my_battery
type: template
template: huawei-sun2000
usage: battery
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
timeout: 15s # optional
storageunit: 1 # optional
maxchargepower: 10000 # Power limit for grid charging. (optional)
capacity: 50 # Battery capacity in kWh (optional)
forceaccharging: false # Keep AC charging active to charge the storage from other inverters via AC. Prevents stand-by. (optional)`} />
Needs "Modbus/TCP". Activation using "maintenance access" within the communication settings of the inverter. See https://forum.huawei.com/enterprise/en/modbus-tcp-guide/thread/667250677153415168-667213868771979264
<DeviceConfig code={`meters: - name: my_pv type: template template: huawei-dongle usage: pv
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
timeout: 15s # optional`} />
3-phase meters (WEM3080T/WEM3046T/WEM3050T) require Net Metering Mode (NEM) to be enabled. See https://www.iammeter.com/newsshow/net-energy-metering
<DeviceConfig code={meters: - name: my_grid type: template template: iammeter usage: grid host: 192.0.2.2 # IP address or hostname
} />
<DeviceConfig code={meters: - name: my_pv type: template template: iammeter usage: pv host: 192.0.2.2 # IP address or hostname
} />
<DeviceConfig code={meters: - name: my_charger type: template template: iammeter usage: charge host: 192.0.2.2 # IP address or hostname
} />
3-phase meters (WEM3080T/WEM3046T/WEM3050T) require Net Metering Mode (NEM) to be enabled. See https://www.iammeter.com/newsshow/net-energy-metering
<DeviceConfig code={meters: - name: my_grid type: template template: iammeter usage: grid host: 192.0.2.2 # IP address or hostname
} />
<DeviceConfig code={meters: - name: my_pv type: template template: iammeter usage: pv host: 192.0.2.2 # IP address or hostname
} />
<DeviceConfig code={meters: - name: my_charger type: template template: iammeter usage: charge host: 192.0.2.2 # IP address or hostname
} />
<DeviceConfig code={meters: - name: my_pv type: template template: solarman usage: pv host: 192.0.2.2 # IP address or hostname user: admin # User account (e.g. email address, user id, etc.) (optional) password: admin # Password of the user account (use single quotes in case of leading zeros) (optional)
} />
<DeviceConfig code={`meters: - name: my_grid type: template template: inepro usage: grid
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} />
<DeviceConfig code={`meters: - name: my_charger type: template template: inepro usage: charge
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} />
<DeviceConfig code={`meters: - name: my_grid type: template template: janitza usage: grid
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} />
<DeviceConfig code={`meters: - name: my_charger type: template template: janitza usage: charge
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} />
<DeviceConfig code={`meters: - name: my_grid type: template template: keba-kecontact usage: grid
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} />
<DeviceConfig code={`meters: - name: my_grid type: template template: cg-emt3xx usage: grid
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} />
<DeviceConfig code={`meters: - name: my_charger type: template template: cg-emt3xx usage: charge
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} />
<DeviceConfig code={`meters: - name: my_grid type: template template: eastron usage: grid
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} />
<DeviceConfig code={`meters: - name: my_charger type: template template: eastron usage: charge
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} />
<DeviceConfig code={meters: - name: my_pv type: template template: kostal-piko-legacy usage: pv host: 192.0.2.2 # IP address or hostname user: # User account (e.g. email address, user id, etc.) password: # Password of the user account (use single quotes in case of leading zeros)
} />
<DeviceConfig code={meters: - name: my_grid type: template template: kostal-piko-hybrid usage: grid host: 192.0.2.2 # IP address or hostname
} />
<DeviceConfig code={meters: - name: my_pv type: template template: kostal-piko-hybrid usage: pv host: 192.0.2.2 # IP address or hostname
} />
<DeviceConfig code={meters: - name: my_battery type: template template: kostal-piko-hybrid usage: battery host: 192.0.2.2 # IP address or hostname
} advanced={meters: - name: my_battery type: template template: kostal-piko-hybrid usage: battery host: 192.0.2.2 # IP address or hostname capacity: 50 # Battery capacity in kWh (optional)
} />
<DeviceConfig code={meters: - name: my_pv type: template template: kostal-piko-mp-plus usage: pv host: 192.0.2.2 # IP address or hostname
} />
<DeviceConfig code={meters: - name: my_grid type: template template: kostal-piko-pv usage: grid host: 192.0.2.2 # IP address or hostname
} />
<DeviceConfig code={meters: - name: my_pv type: template template: kostal-piko-pv usage: pv host: 192.0.2.2 # IP address or hostname
} />
Only a single system may access the inverter! For active battery control the function external battery control via Modbus must be activated using installer access. Grid charging is not available! see also https://github.com/evcc-io/evcc/wiki/Kostal-Plenticore
<DeviceConfig code={`meters: - name: my_pv type: template template: kostal-plenticore usage: pv
# Modbus TCP
modbus: tcpip
id: 71
host: 192.0.2.2 # Hostname
port: 1502 # Port`} advanced={`meters:
- name: my_pv
type: template
template: kostal-plenticore
usage: pv
# Modbus TCP
modbus: tcpip
id: 71
host: 192.0.2.2 # Hostname
port: 1502 # Port
endianness: little # optional
maxacpower: 0 # Maximum AC power of the hybrid inverter in W (optional)
minsoc: 25 # Lower limit when discharging the battery (normal operation) (optional)
maxsoc: 95 # Upper limit when charging the battery from the grid (optional)
watchdog: 60s # optional`} />
<DeviceConfig code={`meters: - name: my_battery type: template template: kostal-plenticore usage: battery
# Modbus TCP
modbus: tcpip
id: 71
host: 192.0.2.2 # Hostname
port: 1502 # Port`} advanced={`meters:
- name: my_battery
type: template
template: kostal-plenticore
usage: battery
# Modbus TCP
modbus: tcpip
id: 71
host: 192.0.2.2 # Hostname
port: 1502 # Port
endianness: little # optional
capacity: 50 # Battery capacity in kWh (optional)
minsoc: 25 # Lower limit when discharging the battery (normal operation) (optional)
maxsoc: 95 # Upper limit when charging the battery from the grid (optional)
watchdog: 60s # optional`} />
Only a single system may access the inverter! For active battery control, the feature external battery control via modbus must be activated using installer access. Can basically be used for various inverter generations (G1/G2/G3). The function for grid charging the battery is available using this template, but is currently incompatible with some older inverters - test carefully! see also https://github.com/evcc-io/evcc/wiki/Kostal-Plenticore
<DeviceConfig code={`meters: - name: my_pv type: template template: kostal-plenticore-gen2 usage: pv
# Modbus TCP
modbus: tcpip
id: 71
host: 192.0.2.2 # Hostname
port: 1502 # Port`} advanced={`meters:
- name: my_pv
type: template
template: kostal-plenticore-gen2
usage: pv
# Modbus TCP
modbus: tcpip
id: 71
host: 192.0.2.2 # Hostname
port: 1502 # Port
endianness: little # optional
maxacpower: 0 # Maximum AC power of the hybrid inverter in W (optional)
watchdog: 60s # optional`} />
<DeviceConfig code={`meters: - name: my_battery type: template template: kostal-plenticore-gen2 usage: battery
# Modbus TCP
modbus: tcpip
id: 71
host: 192.0.2.2 # Hostname
port: 1502 # Port`} advanced={`meters:
- name: my_battery
type: template
template: kostal-plenticore-gen2
usage: battery
# Modbus TCP
modbus: tcpip
id: 71
host: 192.0.2.2 # Hostname
port: 1502 # Port
endianness: little # optional
capacity: 50 # Battery capacity in kWh (optional)
maxchargerate: 100 # Power limit for grid charging. (optional)
watchdog: 60s # optional`} />
<DeviceConfig code={`meters: - name: my_grid type: template template: kostal-ksem usage: grid
# Modbus TCP
modbus: tcpip
id: 71
host: 192.0.2.2 # Hostname
port: 502 # Port`} />
The energy meter must be installed in sensor position 2 (grid connection). Sensor position 1 (House consumption) is not supported.
<DeviceConfig code={`meters: - name: my_grid type: template template: kostal-ksem-inverter usage: grid
# Modbus TCP
modbus: tcpip
id: 71
host: 192.0.2.2 # Hostname
port: 1502 # Port`} />
<DeviceConfig code={meters: - name: my_grid type: template template: lg-ess-home-15 usage: grid host: 192.0.2.2 # IP address or hostname password: # User password, see https://github.com/Morluktom/ioBroker.lg-ess-home/tree/master#getting-the-password. Alteratively, use registration id for admin login. (optional)
} advanced={meters: - name: my_grid type: template template: lg-ess-home-15 usage: grid host: 192.0.2.2 # IP address or hostname password: # User password, see https://github.com/Morluktom/ioBroker.lg-ess-home/tree/master#getting-the-password. Alteratively, use registration id for admin login. (optional) registration: DE200... # Registration id of the LG ESS HOME inverter. (optional) minsoc: 25 # Lower limit when discharging the battery (normal operation) (optional) maxsoc: 95 # Upper limit when charging the battery from the grid (optional)
} />
<DeviceConfig code={meters: - name: my_pv type: template template: lg-ess-home-15 usage: pv host: 192.0.2.2 # IP address or hostname password: # User password, see https://github.com/Morluktom/ioBroker.lg-ess-home/tree/master#getting-the-password. Alteratively, use registration id for admin login. (optional)
} advanced={meters: - name: my_pv type: template template: lg-ess-home-15 usage: pv host: 192.0.2.2 # IP address or hostname password: # User password, see https://github.com/Morluktom/ioBroker.lg-ess-home/tree/master#getting-the-password. Alteratively, use registration id for admin login. (optional) registration: DE200... # Registration id of the LG ESS HOME inverter. (optional) minsoc: 25 # Lower limit when discharging the battery (normal operation) (optional) maxsoc: 95 # Upper limit when charging the battery from the grid (optional)
} />
<DeviceConfig code={meters: - name: my_battery type: template template: lg-ess-home-15 usage: battery host: 192.0.2.2 # IP address or hostname password: # User password, see https://github.com/Morluktom/ioBroker.lg-ess-home/tree/master#getting-the-password. Alteratively, use registration id for admin login. (optional)
} advanced={meters: - name: my_battery type: template template: lg-ess-home-15 usage: battery host: 192.0.2.2 # IP address or hostname password: # User password, see https://github.com/Morluktom/ioBroker.lg-ess-home/tree/master#getting-the-password. Alteratively, use registration id for admin login. (optional) registration: DE200... # Registration id of the LG ESS HOME inverter. (optional) capacity: 50 # Battery capacity in kWh (optional) minsoc: 25 # Lower limit when discharging the battery (normal operation) (optional) maxsoc: 95 # Upper limit when charging the battery from the grid (optional)
} />
<DeviceConfig code={meters: - name: my_grid type: template template: lg-ess-home-8-10 usage: grid host: 192.0.2.2 # IP address or hostname password: # User password, see https://github.com/Morluktom/ioBroker.lg-ess-home/tree/master#getting-the-password. Alteratively, use registration id for admin login. (optional)
} advanced={meters: - name: my_grid type: template template: lg-ess-home-8-10 usage: grid host: 192.0.2.2 # IP address or hostname password: # User password, see https://github.com/Morluktom/ioBroker.lg-ess-home/tree/master#getting-the-password. Alteratively, use registration id for admin login. (optional) registration: DE200... # Registration id of the LG ESS HOME inverter. (optional) minsoc: 25 # Lower limit when discharging the battery (normal operation) (optional) maxsoc: 95 # Upper limit when charging the battery from the grid (optional)
} />
<DeviceConfig code={meters: - name: my_pv type: template template: lg-ess-home-8-10 usage: pv host: 192.0.2.2 # IP address or hostname password: # User password, see https://github.com/Morluktom/ioBroker.lg-ess-home/tree/master#getting-the-password. Alteratively, use registration id for admin login. (optional)
} advanced={meters: - name: my_pv type: template template: lg-ess-home-8-10 usage: pv host: 192.0.2.2 # IP address or hostname password: # User password, see https://github.com/Morluktom/ioBroker.lg-ess-home/tree/master#getting-the-password. Alteratively, use registration id for admin login. (optional) registration: DE200... # Registration id of the LG ESS HOME inverter. (optional) minsoc: 25 # Lower limit when discharging the battery (normal operation) (optional) maxsoc: 95 # Upper limit when charging the battery from the grid (optional)
} />
<DeviceConfig code={meters: - name: my_battery type: template template: lg-ess-home-8-10 usage: battery host: 192.0.2.2 # IP address or hostname password: # User password, see https://github.com/Morluktom/ioBroker.lg-ess-home/tree/master#getting-the-password. Alteratively, use registration id for admin login. (optional)
} advanced={meters: - name: my_battery type: template template: lg-ess-home-8-10 usage: battery host: 192.0.2.2 # IP address or hostname password: # User password, see https://github.com/Morluktom/ioBroker.lg-ess-home/tree/master#getting-the-password. Alteratively, use registration id for admin login. (optional) registration: DE200... # Registration id of the LG ESS HOME inverter. (optional) capacity: 50 # Battery capacity in kWh (optional) minsoc: 25 # Lower limit when discharging the battery (normal operation) (optional) maxsoc: 95 # Upper limit when charging the battery from the grid (optional)
} />
<DeviceConfig code={meters: - name: my_grid type: template template: loxone usage: grid host: 192.0.2.2 # IP address or hostname user: # User account (e.g. email address, user id, etc.) (optional) password: # Password of the user account (use single quotes in case of leading zeros) (optional) meterblock: # Name from Loxone Config socblock: # Name from Loxone Config, only for battery (optional)
} />
<DeviceConfig code={meters: - name: my_pv type: template template: loxone usage: pv host: 192.0.2.2 # IP address or hostname user: # User account (e.g. email address, user id, etc.) (optional) password: # Password of the user account (use single quotes in case of leading zeros) (optional) meterblock: # Name from Loxone Config socblock: # Name from Loxone Config, only for battery (optional)
} />
<DeviceConfig code={meters: - name: my_battery type: template template: loxone usage: battery host: 192.0.2.2 # IP address or hostname user: # User account (e.g. email address, user id, etc.) (optional) password: # Password of the user account (use single quotes in case of leading zeros) (optional) meterblock: # Name from Loxone Config socblock: # Name from Loxone Config, only for battery (optional)
} />
<DeviceConfig code={meters: - name: my_charger type: template template: loxone usage: charge host: 192.0.2.2 # IP address or hostname user: # User account (e.g. email address, user id, etc.) (optional) password: # Password of the user account (use single quotes in case of leading zeros) (optional) meterblock: # Name from Loxone Config socblock: # Name from Loxone Config, only for battery (optional)
} />
<DeviceConfig code={`meters: - name: my_grid type: template template: mtec-eb-gen2 usage: grid
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 247
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 247
host: 192.0.2.2 # Hostname
port: 502 # Port`} />
<DeviceConfig code={`meters: - name: my_pv type: template template: mtec-eb-gen2 usage: pv
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 247
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 247
host: 192.0.2.2 # Hostname
port: 502 # Port`} />
<DeviceConfig code={`meters: - name: my_battery type: template template: mtec-eb-gen2 usage: battery
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 247
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 247
host: 192.0.2.2 # Hostname
port: 502 # Port`} />
<DeviceConfig code={`meters: - name: my_grid type: template template: mtec-eb-gen3 usage: grid
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 255
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 255
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 255
host: 192.0.2.2 # Hostname
port: 502 # Port`} />
<DeviceConfig code={`meters: - name: my_pv type: template template: mtec-eb-gen3 usage: pv
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 255
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 255
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 255
host: 192.0.2.2 # Hostname
port: 502 # Port`} />
<DeviceConfig code={`meters: - name: my_battery type: template template: mtec-eb-gen3 usage: battery
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 255
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 255
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 255
host: 192.0.2.2 # Hostname
port: 502 # Port`} advanced={`meters:
- name: my_battery
type: template
template: mtec-eb-gen3
usage: battery
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 255
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 255
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 255
host: 192.0.2.2 # Hostname
port: 502 # Port
capacity: 50 # Battery capacity in kWh (optional)`} />
<DeviceConfig code={meters: - name: my_grid type: template template: slimmelezer usage: grid host: 192.0.2.2 # IP address or hostname
} advanced={meters: - name: my_grid type: template template: slimmelezer usage: grid host: 192.0.2.2 # IP address or hostname scale: 1000 # Use scale of 1000 for Zuidwijk Slimmelezer. Use scale 1 for ESPHome DSMR and mhendriks P1 Dongle
} />
<DeviceConfig code={meters: - name: my_aux type: template template: ac-elwa-2 usage: aux host: 192.0.2.2 # IP address or hostname
} />
<DeviceConfig code={meters: - name: my_aux type: template template: ac-elwa-e usage: aux host: 192.0.2.2 # IP address or hostname
} />
<DeviceConfig code={meters: - name: my_aux type: template template: thor usage: aux host: 192.0.2.2 # IP address or hostname
} />
<DeviceConfig code={`meters: - name: my_grid type: template template: mypv-wifi-meter usage: grid
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} />
<DeviceConfig code={meters: - name: my_grid type: template template: openems usage: grid host: 192.0.2.2 # IP address or hostname
} advanced={meters: - name: my_grid type: template template: openems usage: grid host: 192.0.2.2 # IP address or hostname password: user # Password of the user account (use single quotes in case of leading zeros) (optional)
} />
<DeviceConfig code={meters: - name: my_pv type: template template: openems usage: pv host: 192.0.2.2 # IP address or hostname
} advanced={meters: - name: my_pv type: template template: openems usage: pv host: 192.0.2.2 # IP address or hostname password: user # Password of the user account (use single quotes in case of leading zeros) (optional) maxacpower: 0 # Maximum AC power of the hybrid inverter in W (optional)
} />
<DeviceConfig code={meters: - name: my_battery type: template template: openems usage: battery host: 192.0.2.2 # IP address or hostname
} advanced={meters: - name: my_battery type: template template: openems usage: battery host: 192.0.2.2 # IP address or hostname password: user # Password of the user account (use single quotes in case of leading zeros) (optional) capacity: 50 # Battery capacity in kWh (optional)
} />
<DeviceConfig code={`meters: - name: my_grid type: template template: orno usage: grid
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8E1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} />
<DeviceConfig code={`meters: - name: my_charger type: template template: orno usage: charge
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8E1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} />
<DeviceConfig code={meters: - name: my_grid type: template template: p1monitor usage: grid host: 192.0.2.2 # IP address or hostname
} />
The values are updated approximately every 15 seconds, hence the evcc interval
should not be less than 30 seconds.
<DeviceConfig code={meters: - name: my_grid type: template template: plexlog usage: grid host: 192.0.2.2 # IP address or hostname port: 503 # Port (optional)
} />
<DeviceConfig code={meters: - name: my_pv type: template template: plexlog usage: pv host: 192.0.2.2 # IP address or hostname port: 503 # Port (optional)
} />
<DeviceConfig code={meters: - name: my_battery type: template template: plexlog usage: battery host: 192.0.2.2 # IP address or hostname port: 503 # Port (optional)
} />
<DeviceConfig code={`meters: - name: my_grid type: template template: powerdog usage: grid
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} />
<DeviceConfig code={`meters: - name: my_pv type: template template: powerdog usage: pv
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} />
<DeviceConfig code={meters: - name: my_grid type: template template: powerfox-poweropti usage: grid user: # User account (e.g. email address, user id, etc.) password: # Password of the user account (use single quotes in case of leading zeros)
} advanced={meters: - name: my_grid type: template template: powerfox-poweropti usage: grid user: # User account (e.g. email address, user id, etc.) password: # Password of the user account (use single quotes in case of leading zeros) id: main # Id in case of multiple PowerOpti
} />
<DeviceConfig code={meters: - name: my_pv type: template template: powerfox-poweropti usage: pv user: # User account (e.g. email address, user id, etc.) password: # Password of the user account (use single quotes in case of leading zeros)
} advanced={meters: - name: my_pv type: template template: powerfox-poweropti usage: pv user: # User account (e.g. email address, user id, etc.) password: # Password of the user account (use single quotes in case of leading zeros) id: main # Id in case of multiple PowerOpti
} />
The QCells hybrid inverter has to be registered in the QCellsCloud.
Attention: Values can only be fetched every 150s and then also can be 5 minutes old. Charging by PV will not be optimal because of this! Only use as fallback if no local access is available.
<DeviceConfig code={meters: - name: my_grid type: template template: qcells-hybrid-cloud usage: grid tokenid: # Go to https://qhome-ess-g3.q-cells.eu/#/api/ and take the value of "ObtaintokenID". serial: # Go to https://qhome-ess-g3.q-cells.eu/blue/#/inverter and take the value of registration number.
} />
<DeviceConfig code={meters: - name: my_pv type: template template: qcells-hybrid-cloud usage: pv tokenid: # Go to https://qhome-ess-g3.q-cells.eu/#/api/ and take the value of "ObtaintokenID". serial: # Go to https://qhome-ess-g3.q-cells.eu/blue/#/inverter and take the value of registration number.
} />
<DeviceConfig code={meters: - name: my_battery type: template template: qcells-hybrid-cloud usage: battery tokenid: # Go to https://qhome-ess-g3.q-cells.eu/#/api/ and take the value of "ObtaintokenID". serial: # Go to https://qhome-ess-g3.q-cells.eu/blue/#/inverter and take the value of registration number.
} advanced={meters: - name: my_battery type: template template: qcells-hybrid-cloud usage: battery tokenid: # Go to https://qhome-ess-g3.q-cells.eu/#/api/ and take the value of "ObtaintokenID". serial: # Go to https://qhome-ess-g3.q-cells.eu/blue/#/inverter and take the value of registration number. capacity: 50 # Battery capacity in kWh (optional)
} />
<DeviceConfig code={`meters: - name: my_grid type: template template: solax usage: grid
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 19200 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
mppt3: false # optional`} advanced={`meters:
- name: my_grid
type: template
template: solax
usage: grid
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 19200 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
mppt3: false # optional
storageunit: 1 # optional`} />
<DeviceConfig code={`meters: - name: my_pv type: template template: solax usage: pv
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 19200 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
mppt3: false # optional`} advanced={`meters:
- name: my_pv
type: template
template: solax
usage: pv
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 19200 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
mppt3: false # optional
storageunit: 1 # optional
maxacpower: 0 # Maximum AC power of the hybrid inverter in W (optional)`} />
<DeviceConfig code={`meters: - name: my_battery type: template template: solax usage: battery
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 19200 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
mppt3: false # optional`} advanced={`meters:
- name: my_battery
type: template
template: solax
usage: battery
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 19200 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
mppt3: false # optional
storageunit: 1 # optional
capacity: 50 # Battery capacity in kWh (optional)
defaultmode: 0 # Default mode for battery control to which the inverter falls back after charging the battery or after stopping discharge. (optional)`} />
<DeviceConfig code={meters: - name: my_grid type: template template: rct-power usage: grid host: 192.0.2.2 # IP address or hostname
} advanced={meters: - name: my_grid type: template template: rct-power usage: grid host: 192.0.2.2 # IP address or hostname minsoc: 7 # Lower limit when discharging the battery (normal operation) (optional) maxsoc: 97 # Upper limit when charging the battery from the grid (optional) cache: 30s # Time interval with when data should be reloaded from the vehicle (optional)
} />
<DeviceConfig code={meters: - name: my_pv type: template template: rct-power usage: pv host: 192.0.2.2 # IP address or hostname
} advanced={meters: - name: my_pv type: template template: rct-power usage: pv host: 192.0.2.2 # IP address or hostname minsoc: 7 # Lower limit when discharging the battery (normal operation) (optional) maxsoc: 97 # Upper limit when charging the battery from the grid (optional) cache: 30s # Time interval with when data should be reloaded from the vehicle (optional)
} />
<DeviceConfig code={meters: - name: my_battery type: template template: rct-power usage: battery host: 192.0.2.2 # IP address or hostname
} advanced={meters: - name: my_battery type: template template: rct-power usage: battery host: 192.0.2.2 # IP address or hostname capacity: 50 # Battery capacity in kWh (optional) minsoc: 7 # Lower limit when discharging the battery (normal operation) (optional) maxsoc: 97 # Upper limit when charging the battery from the grid (optional) cache: 30s # Time interval with when data should be reloaded from the vehicle (optional)
} />
<DeviceConfig code={`meters: - name: my_grid type: template template: sbc-axx3 usage: grid
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} />
<DeviceConfig code={`meters: - name: my_charger type: template template: sbc-axx3 usage: charge
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} />
<DeviceConfig code={`meters: - name: my_grid type: template template: saj-h1 usage: grid
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
timeout: 5s # optional`} />
<DeviceConfig code={`meters: - name: my_pv type: template template: saj-h1 usage: pv
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
timeout: 5s # optional`} />
<DeviceConfig code={`meters: - name: my_battery type: template template: saj-h1 usage: battery
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
timeout: 5s # optional`} advanced={`meters:
- name: my_battery
type: template
template: saj-h1
usage: battery
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
timeout: 5s # optional
capacity: 50 # Battery capacity in kWh (optional)`} />
<DeviceConfig code={`meters: - name: my_grid type: template template: saj-h2 usage: grid
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 115200 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} advanced={`meters:
- name: my_grid
type: template
template: saj-h2
usage: grid
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 115200 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
minsoc: 20 # Lower limit when discharging the battery (normal operation) (optional)
maxsoc: 95 # Upper limit when charging the battery from the grid (optional)`} />
<DeviceConfig code={`meters: - name: my_pv type: template template: saj-h2 usage: pv
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 115200 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} advanced={`meters:
- name: my_pv
type: template
template: saj-h2
usage: pv
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 115200 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
minsoc: 20 # Lower limit when discharging the battery (normal operation) (optional)
maxsoc: 95 # Upper limit when charging the battery from the grid (optional)`} />
<DeviceConfig code={`meters: - name: my_battery type: template template: saj-h2 usage: battery
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 115200 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} advanced={`meters:
- name: my_battery
type: template
template: saj-h2
usage: battery
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 115200 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
capacity: 50 # Battery capacity in kWh (optional)
defaultmode: 2 # Default mode for battery control to which the inverter falls back after charging the battery or after stopping discharge. (optional)
minsoc: 20 # Lower limit when discharging the battery (normal operation) (optional)
maxsoc: 95 # Upper limit when charging the battery from the grid (optional)`} />
<DeviceConfig code={`meters: - name: my_pv type: template template: saj-r5 usage: pv
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} />
<DeviceConfig code={`meters: - name: my_grid type: template template: sax usage: grid
# Modbus TCP
modbus: tcpip
id: 64
host: 192.0.2.2 # Hostname
port: 3600 # Port`} />
<DeviceConfig code={`meters: - name: my_battery type: template template: sax usage: battery
# Modbus TCP
modbus: tcpip
id: 64
host: 192.0.2.2 # Hostname
port: 3600 # Port`} />
<DeviceConfig code={`meters: - name: my_grid type: template template: schneider-iem3000 usage: grid
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} />
<DeviceConfig code={`meters: - name: my_charger type: template template: schneider-iem3000 usage: charge
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} />
<DeviceConfig code={meters: - name: my_grid type: template template: senec-home usage: grid host: 192.0.2.2 # IP address or hostname schema: https # optional
} />
<DeviceConfig code={meters: - name: my_pv type: template template: senec-home usage: pv host: 192.0.2.2 # IP address or hostname schema: https # optional
} />
<DeviceConfig code={meters: - name: my_battery type: template template: senec-home usage: battery host: 192.0.2.2 # IP address or hostname schema: https # optional
} advanced={meters: - name: my_battery type: template template: senec-home usage: battery host: 192.0.2.2 # IP address or hostname schema: https # optional capacity: 50 # Battery capacity in kWh (optional)
} />
<DeviceConfig code={`meters: - name: my_pv type: template template: senergy usage: pv
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} />
<DeviceConfig code={meters: - name: my_grid type: template template: shelly-3em usage: grid host: 192.0.2.2 # IP address or hostname
} advanced={meters: - name: my_grid type: template template: shelly-3em usage: grid host: 192.0.2.2 # IP address or hostname user: # User account (e.g. email address, user id, etc.) (optional) password: # Password of the user account (use single quotes in case of leading zeros) (optional)
} />
<DeviceConfig code={meters: - name: my_pv type: template template: shelly-3em usage: pv host: 192.0.2.2 # IP address or hostname
} advanced={meters: - name: my_pv type: template template: shelly-3em usage: pv host: 192.0.2.2 # IP address or hostname user: # User account (e.g. email address, user id, etc.) (optional) password: # Password of the user account (use single quotes in case of leading zeros) (optional)
} />
<DeviceConfig code={meters: - name: my_charger type: template template: shelly-3em usage: charge host: 192.0.2.2 # IP address or hostname
} advanced={meters: - name: my_charger type: template template: shelly-3em usage: charge host: 192.0.2.2 # IP address or hostname user: # User account (e.g. email address, user id, etc.) (optional) password: # Password of the user account (use single quotes in case of leading zeros) (optional)
} />
<DeviceConfig code={meters: - name: my_grid type: template template: shelly-pro-3em usage: grid host: 192.0.2.2 # IP address or hostname user: # User account (e.g. email address, user id, etc.) (optional) password: # Password of the user account (use single quotes in case of leading zeros) (optional)
} />
<DeviceConfig code={meters: - name: my_pv type: template template: shelly-pro-3em usage: pv host: 192.0.2.2 # IP address or hostname user: # User account (e.g. email address, user id, etc.) (optional) password: # Password of the user account (use single quotes in case of leading zeros) (optional)
} />
<DeviceConfig code={meters: - name: my_charger type: template template: shelly-pro-3em usage: charge host: 192.0.2.2 # IP address or hostname user: # User account (e.g. email address, user id, etc.) (optional) password: # Password of the user account (use single quotes in case of leading zeros) (optional)
} />
<DeviceConfig code={`meters: - name: my_grid type: template template: siemens-7kt1665 usage: grid
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} />
<DeviceConfig code={`meters: - name: my_charger type: template template: siemens-7kt1665 usage: charge
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} />
The battery has to be set to Loxone with the installer account.
<DeviceConfig code={`meters: - name: my_grid type: template template: siemens-junelight usage: grid
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} />
<DeviceConfig code={`meters: - name: my_pv type: template template: siemens-junelight usage: pv
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} />
<DeviceConfig code={`meters: - name: my_battery type: template template: siemens-junelight usage: battery
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} advanced={`meters:
- name: my_battery
type: template
template: siemens-junelight
usage: battery
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
capacity: 50 # Battery capacity in kWh (optional)`} />
<DeviceConfig code={`meters: - name: my_grid type: template template: siemens-pac2200 usage: grid
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} />
<DeviceConfig code={`meters: - name: my_charger type: template template: siemens-pac2200 usage: charge
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} />
In the web interface of the SMA Data Manager you need to activate "Modbus Server activated" in the section "External communication".
<DeviceConfig code={`meters: - name: my_grid type: template template: sma-data-manager usage: grid
# Modbus TCP
modbus: tcpip
id: 2
host: 192.0.2.2 # Hostname
port: 502 # Port`} />
<DeviceConfig code={`meters: - name: my_pv type: template template: sma-data-manager usage: pv
# Modbus TCP
modbus: tcpip
id: 2
host: 192.0.2.2 # Hostname
port: 502 # Port`} />
<DeviceConfig code={`meters: - name: my_battery type: template template: sma-data-manager usage: battery
# Modbus TCP
modbus: tcpip
id: 2
host: 192.0.2.2 # Hostname
port: 502 # Port`} advanced={`meters:
- name: my_battery
type: template
template: sma-data-manager
usage: battery
# Modbus TCP
modbus: tcpip
id: 2
host: 192.0.2.2 # Hostname
port: 502 # Port
capacity: 50 # Battery capacity in kWh (optional)`} />
<DeviceConfig code={meters: - name: my_grid type: template template: sma-energy-meter usage: grid host: 192.0.2.2 # IP address or hostname
} advanced={meters: - name: my_grid type: template template: sma-energy-meter usage: grid host: 192.0.2.2 # IP address or hostname interface: eth0 # Network interface (optional)
} />
<DeviceConfig code={meters: - name: my_pv type: template template: sma-energy-meter usage: pv host: 192.0.2.2 # IP address or hostname
} advanced={meters: - name: my_pv type: template template: sma-energy-meter usage: pv host: 192.0.2.2 # IP address or hostname interface: eth0 # Network interface (optional)
} />
<DeviceConfig code={meters: - name: my_pv type: template template: sma-inverter-speedwire usage: pv host: 192.0.2.2 # IP address or hostname password: # Password for user group Standard (optional)
} />
<DeviceConfig code={meters: - name: my_battery type: template template: sma-inverter-speedwire usage: battery host: 192.0.2.2 # IP address or hostname password: # Password for user group Standard (optional)
} advanced={meters: - name: my_battery type: template template: sma-inverter-speedwire usage: battery host: 192.0.2.2 # IP address or hostname password: # Password for user group Standard (optional) capacity: 50 # Battery capacity in kWh (optional)
} />
<DeviceConfig code={`meters: - name: my_pv type: template template: sma-hybrid usage: pv
# Modbus TCP
modbus: tcpip
id: 3
host: 192.0.2.2 # Hostname
port: 502 # Port`} advanced={`meters:
- name: my_pv
type: template
template: sma-hybrid
usage: pv
# Modbus TCP
modbus: tcpip
id: 3
host: 192.0.2.2 # Hostname
port: 502 # Port
maxacpower: 0 # Maximum AC power of the hybrid inverter in W (optional)`} />
<DeviceConfig code={`meters: - name: my_battery type: template template: sma-hybrid usage: battery
# Modbus TCP
modbus: tcpip
id: 3
host: 192.0.2.2 # Hostname
port: 502 # Port`} advanced={`meters:
- name: my_battery
type: template
template: sma-hybrid
usage: battery
# Modbus TCP
modbus: tcpip
id: 3
host: 192.0.2.2 # Hostname
port: 502 # Port
capacity: 50 # Battery capacity in kWh (optional)
watchdog: 60s # optional
chargepower: 4200 # Maximum charging power for forced charging of the battery in Watt (optional)`} />
<DeviceConfig code={`meters: - name: my_battery type: template template: sma-sbs-15-25-modbus usage: battery
# Modbus TCP
modbus: tcpip
id: 3
host: 192.0.2.2 # Hostname
port: 502 # Port`} advanced={`meters:
- name: my_battery
type: template
template: sma-sbs-15-25-modbus
usage: battery
# Modbus TCP
modbus: tcpip
id: 3
host: 192.0.2.2 # Hostname
port: 502 # Port
capacity: 50 # Battery capacity in kWh (optional)
watchdog: 60s # optional
chargepower: 4200 # Maximum charging power for forced charging of the battery in Watt (optional)`} />
<DeviceConfig code={`meters: - name: my_battery type: template template: sma-sbs-modbus usage: battery
# Modbus TCP
modbus: tcpip
id: 3
host: 192.0.2.2 # Hostname
port: 502 # Port`} advanced={`meters:
- name: my_battery
type: template
template: sma-sbs-modbus
usage: battery
# Modbus TCP
modbus: tcpip
id: 3
host: 192.0.2.2 # Hostname
port: 502 # Port
capacity: 50 # Battery capacity in kWh (optional)
watchdog: 60s # optional
chargepower: 4200 # Maximum charging power for forced charging of the battery in Watt (optional)`} />
<DeviceConfig code={meters: - name: my_grid type: template template: sma-home-manager usage: grid host: 192.0.2.2 # IP address or hostname
} advanced={meters: - name: my_grid type: template template: sma-home-manager usage: grid host: 192.0.2.2 # IP address or hostname interface: eth0 # Network interface (optional)
} />
<DeviceConfig code={`meters: - name: my_battery type: template template: sma-si-modbus usage: battery
# Modbus TCP
modbus: tcpip
id: 3
host: 192.0.2.2 # Hostname
port: 502 # Port`} advanced={`meters:
- name: my_battery
type: template
template: sma-si-modbus
usage: battery
# Modbus TCP
modbus: tcpip
id: 3
host: 192.0.2.2 # Hostname
port: 502 # Port
capacity: 50 # Battery capacity in kWh (optional)
watchdog: 60s # optional
chargepower: 4200 # Maximum charging power for forced charging of the battery in Watt (optional)`} />
<DeviceConfig code={`meters: - name: my_pv type: template template: sma-webbox usage: pv
# Modbus TCP
modbus: tcpip
id: 2
host: 192.0.2.2 # Hostname
port: 502 # Port`} />
<DeviceConfig code={`meters: - name: my_pv type: template template: sma-inverter-modbus usage: pv
# Modbus TCP
modbus: tcpip
id: 3
host: 192.0.2.2 # Hostname
port: 502 # Port`} />
aux
can be used for water heating power.
<DeviceConfig code={meters: - name: my_grid type: template template: smartfox usage: grid host: 192.0.2.2 # IP address or hostname
} />
<DeviceConfig code={meters: - name: my_pv type: template template: smartfox usage: pv host: 192.0.2.2 # IP address or hostname
} />
<DeviceConfig code={meters: - name: my_aux type: template template: smartfox usage: aux host: 192.0.2.2 # IP address or hostname
} />
aux
can be used for water heating power.
<DeviceConfig code={meters: - name: my_grid type: template template: smartfox-em2 usage: grid host: 192.0.2.2 # IP address or hostname
} advanced={meters: - name: my_grid type: template template: smartfox-em2 usage: grid host: 192.0.2.2 # IP address or hostname cache: 1s # Time interval with when data should be reloaded from the vehicle (optional)
} />
<DeviceConfig code={meters: - name: my_pv type: template template: smartfox-em2 usage: pv host: 192.0.2.2 # IP address or hostname
} advanced={meters: - name: my_pv type: template template: smartfox-em2 usage: pv host: 192.0.2.2 # IP address or hostname cache: 1s # Time interval with when data should be reloaded from the vehicle (optional)
} />
<DeviceConfig code={meters: - name: my_aux type: template template: smartfox-em2 usage: aux host: 192.0.2.2 # IP address or hostname
} advanced={meters: - name: my_aux type: template template: smartfox-em2 usage: aux host: 192.0.2.2 # IP address or hostname cache: 1s # Time interval with when data should be reloaded from the vehicle (optional)
} />
LSE-3 logger stick using a LAN connection and ModBus TCP via the port 8899 is the easiest connection. The LSW-3 WiFi stick is not supported. For a RS485 serial connection using the inverter's COM port the inverter's side must be properly terminated.
<DeviceConfig code={`meters: - name: my_grid type: template template: sofarsolar-g3 usage: grid
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 8899 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 8899 # Port`} advanced={`meters:
- name: my_grid
type: template
template: sofarsolar-g3
usage: grid
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 8899 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 8899 # Port
storageunit: 1 # Number of the battery storage. In case of a BTS storage not the address of a BTS 5K battery module, but the storage tower (BTS 5K-BDU control unit with 1-4 BTS 5K modules). (optional)`} />
<DeviceConfig code={`meters: - name: my_pv type: template template: sofarsolar-g3 usage: pv
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 8899 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 8899 # Port`} advanced={`meters:
- name: my_pv
type: template
template: sofarsolar-g3
usage: pv
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 8899 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 8899 # Port
storageunit: 1 # Number of the battery storage. In case of a BTS storage not the address of a BTS 5K battery module, but the storage tower (BTS 5K-BDU control unit with 1-4 BTS 5K modules). (optional)
maxacpower: 0 # Maximum AC power of the hybrid inverter in W (optional)`} />
<DeviceConfig code={`meters: - name: my_battery type: template template: sofarsolar-g3 usage: battery
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 8899 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 8899 # Port`} advanced={`meters:
- name: my_battery
type: template
template: sofarsolar-g3
usage: battery
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 8899 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 8899 # Port
storageunit: 1 # Number of the battery storage. In case of a BTS storage not the address of a BTS 5K battery module, but the storage tower (BTS 5K-BDU control unit with 1-4 BTS 5K modules). (optional)
capacity: 50 # Battery capacity in kWh (optional)
defaultmode: 0 # Default mode for battery control. Valid values are 0 (self use), 1 (time of use), 2 (timing mode), 4 (peak-shaving mode) (optional)`} />
LSE-3 logger stick using a LAN connection and ModBus TCP via the port 8899 is the easiest connection. The LSW-3 WiFi stick is not supported. For a RS485 serial connection using the inverter's COM port the inverter's side must be properly terminated.
<DeviceConfig code={`meters: - name: my_grid type: template template: sofarsolar-g3 usage: grid
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 8899 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 8899 # Port`} advanced={`meters:
- name: my_grid
type: template
template: sofarsolar-g3
usage: grid
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 8899 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 8899 # Port
storageunit: 1 # Number of the battery storage. In case of a BTS storage not the address of a BTS 5K battery module, but the storage tower (BTS 5K-BDU control unit with 1-4 BTS 5K modules). (optional)`} />
<DeviceConfig code={`meters: - name: my_pv type: template template: sofarsolar-g3 usage: pv
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 8899 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 8899 # Port`} advanced={`meters:
- name: my_pv
type: template
template: sofarsolar-g3
usage: pv
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 8899 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 8899 # Port
storageunit: 1 # Number of the battery storage. In case of a BTS storage not the address of a BTS 5K battery module, but the storage tower (BTS 5K-BDU control unit with 1-4 BTS 5K modules). (optional)
maxacpower: 0 # Maximum AC power of the hybrid inverter in W (optional)`} />
<DeviceConfig code={`meters: - name: my_battery type: template template: sofarsolar-g3 usage: battery
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 8899 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 8899 # Port`} advanced={`meters:
- name: my_battery
type: template
template: sofarsolar-g3
usage: battery
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 8899 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 8899 # Port
storageunit: 1 # Number of the battery storage. In case of a BTS storage not the address of a BTS 5K battery module, but the storage tower (BTS 5K-BDU control unit with 1-4 BTS 5K modules). (optional)
capacity: 50 # Battery capacity in kWh (optional)
defaultmode: 0 # Default mode for battery control. Valid values are 0 (self use), 1 (time of use), 2 (timing mode), 4 (peak-shaving mode) (optional)`} />
<DeviceConfig code={`meters: - name: my_grid type: template template: sofarsolar usage: grid
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} />
<DeviceConfig code={`meters: - name: my_pv type: template template: sofarsolar usage: pv
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} />
<DeviceConfig code={`meters: - name: my_battery type: template template: sofarsolar usage: battery
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} advanced={`meters:
- name: my_battery
type: template
template: sofarsolar
usage: battery
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
capacity: 50 # Battery capacity in kWh (optional)`} />
LSE-3 logger stick using a LAN connection and ModBus TCP via the port 8899 is the easiest connection. The LSW-3 WiFi stick is not supported. For a RS485 serial connection using the inverter's COM port the inverter's side must be properly terminated.
<DeviceConfig code={`meters: - name: my_grid type: template template: sofarsolar-g3 usage: grid
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 8899 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 8899 # Port`} advanced={`meters:
- name: my_grid
type: template
template: sofarsolar-g3
usage: grid
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 8899 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 8899 # Port
storageunit: 1 # Number of the battery storage. In case of a BTS storage not the address of a BTS 5K battery module, but the storage tower (BTS 5K-BDU control unit with 1-4 BTS 5K modules). (optional)`} />
<DeviceConfig code={`meters: - name: my_pv type: template template: sofarsolar-g3 usage: pv
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 8899 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 8899 # Port`} advanced={`meters:
- name: my_pv
type: template
template: sofarsolar-g3
usage: pv
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 8899 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 8899 # Port
storageunit: 1 # Number of the battery storage. In case of a BTS storage not the address of a BTS 5K battery module, but the storage tower (BTS 5K-BDU control unit with 1-4 BTS 5K modules). (optional)
maxacpower: 0 # Maximum AC power of the hybrid inverter in W (optional)`} />
<DeviceConfig code={`meters: - name: my_battery type: template template: sofarsolar-g3 usage: battery
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 8899 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 8899 # Port`} advanced={`meters:
- name: my_battery
type: template
template: sofarsolar-g3
usage: battery
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 8899 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 8899 # Port
storageunit: 1 # Number of the battery storage. In case of a BTS storage not the address of a BTS 5K battery module, but the storage tower (BTS 5K-BDU control unit with 1-4 BTS 5K modules). (optional)
capacity: 50 # Battery capacity in kWh (optional)
defaultmode: 0 # Default mode for battery control. Valid values are 0 (self use), 1 (time of use), 2 (timing mode), 4 (peak-shaving mode) (optional)`} />
LSE-3 logger stick using a LAN connection and ModBus TCP via the port 8899 is the easiest connection. The LSW-3 WiFi stick is not supported. For a RS485 serial connection using the inverter's COM port the inverter's side must be properly terminated.
<DeviceConfig code={`meters: - name: my_grid type: template template: sofarsolar-g3 usage: grid
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 8899 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 8899 # Port`} advanced={`meters:
- name: my_grid
type: template
template: sofarsolar-g3
usage: grid
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 8899 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 8899 # Port
storageunit: 1 # Number of the battery storage. In case of a BTS storage not the address of a BTS 5K battery module, but the storage tower (BTS 5K-BDU control unit with 1-4 BTS 5K modules). (optional)`} />
<DeviceConfig code={`meters: - name: my_pv type: template template: sofarsolar-g3 usage: pv
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 8899 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 8899 # Port`} advanced={`meters:
- name: my_pv
type: template
template: sofarsolar-g3
usage: pv
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 8899 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 8899 # Port
storageunit: 1 # Number of the battery storage. In case of a BTS storage not the address of a BTS 5K battery module, but the storage tower (BTS 5K-BDU control unit with 1-4 BTS 5K modules). (optional)
maxacpower: 0 # Maximum AC power of the hybrid inverter in W (optional)`} />
<DeviceConfig code={`meters: - name: my_battery type: template template: sofarsolar-g3 usage: battery
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 8899 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 8899 # Port`} advanced={`meters:
- name: my_battery
type: template
template: sofarsolar-g3
usage: battery
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 8899 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 8899 # Port
storageunit: 1 # Number of the battery storage. In case of a BTS storage not the address of a BTS 5K battery module, but the storage tower (BTS 5K-BDU control unit with 1-4 BTS 5K modules). (optional)
capacity: 50 # Battery capacity in kWh (optional)
defaultmode: 0 # Default mode for battery control. Valid values are 0 (self use), 1 (time of use), 2 (timing mode), 4 (peak-shaving mode) (optional)`} />
<DeviceConfig code={meters: - name: my_grid type: template template: solaranzeige usage: grid host: 192.0.2.2 # IP address or hostname of the MQTT broker port: 1883 # MQTT broker port (optional) topic: solaranzeige/box1 # Topic (omit leading /) (optional) timeout: 30s # Don't accept values older than this value (optional)
} advanced={meters: - name: my_grid type: template template: solaranzeige usage: grid host: 192.0.2.2 # IP address or hostname of the MQTT broker port: 1883 # MQTT broker port (optional) topic: solaranzeige/box1 # Topic (omit leading /) (optional) timeout: 30s # Don't accept values older than this value (optional) user: # User account (e.g. email address, user id, etc.) (optional) password: # Password of the user account (use single quotes in case of leading zeros) (optional)
} />
<DeviceConfig code={meters: - name: my_pv type: template template: solaranzeige usage: pv host: 192.0.2.2 # IP address or hostname of the MQTT broker port: 1883 # MQTT broker port (optional) topic: solaranzeige/box1 # Topic (omit leading /) (optional) timeout: 30s # Don't accept values older than this value (optional)
} advanced={meters: - name: my_pv type: template template: solaranzeige usage: pv host: 192.0.2.2 # IP address or hostname of the MQTT broker port: 1883 # MQTT broker port (optional) topic: solaranzeige/box1 # Topic (omit leading /) (optional) timeout: 30s # Don't accept values older than this value (optional) user: # User account (e.g. email address, user id, etc.) (optional) password: # Password of the user account (use single quotes in case of leading zeros) (optional)
} />
Only one system can and may have a Modbus TCP connection to the inverter at the same time! For optional battery control, StorageConf_CtrlMode (0xE004) must be set to 4 "Remote".
<DeviceConfig code={`meters: - name: my_grid type: template template: solaredge-hybrid usage: grid
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 1502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 1502 # Port
timeout: 10s # optional`} advanced={`meters:
- name: my_grid
type: template
template: solaredge-hybrid
usage: grid
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 1502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 1502 # Port
timeout: 10s # optional
watchdog: 60s # optional`} />
<DeviceConfig code={`meters: - name: my_pv type: template template: solaredge-hybrid usage: pv
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 1502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 1502 # Port
timeout: 10s # optional`} advanced={`meters:
- name: my_pv
type: template
template: solaredge-hybrid
usage: pv
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 1502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 1502 # Port
timeout: 10s # optional
maxacpower: 0 # Maximum AC power of the hybrid inverter in W (optional)
watchdog: 60s # optional`} />
<DeviceConfig code={`meters: - name: my_battery type: template template: solaredge-hybrid usage: battery
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 1502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 1502 # Port
timeout: 10s # optional`} advanced={`meters:
- name: my_battery
type: template
template: solaredge-hybrid
usage: battery
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 1502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 1502 # Port
timeout: 10s # optional
capacity: 50 # Battery capacity in kWh (optional)
watchdog: 60s # optional`} />
Only one system may access the inverter!
<DeviceConfig code={`meters: - name: my_grid type: template template: solaredge-inverter usage: grid
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 1502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 1502 # Port
timeout: 10s # optional`} />
<DeviceConfig code={`meters: - name: my_pv type: template template: solaredge-inverter usage: pv
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 1502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 1502 # Port
timeout: 10s # optional`} />
We recommend to use this device for grid power values only, if no other device is available providing this data. If you have a home battery installed, please do not use this device at all for grid power values.
<DeviceConfig code={meters: - name: my_grid type: template template: solarlog usage: grid host: 192.0.2.2 # IP address or hostname port: 502 # Port (optional)
} />
<DeviceConfig code={meters: - name: my_pv type: template template: solarlog usage: pv host: 192.0.2.2 # IP address or hostname port: 502 # Port (optional)
} />
For batter control, the "Connectivity+" function must be activated via the Solarmax support. Available from software version 3.4.4. Without activation, the function remains without effect. Grid charging is generally not available.
<DeviceConfig code={`meters: - name: my_grid type: template template: solarmax-maxstorage usage: grid
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} advanced={`meters:
- name: my_grid
type: template
template: solarmax-maxstorage
usage: grid
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
watchdog: 60s # optional`} />
<DeviceConfig code={`meters: - name: my_pv type: template template: solarmax-maxstorage usage: pv
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} advanced={`meters:
- name: my_pv
type: template
template: solarmax-maxstorage
usage: pv
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
maxacpower: 0 # Maximum AC power of the hybrid inverter in W (optional)
watchdog: 60s # optional`} />
<DeviceConfig code={`meters: - name: my_battery type: template template: solarmax-maxstorage usage: battery
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} advanced={`meters:
- name: my_battery
type: template
template: solarmax-maxstorage
usage: battery
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
capacity: 50 # Battery capacity in kWh (optional)
watchdog: 60s # optional`} />
<DeviceConfig code={`meters: - name: my_pv type: template template: solarmax-smt usage: pv
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} />
<DeviceConfig code={`meters: - name: my_pv type: template template: senergy usage: pv
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} />
<DeviceConfig code={meters: - name: my_grid type: template template: solarwatt usage: grid host: 192.0.2.2 # IP address or hostname
} />
<DeviceConfig code={meters: - name: my_pv type: template template: solarwatt usage: pv host: 192.0.2.2 # IP address or hostname
} />
<DeviceConfig code={meters: - name: my_battery type: template template: solarwatt usage: battery host: 192.0.2.2 # IP address or hostname
} advanced={meters: - name: my_battery type: template template: solarwatt usage: battery host: 192.0.2.2 # IP address or hostname capacity: 50 # Battery capacity in kWh (optional)
} />
Combines data of all connected PV inverters or batteries.
<DeviceConfig code={meters: - name: my_grid type: template template: solarwatt-flex usage: grid host: 192.0.2.2 # IP address or hostname
} />
<DeviceConfig code={meters: - name: my_pv type: template template: solarwatt-flex usage: pv host: 192.0.2.2 # IP address or hostname
} />
<DeviceConfig code={meters: - name: my_battery type: template template: solarwatt-flex usage: battery host: 192.0.2.2 # IP address or hostname
} advanced={meters: - name: my_battery type: template template: solarwatt-flex usage: battery host: 192.0.2.2 # IP address or hostname capacity: 50 # Battery capacity in kWh (optional)
} />
<DeviceConfig code={meters: - name: my_grid type: template template: solarwatt usage: grid host: 192.0.2.2 # IP address or hostname
} />
<DeviceConfig code={meters: - name: my_pv type: template template: solarwatt usage: pv host: 192.0.2.2 # IP address or hostname
} />
<DeviceConfig code={meters: - name: my_battery type: template template: solarwatt usage: battery host: 192.0.2.2 # IP address or hostname
} advanced={meters: - name: my_battery type: template template: solarwatt usage: battery host: 192.0.2.2 # IP address or hostname capacity: 50 # Battery capacity in kWh (optional)
} />
<DeviceConfig code={meters: - name: my_grid type: template template: solarwatt-myreserve-matrix usage: grid host: 192.0.2.2 # IP address or hostname port: 8080 # Port (optional)
} />
<DeviceConfig code={meters: - name: my_pv type: template template: solarwatt-myreserve-matrix usage: pv host: 192.0.2.2 # IP address or hostname port: 8080 # Port (optional)
} />
<DeviceConfig code={meters: - name: my_battery type: template template: solarwatt-myreserve-matrix usage: battery host: 192.0.2.2 # IP address or hostname port: 8080 # Port (optional)
} advanced={meters: - name: my_battery type: template template: solarwatt-myreserve-matrix usage: battery host: 192.0.2.2 # IP address or hostname port: 8080 # Port (optional) capacity: 50 # Battery capacity in kWh (optional)
} />
<DeviceConfig code={`meters: - name: my_grid type: template template: solax usage: grid
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 19200 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
mppt3: false # optional`} advanced={`meters:
- name: my_grid
type: template
template: solax
usage: grid
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 19200 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
mppt3: false # optional
storageunit: 1 # optional`} />
<DeviceConfig code={`meters: - name: my_pv type: template template: solax usage: pv
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 19200 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
mppt3: false # optional`} advanced={`meters:
- name: my_pv
type: template
template: solax
usage: pv
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 19200 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
mppt3: false # optional
storageunit: 1 # optional
maxacpower: 0 # Maximum AC power of the hybrid inverter in W (optional)`} />
<DeviceConfig code={`meters: - name: my_battery type: template template: solax usage: battery
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 19200 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
mppt3: false # optional`} advanced={`meters:
- name: my_battery
type: template
template: solax
usage: battery
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 19200 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
mppt3: false # optional
storageunit: 1 # optional
capacity: 50 # Battery capacity in kWh (optional)
defaultmode: 0 # Default mode for battery control to which the inverter falls back after charging the battery or after stopping discharge. (optional)`} />
The Solax hybrid inverter has to be registered in the SolaxCloud.
Attention: Values can only be fetched every 150s and then also can be 5 minutes old. Charging by PV will not be optimal because of this! Only use as fallback if no local access is available.
<DeviceConfig code={meters: - name: my_grid type: template template: solax-hybrid-cloud usage: grid tokenid: # https://www.solaxcloud.com/ -> Support -> Third-party Ecology (old site) or Service -> API (new site), put the value of \
tokenID` here in single quotes (Example: '20241028488283838')
serial: # https://www.solaxcloud.com/ -> Device -> Inverter (new site) or Support (old site), use the registration number`} />
<DeviceConfig code={meters: - name: my_pv type: template template: solax-hybrid-cloud usage: pv tokenid: # https://www.solaxcloud.com/ -> Support -> Third-party Ecology (old site) or Service -> API (new site), put the value of \
tokenID` here in single quotes (Example: '20241028488283838')
serial: # https://www.solaxcloud.com/ -> Device -> Inverter (new site) or Support (old site), use the registration number`} />
<DeviceConfig code={meters: - name: my_battery type: template template: solax-hybrid-cloud usage: battery tokenid: # https://www.solaxcloud.com/ -> Support -> Third-party Ecology (old site) or Service -> API (new site), put the value of \
tokenID` here in single quotes (Example: '20241028488283838')
serial: # https://www.solaxcloud.com/ -> Device -> Inverter (new site) or Support (old site), use the registration number} advanced={
meters:
- name: my_battery
type: template
template: solax-hybrid-cloud
usage: battery
tokenid: # https://www.solaxcloud.com/ -> Support -> Third-party Ecology (old site) or Service -> API (new site), put the value of `tokenID` here in single quotes (Example: '20241028488283838')
serial: # https://www.solaxcloud.com/ -> Device -> Inverter (new site) or Support (old site), use the registration number
capacity: 50 # Battery capacity in kWh (optional)`} />
The Solax inverter has to be registered in the SolaxCloud.
Attention: Values can only be fetched every 150s and then also can be 5 minutes old. Charging by PV will not be optimal because of this! Only use as fallback if no local access is available.
<DeviceConfig code={meters: - name: my_pv type: template template: solax-inverter-cloud usage: pv tokenid: # https://www.solaxcloud.com/ -> Support -> Third-party Ecology (old site) or Service -> API (new site), put the value of \
tokenID` here in single quotes (Example: '20241028488283838')
serial: # https://www.solaxcloud.com/ -> Device -> Inverter (new site) or Support (old site), use the registration number`} />
<DeviceConfig code={`meters: - name: my_grid type: template template: wattsonic usage: grid
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 247
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 247
host: 192.0.2.2 # Hostname
port: 502 # Port`} advanced={`meters:
- name: my_grid
type: template
template: wattsonic
usage: grid
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 247
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 247
host: 192.0.2.2 # Hostname
port: 502 # Port
delay: 100ms # optional`} />
<DeviceConfig code={`meters: - name: my_pv type: template template: wattsonic usage: pv
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 247
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 247
host: 192.0.2.2 # Hostname
port: 502 # Port`} advanced={`meters:
- name: my_pv
type: template
template: wattsonic
usage: pv
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 247
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 247
host: 192.0.2.2 # Hostname
port: 502 # Port
delay: 100ms # optional`} />
<DeviceConfig code={`meters: - name: my_battery type: template template: wattsonic usage: battery
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 247
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 247
host: 192.0.2.2 # Hostname
port: 502 # Port`} advanced={`meters:
- name: my_battery
type: template
template: wattsonic
usage: battery
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 247
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 247
host: 192.0.2.2 # Hostname
port: 502 # Port
capacity: 50 # Battery capacity in kWh (optional)
delay: 100ms # optional`} />
<DeviceConfig code={meters: - name: my_grid type: template template: sonnenbatterie-eco56 usage: grid host: 192.0.2.2 # IP address or hostname port: 7979 # Port (optional)
} />
<DeviceConfig code={meters: - name: my_pv type: template template: sonnenbatterie-eco56 usage: pv host: 192.0.2.2 # IP address or hostname port: 7979 # Port (optional)
} />
<DeviceConfig code={meters: - name: my_battery type: template template: sonnenbatterie-eco56 usage: battery host: 192.0.2.2 # IP address or hostname port: 7979 # Port (optional)
} advanced={meters: - name: my_battery type: template template: sonnenbatterie-eco56 usage: battery host: 192.0.2.2 # IP address or hostname port: 7979 # Port (optional) capacity: 50 # Battery capacity in kWh (optional)
} />
For active battery control, the "JSON Write API" must be activated via the sonnenBatterie web interface (under Software-Integration) and the API token generated there must be entered in the battery configuration under token
.
The two operating modes supported for the sonnenBatterie are “self-consumption” (default) and “time-of-use”. The mode can be adapted to the configuration of the sonnenBatterie via the 'defaultmode' parameter.
The power for grid charging can be adapted to the inverter power of the sonnenBatterie via the chargepower
parameter.
<DeviceConfig code={meters: - name: my_grid type: template template: sonnenbatterie usage: grid host: 192.0.2.2 # IP address or hostname port: 8080 # Port (optional)
} />
<DeviceConfig code={meters: - name: my_pv type: template template: sonnenbatterie usage: pv host: 192.0.2.2 # IP address or hostname port: 8080 # Port (optional)
} />
<DeviceConfig code={meters: - name: my_battery type: template template: sonnenbatterie usage: battery host: 192.0.2.2 # IP address or hostname port: 8080 # Port (optional) token: # API Token (required for active battery control) (optional)
} advanced={meters: - name: my_battery type: template template: sonnenbatterie usage: battery host: 192.0.2.2 # IP address or hostname port: 8080 # Port (optional) token: # API Token (required for active battery control) (optional) capacity: 50 # Battery capacity in kWh (optional) defaultmode: self-consumption # Default mode for active battery control (self-consumption or time-of-use) (optional) chargepower: 3300 # Charging power for grid charging in W (optional)
} />
<DeviceConfig code={`meters: - name: my_grid type: template template: wattsonic usage: grid
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 247
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 247
host: 192.0.2.2 # Hostname
port: 502 # Port`} advanced={`meters:
- name: my_grid
type: template
template: wattsonic
usage: grid
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 247
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 247
host: 192.0.2.2 # Hostname
port: 502 # Port
delay: 100ms # optional`} />
<DeviceConfig code={`meters: - name: my_pv type: template template: wattsonic usage: pv
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 247
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 247
host: 192.0.2.2 # Hostname
port: 502 # Port`} advanced={`meters:
- name: my_pv
type: template
template: wattsonic
usage: pv
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 247
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 247
host: 192.0.2.2 # Hostname
port: 502 # Port
delay: 100ms # optional`} />
<DeviceConfig code={`meters: - name: my_battery type: template template: wattsonic usage: battery
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 247
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 247
host: 192.0.2.2 # Hostname
port: 502 # Port`} advanced={`meters:
- name: my_battery
type: template
template: wattsonic
usage: battery
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 247
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 247
host: 192.0.2.2 # Hostname
port: 502 # Port
capacity: 50 # Battery capacity in kWh (optional)
delay: 100ms # optional`} />
<DeviceConfig code={meters: - name: my_pv type: template template: kostal-piko-mp-plus usage: pv host: 192.0.2.2 # IP address or hostname
} />
<DeviceConfig code={`meters: - name: my_grid type: template template: sungrow-inverter usage: grid
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} />
<DeviceConfig code={`meters: - name: my_pv type: template template: sungrow-inverter usage: pv
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} />
Connections via the WiNet-S dongle (WiFi or LAN) only work with the latest firmware. Older versions do not provide all required data (power, state of charge).
<DeviceConfig code={`meters: - name: my_grid type: template template: sungrow-hybrid usage: grid
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
timeout: 10s # optional`} />
<DeviceConfig code={`meters: - name: my_pv type: template template: sungrow-hybrid usage: pv
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
timeout: 10s # optional`} advanced={`meters:
- name: my_pv
type: template
template: sungrow-hybrid
usage: pv
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
timeout: 10s # optional
maxacpower: 0 # Maximum AC power of the hybrid inverter in W (optional)`} />
<DeviceConfig code={`meters: - name: my_battery type: template template: sungrow-hybrid usage: battery
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
timeout: 10s # optional`} advanced={`meters:
- name: my_battery
type: template
template: sungrow-hybrid
usage: battery
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
timeout: 10s # optional
capacity: 50 # Battery capacity in kWh (optional)
maxchargepower: # Power limit for grid charging. (optional)`} />
<DeviceConfig code={`meters: - name: my_grid type: template template: deye-hybrid-3p usage: grid
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} advanced={`meters:
- name: my_grid
type: template
template: deye-hybrid-3p
usage: grid
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
minsoc: 20 # Lower limit when discharging the battery (normal operation) (optional)
maxsoc: 95 # Upper limit when charging the battery from the grid (optional)`} />
<DeviceConfig code={`meters: - name: my_pv type: template template: deye-hybrid-3p usage: pv
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} advanced={`meters:
- name: my_pv
type: template
template: deye-hybrid-3p
usage: pv
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
minsoc: 20 # Lower limit when discharging the battery (normal operation) (optional)
maxsoc: 95 # Upper limit when charging the battery from the grid (optional)
maxacpower: 0 # Maximum AC power of the hybrid inverter in W (optional)`} />
<DeviceConfig code={`meters: - name: my_battery type: template template: deye-hybrid-3p usage: battery
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} advanced={`meters:
- name: my_battery
type: template
template: deye-hybrid-3p
usage: battery
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
capacity: 50 # Battery capacity in kWh (optional)
minsoc: 20 # Lower limit when discharging the battery (normal operation) (optional)
maxsoc: 95 # Upper limit when charging the battery from the grid (optional)`} />
<DeviceConfig code={`meters: - name: my_grid type: template template: deye-hybrid-hp3 usage: grid
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} advanced={`meters:
- name: my_grid
type: template
template: deye-hybrid-hp3
usage: grid
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
storageunit: 1 # optional
minsoc: 20 # Lower limit when discharging the battery (normal operation) (optional)
maxsoc: 95 # Upper limit when charging the battery from the grid (optional)`} />
<DeviceConfig code={`meters: - name: my_pv type: template template: deye-hybrid-hp3 usage: pv
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} advanced={`meters:
- name: my_pv
type: template
template: deye-hybrid-hp3
usage: pv
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
storageunit: 1 # optional
minsoc: 20 # Lower limit when discharging the battery (normal operation) (optional)
maxsoc: 95 # Upper limit when charging the battery from the grid (optional)
maxacpower: 0 # Maximum AC power of the hybrid inverter in W (optional)`} />
<DeviceConfig code={`meters: - name: my_battery type: template template: deye-hybrid-hp3 usage: battery
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} advanced={`meters:
- name: my_battery
type: template
template: deye-hybrid-hp3
usage: battery
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
storageunit: 1 # optional
capacity: 50 # Battery capacity in kWh (optional)
minsoc: 20 # Lower limit when discharging the battery (normal operation) (optional)
maxsoc: 95 # Upper limit when charging the battery from the grid (optional)`} />
<DeviceConfig code={`meters: - name: my_pv type: template template: deye-mi usage: pv
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} />
<DeviceConfig code={`meters: - name: my_pv type: template template: deye-storage usage: pv
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} />
<DeviceConfig code={`meters: - name: my_battery type: template template: deye-storage usage: battery
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} advanced={`meters:
- name: my_battery
type: template
template: deye-storage
usage: battery
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
capacity: 50 # Battery capacity in kWh (optional)`} />
<DeviceConfig code={`meters: - name: my_grid type: template template: deye-storage usage: grid
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} />
<DeviceConfig code={`meters: - name: my_pv type: template template: deye-string usage: pv
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} />
<DeviceConfig code={`meters: - name: my_grid type: template template: wattsonic usage: grid
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 247
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 247
host: 192.0.2.2 # Hostname
port: 502 # Port`} advanced={`meters:
- name: my_grid
type: template
template: wattsonic
usage: grid
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 247
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 247
host: 192.0.2.2 # Hostname
port: 502 # Port
delay: 100ms # optional`} />
<DeviceConfig code={`meters: - name: my_pv type: template template: wattsonic usage: pv
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 247
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 247
host: 192.0.2.2 # Hostname
port: 502 # Port`} advanced={`meters:
- name: my_pv
type: template
template: wattsonic
usage: pv
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 247
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 247
host: 192.0.2.2 # Hostname
port: 502 # Port
delay: 100ms # optional`} />
<DeviceConfig code={`meters: - name: my_battery type: template template: wattsonic usage: battery
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 247
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 247
host: 192.0.2.2 # Hostname
port: 502 # Port`} advanced={`meters:
- name: my_battery
type: template
template: wattsonic
usage: battery
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 247
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 247
host: 192.0.2.2 # Hostname
port: 502 # Port
capacity: 50 # Battery capacity in kWh (optional)
delay: 100ms # optional`} />
To be able to read the values of the smart meter for evcc correctly, the IR reader script must be changed so that the following JSON tags are generated:
- SML as the group name of the read parameters
- Total_in for the total consumption in KWh (4 decimal places)
- Total_out for the total feed-in in KWh (4 decimal places)
- Power_curr for the current consumption or the current feed-in in W (0 decimal places)
A corresponding IR reader script looks like this:
>D
>B
=>sensor53 r
>M 1
// highlight-next-line
+1,3,s,16,9600,SML
// highlight-next-line
1,77070100010800ff@1000,Gesamtverbrauch,KWh,Total_in,4
// highlight-next-line
1,77070100020800ff@1000,Gesamteinspeisung,KWh,Total_out,4
// highlight-next-line
1,77070100100700ff@1,Verbrauch,W,Power_curr,0
1,77070100600100ff@#,Zählernummer,,Meter_Id,0
#
<DeviceConfig code={meters: - name: my_grid type: template template: tasmota-sml usage: grid host: 192.0.2.2 # IP address or hostname user: # admin is default (optional) password: # Password of the user account (use single quotes in case of leading zeros) (optional)
} />
To use the optional battery control you need to generate a refresh
token for communicating with the Tesla API.
The following apps allow to create the token:
<DeviceConfig code={meters: - name: my_grid type: template template: tesla-powerwall usage: grid host: 192.0.2.2 # IP address or hostname password: # Password of the user "customer". By default this is the last 5 characters of password stated on the Tesla Gateway. refreshToken: # optional siteId: # optional product identifier of the energy site, use to override autodectction (optional)
} advanced={meters: - name: my_grid type: template template: tesla-powerwall usage: grid host: 192.0.2.2 # IP address or hostname password: # Password of the user "customer". By default this is the last 5 characters of password stated on the Tesla Gateway. refreshToken: # optional siteId: # optional product identifier of the energy site, use to override autodectction (optional) minsoc: 25 # Lower limit when discharging the battery (normal operation) (optional) maxsoc: 95 # Upper limit when charging the battery from the grid (optional)
} />
<DeviceConfig code={meters: - name: my_pv type: template template: tesla-powerwall usage: pv host: 192.0.2.2 # IP address or hostname password: # Password of the user "customer". By default this is the last 5 characters of password stated on the Tesla Gateway. refreshToken: # optional siteId: # optional product identifier of the energy site, use to override autodectction (optional)
} advanced={meters: - name: my_pv type: template template: tesla-powerwall usage: pv host: 192.0.2.2 # IP address or hostname password: # Password of the user "customer". By default this is the last 5 characters of password stated on the Tesla Gateway. refreshToken: # optional siteId: # optional product identifier of the energy site, use to override autodectction (optional) minsoc: 25 # Lower limit when discharging the battery (normal operation) (optional) maxsoc: 95 # Upper limit when charging the battery from the grid (optional)
} />
<DeviceConfig code={meters: - name: my_battery type: template template: tesla-powerwall usage: battery host: 192.0.2.2 # IP address or hostname password: # Password of the user "customer". By default this is the last 5 characters of password stated on the Tesla Gateway. refreshToken: # optional siteId: # optional product identifier of the energy site, use to override autodectction (optional)
} advanced={meters: - name: my_battery type: template template: tesla-powerwall usage: battery host: 192.0.2.2 # IP address or hostname password: # Password of the user "customer". By default this is the last 5 characters of password stated on the Tesla Gateway. refreshToken: # optional siteId: # optional product identifier of the energy site, use to override autodectction (optional) minsoc: 25 # Lower limit when discharging the battery (normal operation) (optional) maxsoc: 95 # Upper limit when charging the battery from the grid (optional)
} />
<DeviceConfig code={meters: - name: my_grid type: template template: tibber-pulse usage: grid token: 5K4MVS-OjfWhK_4yrjOlFe1F6kJXPVf7eQYggo8ebAE homeid: 96a14971-525a-4420-aae9-e5aedaa129ff # optional
} advanced={meters: - name: my_grid type: template template: tibber-pulse usage: grid token: 5K4MVS-OjfWhK_4yrjOlFe1F6kJXPVf7eQYggo8ebAE homeid: 96a14971-525a-4420-aae9-e5aedaa129ff # optional timeout: 1m # optional
} />
<DeviceConfig code={meters: - name: my_grid type: template template: tq-em usage: grid host: 192.0.2.2 # IP address or hostname port: 80 # Port (optional) password: # Password of the user account (use single quotes in case of leading zeros) (optional)
} />
<DeviceConfig code={meters: - name: my_grid type: template template: tq-em420 usage: grid host: 192.0.2.2 # IP address or hostname port: 80 # Port (optional) device: local # JSON-API -> Data Endpoint (optional) token: ey... # Access token for EM420 (Create in Profile -> Access tokens)
} />
PV only available with PV sensor
<DeviceConfig code={meters: - name: my_grid type: template template: varta usage: grid host: 192.0.2.2 # IP address or hostname port: 502 # Port (optional)
} />
<DeviceConfig code={meters: - name: my_pv type: template template: varta usage: pv host: 192.0.2.2 # IP address or hostname port: 502 # Port (optional)
} />
<DeviceConfig code={meters: - name: my_battery type: template template: varta usage: battery host: 192.0.2.2 # IP address or hostname port: 502 # Port (optional)
} advanced={meters: - name: my_battery type: template template: varta usage: battery host: 192.0.2.2 # IP address or hostname port: 502 # Port (optional) capacity: 50 # Battery capacity in kWh (optional)
} />
<DeviceConfig code={`meters: - name: my_grid type: template template: cg-em24 usage: grid
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} />
<DeviceConfig code={`meters: - name: my_charger type: template template: cg-em24 usage: charge
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} />
<DeviceConfig code={`meters: - name: my_grid type: template template: cg-emt3xx usage: grid
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} />
<DeviceConfig code={`meters: - name: my_charger type: template template: cg-emt3xx usage: charge
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} />
For grid usage, a grid meter VRM instance is require to enabled load management.
<DeviceConfig code={meters: - name: my_grid type: template template: victron-energy usage: grid host: 192.0.2.2 # IP address or hostname port: 502 # Port (optional) meterid: # Grid meter VRM instance- can be read out in VRM portal or via remoteUI. (optional)
} advanced={meters: - name: my_grid type: template template: victron-energy usage: grid host: 192.0.2.2 # IP address or hostname port: 502 # Port (optional) meterid: # Grid meter VRM instance- can be read out in VRM portal or via remoteUI. (optional) minsoc: 25 # Lower limit when discharging the battery (normal operation) (optional) maxsoc: 95 # Upper limit when charging the battery from the grid (optional)
} />
<DeviceConfig code={meters: - name: my_pv type: template template: victron-energy usage: pv host: 192.0.2.2 # IP address or hostname port: 502 # Port (optional)
} advanced={meters: - name: my_pv type: template template: victron-energy usage: pv host: 192.0.2.2 # IP address or hostname port: 502 # Port (optional) maxacpower: 0 # Maximum AC power of the hybrid inverter in W (optional) minsoc: 25 # Lower limit when discharging the battery (normal operation) (optional) maxsoc: 95 # Upper limit when charging the battery from the grid (optional)
} />
<DeviceConfig code={meters: - name: my_battery type: template template: victron-energy usage: battery host: 192.0.2.2 # IP address or hostname port: 502 # Port (optional)
} advanced={meters: - name: my_battery type: template template: victron-energy usage: battery host: 192.0.2.2 # IP address or hostname port: 502 # Port (optional) capacity: 50 # Battery capacity in kWh (optional) minsoc: 25 # Lower limit when discharging the battery (normal operation) (optional) maxsoc: 95 # Upper limit when charging the battery from the grid (optional)
} />
<DeviceConfig code={`meters: - name: my_grid type: template template: cg-emt3xx usage: grid
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} />
<DeviceConfig code={`meters: - name: my_charger type: template template: cg-emt3xx usage: charge
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} />
<DeviceConfig code={`meters: - name: my_grid type: template template: wattsonic usage: grid
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 247
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 247
host: 192.0.2.2 # Hostname
port: 502 # Port`} advanced={`meters:
- name: my_grid
type: template
template: wattsonic
usage: grid
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 247
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 247
host: 192.0.2.2 # Hostname
port: 502 # Port
delay: 100ms # optional`} />
<DeviceConfig code={`meters: - name: my_pv type: template template: wattsonic usage: pv
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 247
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 247
host: 192.0.2.2 # Hostname
port: 502 # Port`} advanced={`meters:
- name: my_pv
type: template
template: wattsonic
usage: pv
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 247
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 247
host: 192.0.2.2 # Hostname
port: 502 # Port
delay: 100ms # optional`} />
<DeviceConfig code={`meters: - name: my_battery type: template template: wattsonic usage: battery
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 247
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 247
host: 192.0.2.2 # Hostname
port: 502 # Port`} advanced={`meters:
- name: my_battery
type: template
template: wattsonic
usage: battery
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 247
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 247
host: 192.0.2.2 # Hostname
port: 502 # Port
capacity: 50 # Battery capacity in kWh (optional)
delay: 100ms # optional`} />
<DeviceConfig code={`meters: - name: my_grid type: template template: eastron-sdm220_230 usage: grid
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} />
<DeviceConfig code={`meters: - name: my_charger type: template template: eastron-sdm220_230 usage: charge
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} />
<DeviceConfig code={`meters: - name: my_grid type: template template: eastron-sdm220_230 usage: grid
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} />
<DeviceConfig code={`meters: - name: my_charger type: template template: eastron-sdm220_230 usage: charge
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} />
<DeviceConfig code={`meters: - name: my_grid type: template template: eastron usage: grid
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} />
<DeviceConfig code={`meters: - name: my_charger type: template template: eastron usage: charge
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} />
<DeviceConfig code={`meters: - name: my_grid type: template template: eastron usage: grid
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} />
<DeviceConfig code={`meters: - name: my_charger type: template template: eastron usage: charge
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} />
An externally connected S0 generation meter is required to record the solar production.
<DeviceConfig code={meters: - name: my_grid type: template template: youless usage: grid host: 192.0.2.2 # IP address or hostname
} />
<DeviceConfig code={meters: - name: my_pv type: template template: youless usage: pv host: 192.0.2.2 # IP address or hostname
} />
<DeviceConfig code={`meters: - name: my_grid type: template template: sofarsolar usage: grid
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} />
<DeviceConfig code={`meters: - name: my_pv type: template template: sofarsolar usage: pv
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} />
<DeviceConfig code={`meters: - name: my_battery type: template template: sofarsolar usage: battery
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} advanced={`meters:
- name: my_battery
type: template
template: sofarsolar
usage: battery
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
capacity: 50 # Battery capacity in kWh (optional)`} />
<DeviceConfig code={meters: - name: my_pv type: template template: zendure usage: pv account: [email protected] serial: VU5D99F74021B04 # You can find this in the Zendure App in the settings of the device region: EU # optional timeout: 10s # optional
} />
<DeviceConfig code={meters: - name: my_battery type: template template: zendure usage: battery account: [email protected] serial: VU5D99F74021B04 # You can find this in the Zendure App in the settings of the device region: EU # optional timeout: 10s # optional
} advanced={meters: - name: my_battery type: template template: zendure usage: battery account: [email protected] serial: VU5D99F74021B04 # You can find this in the Zendure App in the settings of the device region: EU # optional timeout: 10s # optional capacity: 2 # Battery capacity in kWh (optional)
} />
<DeviceConfig code={meters: - name: my_grid type: template template: slimmelezer usage: grid host: 192.0.2.2 # IP address or hostname
} advanced={meters: - name: my_grid type: template template: slimmelezer usage: grid host: 192.0.2.2 # IP address or hostname scale: 1000 # Use scale of 1000 for Zuidwijk Slimmelezer. Use scale 1 for ESPHome DSMR and mhendriks P1 Dongle
} />
Slimmelezer devices use different sensor names in Luxembourg.
<DeviceConfig code={meters: - name: my_grid type: template template: slimmelezer-luxembourg usage: grid host: 192.0.2.2 # IP address or hostname
} />
More recent slimmelezer devices use a different configuration. Try this template if the other one fails.
<DeviceConfig code={meters: - name: my_grid type: template template: slimmelezer-V2 usage: grid host: 192.0.2.2 # IP address or hostname
} />
meters:
- name: my_meter
type: custom
power: # power (W)
source: # plugin type
# ...
energy: # optional energy (kWh)
source: # plugin type
# ...
soc: # optional battery soc (%)
source: # plugin type
# ...
currents: # optional currents (A)
- source: # L1 plugin type
# ...
- source: # L2 plugin type
# ...
- source: # L3 plugin type
# ...
limitsoc: # optional lower soc limit (%)
source: # plugin type
# ...
batterymode: # optional battery mode (1: normal, 2: hold, 3: charge)
source: # plugin type
# ...
:::note
limitsoc
is set to the current value of 'soc' by EVCC to block further discharge of a battery e.g. for quick charging. Alternatively you can configure batterymode
and have an external control take care of the charging or discharging of the battery based on the given mode. When soc
and limitsoc
are configured batterymode
will be ignored.
:::
For demonstration purposes. Battery with a fixed set of values.
<DeviceConfig code={meters: - name: my_battery type: template template: demo-battery usage: battery power: # optional soc: # optional controllable: # Supports active battery control (optional)
} advanced={meters: - name: my_battery type: template template: demo-battery usage: battery power: # optional soc: # optional controllable: # Supports active battery control (optional) energy: # optional currentL1: # optional currentL2: # optional currentL3: # optional
} />
For demonstration purposes. Meter with a fixed set of values.
<DeviceConfig code={meters: - name: my_grid type: template template: demo-meter usage: grid power: # optional
} advanced={meters: - name: my_grid type: template template: demo-meter usage: grid power: # optional energy: # optional currentL1: # optional currentL2: # optional currentL3: # optional
} />
<DeviceConfig code={meters: - name: my_pv type: template template: demo-meter usage: pv power: # optional
} advanced={meters: - name: my_pv type: template template: demo-meter usage: pv power: # optional energy: # optional currentL1: # optional currentL2: # optional currentL3: # optional
} />
<DeviceConfig code={meters: - name: my_aux type: template template: demo-meter usage: aux power: # optional
} advanced={meters: - name: my_aux type: template template: demo-meter usage: aux power: # optional energy: # optional currentL1: # optional currentL2: # optional currentL3: # optional
} />
<DeviceConfig code={meters: - name: my_charger type: template template: demo-meter usage: charge power: # optional
} advanced={meters: - name: my_charger type: template template: demo-meter usage: charge power: # optional energy: # optional currentL1: # optional currentL2: # optional currentL3: # optional
} />
<DeviceConfig code={`meters: - name: my_battery type: template template: sunspec-inverter-control usage: battery
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} advanced={`meters:
- name: my_battery
type: template
template: sunspec-inverter-control
usage: battery
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
maxchargerate: 100 # Power limit for grid charging. (optional)
capacity: 50 # Battery capacity in kWh (optional)`} />
<DeviceConfig code={`meters: - name: my_battery type: template template: sunspec-battery-control usage: battery
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} advanced={`meters:
- name: my_battery
type: template
template: sunspec-battery-control
usage: battery
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
capacity: 50 # Battery capacity in kWh (optional)
minsoc: 25 # Lower limit when discharging the battery (normal operation) (optional)
maxsoc: 95 # Upper limit when charging the battery from the grid (optional)`} />
<DeviceConfig code={`meters: - name: my_grid type: template template: sunspec-hybrid usage: grid
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} />
<DeviceConfig code={`meters: - name: my_pv type: template template: sunspec-hybrid usage: pv
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} advanced={`meters:
- name: my_pv
type: template
template: sunspec-hybrid
usage: pv
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
maxacpower: 0 # Maximum AC power of the hybrid inverter in W (optional)`} />
<DeviceConfig code={`meters: - name: my_battery type: template template: sunspec-hybrid usage: battery
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} advanced={`meters:
- name: my_battery
type: template
template: sunspec-hybrid
usage: battery
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
capacity: 50 # Battery capacity in kWh (optional)`} />
<DeviceConfig code={`meters: - name: my_grid type: template template: sunspec-inverter usage: grid
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} />
<DeviceConfig code={`meters: - name: my_pv type: template template: sunspec-inverter usage: pv
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} />
<DeviceConfig code={`meters: - name: my_battery type: template template: sunspec-inverter usage: battery
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port`} advanced={`meters:
- name: my_battery
type: template
template: sunspec-inverter
usage: battery
# RS485 via adapter (Modbus RTU)
modbus: rs485serial
id: 1
device: /dev/ttyUSB0 # USB-RS485 Adapter Adresse
baudrate: 9600 # Prüfe die Geräteeinstellungen, typische Werte sind 9600, 19200, 38400, 57600, 115200
comset: "8N1" # Kommunikationsparameter für den Adapter
# RS485 via TCP/IP (Modbus RTU)
modbus: rs485tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
# Modbus TCP
modbus: tcpip
id: 1
host: 192.0.2.2 # Hostname
port: 502 # Port
capacity: 50 # Battery capacity in kWh (optional)`} />
<DeviceConfig code={meters: - name: my_grid type: template template: volkszaehler-http usage: grid url: # Example: http://zaehler.network.local:8080/api/data (optional) uuid:
} />
<DeviceConfig code={meters: - name: my_grid type: template template: volkszaehler-importexport usage: grid url: # The URL is for example: http://zaehler.network.local:8080/api/data (optional) importuuid: exportuuid:
} />
<DeviceConfig code={meters: - name: my_grid type: template template: volkszaehler-ws usage: grid host: 192.0.2.2 # IP address or hostname port: 8082 # Port (optional) uuid:
} />
<DeviceConfig code={meters: - name: my_grid type: template template: vzlogger usage: grid host: 192.0.2.2 # IP address or hostname port: 8081 # Port (optional) uuid:
} advanced={meters: - name: my_grid type: template template: vzlogger usage: grid host: 192.0.2.2 # IP address or hostname port: 8081 # Port (optional) uuid: scale: 1 # Multiply by this value (optional) l1currentuuid: # optional l2currentuuid: # optional l3currentuuid: # optional l1poweruuid: # optional l2poweruuid: # optional l3poweruuid: # optional l1voltageuuid: # optional l2voltageuuid: # optional l3voltageuuid: # optional cache: 1s # Time interval with when data should be reloaded from the vehicle (optional)
} />
<DeviceConfig code={meters: - name: my_pv type: template template: fritzdect usage: pv uri: https://fritz.box # HTTP(S) address (optional) user: # User account (e.g. email address, user id, etc.) password: # Password of the user account (use single quotes in case of leading zeros) ain: 307788992233 # The AIN is printed on the type label on the back of the device. Embed it in double quotes in case of leading zeroes.
} />
<DeviceConfig code={meters: - name: my_charger type: template template: fritzdect usage: charge uri: https://fritz.box # HTTP(S) address (optional) user: # User account (e.g. email address, user id, etc.) password: # Password of the user account (use single quotes in case of leading zeros) ain: 307788992233 # The AIN is printed on the type label on the back of the device. Embed it in double quotes in case of leading zeroes.
} />
<DeviceConfig code={meters: - name: my_grid type: template template: homematic usage: grid host: 192.0.2.2 # IP address or hostname device: '0001EE89AAD848' # Homematic device id like shown in the CCU web user interface. user: # User account (e.g. email address, user id, etc.) (optional) password: # Password of the user account (use single quotes in case of leading zeros) (optional) meterchannel: 6 # Homematic meter channel number like shown after the device id separated with a colon in the CCU web user interface.
} advanced={meters: - name: my_grid type: template template: homematic usage: grid host: 192.0.2.2 # IP address or hostname device: '0001EE89AAD848' # Homematic device id like shown in the CCU web user interface. user: # User account (e.g. email address, user id, etc.) (optional) password: # Password of the user account (use single quotes in case of leading zeros) (optional) meterchannel: 6 # Homematic meter channel number like shown after the device id separated with a colon in the CCU web user interface. cache: 1s # In case of duty cycle problems try a cache setting of 30s. (optional)
} />
<DeviceConfig code={meters: - name: my_pv type: template template: homematic usage: pv host: 192.0.2.2 # IP address or hostname device: '0001EE89AAD848' # Homematic device id like shown in the CCU web user interface. user: # User account (e.g. email address, user id, etc.) (optional) password: # Password of the user account (use single quotes in case of leading zeros) (optional) meterchannel: 6 # Homematic meter channel number like shown after the device id separated with a colon in the CCU web user interface.
} advanced={meters: - name: my_pv type: template template: homematic usage: pv host: 192.0.2.2 # IP address or hostname device: '0001EE89AAD848' # Homematic device id like shown in the CCU web user interface. user: # User account (e.g. email address, user id, etc.) (optional) password: # Password of the user account (use single quotes in case of leading zeros) (optional) meterchannel: 6 # Homematic meter channel number like shown after the device id separated with a colon in the CCU web user interface. cache: 1s # In case of duty cycle problems try a cache setting of 30s. (optional)
} />
<DeviceConfig code={meters: - name: my_charger type: template template: homematic usage: charge host: 192.0.2.2 # IP address or hostname device: '0001EE89AAD848' # Homematic device id like shown in the CCU web user interface. user: # User account (e.g. email address, user id, etc.) (optional) password: # Password of the user account (use single quotes in case of leading zeros) (optional) meterchannel: 6 # Homematic meter channel number like shown after the device id separated with a colon in the CCU web user interface.
} advanced={meters: - name: my_charger type: template template: homematic usage: charge host: 192.0.2.2 # IP address or hostname device: '0001EE89AAD848' # Homematic device id like shown in the CCU web user interface. user: # User account (e.g. email address, user id, etc.) (optional) password: # Password of the user account (use single quotes in case of leading zeros) (optional) meterchannel: 6 # Homematic meter channel number like shown after the device id separated with a colon in the CCU web user interface. cache: 1s # In case of duty cycle problems try a cache setting of 30s. (optional)
} />
<DeviceConfig code={meters: - name: my_pv type: template template: mystrom usage: pv host: 192.0.2.2 # IP address or hostname
} />
<DeviceConfig code={meters: - name: my_charger type: template template: mystrom usage: charge host: 192.0.2.2 # IP address or hostname
} />
<DeviceConfig code={meters: - name: my_grid type: template template: shelly-1pm usage: grid host: 192.0.2.2 # IP address or hostname user: # User account (e.g. email address, user id, etc.) (optional) password: # Password of the user account (use single quotes in case of leading zeros) (optional) channel: 0 # optional
} />
<DeviceConfig code={meters: - name: my_pv type: template template: shelly-1pm usage: pv host: 192.0.2.2 # IP address or hostname user: # User account (e.g. email address, user id, etc.) (optional) password: # Password of the user account (use single quotes in case of leading zeros) (optional) channel: 0 # optional
} />
<DeviceConfig code={meters: - name: my_charger type: template template: shelly-1pm usage: charge host: 192.0.2.2 # IP address or hostname user: # User account (e.g. email address, user id, etc.) (optional) password: # Password of the user account (use single quotes in case of leading zeros) (optional) channel: 0 # optional
} />
<DeviceConfig code={meters: - name: my_pv type: template template: tasmota usage: pv host: 192.0.2.2 # IP address or hostname user: # admin is default (optional) password: # Password of the user account (use single quotes in case of leading zeros) (optional) channel: 1 # Meterchannel number (1-8)
} />
<DeviceConfig code={meters: - name: my_battery type: template template: tasmota usage: battery host: 192.0.2.2 # IP address or hostname user: # admin is default (optional) password: # Password of the user account (use single quotes in case of leading zeros) (optional) channel: 1 # Meterchannel number (1-8)
} />
<DeviceConfig code={meters: - name: my_charger type: template template: tasmota usage: charge host: 192.0.2.2 # IP address or hostname user: # admin is default (optional) password: # Password of the user account (use single quotes in case of leading zeros) (optional) channel: 1 # Meterchannel number (1-8)
} />
Meter channels 1,2,3 must be used.
<DeviceConfig code={meters: - name: my_grid type: template template: tasmota-3p usage: grid host: 192.0.2.2 # IP address or hostname user: # admin is default (optional) password: # Password of the user account (use single quotes in case of leading zeros) (optional)
} />
<DeviceConfig code={meters: - name: my_pv type: template template: tasmota-3p usage: pv host: 192.0.2.2 # IP address or hostname user: # admin is default (optional) password: # Password of the user account (use single quotes in case of leading zeros) (optional)
} />
<DeviceConfig code={meters: - name: my_battery type: template template: tasmota-3p usage: battery host: 192.0.2.2 # IP address or hostname user: # admin is default (optional) password: # Password of the user account (use single quotes in case of leading zeros) (optional)
} />
<DeviceConfig code={meters: - name: my_charger type: template template: tasmota-3p usage: charge host: 192.0.2.2 # IP address or hostname user: # admin is default (optional) password: # Password of the user account (use single quotes in case of leading zeros) (optional)
} />
<DeviceConfig code={meters: - name: my_pv type: template template: tplink usage: pv host: 192.0.2.2 # IP address or hostname
} />
<DeviceConfig code={meters: - name: my_pv type: template template: tapo usage: pv host: 192.0.2.2 # IP address or hostname user: # User account (e.g. email address, user id, etc.) password: # Password of the user account (use single quotes in case of leading zeros)
} />