Solis (Ginlong) Grid-connected PV inverters (RS485 protocol) Modbus register map

The Solis RS485_MODBUS protocol for its grid-connected PV inverters in all power ranges, for machines manufactured after mid-2023. It gives read access to energy counters, DC and MPPT inputs, phase values, status and fault bit fields, and read and write access to the clock, the on or off command and the active power, reactive power and power factor controls. Solis publishes its hybrid inverter Modbus table as a separate document, which this file does not cover.

Protocol
Modbus RTU over RS485 (function codes 0x03, 0x04, 0x06, 0x10)
Defaults
Slave address 1 to 99, 9600 baud, no parity, 8 data bits, 1 stop bit (p. 4). At least 300 ms between acquisition frames and 700 ms between control frames. The document recommends at most 100 bytes (50 registers) per frame (p. 5). Unimplemented registers inside the valid range read as 0x0000 without an exception, and writes to them are discarded with a normal response (p. 5). Only one write action is allowed per frame, so function 0x06 is recommended (p. 5).
Addresses in the manual
0-based protocol addresses, as sent on the wire
32 and 64-bit values
High word first (AB CD)
Registers listed
148
Checked against
Ver3.7 (PDF title: ModbusRTU Communication Protocol for Grid-connected Inverters_Ver.3.7_EN), revision V000B000D001 dated 2026/6/16, Ginlong (Solis). Hosted by Solis and linked from the Solis Service Center article 'Modus table for grid and hybrid inverters'

Address base. The document prints decimal register numbers (for example 2999, 3000, 35000) and its function code table says 0x04 covers 30001-39999 and 0x03 covers 40001-49999, but the frame examples show the printed number used as the wire address with no offset: section 6.2 reads 'Reg. Start Address (2999)' as 0x0B 0xB7 (0x0BB7 is 2999) and returns the product model and DSP version, section 6.3 does the same with function 0x03, and the Appendix 4 frames write 3068, 3069 and 3070 as 0x0BFC, 0x0BFD and 0x0BFE and 3080 as 0x0C08. Registers 5.1 are read with function 0x04 (input) and 5.2 with 0x03, 0x06 and 0x10 (holding). The same number can appear in both tables as different registers (for example 3050 and 3051). Address 35000 in the manual is address 35000 on the wire.

Word order. Section 3.1 states for 32-bit values that the high word comes first and the low word second, and that the high byte precedes the low byte within a register.

Modbus Poll and the Modbus protocol itself count from 0. The "Wire address" column is the number to type into Modbus Poll.

Downloads

The register table has every column on this page. The blocks file imports into Modbus Poll. The template JSON holds the same blocks plus unit, scale and access for scripts.

Registers

148 registers
Manual Wire Register Type Regs Unit Scale Access Area
35000 35000 Inverter type codeInverter_Type · Codes in Appendix 1, for example 0x1010 single-phase inverter, 0x1020 three-phase inverter, 0x1021 three-phase grid-tied string inverter. Some entries list two values (for example 0x1010/0x3F2). uint16 1 1 R Input (FC04)
2999 2999 Product model codeProduct_Model · The document gives no code table for this register. The p. 14 example reads it together with DSP_Version and returns 0x0043. uint16 1 1 R Input (FC04)
3000 3000 DSP versionDSP_Version · Example format 0xAABB: AA is the major version of the slave DSP and BB the major version of the main DSP. uint16 1 1 R Input (FC04)
3001 3001 HMI major versionHMI_Version_Major · Only the major version is present, in the low byte. The high byte is empty. uint16 1 1 R Input (FC04)
3003 3003 DC input typeDC_Input_Type · 0 is 1 DC input, 1 is 2 DC input, 2 is 3 DC input, 3 is 4 DC input, and so on. uint16 1 1 R Input (FC04)
3004 3004 Active powerActive_Power int32 2 W 1 R Input (FC04)
3006 3006 Total DC output powerTotal_DC_Output_Power uint32 2 W 1 R Input (FC04)
3008 3008 Total energyEnergy_Total uint32 2 kWh 1 R Input (FC04)
3010 3010 Energy this monthEnergy_This_Month uint32 2 kWh 1 R Input (FC04)
3012 3012 Energy last monthEnergy_Last_Month uint32 2 kWh 1 R Input (FC04)
3014 3014 Energy todayEnergy_Today uint16 1 kWh 0.1 R Input (FC04)
3015 3015 Energy yesterdayEnergy_Yesterday uint16 1 kWh 0.1 R Input (FC04)
3020 3020 HMI versionHMI_Version · Example format 0xAABB: AA is the minor version number and BB the major version number. uint16 1 1 R Input (FC04)
3021 3021 DC voltage 1DC_Voltage_1 · The remark lists the DC voltage and current registers 3021 to 3028 as applicable to non-string inverters: 0.7 to 10K single phase, 5 to 25K series and 25 to 50K series. uint16 1 V 0.1 R Input (FC04)
3022 3022 DC current 1DC_Current_1 uint16 1 A 0.1 R Input (FC04)
3023 3023 DC voltage 2DC_Voltage_2 uint16 1 V 0.1 R Input (FC04)
3024 3024 DC current 2DC_Current_2 uint16 1 A 0.1 R Input (FC04)
3025 3025 DC voltage 3DC_Voltage_3 uint16 1 V 0.1 R Input (FC04)
3026 3026 DC current 3DC_Current_3 uint16 1 A 0.1 R Input (FC04)
3027 3027 DC voltage 4DC_Voltage_4 uint16 1 V 0.1 R Input (FC04)
3028 3028 DC current 4DC_Current_4 uint16 1 A 0.1 R Input (FC04)
3029 3029 Alarm code dataAlarm_Code_Data · Used together with register 3043 to subdivide the fault message display. Value tables are in Appendix 2. uint16 1 1 R Input (FC04)
3033 3033 AB line voltage or A phase voltageGrid_Voltage_AB_Or_A uint16 1 V 0.1 R Input (FC04)
3034 3034 BC line voltage or B phase voltageGrid_Voltage_BC_Or_B uint16 1 V 0.1 R Input (FC04)
3035 3035 CA line voltage or C phase voltageGrid_Voltage_CA_Or_C uint16 1 V 0.1 R Input (FC04)
3036 3036 A phase currentPhase_Current_A uint16 1 A 0.1 R Input (FC04)
3037 3037 B phase currentPhase_Current_B uint16 1 A 0.1 R Input (FC04)
3038 3038 C phase currentPhase_Current_C uint16 1 A 0.1 R Input (FC04)
3040 3040 Standard working modeStandard_Working_Mode · 0 No response mode, 1 Volt-watt default, 2 Volt-var, 3 Fixed power factor, 4 Fix reactive power, 5 Power-PF, 6 Rule21 Volt-watt. uint16 1 1 R Input (FC04)
3041 3041 Inverter temperature (AC NTC, IGBT)Inverter_Temperature int16 1 degC 0.1 R Input (FC04)
3042 3042 Grid frequencyGrid_Frequency uint16 1 Hz 0.01 R Input (FC04)
3043 3043 Inverter statusInverter_Status · Used together with register 3029 to subdivide the status display. Value tables are in Appendix 2. uint16 1 1 R Input (FC04)
3044 3044 Limited active power adjustment rated power output valueLimited_Active_Power_Output int32 2 W 1 R Input (FC04)
3046 3046 Reactive power regulation rated power output valueReactive_Power_Regulation_Output int32 2 Var 1 R Input (FC04)
3049 3049 Active power percentage valueActive_Power_Percentage · The unit column prints 0.10% but the remark and the section 6.12 example (reading 3049, bytes 0x2710) read 10000 as 100 %, so one count is 0.01 %. Taking the unit column literally (0.1 %) would make 10000 equal 1000 %, so the remark is used. Section 6.13 is internally inconsistent: its frame carries 0x2710 but its parameter table shows 0x03E8 labelled 10000. uint16 1 % 0.01 R Input (FC04)
3051 3051 Actual power factor adjustmentPower_Factor_Adjustment · The unit column prints 0.01 but the remark ('800<-->0.8'), the section 6.8 example (reading 3051 returns 800, PF 0.8) and Appendix 4 (writing 1000 for PF 1) all give 0.001 per count. int16 1 0.001 R Input (FC04)
3052 3052 Reactive power percentage valueReactive_Power_Percentage · The unit column prints 0.10% but the remark and the section 6.10 example (reading 3052 returns 10000, 100 %) give 0.01 % per count. int16 1 % 0.01 R Input (FC04)
3055 3055 Reactive power valueReactive_Power int32 2 Var 1 R Input (FC04)
3057 3057 Apparent power valueApparent_Power int32 2 VA 1 R Input (FC04)
3060 3060 Inverter serial number word 1 (SN_1)Inverter_Serial_Number_1 · Serial number word, shown as hexadecimal. The p. 9 example (SN 12345679ABCDEF uploads 0x4321, 0x8765, 0xCBA9, 0x0FED) labels the values 3061 to 3064, while the table lists SN_1 to SN_4 at 3060 to 3063. Check the order on the device. uint16 1 1 R Input (FC04)
3061 3061 Inverter serial number word 2 (SN_2)Inverter_Serial_Number_2 uint16 1 1 R Input (FC04)
3062 3062 Inverter serial number word 3 (SN_3)Inverter_Serial_Number_3 uint16 1 1 R Input (FC04)
3063 3063 Inverter serial number word 4 (SN_4)Inverter_Serial_Number_4 uint16 1 1 R Input (FC04)
3071 3071 Working status bitsWorking_Status · Bit definitions in Appendix 3: bit 0 normal operation, 1 initial standby, 2 controlled shutdown, 3 fault shutdown, 4 standby, 5 derating operation, 6 power-limit operation, 7 over voltage reduction, 8 grid surge, 9 internal fan fault, 10 external fan fault, 11 grid surge protector abnormal, 12 DC surge protector abnormal, 14 phase-ground alarm, 15 IGBT fault. bitfield16 1 1 R Input (FC04)
3072 3072 System time, yearSystem_Time_Year · Year range is 0 to 99. uint16 1 1 R Input (FC04)
3073 3073 System time, monthSystem_Time_Month uint16 1 1 R Input (FC04)
3074 3074 System time, daySystem_Time_Day uint16 1 1 R Input (FC04)
3075 3075 System time, hourSystem_Time_Hour uint16 1 1 R Input (FC04)
3076 3076 System time, minuteSystem_Time_Minute uint16 1 1 R Input (FC04)
3077 3077 System time, secondSystem_Time_Second uint16 1 1 R Input (FC04)
3089 3089 Power limit switchPower_Limit_Switch · 0x55 is OFF, 0xAA is ON. uint16 1 1 R Input (FC04)
3090 3090 Reactive power switchReactive_Power_Switch · 0x55 is OFF. Both 0xA1 and 0xA2 are printed as ON. uint16 1 1 R Input (FC04)
3094 3094 Limiting (derating) status bitsLimiting_Status · Bit definitions in Appendix 3: bit 0 over temperature derating, 1 over frequency derating, 2 over voltage derating, 3 reactive power derating, 4 under frequency derating, 5 power soft run, 6 bypass derating, 7 AC over temperature derating, 8 DRM controlling limit, 9 PLmt controlling limit. bitfield16 1 1 R Input (FC04)
3095 3095 Fault code 01 (fault info 1 bits)Fault_Code_01 · Bit definitions in Appendix 3. bitfield16 1 1 R Input (FC04)
3096 3096 Fault code 02 (fault info 2 bits)Fault_Code_02 bitfield16 1 1 R Input (FC04)
3097 3097 Fault code 03 (fault info 3 bits)Fault_Code_03 bitfield16 1 1 R Input (FC04)
3098 3098 Fault code 04 (fault info 4 bits)Fault_Code_04 bitfield16 1 1 R Input (FC04)
3099 3099 Fault code 05 (fault info 5 bits)Fault_Code_05 bitfield16 1 1 R Input (FC04)
3100 3100 Fault code 06 (fault info 6 bits)Fault_Code_06 bitfield16 1 1 R Input (FC04)
3101 3101 Fault code 07 (fault info 7 bits)Fault_Code_07 bitfield16 1 1 R Input (FC04)
3102 3102 Fault code 08 (fault info 8 bits)Fault_Code_08 bitfield16 1 1 R Input (FC04)
3103 3103 Warning message from the DSPWarning_Message_DSP · Bit definitions in Appendix 3. bitfield16 1 1 R Input (FC04)
3104 3104 Warning message from the HMIWarning_Message_HMI · Bit definitions in Appendix 3. bitfield16 1 1 R Input (FC04)
3109 3109 Factory rated output powerFactory_Rated_Output_Power · The unit column prints 10W, so one count is 10 W. uint16 1 W 10 R Input (FC04)
3288 3288 PV21 currentPV21_Current int16 1 A 0.1 R Input (FC04)
3289 3289 PV22 currentPV22_Current int16 1 A 0.1 R Input (FC04)
3290 3290 PV23 currentPV23_Current int16 1 A 0.1 R Input (FC04)
3291 3291 PV24 currentPV24_Current int16 1 A 0.1 R Input (FC04)
3292 3292 PV25 currentPV25_Current int16 1 A 0.1 R Input (FC04)
3293 3293 PV26 currentPV26_Current int16 1 A 0.1 R Input (FC04)
3294 3294 PV27 currentPV27_Current int16 1 A 0.1 R Input (FC04)
3295 3295 PV28 currentPV28_Current int16 1 A 0.1 R Input (FC04)
3296 3296 PV29 currentPV29_Current int16 1 A 0.1 R Input (FC04)
3297 3297 PV30 currentPV30_Current int16 1 A 0.1 R Input (FC04)
3299 3299 Total PV currentTotal_PV_Current · Register 3298 is also named Total PV current but with unit 0.1V and is not listed here. int16 1 A 0.1 R Input (FC04)
3300 3300 PV1 currentPV1_Current int16 1 A 0.1 R Input (FC04)
3301 3301 PV2 currentPV2_Current int16 1 A 0.1 R Input (FC04)
3302 3302 PV3 currentPV3_Current int16 1 A 0.1 R Input (FC04)
3303 3303 PV4 currentPV4_Current int16 1 A 0.1 R Input (FC04)
3304 3304 PV5 currentPV5_Current int16 1 A 0.1 R Input (FC04)
3305 3305 PV6 currentPV6_Current int16 1 A 0.1 R Input (FC04)
3306 3306 PV7 currentPV7_Current int16 1 A 0.1 R Input (FC04)
3307 3307 PV8 currentPV8_Current int16 1 A 0.1 R Input (FC04)
3308 3308 PV9 currentPV9_Current int16 1 A 0.1 R Input (FC04)
3309 3309 PV10 currentPV10_Current int16 1 A 0.1 R Input (FC04)
3310 3310 PV11 currentPV11_Current int16 1 A 0.1 R Input (FC04)
3311 3311 PV12 currentPV12_Current int16 1 A 0.1 R Input (FC04)
3312 3312 PV13 currentPV13_Current int16 1 A 0.1 R Input (FC04)
3313 3313 PV14 currentPV14_Current int16 1 A 0.1 R Input (FC04)
3314 3314 PV15 currentPV15_Current int16 1 A 0.1 R Input (FC04)
3315 3315 PV16 currentPV16_Current int16 1 A 0.1 R Input (FC04)
3316 3316 PV17 currentPV17_Current int16 1 A 0.1 R Input (FC04)
3317 3317 PV18 currentPV18_Current int16 1 A 0.1 R Input (FC04)
3318 3318 PV19 currentPV19_Current int16 1 A 0.1 R Input (FC04)
3319 3319 PV20 currentPV20_Current int16 1 A 0.1 R Input (FC04)
3336 3336 PV31 currentPV31_Current int16 1 A 0.1 R Input (FC04)
3337 3337 PV32 currentPV32_Current int16 1 A 0.1 R Input (FC04)
3471 3471 Fault code 10 (fault info 10 bits)Fault_Code_10 · Bit definitions in Appendix 3. bitfield16 1 1 R Input (FC04)
3472 3472 Fault code 11 (fault info 11 bits)Fault_Code_11 bitfield16 1 1 R Input (FC04)
3473 3473 Fault code 12 (fault info 12 bits)Fault_Code_12 bitfield16 1 1 R Input (FC04)
3499 3499 MPPT 1 voltageMPPT1_Voltage uint16 1 V 0.1 R Input (FC04)
3500 3500 MPPT 2 voltageMPPT2_Voltage uint16 1 V 0.1 R Input (FC04)
3501 3501 MPPT 3 voltageMPPT3_Voltage uint16 1 V 0.1 R Input (FC04)
3502 3502 MPPT 4 voltageMPPT4_Voltage uint16 1 V 0.1 R Input (FC04)
3503 3503 MPPT 5 voltageMPPT5_Voltage uint16 1 V 0.1 R Input (FC04)
3504 3504 MPPT 6 voltageMPPT6_Voltage uint16 1 V 0.1 R Input (FC04)
3505 3505 MPPT 7 voltageMPPT7_Voltage uint16 1 V 0.1 R Input (FC04)
3506 3506 MPPT 8 voltageMPPT8_Voltage uint16 1 V 0.1 R Input (FC04)
3507 3507 MPPT 9 voltageMPPT9_Voltage uint16 1 V 0.1 R Input (FC04)
3508 3508 MPPT 10 voltageMPPT10_Voltage uint16 1 V 0.1 R Input (FC04)
3509 3509 MPPT 11 voltageMPPT11_Voltage uint16 1 V 0.1 R Input (FC04)
3510 3510 MPPT 12 voltageMPPT12_Voltage uint16 1 V 0.1 R Input (FC04)
3511 3511 MPPT 13 voltageMPPT13_Voltage uint16 1 V 0.1 R Input (FC04)
3512 3512 MPPT 14 voltageMPPT14_Voltage uint16 1 V 0.1 R Input (FC04)
3513 3513 MPPT 15 voltageMPPT15_Voltage uint16 1 V 0.1 R Input (FC04)
3529 3529 MPPT 1 currentMPPT1_Current int16 1 A 0.1 R Input (FC04)
3530 3530 MPPT 2 currentMPPT2_Current int16 1 A 0.1 R Input (FC04)
3531 3531 MPPT 3 currentMPPT3_Current int16 1 A 0.1 R Input (FC04)
3532 3532 MPPT 4 currentMPPT4_Current int16 1 A 0.1 R Input (FC04)
3533 3533 MPPT 5 currentMPPT5_Current int16 1 A 0.1 R Input (FC04)
3534 3534 MPPT 6 currentMPPT6_Current int16 1 A 0.1 R Input (FC04)
3535 3535 MPPT 7 currentMPPT7_Current int16 1 A 0.1 R Input (FC04)
3536 3536 MPPT 8 currentMPPT8_Current int16 1 A 0.1 R Input (FC04)
3537 3537 MPPT 9 currentMPPT9_Current int16 1 A 0.1 R Input (FC04)
3538 3538 MPPT 10 currentMPPT10_Current int16 1 A 0.1 R Input (FC04)
3539 3539 MPPT 11 currentMPPT11_Current int16 1 A 0.1 R Input (FC04)
3540 3540 MPPT 12 currentMPPT12_Current int16 1 A 0.1 R Input (FC04)
3541 3541 MPPT 13 currentMPPT13_Current int16 1 A 0.1 R Input (FC04)
3542 3542 MPPT 14 currentMPPT14_Current int16 1 A 0.1 R Input (FC04)
3543 3543 MPPT 15 currentMPPT15_Current int16 1 A 0.1 R Input (FC04)
3545 3545 MPPT 16 currentMPPT16_Current · Register 3544 is also printed as MPPT 16 current with unit 0.1V and S16 is printed for 3545, so 3544 is not listed here. int16 1 A 0.1 R Input (FC04)
2999 2999 Set system time, yearSet_Time_Year · Year range is 0 to 99. uint16 1 1 RW Holding (FC03)
3000 3000 Set system time, monthSet_Time_Month uint16 1 1 RW Holding (FC03)
3001 3001 Set system time, daySet_Time_Day uint16 1 1 RW Holding (FC03)
3002 3002 Set system time, hourSet_Time_Hour uint16 1 1 RW Holding (FC03)
3003 3003 Set system time, minutesSet_Time_Minutes uint16 1 1 RW Holding (FC03)
3004 3004 Set system time, secondsSet_Time_Seconds uint16 1 1 RW Holding (FC03)
3006 3006 Inverter on or off commandOn_Off · 0xBE is ON, 0xDE is OFF. uint16 1 1 RW Holding (FC03)
3050 3050 Reactive power limitationReactive_Power_Limitation_Set · Range -60 % to +60 %, default 0, only available for working mode 04. 10000 is 100 % (the 30 % example in Appendix 4 writes 3000 in frame 01 06 0B EA 0B B8, where 0x0BEA is 3050). Section 6.11 labels its frame address 3053 but the bytes 0x0BEA are 3050. The unit column printing 0.10% conflicts with the remark and is not used. Set register 3070 to 0xA1 first, see Appendix 4. int16 1 % 0.01 RW Holding (FC03)
3051 3051 Percentage of active powerActive_Power_Percentage_Set · Range 0 % to 110 %. 10000 is 100 % (Appendix 4 writes 10000 for 100 %, frame 01 06 0B EB 27 10). The unit column printing 0.10% conflicts with this and is not used. Section 6.13 is internally inconsistent: its frame carries 0x2710 but its parameter table shows 0x03E8 labelled 10000. Set register 3069 to 0xAA first, see Appendix 4. uint16 1 % 0.01 RW Holding (FC03)
3053 3053 Actual power factor adjustmentPower_Factor_Adjustment_Set · The unit column prints 0.01 but the remark ('800<-->0.800'), the section 6.9 example (writing 800 gives PF 0.8) and Appendix 4 (writing 1000 gives PF 1) give 0.001 per count. Appendix 4 says to set register 3070 to 0xA2 first, and its step 2 text names register 3082 although its example frame writes register 3053 (0x0BED). int16 1 0.001 RW Holding (FC03)
3068 3068 Power-off saving function bitsPower_Off_Saving_Function · Bit 0: 1 saves register 3051 across power off. Bit 2: same for register 3050. Bit 3: same for register 3053. Bit 1 and bits 4 to 15 are reserved. bitfield16 1 1 RW Holding (FC03)
3069 3069 Active power switchActive_Power_Switch · 0x55 is OFF, 0xAA enables registers 3051 and 3080. Default 0xAA. Written values are saved automatically to flash (WS), so frequent writes are not recommended. uint16 1 1 RW Holding (FC03)
3070 3070 Reactive power switchReactive_Power_Switch_Set · 0x55 is OFF, 0xA1 enables registers 3050 and 3082, 0xA2 enables register 3053. Default 0x55. Written values are saved automatically to flash (WS), so frequent writes are not recommended. uint16 1 1 RW Holding (FC03)
3080 3080 Active power set-point 1Active_Power_Set_Point_1 · The unit column prints 10W, so one count is 10 W (Appendix 4: writing 10000 gives a 100 kW limit). Range 0 to +32768 as printed. Appendix 4 uses this register for inverters under the 320K series. Set register 3069 to 0xAA first, see Appendix 4. int16 1 W 10 RW Holding (FC03)
3082 3082 Reactive power set-point 1Reactive_Power_Set_Point_1 · The unit column prints 10Var, so one count is 10 Var (Appendix 4: writing 6000 gives a 60 kW limit). Range -32767 to +32768 as printed. Appendix 4 uses this register for inverters under the 320K series; its step 2 text names register 3082 and its example text names register 3080, but the example frame address 0x0C0A is 3082. Set register 3070 to 0xA1 first, see Appendix 4. int16 1 Var 10 RW Holding (FC03)
3222 3222 Active power set-point 2Active_Power_Set_Point_2 · The unit column prints 10W, so one count is 10 W. Only for the 320K series. Set register 3069 to 0xAA first, see Appendix 4. int32 2 W 10 RW Holding (FC03)
3224 3224 Reactive power set-point 2Reactive_Power_Set_Point_2 · The unit column prints 10Var, so one count is 10 Var. Only for the 320K series. Set register 3070 to 0xA1 first, see Appendix 4. int32 2 Var 10 RW Holding (FC03)

Scale is the number to multiply the raw value by to get the unit. Types with more than one register (32 and 64-bit) follow the word order above.

Open in Modbus Poll

  1. Download the Modbus Poll blocks file.
  2. Open Modbus Poll, connect to the device and set its unit ID. In Modbus Poll set Word order to AB CD.
  3. In the blocks panel on the right, click Import CSV and pick the file. CSV import is a Pro feature. Without Pro, Modbus Poll polls the first 20 values of your blocks.
  4. The wire addresses are already in the file, so there is no 0-based or 1-based conversion to do.

Once the values look right, export the tag list to Ignition, Kepware, Node-RED, Home Assistant or Voltrus SCADA.

Source and accuracy

Manufacturer document: RS485_MODBUS Communication (Solis grid-connected inverters) (oss.soliscloud.com)

Ver3.7 (PDF title: ModbusRTU Communication Protocol for Grid-connected Inverters_Ver.3.7_EN), revision V000B000D001 dated 2026/6/16, Ginlong (Solis). Hosted by Solis and linked from the Solis Service Center article 'Modus table for grid and hybrid inverters', p. 4-14, 16-19, 28-43. Read on 2026-10-24.

Also used: Solis Service Center: Modus table for grid and hybrid inverters (solis-service.solisinverters.com)

Addresses, types, units and scale are taken from the document above. Names and descriptions are written by Voltrus. Firmware versions can differ, so confirm a value on your own device before you rely on it.

Found a mistake? Report it by email with the register address and the manual page.

Other solar inverters

All register maps · Modbus addressing explained