Modbus-RTU Protocol for Solar Controllers
Modbus-RTU Protocol for Solar Controllers
network equipment. Modbus is also a request / response protocol, and provides the
As a master / slave protocol, at the same time, there is only one master and one or
more (Max 247) slave on the bus. Modbus communication is always initiated by the
master, and if no request is received from the master to the slave, no data will be sent.
The slaves can not communicate with each other, at the same time the master can
2. The default controller ID number is "1", we can modify the ID via PC common
software (Tips: when modify ID, please make sure the bus only connects a controller.
3. Serial communication parameters: baud rate 115200, data bits 8, stop bits 1, no
4. Register address uses hexadecimal format, the base address offset is 0x00.
5. All 32-bit-length data uses two 16-bit registers to represent (L and H register,
respectively), for example, the value of the array rated power is 3000, data multiple is
100, the data of L register (address 0x3002) is 0x93E0 and the data of H
Status analysis
Array status: address 3201 bits D15-D10
Charging status:address 3201 bits D3-D2
Battery status: address 3200 bits D7-D0
Load status: address 3201 bits D9-D7, address 3202 bits D13-D8,D6-D4
Device status: address 3200 bit D15 address 3201 bits D6 address 2000
For example
Read real-time battery voltage
Send command: 01 04 33 1A 00 01 1F 49
Analysis :
01 device ID
04 function code
33 1A the start bit of the address
00 01 the number of the address
1F 49 CRC
Receive command : 01 04 02 04 CE 3A 64
Analysis :
01 device ID
04 function code
02 two bytes
04 CE data(0x04CE (Hex) = 1230 (Dec), 1230/100=12.3V)
3A 64 CRC
Battery 1 Parameter:After choosing the battery type , set the
WARNING: The voltage parameters of lithium battery can be set, but you must refer to the voltage
parameters of lithium battery BMS.
WARNING: The required accuracy of BMS shall be at least 0.2V. If the deviation is higher than 0.2V, the
manufacturer will assume no liability for any system malfunction caused by this.
Warning
1 When the battery type is Sealed、 Gel or Flooded, the customer only can set Charging mode、battery capacity、
temperature compensation coefficient、equalize duration、boost duration (you cannot set the Equalize duration when
the battery type is Gel). Only when the battery type is User, the customer can set the other parameters (9003~900E the
parameters need to be set at the same time)
2 Battery discharge and battery charge can be set when the charging mode is SOC
3 The battery type and battery rated voltage level cannot be User and Self-recognition at the same time
For example:
Read battery parameter(battery type: user rated voltage level: 12V)
Send command: 01 03 90 00 00 0F 28 CE
Analysis :
01 device ID
03 function code
90 00 the start bit of the address
00 0F the number of the address
28 CE CRC
Receive command: 01 03 1E 00 00 00 C8 01 2C 06 40 05 DC 05 DC 05 B4 05 A0 05 64 05 28 04 EC
04 C4 04 B0 04 56 04 24 72 A5
Analysis::
01 device ID
03 function code
1E the number of the sending data
00 00 00 C8 01 2C 06 40 05 DC 05 DC 05 B4 05 A0 05 64 05 28 04 EC 04 C4 04 B0 04 56 04 24
the sending data(00 00 battery type(User) 00 C8
battery capacity(200) 01 2C temperature compensation
coefficient(3) 06 40 Over voltage disconnect
voltage(16V) 05 DC Charge limit voltage(15V)
05 DC Over voltage reconnect voltage(15V) 05 B4
Equalize charging voltage(14.6V) 05 A0 Boost
charging voltage(14.4V) 05 64 Float charging
voltage(13.8V) 05 28 Boost reconnect charging
voltage(13.2V ) 04 EC Low voltage reconnect
voltage(12.6V) 04 C4 Under voltage warning recover
voltage(12.2V) 04 B0 Under voltage warning
voltage(12V) 04 56 Low voltage disconnect
voltage(11.1V) 04 24 Discharging limit voltage(10.6V)
3C C4 CRC
Send command : 01 03 90 67 00 01 18 D5
Analysis :
01 device ID
03 function code
90 67 the start bit of the address
00 01 the number of the address
18 D5 CRC
Receive command : 01 03 02 00 01 79 84
Analysis :
01 device ID
03 function code
02 the number of the sending data
00 01 the sending data(12V system)
79 84 CRC
Send command : 01 03 90 6B 00 02 98 D7
Analysis :
01 device ID
03 function code
90 6B the start bit of the address
00 02 the number of the address
98 D7 CRC
Receive command : 01 03 04 00 78 00 78 7A 08
Analysis:
01 device ID
03 function code
04 the number of the sending data
00 78 00 78 the sending data(00 78 equalize duration(120Min) 00 78
boost duration (120Min)
7A 08 CRC
For example:
Read the address 0x9013-9015
Send command :01 03 90 13 00 03 D9 0E
Analysis :
01 device ID
03 function code
90 13 the start bit of the address
00 03 the number of the address
D9 0E CRC
Receive command :01 03 06 1A 1B 18 0B 10 02 BC 2E
Analysis :
01 device ID
03 function code
06 six bytes
1A 1B 18 0B 10 02 the receiving data(1A 26(minute), 1B 27(second),18 24(day),
0B 11(hour),10 16(year),02 02(month))
B7 24 CRC
Device parameter settings
Function
Number Variable name Address Description Unit Times
code
Lower Temperature 03(read)
E1 9010 Range: -40-+10 ℃ 100
Charging Limit 10(write)
Lower Temperature 03(read)
E2 9011 Range: -40-+10 ℃ 100
Discharging Limit 10(write)
Battery upper 03(read)10
E3 9017 ℃ 100
temperature limit (write)
Battery lower 03(read)10
E4 9018 ℃ 100
temperature limit (write)
Device over 03(read)10
E5 9019 ℃ 100
temperature (write)
Device recovery 03(read)10
E6 901A ℃ 100
temperature (write)
Close after LCD backlight
03(read)10
E7 Backlight time 9063 light setting the number of S
(write)
seconds
For example
Send the data of 0x9017-0x901A
Send command :01 10 90 17 00 04 08 19 64 F0 60 21 34 1D 4C 70 10
Analysis :
01 device ID
10 function
90 17 the start bit of the address
00 04 the number of the address
08 the sending bytes
19 64 F0 60 21 34 1D 4C the sending data
70 10 CRC
Receive data:01 10 90 17 00 04 5C CE
Analysis :
01 device ID
10 function code
90 17 the start bit of the address
00 04 the number of the address
5C CE CRC
Rated parameter
Numb Function
Variable name Address Description Unit Times
er code
F1 Array rated voltage 3000 04(read) PV array rated voltage V 100
For example:
Read the array rated voltage
Send command :01 04 30 00 00 01 3E CA
Analysis :
01 device ID
04 function code
30 00 the start bit of the address
00 01 the number of the address
3E CA CRC
Receive command :01 04 02 17 70 B7 24
Analysis :
01 device ID
04 function code
02 two bytes
17 70 the receiving data(0x1770 (Dec), 6000,6000/100=60V)
B7 24 CRC
For example:
Send restore system defaults command:
Send command :01 05 00 13 FF 00 7D FF
Analysis :
01 device ID
05 function code
00 13 the address of the sending data
FF 00 the sending data(enable restore system defaults)
7D FF CRC
Receive command :01 05 00 13 FF 00 7D FF
Analysis :
01 device ID
05 function code
00 13 the address of the receiving data
FF 00 the receiving data
7D FF CRC
Device ID settings
For example:
[Link] the device ID
Send command :F8 45 00 01 01 F8 89 BE
Analysis :
F8 45 function code
00 01 the reading data length
01 the reading bytes
F8 read the device ID
89 BE CRC
Receive command :F8 45 03 82 AO
Analysis :
F8 45 function code
03 the receiving ID
82 A0 CRC
Pin Definition
1. The RJ45 interface pin define for RS485 port of LS-B、VS-B、Tracer-B 、
Tracer-A series controllers is shown below:
Pins define:
Pins Define
3 RS-485-B
1 2 3 4 5 6 7 8
4 RS-485-B
5 RS-485-A
6 RS-485-A
7 Ground
8 Ground
RJ45 plug pins are sorted by number, the sketch map is as shown above:
2. The interface pin definition for RS485 port of DuoRacer series controllers is
shown below:
Note:
(1)To improve the communication quality, the Ground pins(connected with the
negative terminal of the battery) could be used if necessary. However, the user must
(2)Do not use the Vcc pins (+5v), or the controller may be damaged permanently.