Solakon Solakon ONE (battery) Modbus TCP template

Solakon ONE (battery)

The Solakon ONE is a hybrid PV inverter with integrated battery storage control, sold under the MQ2200, Avocado, and Avocado Pro product lines. This ModbusCloud template connects over Modbus TCP and reads battery power flow, cumulative energy throughput, and state of charge. It also exposes five write registers for remote battery control: remote-enable flag, minimum and maximum SOC limits, operating mode selector, and active power setpoint. Installers can use the portal to monitor storage behaviour in real time and automate charge and discharge schedules without logging into the inverter web interface.

Protocol
Modbus TCP
Connection
Ethernet, Modbus TCP
Registers
8, read and write
Brand
Solakon
Compatible models
Avocado · MQ2200 · ONE · Avocado Pro
Last updated

Registers (8)

3 read, 5 write

NameUnitAccessAddress (Hidden until you enter your email)Function (hidden)Type (hidden)
powerWRead
energyWhRead
soc%Read
batterymode_aWrite
batterymode_bWrite
batterymode_cWrite
batterymode_eWrite
batterymode_fWWrite

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.

Number of installations (optional)

Use cases

  • Monitor battery state of charge continuously to detect unexpected overnight discharge below configured thresholds.
  • Track cumulative energy throughput over months to identify capacity fade in the battery pack.
  • Alert on sustained high discharge power to catch load spikes that may stress the battery.
  • Verify that the minimum SOC write register holds its value after a firmware update or power cycle.
  • Compare live battery power against grid consumption to confirm zero-export operation is working correctly.

Installation

  1. Connect the Solakon ONE to your LAN using its wired Ethernet port. Modbus TCP is only available on the wired port, not over Wi-Fi, so a physical cable to your switch or router is required.

  2. Confirm the inverter is reachable on port 502 by opening a telnet or TCP connection to that port from a device on the same network. A successful connection confirms the Modbus server is active.

  3. In the ModbusCloud portal, add a new Gateway entry, select Modbus TCP as the protocol, enter the inverter IP address, set port to 502, and assign unit ID 1. Then import the Solakon ONE (battery) template.

  4. Spot-check the soc register (address 39424) in the live register view and confirm the value matches the percentage shown on the inverter display or its own web interface before enabling write operations.

Things to watch for

The gateway connects but soc always reads zero or garbage.

Confirm you are connecting over the wired LAN port, not Wi-Fi. The Solakon ONE Modbus server only responds on the wired Ethernet interface. Also verify unit ID is set to 1 in the portal, as the device does not respond to other unit IDs by default.

Power register reads nonsensical large negative numbers constantly.

The power register is a signed int32. Some polling clients misinterpret it as unsigned. Ensure your Modbus client decodes address 39237 as int32 (two registers, big-endian). A value that looks like 4294967295 is actually -1 W read as unsigned.

Write to batterymode_a appears to succeed but battery does not respond.

Remote control requires a specific sequence: first write the enable flag to batterymode_a (46001), then set the mode via batterymode_e (46002) and power setpoint via batterymode_f (46003). Writing mode or power without first enabling remote control has no effect. Some firmware versions also require the device not to be in a fault or EPS state.

Is it safe to write frequently to the batterymode setpoint registers?

Use caution with write registers on the Solakon ONE. Writing incorrect values to batterymode_b or batterymode_c (min or max SOC) can cause the battery to operate outside its intended depth-of-discharge range, potentially affecting cycle life or triggering protection faults. Always validate setpoint values before writing and avoid polling writes faster than the inverter's control loop requires.

Want to see how it works?

Electrician working in an open distribution board