
The Kostal PIKO IQ and PLENTICORE plus series are hybrid solar inverters with up to three MPPT trackers and optional battery storage. TapHome connects directly to the inverter via Modbus TCP over Ethernet. The template covers models PIKO IQ, PLENTICORE G1, G2, G3 and PLENTICORE MP G3 across power classes from 3 kW to 10 kW.
The template provides PV string monitoring (power, current, voltage for each DC input), battery state-of-charge with configurable min/max limits, yield statistics (daily, monthly, yearly, total), AC power output and inverter diagnostics.
Network connection
The inverter has an RJ45 Ethernet port on the Smart Communication Board. Connect it to the same local network as TapHome Core using a standard Ethernet cable.
- Protocol: Modbus TCP
- Port: 1502 (non-standard – differs from the default Modbus TCP port 502)
- Default Unit-ID: 71
- Byte order: Little-endian CDAB (default, configurable)
The Kostal inverter uses TCP port 1502, not the standard Modbus port 502. Ensure this is configured correctly in TapHome during template import. The default Unit-ID is 71 (the TapHome template parameter defaults to 1 – adjust to 71 to match the factory setting).
Configuration
Enabling Modbus TCP communication
Modbus TCP must be explicitly enabled on the inverter before TapHome can communicate with it:
- Open the inverter’s web interface (navigate to the inverter’s IP address in a browser)
- Go to Settings > Modbus/SunSpec (TCP)
- Enable Modbus TCP
- Verify the byte order is set to Little-endian (CDAB) – this is the default and matches the TapHome template
- Note the Unit-ID (default 71) and the TCP port (default 1502)
When importing the template in TapHome, provide:
- IP Address – the inverter’s IP on the local network
- Slave ID – set to 71 (matching the inverter’s Unit-ID)
Assign a static IP address or DHCP reservation for the inverter in the router settings. The inverter does not support mDNS, so a stable IP address prevents connectivity issues after power cycles.
Device capabilities
PV string monitoring
Three PV string sensors (DC1, DC2, DC3) each report:
- Power (kW) – instantaneous output from the MPPT tracker
- Current (A) and Voltage (V) – available as service attributes on each power device
DC3 can optionally be used for battery connection instead of a third PV string, depending on the inverter model and installation.
- Total DC Power – combined output from all connected PV strings (register H:1066)
- Total AC Active Power – total power fed to the AC grid side (register H:172)
Battery management
- Battery SOC – current state of charge (0–100%). The template also exposes battery voltage, temperature, and battery type as service attributes.
- SOC Settings (service action) – configure the minimum SOC (1–90%) and maximum SOC (10–100%) limits directly from TapHome. This controls how deeply the battery is discharged and how fully it is charged.
| Service Attribute | Description |
|---|---|
| Battery Voltage | Current battery voltage (V) |
| Battery Temperature | Current battery temperature (C) |
| Minimum SOC | Configured lower SOC limit (%) |
| Maximum SOC | Configured upper SOC limit (%) |
| Battery Type | Connected battery brand (BYD, LG, BMZ, Pyontech, Dyness, VARTA, etc.) |
Yield statistics
Four energy counters track PV production over different time periods:
| Device | Description |
|---|---|
| Daily Yield | Energy produced today (kWh) |
| Monthly Yield | Energy produced this month (kWh) |
| Yearly Yield | Energy produced this year (kWh) |
| Total Yield | Cumulative energy since installation (kWh) |
All yield values are read from the inverter in Wh and converted to kWh by the template.
Inverter diagnostics
Module-level service attributes provide system status:
| Service Attribute | Description |
|---|---|
| Inverter State | Current operating state (Off, Init, FeedIn, Throttled, Standby, Overheating, Shutdown, and others – 19 states total) |
| Grid Frequency | AC grid frequency (Hz) |
| MODBUS Enable | Whether Modbus TCP communication is active |
| IP Enable | Whether IP networking is enabled |
Additional capabilities
The Kostal PLENTICORE also exposes Modbus registers for per-phase AC power monitoring, home consumption breakdown (from PV, battery, and grid), battery charge/discharge cycling data, external power meter readings, and active power curtailment control. Detailed battery energy counters (DC charge/discharge, AC charge/discharge, grid export) and I/O board switched outputs are also available. These can be added to the TapHome template in a future update.
Troubleshooting
No Modbus communication
- Verify Modbus TCP is enabled in the inverter web UI under Settings > Modbus/SunSpec (TCP)
- Confirm the TCP port is 1502 (not the standard 502)
- Verify the Unit-ID matches between the inverter (default 71) and TapHome template configuration
- Ensure the byte order is set to Little-endian (CDAB) on the inverter
- Check that TapHome Core and the inverter are on the same network/subnet
Incorrect readings or zero values
- The inverter reports zero power values when it is not producing (nighttime, inverter off). This is normal behavior.
- If yield values appear incorrect, verify the byte order setting – Big-endian (ABCD) will produce garbled Float values when the template expects Little-endian (CDAB).
Battery SOC not updating
- Verify a compatible battery is connected and recognized (check the Battery Type service attribute)
- If Battery Type shows “No battery (PV-functionality)”, the inverter is operating in PV-only mode without battery storage