
Kostal Plenticore Hybrid, incl. grid charging of the house battery (battery)
The Kostal Plenticore Hybrid is a three-phase hybrid PV inverter with integrated battery management, designed for residential and small-commercial solar-plus-storage installations. This template targets the external battery control interface over Modbus TCP, exposing two write-only setpoint registers: batterymode_a (address 1034) sets the absolute DC battery charge power, and batterymode_b (address 1040) sets the maximum discharge power limit. Together they allow an energy management system to command grid charging of the house battery and to cap discharge, without relying on the inverter's internal control logic. The inverter expects these setpoints to be written cyclically before its watchdog timeout expires. ModbusCloud writes registers at most once per minute, so control through ModbusCloud needs a watchdog timeout well above one minute. With a shorter timeout it is not possible, while reading values works.
- Protocol
- Modbus TCP
- Connection
- Ethernet, Modbus TCP
- Registers
- 2, read and write
- Brand
- Kostal
- Last updated
Registers (2)
0 read, 2 write
| Name | Unit | Access | Address (Hidden until you enter your email) | Function (hidden) | Type (hidden) |
|---|---|---|---|---|---|
| batterymode_a | W | Write | |||
| batterymode_b | W | Write |
Loading registers…
Send your device list
If a device is not in the library yet, we build the template for free as soon as we have the register data.
Use cases
- Command grid charging of the house battery during low-tariff periods by writing a target charge power to register 1034.
- Limit battery discharge to zero watts via register 1040 to preserve stored energy during peak-price windows.
- Verify that external battery control mode is active by confirming the Gateway is writing both setpoint registers cyclically.
- Watch for an unintended fallback to internal inverter control when writes arrive later than the watchdog timeout.
- Compare grid-charging sessions over time to validate energy costs against dynamic tariff schedules in the portal.
Installation
Enable external battery control on the Kostal Plenticore Hybrid using installer-level access: navigate to the battery management section and set the control mode to 'External via protocol (Modbus TCP)', then configure the longest watchdog timeout the inverter allows, ideally well above one minute, because ModbusCloud writes registers at most once per minute.
In the inverter's Modbus or SunSpec settings, set the byte order to Big-Endian (ABCD); without this, float32 register values will be decoded incorrectly by any external client.
Connect the Plenticore Hybrid's RJ45 port (Smart Communication Board) to the same LAN as the ModbusCloud Gateway, then add the device in the portal: enter the inverter IP address, port 1502, and unit ID 71 (the Kostal default).
Import this template in the ModbusCloud portal, assign it to the Gateway, and confirm the connection by checking that write operations to registers 1034 and 1040 are acknowledged without Modbus exception responses.
Things to watch for
Write commands are accepted but the battery ignores them. Why?
External battery control must be explicitly enabled in the inverter's installer menu and set to 'External via protocol (Modbus TCP)'. If the mode is set to internal or digital I/O, the inverter will silently discard Modbus setpoints. Confirm the mode with the installer access credentials and retry.
The inverter reverts to internal control after a short time. What causes this?
The Plenticore Hybrid uses a watchdog timer: if the setpoint registers are not written cyclically within the configured timeout period, the inverter falls back to its own battery management. At least one of these registers must be written before the timeout elapses. ModbusCloud writes registers at most once per minute, so this only works with a watchdog timeout well above one minute.
Register values read back as nonsensical large numbers. What is wrong?
The Plenticore Hybrid defaults to Little-Endian (CDAB) byte order. External clients expecting Big-Endian float32 will decode garbage values. Set byte order to Big-Endian (ABCD) in the inverter's Modbus or SunSpec settings, then re-read the registers to confirm plausible values.
Is it safe to write any watt value to the charge and discharge setpoint registers?
Use caution. Writing values that exceed the battery's or inverter's rated power limits can trigger protection faults or may affect warranty conditions. The setpoints are not stored persistently: they are discarded on inverter restart. Always test with conservative values first and verify behavior before deploying automated control logic.
Want to see how it works?











