TapHome

EPever IP-Plus Inverter

Modbus RTU
Submitted by
Last updated: 03. 2026
EPever IP-Plus Inverter

The EPever IPower-Plus is a pure sine wave off-grid inverter available in models from 350 W to 5000 W. It communicates with TapHome via Modbus RTU over an RS-485 connection using an RJ45 connector. The TapHome template provides AC load power monitoring and inverter on/off control, along with configurable battery voltage/current protection thresholds and AC output settings.

The template covers the entire IP-Plus series — all models from IP350-Plus through IP5000-Plus share the same Modbus register map.

The IP-Plus is strictly an off-grid inverter. It must never be connected to the mains grid. Only stand-alone operation is permitted — parallel or series connection of multiple units is not supported.

Hardware connection

RS-485 via RJ45

The inverter uses an RJ45 connector for RS-485 communication. Connect to TapHome using a standard Ethernet cable with the following pin assignment:

RJ45 PinFunctionConnect to TapHome
1, 2+5 V DC (200 mA)Not used
3, 4RS485-BB-/D-
5, 6RS485-AA+/D+
7, 8GNDGND

The GND connection (pins 7, 8) is mandatory for reliable communication. Without a common ground reference, Modbus communication will be unstable or fail entirely.

Communication isolation is only available on 48 V input models. The 12 V and 24 V models have no communication isolation between the RS-485 port and the inverter’s DC input.

Configuration

Modbus communication parameters
ParameterValue
Baud rate115200 (configurable to 9600 via LCD menu “BRS”)
Data bits8
ParityNone
Stop bits1
Slave ID

The EPever documentation states the default Modbus slave ID is 3, but the TapHome template ships with slave ID 1. After importing the template, verify and adjust the slave ID in TapHome module settings to match the actual inverter configuration — or change the inverter’s slave ID to 1 using EPever’s configuration tools.

Remote control

The inverter must be in remote control mode before TapHome can switch it on or off. The TapHome template handles this automatically — the module initialization script writes 1 to coil register 0x11 (Local/Remote control) on startup. If remote control is manually disabled on the inverter, the template displays a “Remote control is disabled” warning in TapHome.

Device capabilities

AC load monitoring

The AC Load device is a sensor that reports the inverter’s AC output power in kW. The value is calculated from two 16-bit input registers (0x310E and 0x310F) combined into a 32-bit Little Endian value. Two service attributes provide additional detail:

  • Load output voltage — AC voltage delivered to the connected loads
  • Load output current — AC current drawn by the connected loads
Inverter power control

The Inverter ON/OFF device is a switch that turns the inverter output on or off via coil register 0x0F. A service action allows manually re-enabling remote control mode if needed.

Monitoring and protection thresholds

The module exposes 13 service attributes at the module level for monitoring and configuration:

Monitoring:

  • Load input voltage — battery-side DC input voltage
  • Device temperature and Heat sink temperature — internal thermal monitoring

Voltage/current protection thresholds (read-only):

  • Low input voltage — over-discharge immediate disconnect threshold
  • High input voltage — over-voltage immediate disconnect threshold
  • High input current and High input current recovery — over-current protection thresholds

Voltage protection thresholds (adjustable via service actions):

  • Low input voltage (5s) — over-discharge disconnect with 5-second delay
  • Low input voltage recovery — voltage at which the inverter recovers from over-discharge
  • High input voltage recovery — voltage at which the inverter recovers from over-voltage
  • High input voltage (5s) — over-voltage disconnect with 5-second delay

AC output settings (adjustable via service actions):

  • Output AC voltage setting — 220 V or 230 V (220 V system) / 110 V or 120 V (110 V system)
  • Output AC frequency setting — 50 Hz or 60 Hz

Changing the AC output voltage or frequency causes the inverter to restart automatically. Connected loads will experience a brief power interruption.

Status monitoring

The module ReadScript continuously monitors the inverter status register (0x3202) and the over-temperature discrete register (0x2000). TapHome displays warnings and errors for the following conditions:

  • Standby mode, faults, output failure
  • High voltage side short-circuit, input over-current
  • Abnormal output voltage, unable to discharge/stop discharging, short-circuit
  • Device over temperature
  • Load level (medium, nominal, overload)
  • Input voltage status (low, high, no connection)
Additional capabilities

The inverter also exposes registers for DC input current (0x3109) and DC input power (0x310A–0x310B) monitoring. A power saving mode coil (0x04) exists but is only supported on the SHI series. These can be added in a future template update.

Troubleshooting

No Modbus communication
  1. Verify the RJ45 cable is properly seated in the inverter’s RS-485 port
  2. Check pin assignment — pins 3, 4 (RS485-B) to B-/D- and pins 5, 6 (RS485-A) to A+/D+ on TapHome
  3. Confirm the GND connection (pins 7, 8) is wired to TapHome ground
  4. Verify the baud rate matches — the inverter defaults to 115200 bps
  5. Check the slave ID — the inverter defaults to 3, the TapHome template defaults to 1
“Remote control is disabled” warning

The template initialization script enables remote control automatically. If this warning appears:

  1. Check that the inverter is powered on and communicating
  2. Use the Enable Remote control service action on the Inverter ON/OFF device
  3. If the warning persists, verify that no other Modbus master is writing to coil 0x11
Inverter error codes on the LCD
CodeFaultResolution
ILVInput low voltageCheck battery voltage — must be above 10.8 V (12 V) / 21.6 V (24 V) / 43.2 V (48 V)
IOVInput over voltageCheck battery/charge controller voltage — must be below 16 V (12 V) / 32 V (24 V) / 64 V (48 V)
OOLOutput overloadReduce connected AC loads, restart inverter
OSCOutput short circuitCheck load wiring, clear faults via TapHome service action or restart
OTPOver temperatureImprove ventilation, wait for cooldown, restart

The Clear the faults service action in TapHome writes to coil register 0x13 and clears both current and historical faults, resuming normal operation without needing to physically restart the inverter.

Available devices

EPever IP-Plus Module
Service Attributes
Load input voltageBattery-side DC input voltage to the inverter
Device temperature
Heat sink temperature
Low input voltageOver-discharge immediate disconnect threshold — read-only, cannot be modified
Low input voltage (5s)Over-discharge disconnect threshold with 5-second delay — adjustable via service action
Low input voltage recoveryVoltage at which the inverter recovers from over-discharge protection
High input voltage recoveryVoltage at which the inverter recovers from over-voltage protection
High input voltage (5s)Over-voltage disconnect threshold with 5-second delay — adjustable via service action
High input voltageOver-voltage immediate disconnect threshold — read-only, cannot be modified
High input currentOver-current protection threshold — read-only, cannot be modified
High input current recoveryCurrent at which the inverter recovers from over-current protection — read-only
Output AC voltage settingAC output voltage — 220/230 V or 110/120 V depending on system. Inverter restarts after change
Output AC frequency settingAC output frequency — 50 Hz or 60 Hz. Inverter restarts after change
Service Actions
Set Low input voltage - 5s
Set Low input voltage recovery voltage
Set High input voltage recovery voltage
Set High input voltage - 5s
Set Output AC voltageSet AC output voltage — 220 V or 230 V (220 V system) or 110/120 V (110 V system). Inverter restarts after change
Set Output AC frequencySet AC output frequency — 50 Hz or 60 Hz. Inverter restarts after change
Clear the faultsClears current and historical faults and resumes normal inverter operation

IP-Plus

Read (module)
if(modbusr(D, 0x2000, bool), ADDWARNING("Device over temperature"));

var stat := modbusr(A,0x3202,Uint16);

if(!getbit(stat, 0), ADDWARNING("Standby"));
if(getbit(stat, 1), ADDWARNING("Faults"));
if(getbit(stat, 5), ADDWARNING("Output fail"));
if(getbit(stat, 6), ADDWARNING("High voltage side short-circuit"));
if(getbit(stat, 7), ADDWARNING("Input over-current"));
if(getbit(stat, 8), ADDWARNING("Abnormal Output voltage"));
if(getbit(stat, 9), ADDWARNING("Unable to stop discharging"));
if(getbit(stat, 10), ADDWARNING("Unable to discharge"));
if(getbit(stat, 11), ADDWARNING("Short-circuit"));

if getbits(stat,12,2) = 0x01
    ADDINFO("Medium load");
elseif getbits(stat,12,2) = 0x02
    ADDINFO("Nominal Load");
elseif getbits(stat,12,2) = 0x03
    ADDERROR("Overload");
end

if getbits(stat,14,2) = 0x01
    ADDWARNING("Low input voltage");
elseif getbits(stat,14,2) = 0x02
    ADDWARNING("High input voltage");
elseif getbits(stat,14,2) = 0x03
    ADDWARNING("No connect to the input power, etc.");
end
Service Attributes
Load input voltage [V]
modbusr(A, 0x3108, Uint16) / 100
Device temperature [℃]
modbusr(A, 0x3111, Int16) / 100
Heat sink temperature [℃]
modbusr(A, 0x3112, Int16) / 100
Low input voltage [V]
modbusr(H, 0x902F, Uint16) / 100
Low input voltage (5s) [V]
modbusr(H, 0x9030, Uint16) / 100
Low input voltage recovery voltage [V]
modbusr(H, 0x9031, Uint16) / 100
High input voltage recovery voltage [V]
modbusr(H, 0x9032, Uint16) / 100
High input voltage (5s) [V]
modbusr(H, 0x9033, Uint16) / 100
High input voltage [V]
modbusr(H, 0x9034, Uint16) / 100
High input current [A]
modbusr(H, 0x9035, Uint16) / 100
High input current recovery [A]
modbusr(H, 0x9036, Uint16) / 100
Output AC voltage setting [A]
modbusr(H, 0x9022, Uint16) / 100
Output AC frequency setting [Hz]
modbusr(H, 0x9023, Uint16) / 100
Service Actions
Set Low input voltage - 5s
Parameters: Voltage (1–100 V)
modbusw(H, 0x9030, Uint16, round(V * 100))
Set Low input voltage recovery voltage
Parameters: Voltage (1–100 V)
modbusw(H, 0x9031, Uint16, round(V * 100))
Set High input voltage recovery voltage
Parameters: Voltage (1–100 V)
modbusw(H, 0x9032, Uint16, round(V * 100))
Set High input voltage - 5s
Parameters: Voltage (1–100 V)
modbusw(H, 0x9033, Uint16, round(V * 100))
Set Output AC voltage
Parameters: Voltage
modbusw(H, 0x9022, Uint16, round(V * 100))
Set Output AC frequency
Parameters: Frequency
modbusw(H, 0x9023, Uint16, round(Hz * 100))
Clear the faults
modbusw(C, 0x13, bool, 1)
AC Load Variable Read-only

AC output power in kW — combines two registers into a 32-bit value for precise power measurement

Register: A:0x310E LittleEndianUint32 Unit: kW numeric
Service Attributes
Load output voltageAC output voltage delivered to the load
Load output currentAC output current drawn by the load

AC Load

Read
MODBUSR(A, 0x310e, LittleEndianUint32 ) / 100000
Service Attributes
Load output voltage [V]
modbusr(A, 0x310c, Uint16) / 100
Load output current [A]
modbusr(A, 0x310d, Uint16) / 100
Inverter ON/OFF Switch

Turns inverter output on or off — requires remote control to be enabled (handled automatically by the template)

Register: C:0x0F Bool
Values / States: ON · OFF
Service Actions
Enable Remote controlEnables remote control mode — required before inverter ON/OFF commands work

Inverter ON/OFF

Read switch state
MODBUSR(C, 0xf, Bool)
Write switch state
MODBUSW(C, 0xf, Bool, St)
Read (module)
if (!MODBUSR(C, 0x11, Bool), ADDWARNING("Remote control is disabled"))
Initialize
#enable Remote control
modbusw(C, 0x11, bool, 1)
Service Actions
Enable Remote control
MODBUSW(C, 0x11, Bool, 1)
Connection: Modbus RTU • 115200 baud• 8N1 • Slave ID: $[SlaveId]
Possible improvements (3)
  • A:0x3109 Load input current — DC input current (A). May always read 0 on some hardware models that don't support it
  • A:0x310A+0x310B Load input power — DC input power (W), 32-bit LE. Could complement the AC output power device
  • C:0x04 Power saving mode enable — Only SHI series supports this — other products do not support it

Sources

  • Inverter Communication Protocol V1.0 — Modbus Register Map
    2026-03-27
    PDF
  • IPower-Plus Series User Manual V3.3
    solarv.de 2026-03-27
    PDF