
The Sofar Solar HYD 5/6/8/10/15/20KTL-3PH is a three-phase hybrid inverter series combining solar PV generation with battery energy storage. TapHome connects via Modbus RTU over RS-485 using the inverter’s 16-pin COM port, reading holding registers for real-time PV output, battery status, grid power, per-phase voltages, and energy counters.
The inverter supports up to 31 devices on a single RS-485 bus with daisy-chain wiring. Each inverter requires a unique Modbus Slave ID (configurable, default 1). Communication parameters are fixed at 9600 baud, 8N1.
Hardware connection
Communication interfaces

The RS-485 connection for TapHome monitoring uses the COM port — a 16-pin multifunctional connector on the bottom of the inverter.
COM port pinout

Relevant pins for TapHome connection:
| Pin | Function | Note |
|---|---|---|
| 1 | RS485A1-1 (+) | Monitoring/control RS-485 signal A |
| 2 | RS485A1-2 (+) | Daisy-chain second connector |
| 3 | RS485B1-1 (-) | RS-485 signal B |
| 4 | RS485B1-2 (-) | Daisy-chain second connector |
| 5 | RS485A2 (+) | Smart meter — separate bus |
| 6 | RS485B2 (-) | Smart meter — separate bus |
| 7 | CAN0_H | BMS communication (CAN) |
| 8 | CAN0_L | BMS communication (CAN) |
Connect TapHome to Pins 1+3 (or 2+4):
- Pin 1 (RS485A1) → A+/D+ on TapHome RS-485
- Pin 3 (RS485B1) → B-/D- on TapHome RS-485
Do not use Pins 5+6 — these are dedicated to the smart meter on a separate RS-485 bus. TapHome must connect to Pins 1+3 (or 2+4) for Modbus monitoring.
RS-485 daisy-chain wiring

When connecting multiple inverters, wire them in a daisy chain using the RS-485 bus. Place a 120 Ohm termination resistor between Pin 1 and Pin 4 at the first and last device on the bus.
Cable specification:
- Type: Shielded twisted pair, copper diameter > 0.5 mm²
- Maximum length: 1200 m
- Keep cables away from power cables and electric fields
Configuration
Modbus communication parameters
The RS-485 communication parameters are fixed and do not require configuration on the inverter side:
| Parameter | Value |
|---|---|
| Baud rate | 9600 bps |
| Data bits | 8 |
| Parity | None |
| Stop bits | 1 |
| Slave ID | 1 (default, configurable 1–31) |
For multiple inverters on the same bus, each inverter must have a unique Slave ID. The Slave ID can be configured through the inverter’s LCD menu or the SolarMAN app.
Device capabilities
Battery monitoring
The template provides state of charge monitoring for up to two battery packs. Battery 1 SOC is available on all HYD KTL-3PH models, while Battery 2 SOC is available on the HYD 10–20KTL-3PH models with dual battery inputs.
Each battery SOC device includes five service attributes for detailed battery diagnostics: temperature, voltage, charge/discharge current, charge/discharge power, and state of health (SOH).
Two energy counter devices track daily battery charge and discharge in kWh, each with a service attribute for the lifetime total.
PV generation monitoring
The template reads power output from up to three individual PV strings (PV1, PV2, PV3), each with service attributes for string voltage and current. A combined PV Power Total device shows the aggregate output across all strings.
Two energy counter devices track PV generation — daily and lifetime totals in kWh.
Grid and load energy
Four energy counter devices provide daily readings for grid interaction and load consumption:
- Energy Purchase Today — energy bought from grid (kWh)
- Energy Selling Today — energy sold to grid (kWh)
- Load Consumption Today — total load consumption (kWh)
Each daily counter includes a service attribute with the lifetime total.
AC output monitoring
The template provides three per-phase voltage devices (R/S/T-phase, corresponding to L1/L2/L3), each with a service attribute for phase current. Grid Frequency is reported in Hz.
Two power devices monitor the inverter output at different measurement points:
- Total Active Power Output — inverter output power in kW, with service attributes for reactive power (kVAR) and apparent power (kVA)
- Total Active Power PPC — power at the Point of Common Coupling (grid connection point) in kW, with reactive and apparent power service attributes. This measurement is used for feed-in limitation and power plant controller functions.
Module service attributes
The module exposes three service attributes for inverter diagnostics:
- Product Code — inverter product identification
- System State — current operating state: Waiting, Detection, Grid-connected, Emergency Power Supply, Recoverable Fault, Permanent Fault, Upgrade, or Self-charging
- Ambient Temperature — inverter inner temperature in °C
The module ReadScript also monitors three fault bitmask registers (H:0x0405–H:0x0407), reporting grid protection faults, sampling errors, and hardware faults as errors in TapHome.
Additional capabilities
The HYD KTL-3PH inverters also expose registers for remote on/off control, energy storage mode selection (Self-use, Time-of-Use, Timing, Passive, Peak Shaving, Off-grid), and passive battery charge/discharge control for external energy management systems. Per-phase active power and power factor, off-grid/EPS output monitoring, additional PV string inputs (PV4+), battery cycle counts, heatsink temperature, and parameters for batteries 3–6 are also available via Modbus. These can be added in a future template update.
The Passive Mode registers (H:0x1110 and H:0x1187) allow external Modbus control of battery charge/discharge power. This is particularly useful for TapHome smart rules to implement energy management strategies such as charging batteries during low-tariff periods.
Troubleshooting
No Modbus communication
- Verify the RS-485 cable is connected to Pins 1+3 (or 2+4) on the COM port — not Pins 5+6 (smart meter bus)
- Check cable polarity: Pin 1 (A+) to TapHome A+, Pin 3 (B-) to TapHome B-
- Confirm TapHome is configured for 9600 baud, no parity, 1 stop bit
- Verify the Slave ID matches between the inverter and TapHome
- Check the 120 Ohm termination resistor on the first and last device on the bus
Intermittent communication errors
- Ensure the RS-485 cable is shielded twisted pair with copper diameter > 0.5 mm²
- Keep RS-485 cables away from power cables and DC wiring
- Check total bus length does not exceed 1200 m
- Verify no duplicate Slave IDs on the bus
System State shows fault
- Check the System State service attribute for the specific state code (4 = Recoverable Fault, 5 = Permanent Fault)
- Review fault register details in TapHome service diagnostics — the template reads three fault bitmask registers covering grid protection, sampling errors, and hardware faults
- Consult the inverter LCD display or SolarMAN app for detailed error codes