0% found this document useful (0 votes)
20 views

Modbus Protocol 3.7

Uploaded by

Randy Snow
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
20 views

Modbus Protocol 3.7

Uploaded by

Randy Snow
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 28

MODBUS PROTOCOL

Revision
Version Revision contents Modified by
date
This version and before,the controller fault
V3.4 2015-08-06 information is defined as low 16 bits,and high 16
bits are reserved.
Changes to the controller fault information is
V3.5 2016-11-09 placed in the high 16 bits,and the low 16 bits are
reserved.
In example 4.7,the temperature reading address
0X0102 changed to 0X0103.
V3.6 2017-07-05 In example 4.19,the seventh byte of the message is
missing the total number of bytes.
New:communication line description.

V3.7 2017-08-09 Add and delete document contents


Specification
MODBUS Protocol

1.1
Directory
1 Interface specification and serial port configuration information.................................................................. 1

2 Communication protocol format and command analysis................................................................................ 2

2.1 Format............................................................................................................................................................... 2

2.2 Specification...................................................................................................................................................... 2

2.3 Notes................................................................................................................................................................. 2

2.4 Processing flow chart........................................................................................................................................ 3

2.5 Instance............................................................................................................................................................. 5

3 PDU address distribution table......................................................................................................................... 10

4 Command parses and paradigms......................................................................................................................18

4.1 Read the voltage and current of the controller system................................................................................... 18

4.2 Read the controller product model................................................................................................................. 18

4.3 Read the controller software version and the hardware version.................................................................... 19

4.4 Read controller product serial number........................................................................................................... 19








4.22 Clear history data.......................................................................................................................................... 26
Specification
MODBUS Protocol

1 Interface specification1.1and serial port configuration information

RS232 interface:

RS485 interface:

Serial port rate:9600 Check bit:NONE Data bits:8bit Stop bit:1bit


Specification

1.1
2 Communication protocol format and command analysis

2.1 Format
Start character Address code Function code Data Error check End character

2.2 Descriptions
1)start character:>10ms
2)address code:1 byte,range:01H to F7H(decimal 1 to 247),00His a broadcast address to which all slaves respond but
do not return commands.
3)Function code:1 byte
Accessed data
Command name Function code Error code
type
Read a single or multiple
2 bytes 03H 83H
word register
Write a single word register 2 bytes 06H 86H
Write N word registers in a
2 bytes 10H 90H
row
No accessed
Reset to factory defaults 78H F8H
data
No accessed
Clear history 79H F9H
data

4)Data:N bytes
5)Error check:2 bytes,it’s the CRC checksum of the address code,function code and each byte of the data.
6)End character:>10ms
Note:
1)The data address and the data itself are 2 bytes,with the high byte sent first and then the low byte;for CRC,the low byte
is sent first and the high byte is sent next.
2)The error code is the error response function code returned by the client when there is some error in the frame data
sent by the server,error code=function code|80H.

2.3 Notes
1)PDU address:(0000 to 0009)/(000A to 001A)/(0100 to 0122)/(E001 to E02D)/(F000 to F3FF),these address segments
are not allowed to cross access and modification in the same command!!!
2)The parameters and options of this paper are for the planning and introduction of all the products of this company,so it
does not mean that each product has the functions and operation of the following parameters.Refer to the instruction manual
for details.
3)Data below suffixed with an “H” are hexadecimal,and the others are decimal.
Specification

2.4 Process flow chart 1.1

1) Exception code descriptions


a、01H -- Function code not supported
b、02H -- PDU start address is not correct or PDU start address + data length
c、03H -- Data length in reading or writing register is too large
d、04H -- Client fails to read or write register
e、05H -- Data check code sent by server is not correct
2) Flow chart of reading register
Specification

3)Flow chart of writing a single register


1.1

4) Flow chart of writing N registers in a row


Specification

1.1
2.5 Example
1) Read register
Request:
No. of
Description Command
bytes
Device
BYTE 01H~F7H
address
Function
BYTE 03H
code
Start address WORD 0000H~FFFFH
No. of read
WORD 0001H~007DH
words
Check code WORD CRC checksum of all the above bytes

Normal response:
No. of
Description Command
bytes
Device
BYTE 01H~F7H
address
Function
BYTE 03H
code
Data length BYTE 01H~FAH
Data read out (High byte sent first, low
Data content WORD
byte sent next)
Data read out (High byte sent first, low
... WORD
byte sent next)
Check code WORD CRC checksum of all the above bytes

Exception response:
No. of
Description Command
bytes
Device
BYTE 01H~F7H
address
Error code BYTE 83H
Exception
BYTE N (N=1,2,3,4)
code
Check code WORD CRC checksum of all the above bytes

2) Write a single register


Specification

Request:
1.1
No. of
Description Command
bytes
Device
BYTE 01H~F7H
address
Function
BYTE 06H
code
Start address WORD 0000H~FFFFH
Write data in WORD 0000H~FFFFH
Check code WORD CRC checksum of all the above bytes

Normal response:
No. of
Description Command
bytes
Device
BYTE 01H~F7H
address
Function code BYTE 06H
Start address WORD 0000H~FFFFH
Write data in WORD 0000H~FFFFH
Check code WORD CRC checksum of all the above bytes

Exception response:
No. of
Description Command
bytes
Device
BYTE 01H~F7H
address
Error code BYTE 86H
Exception
BYTE N (N=1,2,3,4)
code
Check code WORD CRC checksum of all the above bytes

3) Write N registers in a row


Request:
No. of
Description Command
bytes
Device address BYTE 01H~F7H
Function code BYTE 10H
Start address WORD 0000H~FFFFH
No. of written
WORD 0001H~007DH
bytes
Specification

No. of written
1.1
BYTE One time of the No. of bytes
words
Data written in (High byte sent first,
Data content WORD
low byte sent next)
Data written in (High byte sent first,
... WORD
low byte sent next)
Check code WORD CRC checksum of all the above bytes

Normal response:
No. of
Description Command
bytes
Device
BYTE 01H~F7H
address
Function code BYTE 10H
Start address WORD 0000H~FFFFH
No. of written
WORD 0001H~007DH
bytes
Check code WORD CRC checksum of all the above bytes

Exception response:
No. of
Description Command
bytes
Device
BYTE 01H~F7H
address
Error code BYTE 90H
Exception
BYTE N (N=1,2,3,4)
code
Check code WORD CRC checksum of all the above bytes

4) Reset to factory defaults


Request:
No. of
Description Command
bytes
Device address BYTE 01H~F7H
Function code BYTE 78H
Complementary
WORD 0000H
data
Complementary
WORD 0001H
data
Check code WORD CRC checksum of all the above bytes
Specification

Normal response:
1.1
No. of
Description Command
bytes
Device address BYTE 01H~F7H
Function code BYTE 78H
Complementary
WORD 0000H
data
Complementary
WORD 0001H
data
Check code WORD CRC checksum of all the above bytes

Exception response:
No. of
Description Command
bytes
Device
BYTE 01H~F7H
address
Error code BYTE F8H
Exception
BYTE N (N=1,2,3,4)
code
Check code WORD CRC checksum of all the above bytes

5) Clear history
Request:
No. of
Description Command
bytes
Device address BYTE 01H~F7H
Function code BYTE 79H
Complementary
WORD 0000H
data
Complementary
WORD 0001H
data
Check code WORD CRC checksum of all the above bytes

Normal response:
No. of
Description Command
bytes
Device
BYTE 01H~F7H
address
Function code BYTE 79H
Complementa
WORD 0000H
ry data
Specification

Complementa
1.1
WORD 0001H
ry data
Check code WORD CRC checksum of all the above bytes

Exception response:
No. of
Description Command
bytes
Device
BYTE 01H~F7H
address
Error code BYTE F9H
Exception
BYTE N (N=1,2,3,4)
code
Check code WORD CRC checksum of all the above bytes
Specification

3 PDU1.1
address distribution table

Reserved(20 bytes)
B Parse instance
PDU R/ Return
yt Unit Description Data (range) Analysis (the data below is decimal
address W data
es data)
0000H
~ 20 - Reserved
0009H

System information(34 bytes)


0CH (decimal 12) 12V
18H (decimal 24) 24V
(8 higher bits) 24H (decimal 36) 36V
The maximum support
max. voltage 30H (decimal 48) 48V
30 voltage of the controller
supported by the 60H (decimal 96) 96V
system is 48V
system Automatic
FFH (decimal
000AH 2 R - recognition of
255)
system voltage
0AH (decimal 10) 10A
(8 lower bits) 14H (decimal 20) 20A
The rated charging current
rated charging 1EH (decimal 30) 30A 3C
of the controller is 60A
current 2DH (decimal 45) 45A
3CH (decimal 60) 60A
0AH (decimal 10) 10A
(8 higher bits) 14H (decimal 20) 20A
The rated discharge current
rated discharging 1EH (decimal 30) 30A 14
of the controller is 20A
000BH 2 current 2DH (decimal 45) 45A
R -
3CH (decimal 60) 60A

(8 lower bits) 00 (controller) Indicates that the product


00
product type 01 (inverter) type is the controller type

000CH~
16 R - Product model ASCII code
0013H
The software version of the
0014H 00 01
4 R - Software version controller is 01.04.00
0015H 04 00
(highest byte 00H not used)
The hardware version of the
0016H 00 00
4 R - Hardware version controller is 00.05.00
0017H 05 00
(highest byte 00H not used)
0018H Product serial 10 03 Indicating it's the 100th unit
4 R -
0019H number 00 64 produced in Mar. of 2016
Specification

(8 higher bits)Reserved Indicates that the device


001AH 2 R/W - (8 lower bits)
1.11~247 00 01 address of the controller is
1
device address

Controller dynamic information (7 bytes)


(8 higher bits)Reserved
(8 lower bits) Current battery The battery capacity of SOC is
0100H 2 R % 0~100 00 37
Battery capacity capacity value 55 %
SOC

Battery voltage *
0101H 2 R V Battery voltage 00 7A The battery voltage is 12.2V
0.1
Charging Charging current The battery charging current is
0102H 2 R A 01 0A
current (to battery) * 0.01 2.66A

(8 higher bits)
b7: sign bit; The controller temperature is
Controller temperature
0103H 2 R ℃ b0-b6:temperatu 1C 19 28℃
(8 lower bits)
re value The battery temperature is 25℃
Battery temperature

0104H 2 R V Load dc voltage Load voltage*0.1 00 7A The load voltage is 12.2V

0105H 2 R A Load dc current Load current*0.01 04 0B The load current is 10.35A

0106H 2 R W Load dc power Actual value 00 7E The load power is 126W

Solar panel information(6 bytes)


Solar panel voltage
0107H 2 R V Solar panel voltage 00 C8 The solar panel voltage is 20V
* 0.1

Solar panel current Solar panel current


0108H 2 R A 01 0A The solar panel current is 2.66A
(to controller) * 0.01

The solar panel charging power


0109H 2 R W Charging power Actual value 00 35
is 53W

Battery information(22 bytes)


1 to turn on the
R/ Load On/ Off
010AH 2 - 0 or 1 load, 00 01 Turn on the load
W command
0 to turn off the load

Battery's min. Battery's min.


The current day of battery min.
010BH 2 R V voltage of the voltage of the 00 70
voltage is 11.2V
current day current day * 0.1

Battery's max. Battery's max.


The current day of battery max.
010CH 2 R V voltage of the voltage of the 00 84
voltage is 13.2V
current day current day * 0.1

Max. charging Max. charging


The current day of battery max.
010DH 2 R A current of the current of the 00 D8
charging current is 2.16A
current day current day * 0.01

Max. Discharging Max. discharging


The current day of battery max.
010EH 2 R A current of the current of the 04 10
discharging current is 10.4A
current day current day * 0.01
Specification

Max. charging
1.1 The current day of battery max.
010FH 2 R W power of the Actual value 00 41
charging power is 65W
current day
Max.
discharging The current day of battery max.
0110H 2 R W Actual value 00 78
power of the discharging power is 120W

current day
Charging
The current day of battery
0111H 2 R AH amp-hrs of the Actual value 06 08
charging amp-hrs is 1544AH
current day
Discharging
The current day of battery
0112H 2 R AH amp-hrs of the Actual value 08 10
discharging amp-hrs is 2064AH
current day
Power
The current day of Power
0113H 2 R W generation of Actual value 03 DE
generation is 990W
the current day
Power
The current day of Power
0114H 2 R W consumption of Actual value 01 E3
consumption is 483W
the day

Historical data information(22 bytes)

Total number of The system has been running for


0115H 2 R days 00 08
operating days eight days

Total number of
The battery is over-discharges
0116H 2 R - battery 00 01
one time
over-discharges
Total number of
0117H 2 R - battery 00 06 The battery is filled six times

full-charges
Total charging
0118H 0001 The battery of total charging
4 R AH amp-hrs of the Actual value
0119H 0203 amp-hrs is 66051AH
battery
Total
011AH discharging 0000 The battery of total discharging
4 R AH Actual value
011BH amp-hrs of the 0108 amp-hrs is 264AH

battery
Cumulative
011CH 0000 The solar panel of Cumulative
4 R W power Actual value
011DH 07D0 power generation is 2000W
generation
Cumulative
011EH 0000 The load of Cumulative power
4 R W power Actual value
011FH 03E8 consumption is 1000W
consumption
Specification

Load information(2 bytes)


1.1 b7: 0 indicates Indicates that the load is
the load is off, open and the brightness is
- Load status 0 or 1 8
1 indicates the 100%.
high
load is on E4 (the brightness is not
er
adjustable at present)
bits b0~b6:
% Load brightness 00~64H
brightness value

00H: charging
deactivated
01H: charging
activated
02H: mppt
charging mode
03H: equalizing
0120H 2 R
charging mode
04H: boost The current day of controller is
- Charging state 8 lower bits 02
charging mode MPPT charging.

05H: floating
charging mode
06H: current
limiting
(overpower)
Controller fault information(4 bytes)
B31 reserved

B30:circuit, charge

MOS short circuit

B29:Anti-reverse

MOS short
E.g.:
B28:solar panel
A certain bit being 1
reversely
indicates some fault occurs
connected
to the corresponding item,
Controller fault and B27:solar panel
0121H while a certain bit being 0
4 R - warning 16 higher bits working point
0122H indicates the corresponding
information over-voltage
item is free from faults.
B26:solar panel
When all items function
counter-current
normally, the bits return to
B25:photovoltaic
00000000H.
input side
over-voltage
B24: photovoltaic
input side short
circuit
Specification

B23: photovoltaic
1.1 input overpower
B22: ambient
temperature too
high
B21: controller
temperature too
high
B20: load
overpower
or load
over-current
B19: load short
circuit
B18: battery
under-voltage
warning
B17: battery
over-voltage
B16: battery
over-discharge
16 lower bits B0-B15 reserved
EEPROM
Controller parameter setting(50 bytes)
E001H 2 Reserved
Battery parameter setting(38 bytes)
Nominal battery
E002H 2 R AH
capacity
12:12V
24:24V
8 higher bits:
36:36V
system voltage
R/ 48:48V
E003H 2 - setting
W FF: automatic
8 lower bits:
recognition
recognized voltage
Others:automatic
recognition
0=Self-customiz
ed,
R/ 1=Open,
E004H 2 - Battery type
W 2=Sealed,
3=Gel,
4=Lithium
R/ Over-voltage Setting range: 7 to 17V
E005H 2 V 70~170
W threshold E.g.:
Specification

R/ Charging voltage when the over-voltage


E006H 2 V 1.170~170
W limit threshold needs to be set to
R/ Equalizing 17.0 V and one decimal
E007H 2 V 70~170
W charging voltage place is to be kept, first
Boost charging multiply the figure by 10,
R/ voltage/ i.e. 17.0V * 10 = 170V,
E008H 2 V 70~170
W overcharge voltage then convert it to a
(lithium batteries) hexadecimal value
Floating charging 00AAH, and next write the
voltage/ value into 0103H.
R/
E009H 2 V overcharge 70~170
W
recovery voltage
(lithium batteries)
R/ Boost charging
E00AH 2 V 70~170
W recovery voltage
R/ Over-discharge
E00BH 2 V 70~170
W recovery voltage
R/ Under-voltage
E00CH 2 V 70~170
W warning level
R/ Over-discharge
E00DH 2 V 70~170
W voltage
R/ Discharging limit
E00EH 2 V 70~170
W voltage
8 higher bits:
end-of-charge SOC
R/
E00FH 2 - 8 lower bits: Unrealized
W
end-of-discharge
SOC
R/ Over-discharge
E010H 2 S 0~120
W time delay
R/ Equalizing
E011H 2 Min 0~300 Step length 10
W charging time
R/ Boost charging
E012H 2 Min 10~300 Step length 10
W time
R/ Equalizing 0:closed,
E013H 2 day 0~255
W charging interval step length 5
Temperature 0:not
R/ mV/℃
E014H 2 compensation 0~5 compensated,
W /2V
factor step length 1
E015H
~ 16 - Reserved
E01CH

Mode setting(2 bytes)


Specification

Sole light control,


1.1
00H light control over

on/ off of load

Load is turned on by

light control, and


01H
goes off after a time

delay of 1 hour

Load is turned on by

light control, and


02H
goes off after a time

delay of 2 hours

Load is turned on by

light control, and


03H
goes off after a time

delay of 3 hours

Load is turned on by

light control, and


04H
goes off after a time

delay of 4 hours

Load is turned on by

light control, and


R/ Load working 05H
E01DH 2 - goes off after a time
W modes
delay of 5 hours

Load is turned on by

light control, and


06H
goes off after a time

delay of 6 hours

Load is turned on by

light control, and


07H
goes off after a time

delay of 7 hours

Load is turned on by

light control, and


08H
goes off after a time

delay of 8 hours

Load is turned on by

light control, and


09H
goes off after a time

delay of 9 hours

Load is turned on by

light control, and


0AH (decimal 10)
goes off after a time

delay of 10 hours
Specification

Load is turned on by
1.1 light control, and
0BH (decimal 11)
goes off after a time

delay of 11 hours

Load is turned on by

light control, and


0CH (decimal 12)
goes off after a time

delay of 12 hours

Load is turned on by

light control, and


0DH (decimal 13)
goes off after a time

delay of 13 hours

Load is turned on by

light control, and


0EH (decimal 14)
goes off after a time

delay of 14 hours

0FH (decimal 15) Manual mode

10H (decimal 16) Debugging mode

11H (decimal 17) Normal on mode

Light control setting(4 bytes)


R/
E01EH 2 Min Light control delay 0~60
W
R/ Light control
E01FH 2 V 1~40
W voltage

E020H 2 - Reserved

b3 to b7 not used
b1: 1 special power

control function

enabled 0 special

power control

function disabled
8 higher bits
The position 1 will clear the
b0: 1 each night
battery over discharging of mark
R/ Special power on function once every night,and (assuming
E021H 2 -
W control enabled, that the battery over discharging
0 each night on on the same day)at least once

function disabled allow the system open the load


on the night.
b3 to b7 not used
b2: no charging
8 lower bits below 0 °C
(1: enabled, 0:
disabled)
Specification

b0 to b1:
1.1
charging method
(00: direct
charging, 01:
PWM charging)

Historical data record(FLASH)


Function code:
F000H
Reading the day data is F000H,
~ 10 Historical data of
R - Read the first 3 days data is
F3FFH 24 the someday
F003H,

Returns 20 bytes of data block

4 Command parses and paradigms

4.1、Read the voltage and current of the controller system


PDU
Bytes R/ W Data Meaning
address
0CH (decimal 12) 12V
18H (decimal 24) 24V
24H (decimal 36) 36V
8 higher bits: 30H (decimal 48) 48V
system voltage 60H (decimal 96) 96V
Automatic
FFH (decimal
000AH 2 R recognition of system
255)
voltage
0AH (decimal 10) 10A
14H (decimal 20) 20A
8 lower bits:
1EH (decimal 30) 30A
system current
2DH (decimal 45) 45A
3CH (decimal 60) 60A
According to "Table 1", the PDU address is known to be 000AH. Read 1 word (2 bytes)
To send: 01 03 000A 0001 A408
To receive: 01 03 02 181E 324C
Parsing: high byte 18H indicates the controller's system voltage is 24V, and low byte 1EH indicates the
system current is 30A.

4.2、 To read the controller's model,and the PDU addresses are known to be 000CH to 0013H in sequence and
occupy a total of 16 bytes. Assume these addresses store the following data (ASCII) in sequence:
’’, ' ', ' ', ' ', 'M', 'T', '4', '8', '3' , '0' , ' ', ' ', ' ', ' ', ' ', ' '
To send: 01 03 000C 0008 840F
Specification

To receive: 01 03 10 2020 2020 4D54 3438 3330 2020 2020 2020 EE98
1.1
Parsing: this controller's model is MT4830 (the ASCII corresponding to 20H is ' ', and space can be
neglected)

4.3、To read the controller's software version and hardware version, and the PDU addresses are known to be 0014H,
0015H, 0016H and 0017H in sequence
To send:01 03 0014 0004 040D
To receive:01 03 08 0003 0201 0001 0203 8A54
Parsing: (the highest byte OOH is not used) 030201H indicates the controller's software version is V03.02.01
(the highest byte OOH is not used) 010203H indicates the controller's hardware version is V01.02.03

4.4、To read the controller's product serial number and the PDU addresses are 0018H and 0019H in sequence as
shown in "Table 1"
To send: 01 03 0018 0002 440C
To receive:01 03 04 0F01 FFFF A957
Parsing: 0F01 FFFFH is the product serial number, indicating it's the 65535th (hexadecimal FFFFH) unit
produced in Jan. of 2015

4.5、To read battery capacity SOC, and the PDU address is known to be 0100H
To send: 01 03 0100 0001 85F6
To receive: 01 03 02 0064 B9AF
Parsing: (the highest byte OOH is not used) the battery capacity SOC is 64H% (decimal 100%)

4.6、To read battery voltage:


Multiply the battery voltage reading by 0.1

The PDU address is known to be 0101H


To send: 01 03 0101 0001 D436
To receive: 01 03 02 007B F867
Parsing: formula (battery voltage = battery voltage * 0.1)
Battery voltage: (007BH, decimal 123), 007BH * 0.1 = 12.3V

4.7、To read the battery's surface temperature and controller temperature, and the PDU addresses are known to be
0103
The high 8 bits represent the temperature of the controller, and the lower 8 bits represent the temperature of the battery.
To send: 01 03 0103 0001 75F6
To receive: 01 03 02 1B19 737E
Analytic: 1B19H represent the temperature of the controller is 1BH (27 ℃), the surface temperature of the
battery for 19H(25 ℃)

4.8、To read load voltage, current and power, and the PDU addresses are known to be 0104H, 0105H and 0106H in
sequence
To send: 01 03 0104 0003 45F6
To receive: 01 03 06 0078 00C8 00F0 00C5
Specification

Parsing:
1.1
Formula: load voltage = load voltage * 0.1
0078H is the load voltage, so the actual load voltage is: 0078H * 0.1 = 120 * 0.1 = 12.0V
Formula: load current =load current * 0.01
00C8H is the load current, so the actual load current is: 00C8H * 0.01 = 200 * 0.01 = 2.00A
00F0H is the load power (decimal 240W) which can also be calculated via formula: load voltage * load
current

4.9、 To read solar panel voltage, charging current and charging power, and the PDU addresses are known to be
0107H, 0108H and 0109H in sequence
To send: 01 03 0107 0003 B5F6
To receive: 0090 0096 00D8 011E
Parsing:
Formula: solar panel voltage = solar panel voltage * 0.1
00AAH is the solar panel voltage reading, so the actual solar panel voltage is: 0090H * 0.1 = 144 * 0.1 =
14.4V
Formula: solar panel charging current = solar panel charging current * 0.01
0096H is solar panel charging current reading, so the actual solar panel charging current is: 0096H * 0.01=
150 * 0.01 = 1.50A
00D8H is solar panel charging power (decimal 216 W) which can also be calculated via formula: solar panel
voltage * solar panel charging current

4.10、To read the current day's min. battery voltage, max. battery voltage, max. charging current, max. discharging
current, max. charging power, max. discharging power, charging amp-hrs, discharging amp-hrs, power generation, power
consumption, and the PDU addresses are 010BH to 0114H in sequence as shown in "Table 1"

To send: 01 03 010B 0003 75F5


To receive: 01 03 06 0070 0084 00D8 20CD
Parsing: in the returned command
The 4th and 5th bytes 0070H indicate the current day's min. battery voltage: 0070H * 0.1 = 112 * 0.1 =
11.2V
The 6th and 7th bytes 0084H indicate the current day's max. battery voltage: 0084H * 0.1 = 132 * 0.1 =
13.2V
The 8th and 9th bytes 00D8H indicate the current day's max. charging current: 00D8H * 0.01 = 216 *
0.01 = 2.16V

E.g.: to read the controller's charging amp-hrs and discharging amp-hrs on the current day, and the PDU
addresses are known to be 0111H and 0112H respectively
To send: 01 03 00111 0002 31D4
To receive: 01 03 04 0608 0810 7D75
Parsing: the 4th and 5th bytes 0608H are the current day's charging amp-hrs (decimal 1544AH);
Parsing: the 6th and 7th bytes 0810H are the current day's discharging amp-hrs (decimal 2064AH)
Specification

4.11、To read the number of operating days, over-discharges and full-charges, and the PDU addresses are 0115H,
1.1
0116H and 0117H respectively.
To send: 01 03 0115 0003 15F3
To receive: 01 03 06 0008 0001 0006 1176
Parsing:
The 4th and 5th bytes 0008H are the number of operating days, indicating the system has operated for 8
days.
The 6th and 7th bytes 0001H are the number of over-discharges, indicating th battery has been
over-discharged once.
The 8th and 9th bytes 0006H are the number of full-charges, indicating the battery has been fully
charged for 6 times.

4.12、To read the battery's total charging amp-hrs and discharging amp-hrs, and the PDU addresses are known to be
0118H, 0119H, 011AH and 011BH in sequence
To send: 01 03 0118 0004 C5F2
To receive: 01 03 08 0001 0203 0000 0108 C0A3
Parsing: the 4th to 7th bytes 00010203H are the battery's total charging amp-hrs (decimal 66051AH =
66.051KAH)
The 8th to 11th bytes 00000108H are the battery's total discharging amp-hrs (decimal 264AH = 0.264KAH)

4.13 、 To read the controller's cumulative power generation and cumulative power consumption, and the PDU
addresses are known to be 011CH to 011FH in sequence and occupy a total of 8 bytes.
To send: 01 03 011C 0004 840F
To receive: 01 03 08 0000 07D0 0000 03E8 550C
Parsing: 000007D0H are the controller's cumulative power generation (decimal 2000 kilowatt-hours)
The 8th to 11th bytes 000003E8H are the cumulative power consumption (decimal 1000 kilowatt-hours)

4.14、To read load status, brightness and battery status, and the PDU addresses are known to be 0120H
Specification

PDU
1.1
Bytes R/ W Item Value Meaning
address
b7:0 indicates the
Load status 0 or 1 load is off, 1 indicates
High
the load is on
byte
Load 00 to b0 to b6: brightness
brightness 64H value
00H: charging
deactivated
01H: charging
activated
0120H 2 R 02H: mppt charging
mode
Low 03H: equalizing
Battery status
byte charging mode
04H: boost charging
mode
05H: floating
charging mode
06H: constant current
(overpower)

To send: 01 03 0120 0001 843C


To receive: 01 03 02 E402 7285
Parsing: E4H is (80H | 64H)
The 4th byte b7 being 1 indicates the street light is on, otherwise it's off, and b0 to b6 being 64H
indicates the street light's brightness is 100%
The 5th byte 02H indicates mppt charging mode is in operation (for parsing of other statuses, refer to
"PDU Address Allocation Table")

4.15、To read faults and warnings, and the PDU addresses are 0121H and 0122H respectively
PDU
Bytes R/ W Item byte Meaning
address
B31 reserved
B30:circuit, charge MOS
short circuit
Controller fault 16 High
0121H B29:Anti-reverse MOS short
4 R and warning bit
0122H B28: solar panel reversely
information
connected
B27 solar panel working
point over-voltage
Specification

B26: solar panel


1.1
counter-current
B25: photovoltaic input side
over-voltage
B24: photovoltaic input side
short circuit
B23: photovoltaic input
overpower
B22: ambient temperature
too high
B21: controller temperature
too high
B20: load overpower
or load over-current
B19: load short circuit
B18: battery over-voltage
B17: battery under-voltage
B16: battery over-discharge
To send: 01 03 0121 0002 95FD
To receive: 01 03 04 0101 0000 AA0F
Parsing:
The first four or five bytes for the fault information of the high 16 bit B24, 0101H for 1, said the photovoltaic
input side short circuit, B16 1 said the battery over discharge
(for parsing of other fault codes, refer to the "Meaning" column of the "PDU Address Allocation Table")

4.16 、 To turn on the load, and knowing the PDU address is 010AH, you need write on/ off command into this
address (0001 to turn on the load, 0000 to turn off the load)
To turn on the load:
To send: 01 06 010A 0001 69F4
To receive:01 06 010A 0001 69F4
To turn off the load:
To send: 01 06 010A 0000 A834
To receive:01 06 010A 0000 A834

4.17、To read street light brightness, and the PDU address is known to be 0120H
To send: 01 03 0120 0001 843C
To receive: 01 03 02 E400 F344
Parsing:
The highest bit is responsible for turning on the street light, and the 7 lower bits of the high byte are for
adjusting the brightness value, E4H&7FH = 64H = 100%

4.18、 To set over-voltage threshold, charging limit voltage, equalizing charging voltage, boost charging voltage,
Specification

floating charging voltage, boost charging recovery voltage, over-discharge recovery voltage, over-discharge voltage, boost
1.1
charging time, equalizing charging interval, temperature compensation factor.
The addresses are known to be E005H to E014H in sequence, and occupy a total of 16 words or 32 bytes.
1) 、For each setting range, refer to the "Meaning" column of the "PDU Address Allocation Table".
2) 、 The following table sets the project not all controller support modification, and the controller
specification is the subject.

Note: a controller, battery type is SLD, when you issued the following orders, can send the command prompt
to success. But your controller is not allowed to change, because the battery type is a custom "User" or "LI"
lithium-ion batteries to support some parameter modify command, on the other hand is the controller factory
setting parameters)

E.g.:
Data
Item to set Data to send
processing
Over-voltage threshold 17.0V Multiplied 17.0 * 10 = 170, hexadecimal
by 10 00AAH
Charging limit voltage 15.5V Multiplied 15.5 * 10 = 155, hexadecimal
by 10 009BH
Equalizing charging voltage Multiplied 14.6 * 10 = 146, hexadecimal
14.6V by 10 0092H
Boost charging voltage 14.4V Multiplied 14.4 * 10 = 144, hexadecimal
by 10 0090H
Floating charging voltage Multiplied 13.8 * 10 = 138, hexadecimal
13.8V by 10 008AH
Boost charging recovery Multiplied 13.2 * 10 = 132, hexadecimal
voltage 13.2V by 10 0084H
Over-discharge recovery Multiplied 12.6 * 10 = 126, hexadecimal
voltage 12.6V by 10 007EH
Under-voltage threshold 17.0 Multiplied 12.0 * 10 = 120, hexadecimal
V by 10 0078H
Over-discharge voltage 11.0V Multiplied 11.0 * 10 = 110, hexadecimal
by 10 006EH
Over-discharge limit voltage Multiplied 10.5 * 10 = 105, hexadecimal
10.5V by 10 0069H
End of charge and discharge 100<<8|50, hexadecimal 6432H
capacity 100%|50%
Over-discharge time delay 5S Hexadecimal 0005H
Equalizing charging time 003CH
60min
Boost charging time 60min 003CH
Equalizing charging interval 001EH
30 days
Specification

Temperature compensation 0005H


1.1
factor 5 mV/ °C/ 2V
To send: 01 10 E005 0010 20 00AA 009B 0092 0090 008A 0084 007E 0078 006E 0069 6432 0005 003C
003C 001E 0005 9676
To receive: 01 10 E005 0010 E604

4.19、To set load working mode, and the PDU address is known to be E01DH
PDU
Bytes R/ W Item Value Meaning
address
Sole light control, light control over
00H
on/ off of load
Load is turned on by light control,
01H and goes off after a time delay of 1
hours
Load is turned on by light control,
02H and goes off after a time delay of 2
hours
Load is turned on by light control,
03H and goes off after a time delay of 3
hours
Load is turned on by light control,
04H and goes off after a time delay of 4
hours
Load is turned on by light control,
Load working 05H and goes off after a time delay of 5
E01DH 2 R/W
modes hours
Load is turned on by light control,
06H and goes off after a time delay of 6
hours
Load is turned on by light control,
07H and goes off after a time delay of 7
hours
Load is turned on by light control,
08H and goes off after a time delay of 8
hours
Load is turned on by light control,
09H and goes off after a time delay of 9
hours
Load is turned on by light control,
0AH (decimal
and goes off after a time delay of
10)
10 hours
Specification

Load is turned on by light control,


1.1 0BH (decimal
and goes off after a time delay of
11)
11 hours
Load is turned on by light control,
0CH (decimal
and goes off after a time delay of
12)
12 hours
Load is turned on by light control,
0DH (decimal
and goes off after a time delay of
13)
13 hours
Load is turned on by light control,
0EH (decimal
and goes off after a time delay of
14)
14 hours
0FH (decimal
Manual mode
15)
10H (decimal
Debugging mode
16)
11H (decimal
Normal on mode
17)
According to the "PDU Address Allocation Table", if "load is turned on by light control, and goes off after a
time delay of 8 hours" needs to be set to, send command 0008H
To send: 01 06 E01D 0008 2FCA
To receive: 01 06 E01D 0008 2FCA

4.20、Read historical data


Function code acquisition method: read the historical data from the N day , (F000H | N),(N=0~3FFH) ,
Maximum readable 1023 day data.
Read 20 bytes of historical data from the 3 day:F003H = (F000H | 0003H)
To send: 01 03 F003 000A 06CD
To receive:01 03 14 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 A3 67
The returned data is a 100-day historical data block of 20 bytes, beginning with the fourth byte of each
successive byte:the current day's min. battery voltage, max. battery voltage, max. charging current, max.
discharging current, max. charging power, max. discharging power, charging amp-hrs, discharging amp-hrs,
power generation, power consumption

4.21、Reset to factory defaults


To send: 01 78 0000 0001 6000
To receive: 01 78 0000 0001 6000
Parsing: 01 is the id number, 78 is the command to reset to factory defaults, and 6000 is for checking.

4.22、Clear history
To send: 01 79 0000 0001 5DC0
To receive: 01 79 0000 0001 5DC0
Parsing: 01 is the id number, 79 is the command to clear history, and 5DC0 is for checking.

You might also like