evcc-io/templates/definition/meter/bgetech-ds100.yaml
2025-12-26 09:00:07 +01:00

108 lines
2.5 KiB
YAML

template: bgetech-ds100
covers: ["bge_tech_ds100"]
products:
- brand: B+GE-TECH
description:
generic: DS100
params:
- name: usage
choice: ["grid", "pv", "charge"]
- name: modbus
choice: ["rs485"]
baudrate: 1200
render: |
type: custom
power:
source: modbus
{{- include "modbus" . | indent 2 }}
register:
address: 0x0420 # Total active power
type: holding
decode: int32
{{- if eq .usage "pv" }}
scale: -1
{{- end }}
energy:
source: modbus
{{- include "modbus" . | indent 2 }}
register:
{{- if eq .usage "pv" }}
address: 0x0118 # Active energy (feed-in)
{{- else }}
address: 0x010E # Active energy (consumption)
{{- end }}
type: holding
decode: int32
scale: 0.01
currents:
- source: modbus
{{- include "modbus" . | indent 2 }}
register:
address: 0x0410 # Current of A phase
type: holding
decode: int32
scale: 0.001
- source: modbus
{{- include "modbus" . | indent 2 }}
register:
address: 0x0412 # Current of B phase
type: holding
decode: int32
scale: 0.001
- source: modbus
{{- include "modbus" . | indent 2 }}
register:
address: 0x0414 # Current of C phase
type: holding
decode: int32
scale: 0.001
voltages:
- source: modbus
{{- include "modbus" . | indent 2 }}
register:
address: 0x0400 # Voltage of A phase
type: holding
decode: int32
scale: 0.001
- source: modbus
{{- include "modbus" . | indent 2 }}
register:
address: 0x0402 # Voltage of B phase
type: holding
decode: int32
scale: 0.001
- source: modbus
{{- include "modbus" . | indent 2 }}
register:
address: 0x0404 # Voltage of C phase
type: holding
decode: int32
scale: 0.001
powers:
- source: modbus
{{- include "modbus" . | indent 2 }}
register:
address: 0x041A # Active power of A phase
type: holding
decode: int32
{{- if eq .usage "pv" }}
scale: -1
{{- end }}
- source: modbus
{{- include "modbus" . | indent 2 }}
register:
address: 0x041C # Active power of B phase
type: holding
decode: int32
{{- if eq .usage "pv" }}
scale: -1
{{- end }}
- source: modbus
{{- include "modbus" . | indent 2 }}
register:
address: 0x041E # Active power of C phase
type: holding
decode: int32
{{- if eq .usage "pv" }}
scale: -1
{{- end }}