Skip to content
Closed
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
138 changes: 138 additions & 0 deletions templates/definition/meter/eltako-modbus.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,138 @@
template: eltako-modbus
products:
- brand: Eltako
description:
generic: DSZ15DZMOD
requirements:
description:
de: |
Getestet zusammen mit dem Modbus-Gateway von Eltako (ZGW16-IP)
Im Gateway müssen folgende Register aktiviert weerden: 30001, 30003, 30005, 30007, 30009, 30011, 30013, 30015, 30017, 30053, 30073, 30075
Comment thread
sourcery-ai[bot] marked this conversation as resolved.
Outdated
Comment thread
sourcery-ai[bot] marked this conversation as resolved.
Outdated
params:
- name: usage
choice: ["charge", "grid", "pv", "battery"]
- name: host
- name: port
default: 502
- name: meter_id
default: 1
description:
de: Modbus Slave-ID des spezifischen Zählers
en: Modbus slave id of the specific meter
render: |
type: custom
power: # current power
source: modbus
id: {{ .meter_id }}
uri: {{ joinHostPort .host .port }}
register:
address: 52
type: input
decode: int32
timeout: 2s

Comment thread
SnejPro marked this conversation as resolved.
Outdated
energy: # meter in kwh
source: modbus
id: {{ .meter_id }}
uri: {{ joinHostPort .host .port }}
register:
address: 72
type: input
decode: int32
timeout: 2s
scale: 0.01
Comment thread
sourcery-ai[bot] marked this conversation as resolved.
Outdated
returnenergy: # meter in kwh
source: modbus
id: {{ .meter_id }}
uri: {{ joinHostPort .host .port }}
register:
address: 74
type: input
decode: int32
timeout: 2s
scale: 0.01

powers: # phase powers in W

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Are currents signed? Then powers should be removed.

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think so.
But when i remove them the per phase powers are missing.

Without per phase powers in .yaml:
Image

With per phase powers in .yaml:
Image

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

So? They're not used for anything.

@SnejPro SnejPro Jun 23, 2026

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Personally I'm interested in this and evcc already shows them for my Sunny Home Manager aswell.

I would suggest to make the power readings per phase optional.

- source: modbus
id: {{ .meter_id }}
uri: {{ joinHostPort .host .port }}
register:
address: 12
type: input
decode: int32
timeout: 2s
- source: modbus
id: {{ .meter_id }}
uri: {{ joinHostPort .host .port }}
register:
address: 14
type: input
decode: int32
timeout: 2s
- source: modbus
id: {{ .meter_id }}
uri: {{ joinHostPort .host .port }}
register:
address: 16
type: input
decode: int32
timeout: 2s

currents: # phase currents in A
- source: modbus
id: {{ .meter_id }}
uri: {{ joinHostPort .host .port }}
register:
address: 6
type: input
decode: int32
timeout: 2s
scale: 0.01
- source: modbus
id: {{ .meter_id }}
uri: {{ joinHostPort .host .port }}
register:
address: 8
type: input
decode: int32
timeout: 2s
scale: 0.01
- source: modbus
id: {{ .meter_id }}
uri: {{ joinHostPort .host .port }}
register:
address: 10
type: input
decode: int32
timeout: 2s
scale: 0.01

voltages: # phase voltages in V
- source: modbus
id: {{ .meter_id }}
uri: {{ joinHostPort .host .port }}
register:
address: 0
type: input
decode: int32
timeout: 2s
scale: 0.01
- source: modbus
id: {{ .meter_id }}
uri: {{ joinHostPort .host .port }}
register:
address: 2
type: input
decode: int32
timeout: 2s
scale: 0.01
- source: modbus
id: {{ .meter_id }}
uri: {{ joinHostPort .host .port }}
register:
address: 4
type: input
decode: int32
timeout: 2s
scale: 0.01

Loading