Driver Details

New Community

Eltako DSZ16 Meter (via ZGW16)

By: Grzegorz Lotysz
Updated: Aug. 19, 2026
Version: 1.2
Download Driver
Rating: 0.0 (0 ratings)
Log in to rate this driver

Eltako DSZ16 energy meter driver for RTI XP-8 — v1.2

Reads an Eltako DSZ16 meter over Modbus TCP through the ZGW16WL-IP gateway. Eltako is a German manufacturer based in Fellbach near Stuttgart; their DIN-rail metering is available across Europe.

What it needs: DSZ16 meter on the main service connection, ZGW16WL-IP gateway reachable over LAN, Integration Designer.

What it does:

Full telemetry — per-phase voltages, currents and power, totals, power factor, frequency, import and export energy.

Net energy balance per settlement window, hourly or quarter-hourly, with a full day of history.

Surplus management: calculates how long a load can run on real PV surplus without dropping the window balance below a reserve you set, then signals an event.

What you get: a Surplus Available / Surplus Ended event pair to attach your macros to, load state read back through a system variable subscription, and no control logic forced on you — the driver signals, your macros decide.

Balance and surplus require a bidirectional meter (DSZ16DZ, DSZ16DZE, DSZ16WDZ). One-way meters get import only.

Manual in English and Polish. Give it a try and let me know below how it behaves on your site: biuro@magiadzwieku.pl

Eltako DSZ16 Meter (via ZGW16) - Modbus TCP Driver

This driver reads the Eltako DSZ16 energy meter over Modbus TCP through the ZGW16WL-IP gateway and publishes all measurement values (voltages, currents, active/apparent/reactive power per phase and total, power factor, frequency, import/export energy) as system variables.

On a bidirectional meter the driver also accumulates the net energy balance over hourly and quarter-hourly settlement windows (with a full day of history) and can signal events when the exported surplus is large enough to run a load without dropping the window balance below a configured reserve. The driver never switches anything itself - it signals the "Surplus Available" and "Surplus Ended" events, and the macros you attach to them in Integration Designer do the switching.

Balance and surplus management require a bidirectional meter (DSZ16DZ, DSZ16DZE, DSZ16WDZ), because the Total export active energy register exists on those models only. On a one-way meter (DSZ16D, DSZ16DE, DSZ16WD) the driver accumulates import only and writes no balance values.

FULL MANUAL: see the PDF supplied with this driver - "Eltako_DSZ16_ZGW16_RTI_Driver_Manual_EN.pdf" (English) or "Eltako_DSZ16_ZGW16_Driver_RTI_Instrukcja_PL.pdf" (Polish). It covers all configuration settings, the surplus decision model, the event and system function reference, a commissioning checklist and troubleshooting.

Quick setup:

1. ZGW16 Gateway Address - IP address or hostname of the ZGW16WL-IP gateway.

2. ZGW16 Gateway Modbus TCP Port - Modbus TCP port of the gateway (default 502 - verify on the live device, "Modbus" menu in its web interface).

3. Meter Modbus Unit ID / RTU Address - the RTU bus address configured on the DSZ16 meter (register 40021), passed through by the ZGW16 as the Modbus TCP Unit Identifier.

4. Meter Poll Interval - how often (seconds) to poll the meter. Local Modbus TCP has no daily request quota.

5. Meter Direction Type - bidirectional or one-way. Selected by you; the driver reads the meter mode register only to confirm the choice and raises the "Meter Type Mismatch" event if the two disagree.

6. Balance Window Mode - hourly, quarter-hourly or both. Settlement period lengths differ between grid operators and countries; select the one that applies to the installation.

7. Invert Power Sign - tick only if the meter reports import from the grid as a negative value. Verify on the live meter: with PV running and a surplus present, the balance variables must be positive.

8. Surplus Management (optional, bidirectional meters only) - set Device Power, Min Run Time and Reserve Energy, and point Device Status Variable at the boolean state variable of the driver that switches your load, so this driver works from the load's real state.

Please report any bugs to biuro@magiadzwieku.pl

Version History

Version 1.2 (2026-08-19):

• Energy balance over hourly and quarter-hourly settlement windows, selectable in the driver configuration, with a full day of history (24 hourly and 96 quarter-hourly values, balance and import kept separately). Accumulated as a running average of net power rather than a difference of energy registers, so the resolution is usable within a quarter-hour window and the end-of-window balance can be forecast.

• Surplus management: converts the available surplus into a runnable time for a load of known power, keeps a configurable energy reserve in the window, and signals the new "Surplus Available" (SON) and "Surplus Ended" (SOF) events. The load is dropped at the window boundary, because each settlement window is a separate balance.

• The state of the controlled load is read through a system variable subscription to the driver that actually switches it, so a failed macro or a manual override does not desynchronise the logic. Falls back to assuming its own events if no variable is selected, and reports which source is in use.

• Meter type (bidirectional / one-way) is now selected by the integrator; the meter mode register is used only to confirm that choice and raises the new "Meter Type Mismatch" (MTM) event on a disagreement. The non-MID variants DSZ16DE and DSZ16DZE report the same mode code as the DSZ16D and DSZ16DZ and are handled identically.

• Added "Reset Balance Windows" and "Clear Balance History (today)" system functions, and the "Hourly Window Closed" (HWC) / "Quarter-Hourly Window Closed" (QWC) events.

• Settings and variables that cannot apply to the selected configuration are now hidden in Integration Designer.

• All driver texts, configuration descriptions and debug output are in English. Full manual supplied as a PDF in English and Polish.

Version 1.1 (2026-07-24):

• Free driver - removed the licence key requirement entirely. No trial timer, no "Licence Key" setting - full functionality always enabled.

Version 1.0 (2026-07-24):

• Initial release. Extracted from the combined "SolarEdge Modbus TCP + Eltako DSZ16 (ZGW16)" driver (DSZ16_ZGW16_Development branch, v1.1) - meter communication code carried over unchanged, SolarEdge Cloud/Modbus, ENTSOE/PSE/SOLCAST integrations and the surplus/import "smart heater" control logic removed (out of scope for this driver, by design).

• Correction vs. the original: the meter connection watchdog now explicitly re-opens the TCP connection after forcing a disconnect (Close() followed by Open()), instead of relying on automatic reconnect - per the XP-8 Driver Developer's Guide, automatic reconnect does not occur after a script-initiated Close().

• Added "Reconnect Meter" system function and "Meter Data Updated" / "Meter Connection Lost" system events for use in Integration Designer programming.

Please log in to leave a comment.
Loading comments...