Register map(s) for this device, with a note of how far each has been checked. Addresses are 0-based, as on the wire. Scale and byte order are confirmed only at the hardware-verified rung.
Round-trips through a real Modbus stack with no overlapping addresses and a word-order-sensitive codec — the map is internally coherent and wire-decodable. Does NOT prove byte-order or scaling match a real device: the emulator is seeded from the map's own types, so a uniformly wrong byte-order still round-trips. Only hardware-verified confirms byte-order/scale on the wire.
| point | address (0-based) | type | scale | unit |
|---|---|---|---|---|
| day_active_power | 60 | I16 | 0.1 | 0.1kWh |
| total_active_power | 63 | U32LE | 0.1 | 0.1kWh |
| grid_frequency | 79 | U16 | 0.01 | 0.01Hz |
| dcdc_transformer_temperature | 90 | U16 | 0.1 | 0.1°C |
| igbt_heat_sink_temperature | 91 | U16 | 0.1 | 0.1°C |
| fault_information_word_1 | 103 | U16 | 1 | |
| fault_information_word_2 | 104 | U16 | 1 | |
| fault_information_word_3 | 105 | U16 | 1 | |
| fault_information_word_4 | 106 | U16 | 1 | |
| corrected_batt_capacity | 107 | U16 | 1 | 1AH |
| daily_pv_power | 108 | U16 | 0.1 | 0.1kWh |
| dc_voltage_1 | 109 | U16 | 0.1 | 0.1V |
| dc_current_1 | 110 | U16 | 0.1 | 0.1A |
| dc_voltage_2 | 111 | U16 | 0.1 | 0.1V |
| dc_current_2 | 112 | U16 | 0.1 | 0.1A |
| grid_side_voltage_l1_n | 150 | U16 | 0.1 | 0.1V |
| grid_side_voltage_l2_n | 151 | U16 | 0.1 | 0.1V |
| grid_side_voltage_l1_l2 | 152 | U16 | 0.1 | 0.1V |
| voltage_middle_side_relay_l1_l2 | 153 | U16 | 0.1 | 0.1V |
| inverter_output_voltage_l1_n | 154 | U16 | 0.1 | 0.1V |
| inverter_output_voltage_l2_n | 155 | U16 | 0.1 | 0.1V |
| inverter_output_voltage_l1_l2 | 156 | U16 | 0.1 | 0.1V |
| load_voltage_l1 | 157 | U16 | 0.1 | 0.1V |
| load_voltage_l2 | 158 | U16 | 0.1 | 0.1V |
| grid_side_current_l1 | 160 | I16 | 0.01 | 0.01A |
| grid_side_current_l2 | 161 | I16 | 0.01 | 0.01A |
| grid_external_limiter_current_l1 | 162 | I16 | 0.01 | 0.01A |
| grid_external_limiter_current_l2 | 163 | I16 | 0.01 | 0.01A |
| inverter_output_current_l1 | 164 | I16 | 0.01 | 0.01A |
| inverter_output_current_l2 | 165 | I16 | 0.01 | 0.01A |
| gen_or_ac_coupled_power_input | 166 | I16 | 1 | 1W |
| grid_side_l1_power | 167 | I16 | 1 | 1W |
| grid_side_l2_power | 168 | I16 | 1 | 1W |
| total_power_grid_side_l1_l2 | 169 | I16 | 1 | 1W |
| grid_external_limiter1_power | 170 | I16 | 1 | 1W |
| grid_external_limiter2_power | 171 | I16 | 1 | 1W |
| grid_external_total_power | 172 | I16 | 1 | 1W |
| inverter_output_l1_power | 173 | I16 | 1 | 1W |
| inverter_output_l2_power | 174 | I16 | 1 | 1W |
| inverter_output_total_power | 175 | I16 | 1 | 1W |
| load_side_l1_power | 176 | I16 | 1 | 1W |
| load_side_l2_power | 177 | I16 | 1 | 1W |
| load_side_total_power | 178 | I16 | 1 | 1W |
| load_current_l1 | 179 | I16 | 0.01 | 0.01A |
| load_current_l2 | 180 | I16 | 0.01 | 0.01A |
| gen_port_voltage_l1_l2 | 181 | U16 | 0.1 | |
| battery_temperature | 182 | U16 | 0.1 | 0.1°C |
| battery_voltage | 183 | U16 | 0.01 | 0.01V |
| battery_capacity_soc | 184 | U16 | 1 | 1% |
| pv1_input_power | 186 | U16 | 1 | 1W |
| pv2_input_power | 187 | U16 | 1 | 1W |
| battery_output_power | 190 | I16 | 1 | 1W |
| battery_output_current | 191 | I16 | 0.01 | 0.01A |
| load_frequency | 192 | U16 | 0.01 | 0.01Hz |
| inverter_output_frequency | 193 | U16 | 0.01 | 0.01Hz |
| grid_side_relay_status | 194 | U16 | 1 | |
| generator_side_relay_status | 195 | U16 | 1 | |
| generator_relay_frequency | 196 | U16 | 0.01 | 0.01Hz |
⚠ Any damage caused to the inverter due to the use of any Modbus device is NOT covered by Sol-Ark's warranty. — Starkest reads only; we never write a control register.
| terminals | RJ-45 ports labeled 'RJ45_485', 'RJ45_CAN', 'RS-485', 'CAN', or 'Battery CAN Bus' depending on model, or terminal connectors for RS-485 and CAN. |
| A/B polarity | Pin 1/8: RS-485 B-, Pin 2/7: RS-485 A+ |
| termination | The inverter already has termination internally. A 120 Ohm termination resistor should be used on the master side of the communication cable. |
| connector | RJ-45 or terminal connectors |
| shield/ground | Ground MUST be connected between the inverter and master device (Pin 3 and Pin 6 on RJ-45). |
| wiring notes | Ground MUST be connected between the inverter and master device. Without ground connected, communication can be easily disrupted by external noise sources. |
| max registers/read | 125 |
| broadcast | not supported |
| protocol notes | The inverter only supports read operations. |
| serial register | 3 |
| identification notes | Serial number is ten ASCII characters stored in registers 3 to 7. |
| doc revision | V1.1 (2021-04-15) |
⚠ disputed: comms.notes: The inverter's Slave ID is 0x01. This cannot be changed — disputed by Sol-Ark 15K-2P-LV Installation Guide and SolarAssistant. On newer firmware versions, the Modbus SN (Slave ID) can be changed in the parallel options screen (it defaults to 00, but must be set to 01 or another unique ID for Modbus communication to function properly)
Each rung states what it proved and what it did not. Gray until proven; green is earned by hardware only.
Device not here? Upload its manual and get a checked map back. It's free.
Want it confirmed against your own device? Order hardware verification. If it doesn't check out, you don't pay.
Building on a lot of devices? License the library — machine-readable maps, the firmware matrix, and API access.