All devices

Hoymiles · Micro-inverter gateway

HMT / HMS micro-inverters via DTU PRO S datalogger Modbus register map

Download JSONSupplier documentationSuggest an edit

Default configuration

Protocol
Modbus TCP
Port
502
Unit ID
1
Addressing
0-based
Byte order
Big endian
Word order
High word first

Register map

AddressCountNameTypeUnitScaleAccess
41041
Micro-inverter 1 AC power
Byte offset 0x10 in the inverter's block; the DTU reports 0.1 W steps.
UInt16W0.1R
41062
Micro-inverter 1 lifetime production
Byte offset 0x14 in the inverter's block.
UInt32Wh1R

Notes

Register layout of the DTU PRO S Modbus TCP server, taken from the evcc implementation meter/hoymiles-dtu-mbtcp.go (evcc-io/evcc) and checked against Hoymiles' DTU Modbus register map. Modbus TCP on port 502, unit ID 1, holding registers; Modbus TCP has to be enabled on the datalogger, which then has to be connected to the LAN. Each micro-inverter occupies a 0x28 byte (20 register) block starting at 0x1000: inverter 1 at 0x1000, inverter 2 at 0x1014, inverter 3 at 0x1028 and so on. Inside a block the inverter serial number is in bytes 0x01-0x06, the port number in byte 0x07, the AC power in bytes 0x10-0x11 (0.1 W steps) and the lifetime production in bytes 0x14-0x17 (Wh). The registers below are block 1; add 20 registers per further inverter. The datalogger returns zeros for unoccupied slots, which is how the scan stops.