KSTAR · Solar inverter
KSG1K-60K series string inverters (KSG1KSM3 ... KSG60K, incl. KSG25/36/50/60KHV) Modbus register map
Default configuration
- Protocol
- RS485
- Port
- 502
- Unit ID
- 1
- Addressing
- 0-based
- Byte order
- Big endian
- Word order
- High word first
- Baud rate
- 9600
- Parity
- None
- Data bits
- 8
- Stop bits
- 1
This device has an RS-485 interface. Reach it through a Modbus RTU-to-TCP gateway, configured with the factory serial settings above.
Register map
| Address | Count | Name | Type | Unit | Scale | Access |
|---|---|---|---|---|---|---|
| 3000 | 1 | PV1 input voltage | UInt16 | V | 0.1 | R |
| 3001 | 1 | PV2 input voltage Not present on the 1-3K models. | UInt16 | V | 0.1 | R |
| 3002 | 1 | PV3 input voltage Not present on the 1-5K models. | UInt16 | V | 0.1 | R |
| 3003 | 1 | PV1 input current | UInt16 | A | 0.01 | R |
| 3004 | 1 | PV2 input current Not present on the 1-3K models. | UInt16 | A | 0.01 | R |
| 3005 | 1 | PV3 input current Not present on the 1-5K models. | UInt16 | A | 0.01 | R |
| 3006 | 2 | PV1 input power 32-bit value over two registers, high word first. | Int32 | W | 1 | R |
| 3008 | 2 | PV2 input power Not present on the 1-3K models. | Int32 | W | 1 | R |
| 3010 | 2 | PV3 input power Not present on the 1-5K models. | Int32 | W | 1 | R |
| 3012 | 1 | PBUS voltage | UInt16 | V | 0.1 | R |
| 3013 | 1 | NBUS voltage Not present on the 1-5K models. | UInt16 | V | 0.1 | R |
| 3014 | 1 | RS-phase grid voltage | UInt16 | V | 0.1 | R |
| 3015 | 1 | ST-phase grid voltage Not present on the 1-5K models. | UInt16 | V | 0.1 | R |
| 3016 | 1 | TR-phase grid voltage Not present on the 1-5K models. | UInt16 | V | 0.1 | R |
| 3017 | 1 | RS-phase grid frequency | UInt16 | Hz | 0.01 | R |
| 3018 | 1 | ST-phase grid frequency Not present on the 1-5K models. | UInt16 | Hz | 0.01 | R |
| 3019 | 1 | TR-phase grid frequency Not present on the 1-5K models. | UInt16 | Hz | 0.01 | R |
| 3020 | 1 | R-phase grid-tied current | UInt16 | A | 0.01 | R |
| 3021 | 1 | S-phase grid-tied current Not present on the 1-5K models. | UInt16 | A | 0.01 | R |
| 3022 | 1 | T-phase grid-tied current Not present on the 1-5K models. | UInt16 | A | 0.01 | R |
| 3023 | 2 | Grid-tied power 32-bit value over two registers, high word first. | Int32 | W | 1 | R |
| 3025 | 1 | Radiator temperature The document prints only the scale (0.1) in the unit column; it names no unit for this row. | UInt16 | - | 0.1 | R |
| 3026 | 1 | Module temperature Not present on the 1-5K models. The document prints only the scale (0.1) and names no unit. | UInt16 | - | 0.1 | R |
| 3027 | 1 | DSP alarm code Bit field, Table 3.1.2 (W00 FanA lock, W01 FanB lock, W02 FanC lock, W04 zero power, W05 array warning). | UInt16 | - | 1 | R |
| 3028 | 2 | DSP error code Bit field over two registers, high word first; Table 3.1.3 (F00 grid volt low ... F23). | UInt32 | - | 1 | R |
| 3031 | 1 | Fan A speed | UInt16 | r/min | 1 | R |
| 3032 | 1 | Fan B speed Not present on the 1-5K models. | UInt16 | r/min | 1 | R |
| 3033 | 1 | Fan C speed Not present on the 1-5K models. | UInt16 | r/min | 1 | R |
| 3034 | 2 | Total energy yield 32-bit value over two registers, high word first. | UInt32 | kWh | 0.1 | R |
| 3038 | 2 | Total energy yield (second counter as printed) The document prints a second 'Total energy yield' row at this address; kept as printed, high word first. | UInt32 | kWh | 0.1 | R |
| 3040 | 2 | Annual energy yield 32-bit value over two registers, high word first. | UInt32 | kWh | 1 | R |
| 3042 | 1 | Daily energy yield | UInt16 | kWh | 1 | R |
| 3043 | 1 | Power-on voltage | UInt16 | V | 0.1 | R |
| 3044 | 1 | Power-on delay | UInt16 | s | 1 | R |
| 3045 | 1 | Lower grid voltage threshold | UInt16 | V | 0.1 | R |
| 3046 | 1 | Upper grid voltage threshold | UInt16 | V | 0.1 | R |
| 3047 | 1 | Lower grid frequency threshold | UInt16 | Hz | 0.01 | R |
| 3048 | 1 | Upper grid frequency threshold | UInt16 | Hz | 0.01 | R |
| 3049 | 1 | Preset power factor Value range in Table 3.4.2 of the document. | UInt16 | - | 1 | R |
| 3050 | 1 | Preset active power Value range in Table 3.4.3. | UInt16 | % | 1 | R |
| 3052 | 2 | Apparent power 32-bit value over two registers, high word first. | Int32 | VA | 1 | R |
| 3054 | 2 | Reactive power 32-bit value over two registers, high word first. | Int32 | var | 1 | R |
| 3056 | 1 | Power factor Table 3.4.2 gives the value range. | UInt16 | - | 1 | R |
| 3057 | 1 | DC insulation resistance Not present on the 1-5K models. | UInt16 | kOhm | 1 | R |
| 3058 | 1 | Overfrequency derating enable 0 = enabled, 1 = disabled. | UInt16 | - | 1 | R |
| 3059 | 1 | Overfrequency derating threshold Table 3.4.7 gives the thresholds. | UInt16 | - | 1 | R |
| 3060 | 1 | High voltage of the QV curve | UInt16 | - | 1 | R |
| 3061 | 1 | High-voltage power factor of the QV curve | UInt16 | - | 1 | R |
| 3062 | 1 | Low voltage of the QV curve | UInt16 | - | 1 | R |
| 3063 | 1 | Low-voltage power factor of the QV curve | UInt16 | - | 1 | R |
Read this device live with Modbus Connect, free for Windows, macOS and Linux
Related guides
Notes
MIRROR-SOURCED. Source document: Shenzhen Kstar Science & Technology "KSTAR KSG1-60K Inverter - Modbus RS485 Communications Protocol V1.8", doc code SFT-KSG1-60K-08, release A/0 (19 pages). Kstar's own download page (kstar.com/download.html) does not serve this protocol document; the copy used is a public mirror of the vendor PDF at https://github.com/sshahryiar/KStar-Inverter-MODBUS/blob/main/KStar%20Inverter%20Modbus%20Communication%20Protocol.pdf, SHA-256 81bc1a1ae224c49fc153e311c6652b0e09b1ffab34e43127079151c17e5f215b. Section 1.2 gives the serial settings: 1 start bit, 8 data bits, 1 stop bit, no parity, and 2400/4800/9600 bps with 9600 bps as the default rate; data is transmitted big-endian, so word_order is HighFirst. Section 2.3.1 (ID) gives the client address range 0-32 with 0 as the broadcast address and states no factory address, so unit ID 1 is a placeholder for the inverter's configured address. The seed carries the 04H telemetry block (registers 3000-3063, input registers) and the 03H machine-model string (3200-3204, holding register). Deliberate omissions: every 1-byte item, because the document packs two U8/S8 values into one 16-bit register (3030 operating mode + inverter model, 3036 ARM alarm code + ARM error code, 3037 input mode + mains standard, 3051 preset reactive power S8 + reactive control mode U8) and the app has no 8-bit type; the 3205 DSP/ARM version pair for the same reason; and the 10H setup block (clock 3300-3306, eight 1-byte fields; QV curve 3307-3310). Tables 3.1.1 and 3.3.3 disagree on the QV aliases (3.1.1: 3058-3059 overfrequency derating, 3060-3063 QV; 3.3.3: 3058-3061 QV); this seed follows 3.1.1. The 06H instruction block (4000-4008) is a set of executed commands, not a register map. Rows marked "1-3K not have"/"1-5K not have" exist only on the larger models and say so. The document prints two 'Total energy yield' rows (3034 and 3038); both are kept, the second labelled as printed.