[go: up one dir, main page]

0% found this document useful (0 votes)
18 views15 pages

DUSB and D232 Communications v0.4

Uploaded by

chaitanya vamsee
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
18 views15 pages

DUSB and D232 Communications v0.4

Uploaded by

chaitanya vamsee
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 15

D232, DUSB & DNET

Communications
Specification
Plasmatronics

Rev 0.4

20240423

D232, DUSB and DNET Communications Specification v0.4


Overview
The D232 and DUSB provide a communications interface to the Plasmatronic’s Dingo product range.
The D232 and DUSB conform to the Modbus protocol, with some noted limitations.
Complete Modbus protocol specifications are publicly available from:
http://www.modbus.org/specs.php.

Please note that the DUSB and D232 are powered via the connection to the Dingo.

Communications Parameters
All communications are RTU mode.
As per the Modbus specification, the default communications parameters are:
 9600 baud
 8 data bits
 Even parity
 1 stop bit
 No flow control
The default server (slave) address is 0x08.

Alternate values are supported and are configurable via software settings.

Changing Communication Parameters


To prevent accidental loss of communications with the device, there is a special procedure to change the slave
address, baud rate, parity and stop bits used. Changing these parameters requires two writes. The first will
change the active parameter in use. The second is write is done at the new settings to confirm that
communications are successful at the new settings.
If the second write is not conducted within 20 seconds the active parameter will revert to the stored value.
The active parameter is what is currently in use by the device. The stored parameter is what is kept in non
volatile memory. When a register is written with a value matching the active value then that value is stored in
persistent memory so that the parameter change is preserved across power cycles.

Modbus Function Codes


The following function codes are supported:

Function Code Comment

Read Holding Registers


0x03 A maximum of 16 registers can be read simultaneously.
Read Input Registers
0x04 A maximum of 16 registers can be read simultaneously.
Write multiple registers. EEPROM and RAM only.
0x10 A maximum of 8 registers can be written simultaneously.
Read Device Identification – ‘Basic’ options are supported.
0x2B /0x0E

Function codes 0x03, 0x04 and 0x10 all refer to an identical register space.

D232, DUSB and DNET Communications Specification v0.4


Register Map
The address space is divided into 65535 contiguous
registers, each 16bits in size. Register addresses are Segment PDU address
specified as the PDU address (starting from 0). An
address can be either: Valid, Reserved, Internal, 0x0000
LEGACY
Invalid, Legacy. 0x0FFF
Valid addresses support reads and may support 0x1000
writes. Internal addresses can be read but should 0x100F
not be written to. Reserved address ranges are 0x1020
INFO
Any query attempting to read from or write to an 0x102F
invalid address will fail.
0x1040
Read and write behaviour for Legacy address ranges
0x104F
are undefined and should be avoided.
0x1200

The available registers are divided into discrete 0x120D


segments. The register address space is partitioned 0x1210
so that these segments are separated and multiple 0x121D
segments cannot be read or written within a single 0x1220
transaction. History data should be read in two day
OTHER EXTERNAL 0x122D
chunks (16 registers at a time, starting address
DEVICES 0x1230
aligned to nearest multiple of 16).
0x123D
An overview of the segments is shown to the right. 0x1240
Note that only some segments are writable. 0x124D

0x1250
0x125D
0x1F21
0x1F23
REMOTE
0x1F30
0x1F35
0x2000
RAM
0x21FF
0x3000
EEPROM
0x31FF
0x4000
HISTORY
0x4FFF
0x5000
0x5004

D232 and DUSB 0x5010


Settings and Info. 0x5012
0x5014
0x5FFF
0x6000
Reserved
0x7FFF
0x8000
Reserved
0xFEFF
0xFF00
LEGACY
0xFFFF

D232, DUSB and DNET Communications Specification v0.4


Property ID
For ease of reference a label is attributed to some registers.

Data types
All registers are 16 bits wide, but can have varying representations.

Type Description
UINT8 Unsigned 8 bit integer. The upper 8 bits can be ignored.
INT8 Signed 8 bit integer, 2’s complement format. The upper 8 bits can be ignored.
UINT16 Unsigned 16 bit integer.
INT16 Signed 16 bit integer, 2’s complement format.
BITMASK Treat as UINT16.
ENUM Enumerated type. Consult the reference manual for meanings of specific values.

Data Mask
Some registers contain multiple properties within a single register. In such cases a mask of the appropriate bits
is specified to show the significant bits. The value itself is shifted the same amount that the mask would need
to be shifted so that the lowest set bit of the mask moves into the least significant bit. For example a value with
mask of 0xF0 would be shifted 4 times to the right after applying the mask to the data.

Units and Scaling


Values may have a scaling applied in order to be able to report fractional quantities. Such a value may have
units expressed as ‘Volts/10’, indicating that the reported quantity is in tenths of volts: divide this value by ten
to get the decimal value in volts.

Minimum and Maximum ranges


These give the minimum and maximum allowable values to write to a register. The values are specified in their
raw (unscaled) form. The MIN and MAX identifiers are used to show where the allowable value range is
determined by the data type.
Attempting to set values outside of the specified ranges will result in the set value being clamped to the
appropriate maximum or minimum.

Plasmatronics Software
wwww.plasmatronics.com.au has python and vbs example scripts (DSCRIPT) and
Excel and OpenOffice Calc spreadsheets (Dingo.xls and DinglLO.ods) using
this protocol for downloading data. Also PRISM software for Dingo Remote
operation from MS Windows.

D232, DUSB and DNET Communications Specification v0.4


Example Queries
Here we assume some familiarity with the Modbus protocol, as well as hex numbering and notation (0x00 etc).
There are many good beginner tutorials available on the internet, and the Modbus protocol specification itself
is an excellent reference.

Please note that as per Modbus protocol, the D232 and DUSB do not reply to queries with an invalid or missing
CRC. The Dingo scripts at www.plasmatronics.com.au include CRC calculation routines.. Another online
resource for calculating Modbus CRCs can be found at http://www.lammertbies.nl/comm/info/crc-
calculation.html (but please note that the byte order of the output is wrong! - use the example below as a
reference). Other PC programs are also available, such as RealTerm, which can automatically append correct
CRC bytes to manually constructed queries.

Read Battery Voltage


In this example we send a modbus request to device address 8 to read a single (1) register whose PDU address
is 0x1004. The request has a total length of 8 bytes and includes a valid CRC computed from the first 6 bytes.
We receive a valid response with a valid CRC saying that the register value is 0x007C, or 124 in decimal. The
units of this register are Volts/10, so to get a reading in volts, we multiply by 10 to get 12.4 volts.

Tx (Send):
0x08 0x04 0x10 0x04 0x00 0x01 0x74 0x52
Rx: (Receive):
0x08 0x04 0x02 0x00 0x7C 0x64 0xD0

Changing the Float Voltage


Say we want to set the float voltage to 14.0 volts. The PDU address for this setting is 0x3024, and its units are
Volts/10. The required register value to write is therefore 140, or 0x008C hex. Even though we only want to set
one register, the D232 and DUSB only supports function code 0x10 (write multiple registers), so we use this
request, specifying one register only (i.e. 2 bytes).
The response confirms that one register at address 0x3024 was successfully written. (The Dingo may take a few
minutes to make the changes become active.)

Tx:
0x08 0x10 0x30 0x24 0x00 0x01 0x02 0x00 0x8c 0xFB 0x42
Rx:
0x08 0x10 0x30 0x24 0x00 0x01 0x4e 0x5b

D232, DUSB and DNET Communications Specification v0.4


PROPERTYID Description PDU address (dec) Mask Data type Units Min Max
PROP_PROG PROG setting value 0x1000 4096 0xF0 UINT8 0 4
PROP_VOLT VOLT setting value 0x1000 4096 0x0F UINT8 enum 0 4
PROP_MINS Clock minute counter (remainder of hours below) 0x1001 4097 UINT16 Minutes 0 5
PROP_HOURS Clock hour counter 0x1002 4098 UINT16 Hours / 10 0 240
PROP_BATTEMP Battery temperature 0x1003 4099 INT8 degC -128 127
PROP_BATV Battery voltage 0x1004 4100 UINT16 Volts/10 0 MAX
Identical to above. 0x1005 4101
PROP_REGV Regulation target voltage 0x1006 4102 UINT16 Volts /10 0 MAX
PROP_INFOEQU Days since equalization 0x1007 4103 UINT16 Days 0 255
PROP_INFOBOOST Days since last boost 0x1008 4104 UINT16 Days 0 255
PROP_DFLTIM Clock time we went into float 0x1009 4105 UINT16 Hours / 10 0 239
PROP_DSOC State of Charge 0x100A 4106 UINT16 Percent 0 100
PROP_DVMAX Day max battery voltage 0x100B 4107 UINT16 Volts /10 0 MAX
PROP_DVMIN Day min battery voltage 0x100C 4108 UINT16 Volts /10 0 MAX
Regulator State byte 0x100D 4109 UINT8 bitmask 0 0xFF
PROP_LSTATE Load state 0x100D 4109 0x01 BOOL 0 1
PROP_GSTATE Generator state 0x100D 4109 0x02 BOOL 0 1
PROP_ESTATE Event controller state 0x100D 4109 0x04 BOOL 0 1
PROP_CPSTATE Charge protection state 0x100D 4109 0x08 BOOL 0 1
PROP_ASTATE Alarm state 0x100D 4109 0x10 BOOL 0 1
PROP_LPSTATE Load protection state 0x100D 4109 0x20 BOOL 0 1
PROP_MSTATE Regulator Mode state 0x100D 4109 0xC0 UINT 0 3
PROP_VERS Dingo Version number 0x100E 4110 UINT8 0 255
PROP_APPTCOMP Amount of temperature compensation applied 0x100F 4111 INT8 Volts /10 -128 127
PROP_CINT Internal charge current 0x1020 4128 UINT16 Amps / 10 0 MAX
Identical to above. 0x1021 4129
PROP_CIAH Internal charge Ah 0x1022 4130 UINT16 Ah 0 MAX
Identical to above. 0x1023 4131
PROP_LINT Internal load current 0x1024 4132 UINT16 Amps / 10 0 MAX
Identical to above. 0x1025 4133
PROP_CEAH Internal load Ah 0x1026 4134 UINT16 Ah 0 MAX

D232, DUSB and DNET Communications Specification v0.4


Identical to above. 0x1027 4135
PROP_CEXT External charge current 0x1028 4136 UINT16 Amps / 10 0 MAX
Identical to above. 0x1029 4137
PROP_CIN Total in Ah 0x102A 4138 UINT16 Ah 0 MAX
Identical to above. 0x102B 4139
PROP_LEXT External load current 0x102C 4140 UINT16 Amps / 10 0 MAX
Identical to above. 0x102D 4141
PROP_COUT Total out Ah 0x102E 4142 UINT16 Ah 0 MAX
Identical to above. 0x102F 4143
PROP_SHCHARG1 Shunt 1 Ah 0x1040 4160 INT16 Ah -32768 32767
Identical to above. 0x1041 4161
PROP_SHCHARG2 Shunt 2 Ah 0x1042 4162 INT16 Ah -32768 32767
Identical to above. 0x1043 4163
PROP_SHCHARG3 Shunt 3 Ah 0x1044 4164 INT16 Ah -32768 32767
Identical to above. 0x1045 4165
PROP_SHCHARG4 Shunt 4 Ah 0x1046 4166 INT16 Ah -32768 32767
Identical to above. 0x1047 4167
PROP_SHCURR1 Shunt 1 Current 0x1048 4168 INT16 Amps / 10 -32768 32767
Identical to above. 0x1049 4169
PROP_SHCURR2 Shunt 2 Current 0x104A 4170 INT16 Amps / 10 -32768 32767
Identical to above. 0x104B 4171
PROP_SHCURR3 Shunt 3 Current 0x104C 4172 INT16 Amps / 10 -32768 32767
Identical to above. 0x104D 4173
PROP_SHCURR4 Shunt 4 Current 0x104E 4174 INT16 Amps / 10 -32768 32767
Identical to above. 0x104F 4175
PROP_SWCONTROL1 Control byte 1 0x1200 4608 UINT8 BITMASK
PROP_SWCONTROL2 Control byte 2 0x1201 4609 UINT8 BITMASK
PROP_SWCHARG1 Block 1Ah 0x1202 4610 INT16 Ah -32768 32767
Identical to above. 0x1203 4611
PROP_SWCHARG2 Block 2 Ah 0x1204 4612 INT16 Ah -32768 32767
Identical to above. 0x1205 4613
PROP_SWCURR1 Block 1 Current 0x1206 4614 INT16 Amps / 10 -32768 32767

D232, DUSB and DNET Communications Specification v0.4


Identical to above. 0x1207 4615
PROP_SWDUTYCYC1 Block 1 duty cycle 0x1208 4616 UINT8 % 0 127
PROP_SWTEMP1 Block 1 Temperature 0x1209 4617 INT8 degC -127 128
PROP_SWCURR2 Block 2 Current 0x120A 4618 INT16 Amps / 10 -32768 32767
Identical to above. 0x120B 4619
PROP_SWDUTYCYC2 Block 2 duty cycle 0x120C 4620 UINT8 % 0 127
PROP_SWTEMP2 Block 2 Temperature 0x120D 4621 INT8 degC -127 128
PROP_SWCONTROL3 Control byte 3 0x1210 4624 UINT8 BITMASK
PROP_SWCONTROL4 Control byte 4 0x1211 4625 UINT8 BITMASK
PROP_SWCHARG3 Block 31Ah 0x1212 4626 INT16 Ah -32768 32767
Identical to above. 0x1213 4627
PROP_SWCHARG4 Block 4 Ah 0x1214 4628 INT16 Ah -32768 32767
Identical to above. 0x1215 4629
PROP_SWCURR3 Block 3 Current 0x1216 4630 INT16 Amps / 10 -32768 32767
Identical to above. 0x1217 4631
PROP_SWDUTYCYC3 Block 3 duty cycle 0x1218 4632 UINT8 % 0 127
PROP_SWTEMP3 Block 3 Temperature 0x1219 4633 INT8 degC -127 128
PROP_SWCURR4 Block 4 Current 0x121A 4634 INT16 Amps / 10 -32768 32767
Identical to above. 0x121B 4635
PROP_SWDUTYCYC4 Block 4 duty cycle 0x121C 4636 UINT8 % 0 127
PROP_SWTEMP4 Block 4 Temperature 0x121D 4637 INT8 degC -127 128
PROP_SWCONTROL5 Control byte 5 0x1220 4640 UINT8 BITMASK
PROP_SWCONTROL6 Control byte 6 0x1221 4641 UINT8 BITMASK
PROP_SWCHARG5 Block 5 Ah 0x1222 4642 INT16 Ah -32768 32767
Identical to above. 0x1223 4643
PROP_SWCHARG6 Block 6 Ah 0x1224 4644 INT16 Ah -32768 32767
Identical to above. 0x1225 4645
PROP_SWCURR5 Block 5 Current 0x1226 4646 INT16 Amps / 10 -32768 32767
Identical to above. 0x1227 4647
PROP_SWDUTYCYC5 Block 5 duty cycle 0x1228 4648 UINT8 % 0 127
PROP_SWTEMP5 Block 5 Temperature 0x1229 4649 INT8 degC -127 128
PROP_SWCURR6 Block 6 Current 0x122A 4650 INT16 Amps / 10 -32768 32767

D232, DUSB and DNET Communications Specification v0.4


Identical to above. 0x122B 4651
PROP_SWDUTYCYC6 Block 6 duty cycle 0x122C 4652 UINT8 % 0 127
PROP_SWTEMP6 Block 6 Temperature 0x122D 4653 INT8 degC -127 128
PROP_SWCONTROL7 Control byte 7 0x1230 4656 UINT8 BITMASK
PROP_SWCONTROL8 Control byte 8 0x1231 4657 UINT8 BITMASK
PROP_SWCHARG7 Block 7Ah 0x1232 4658 INT16 Ah -32768 32767
Identical to above. 0x1233 4659
PROP_SWCHARG8 Block 8 Ah 0x1234 4660 INT16 Ah -32768 32767
Identical to above. 0x1235 4661
PROP_SWCURR7 Block 7 Current 0x1236 4662 INT16 Amps / 10 -32768 32767
Identical to above. 0x1237 4663
PROP_SWDUTYCYC7 Block 7 duty cycle 0x1238 4664 UINT8 % 0 127
PROP_SWTEMP7 Block 7 Temperature 0x1239 4665 INT8 degC -127 128
PROP_SWCURR8 Block 8 Current 0x123A 4666 INT16 Amps / 10 -32768 32767
Identical to above. 0x123B 4667
PROP_SWDUTYCYC8 Block 8 duty cycle 0x123C 4668 UINT8 % 0 127
PROP_SWTEMP8 Block 8 Temperature 0x123D 4669 INT8 degC -127 128
PROP_SWCONTROL9 Control byte 9 0x1240 4672 UINT8 BITMASK
PROP_SWCONTROL10 Control byte 10 0x1241 4673 UINT8 BITMASK
PROP_SWCHARG9 Block 9Ah 0x1242 4674 INT16 Ah -32768 32767
Identical to above. 0x1243 4675
PROP_SWCHARG10 Block 10 Ah 0x1244 4676 INT16 Ah -32768 32767
Identical to above. 0x1245 4677
PROP_SWCURR9 Block 9 Current 0x1246 4678 INT16 Amps / 10 -32768 32767
Identical to above. 0x1247 4679
PROP_SWDUTYCYC9 Block 9 duty cycle 0x1248 4680 UINT8 % 0 127
PROP_SWTEMP9 Block 9 Temperature 0x1249 4681 INT8 degC -127 128
PROP_SWCURR10 Block 10 Current 0x124A 4682 INT16 Amps / 10 -32768 32767
Identical to above. 0x124B 4683
PROP_SWDUTYCYC10 Block 10 duty cycle 0x124C 4684 UINT8 % 0 127
PROP_SWTEMP10 Block 10 Temperature 0x124D 4685 INT8 degC -127 128
PROP_SWCONTROL11 Control byte 11 0x1250 4688 UINT8 BITMASK

D232, DUSB and DNET Communications Specification v0.4


PROP_SWCONTROL12 Control byte 12 0x1251 4689 UINT8 BITMASK
PROP_SWCHARG11 Block 11Ah 0x1252 4690 INT16 Ah -32768 32767
Identical to above. 0x1253 4691
PROP_SWCHARG12 Block 12 Ah 0x1254 4692 INT16 Ah -32768 32767
Identical to above. 0x1255 4693
PROP_SWCURR11 Block 11 Current 0x1256 4694 INT16 Amps / 10 -32768 32767
Identical to above. 0x1257 4695
PROP_SWDUTYCYC11 Block 11 duty cycle 0x1258 4696 UINT8 % 0 127
PROP_SWTEMP11 Block 11 Temperature 0x1259 4697 INT8 degC -127 128
PROP_SWCURR12 Block 12 Current 0x125A 4698 INT16 Amps / 10 -32768 32767
Identical to above. 0x125B 4699
PROP_SWDUTYCYC12 Block 12 duty cycle 0x125C 4700 UINT8 % 0 127
PROP_SWTEMP12 Block 12 Temperature 0x125D 4701 INT8 degC -127 128
PROP_BPUSHSHORT Sends a short button push command when value 0x67 0x1F21 7969 UINT16 MIN MAX
written to this address
PROP_BPUSHLONG Sends a long button push commnd when value 0x67 0x1F23 7971 UINT16 MIN MAX
written to this address
PROP_PLM_LCDDA Left digit 0x1F30 7984 0x0F
PROP_PLM_LCDDA Middle digit 0x1F30 7984 0xF0
PROP_PLM_LCDDB Flags (see note) 0x1F31 7985 0xFF
PROP_PLM_LCDDB Right character 0x1F31 7985 0x0F
PROP_DSTATE Screen number. (See DSTATE property) 0x1F32 7986 0xFF
PROP_CONOUT 0x1F33 7987 0xFF
PROP_PLM_STATEBITS Misc flags (See notes) 0x1F34 7988 0xFF
PROP_PLM_POS1 Extra info for external devices. 0x1F35 7989 0xFF
PROP_NIGHT Night counter. Counts towards negative in low light 0x2025 8229 INT8 -128 127
conditions
PROP_INFOPWM PWM duty cycle info. Value range maps to 100% 0x2027 8231 0 255
PROP_MINS Minutes counter. 0x202F 8239 UINT8 0 6
PROP_HOURS Hours counter 0x2030 8240 UINT8 Hours / 10 0 240
PROP_BATTEMP Battery temperature 0x2031 8241 INT8 DegC
PROP_BATV Battery voltage 0x2032 8242 uint16 Volts / 10
PROP_REGV Regulator target voltage 0x2034 8244 uint16

D232, DUSB and DNET Communications Specification v0.4


PROP_INFOEQU Days since equalization 0x2035 8245
PROP_INFOBOOST Days since boost 0x2036 8246
PROP_INFOESTART Flag for whether the start condition is in effect 0x203A 8250 0x01 BOOL
PROP_INFOTMOD Flag for whether the TMOD condition is in effect 0x203A 8250 0x02 BOOL
PROP_INFOEMOD Flag for whether the EMOD condition is in effect 0x203A 8250 0x04 BOOL
PROP_INFOESTOP Flag for whether the STOP condition is in effect 0x203A 8250 0x08 BOOL
PROP_INFOERUN Event run timer 0x203B 8251 UINT8 Minutes
PROP_INFOEREPEAT Event repeat timer 0x203C 8252 UINT8 Minutes
PROP_INFOGEN Generator on time 0x203D 8253 UINT8 Hours / 10
PROP_INFOGDEL Generator hold off delay 0x203E 8254 UINT8 Minutes
PROP_GON Generator turn on voltage 0x2040 8256 UINT8 Volts /10 100 125
PROP_GOFF Generator turn off voltage 0x2041 8257 UINT8 Volts /10 110 165
PROP_GDEL Generator delay time (0 means off) 0x2042 8258 UINT8 minutes 0 15
PROP_GEXD Generator exercise frequency 0x2043 8259 UINT8 days 2 60
PROP_GRUN Generator run time 0x2044 8260 UINT8 hours 0 40
PROP_LOFF Load disconnect voltage 0x2045 8261 UINT8 Volts /10 100 125
PROP_LON Load reconnect voltage 0x2046 8262 UINT8 Volts /10 110 160
PROP_LDEL Load transition delay 0x2047 8263 UINT8 minutes 0 15
PROP_ASET Alarm setting value (voltage which alarm turns on) 0x2048 8264 UINT8 Volts /10 100 255?
PROP_BSTFREQ Boost frequency (force boost after this many days) 0x2049 8265 UINT8 days 1 10?
PROP_ATIM Absorption time 0x204A 8266 UINT8 hours /10 0 40
PROP_HYST Hysteresis 0x204B 8267 UINT8 Volts 1 10
PROP_BRET Return to boost voltage (BRTN) 0x204C 8268 UINT8 Volts 110 130
PROP_CURLIM Current limit 0x204D 8269 UINT8 Amps / 2 1 40
PROP_BAT2 Regulation voltage for the second battery 0x204E 8270 UINT8 Volts 130 160
PROP_ESET1 Event control settings 1 0x204F 8271 UINT8 Ref manual
PROP_ESET2 Event control settings 2 0x2050 8272 UINT8 Ref manual
PROP_ESET3 Event control settings 3 0x2051 8273 UINT8 Ref manual
PROP_EQFREQ Period between equalisation cycles 0x2052 8274 UINT8 days 20 150
PROP_ETIM Length of time of equalisation cycle 0x2053 8275 UINT8 hours 0 2
PROP_ABSV Absorption voltage 0x2054 8276 UINT8 Volts / 10 135 155
PROP_EMAX Equalisation maximum voltage 0x2055 8277 UINT8 Volts / 10 140 170

D232, DUSB and DNET Communications Specification v0.4


PROP_FLTV Float voltage 0x2056 8278 UINT8 Volts / 10 130 150
PROP_BMAX Boost maximum voltage 0x2057 8279 UINT8 Volts / 10 135 165
PROP_GSET Determines use of G Terminal 0x2058 8280 0xF0 ENUM Ref manual 0 11
PROP_LSET Determines use of L Terminal 0x2058 8280 0x0F ENUM Ref manual 0 11
PROP_BSET Battery sense usage 0x2059 8281 0xF0 ENUM Ref manual 0 2
PROP_PWM Regulation method 0x2059 8281 0x0F ENUM Ref manual 0 3
PROP_STOP Event Stop modes 0x205A 8282 0xF0 ENUM Ref manual 0 15
PROP_START Event Start modes 0x205A 8282 0x0F ENUM Ref manual 0 15
PROP_TMOD Selections for event controller 0x205B 8283 0xF0 ENUM Ref manual
PROP_EMOD Selections for event controller 0x205B 8283 0x0F ENUM Ref manual
PROP_TCMP Temperature compensation type 0x205C 8284 0xF0 ENUM Ref manual 0 4
PROP_GMOD Generator mode 0x205C 8284 0x0F ENUM Ref manual 0 4
PROP_PROG Program number 0x205D 8285 0xF0 ENUM Ref manual 0 4
PROP_VOLT Voltage Selection 0x205D 8285 0x0F Ref manual 0 4
PROP_BCAP Battery Capacity 0x205E 8286 UINT8 Ah** 20 21580
PROP_GON Generator turn on voltage 0x300E 12302 UINT16 Volts /10 100 125
PROP_GOFF Generator turn off voltage 0x300F 12303 UINT16 Volts /10 110 165
PROP_GDEL Generator delay time (0 means off) 0x3010 12304 UINT8 minutes 0 15
PROP_GEXD Generator exercise frequency 0x3011 12305 UINT8 days 2 60
PROP_GRUN Generator run time 0x3012 12306 UINT8 hours 0 40
PROP_LOFF Load disconnect voltage 0x3013 12307 UINT16 Volts /10 100 125
PROP_LON Load reconnect voltage 0x3014 12308 UINT16 Volts /10 110 160
PROP_LDEL Load transition delay 0x3015 12309 UINT16 minutes 0 15
PROP_ASET Alarm setting value (voltage which alarm turns on) 0x3016 12310 UINT16 Volts /10 100 255?
PROP_BSTFREQ Boost frequency (force boost after this many days) 0x3017 12311 UINT16 days 1 10?
PROP_ATIM Absorption time 0x3018 12312 UINT16 hours /10 0 40
PROP_HYST Hysteresis 0x3019 12313 UINT16 Volts 1 10
PROP_BRET Return to boost voltage (BRTN) 0x301A 12314 UINT16 Volts 110 130
PROP_CURLIM Current limit 0x301B 12315 UINT16 Amps / 2 1 40
PROP_BAT2 Regulation voltage for the second battery 0x301C 12316 UINT16 Volts 130 160
PROP_ESET1 Event control settings 1 0x301D 12317 UINT16 Ref manual 0 0
PROP_ESET2 Event control settings 2 0x301E 12318 UINT16 Ref manual 0 0

D232, DUSB and DNET Communications Specification v0.4


PROP_ESET3 Event control settings 3 0x301F 12319 UINT16 Ref manual 0 0
PROP_EQFREQ Period between equalisation cycles 0x3020 12320 UINT16 days 20 150
PROP_ETIM Length of time of equalisation cycle 0x3021 12321 UINT16 hours 0 2
PROP_ABSV Absorption voltage 0x3022 12322 UINT16 Volts / 10 135 155
PROP_EMAX Equalisation maximum voltage 0x3023 12323 UINT16 Volts / 10 140 170
PROP_FLTV Float voltage 0x3024 12324 UINT16 Volts / 10 130 150
PROP_BMAX Boost maximum voltage 0x3025 12325 UINT16 Volts / 10 135 165
PROP_GSET Determines use of G Terminal 0x3026 12326 0xF0 UINT8 Ref manual 0 11
PROP_LSET Determines use of L Terminal 0x3026 12326 0x0F Ref manual 0 11
PROP_BSET Battery sense usage 0x3027 12327 0xF0 UINT8 Ref manual 0 2
PROP_PWM Regulation method 0x3027 12327 0x0F Ref manual 0 3
PROP_STOP Event Stop modes 0x3028 12328 0xF0 UINT8 Ref manual 0 15
PROP_STRT Event Start modes 0x3028 12328 0x0F Ref manual 0 15
PROP_TMOD Selections for event controller 0x3029 12329 0xF0 UINT8 Ref manual 0 0
PROP_EMOD Selections for event controller 0x3029 12329 0x0F Ref manual 0 0
PROP_TCMP Temperature compensation type 0x302A 12330 0xF0 UINT8 Ref manual 0 4
PROP_GMOD Generator mode 0x302A 12330 0x0F Ref manual 0 4
PROP_PROG Program number 0x302B 12331 0xF0 UINT8 Ref manual 0 4
PROP_VOLT Voltage Selection 0x302B 12331 0x0F Ref manual 0 4
PROP_BCAP Battery Capacity 0x302C 12332 0xFF UINT8 Ah** 20 21580
PROP_GONSOC Generator turn on SOC 0x302D 12333 UINT8 % 0 127
PROP_GOFFSOC Generator turn off SOC 0x302E 12334 UINT8 % 0 127
PROP_HISTPTR History day pointer 0x303E 12350
PROP_HISTVMAX1 History Max voltage (Day 1: Yesterday) 0x4000 16384 UINT16 Volts / 10 0 1016
PROP_HISTVMIN1 History Min voltage 0x4001 16385 UINT16 Volts / 10 0 1016
PROP_HISTFLOAT1 History float time 0x4002 16386 UINT8 Hours / 10 0 239
PROP_HISTSOC1 History State of Charge 0x4003 16387 UINT8 Percent 0 127
PROP_HISTCHARGE1 History Charge (Ah out) 0x4004 16388 UINT16 Ah 0 65534
Identical to above 0x4005 16389
PROP_HISTLOAD1 History load (Ah in) 0x4006 16390 UINT16 Ah 0 65534
Identical to above 0x4007 16391
PROP_HISTVMAX2 History Max voltage (Day 2) 0x4008 16392 UINT16 Volts / 10 0 1016

D232, DUSB and DNET Communications Specification v0.4


PROP_HISTVMIN2 History Min voltage 0x4009 16393 UINT16 Volts / 10 0 1016
PROP_HISTFLOAT2 History float time 0x400A 16394 UINT8 Hours / 10 0 239
PROP_HISTSOC2 History State of Charge 0x400B 16395 UINT8 Percent 0 127
PROP_HISTCHARGE2 History Charge (Ah out) 0x400C 16396 UINT16 Ah 0 65534
Identical to above 0x400D 16397
PROP_HISTLOAD2 History load (Ah in) 0x400E 16398 UINT16 Ah 0 65534
Identical to above 0x400F 16399
PROP_HISTVMAX + n History Max voltage (Day n) 0x4000 + ((n- UINT16 Volts / 10 0 1016
1)*8)
PROP_HISTVMIN + n History Min voltage 0x4000 + ((n- UINT16 Volts / 10 0 1016
1)*8) + 1
PROP_HISTFLOAT + n History float time 0x4000 + ((n- UINT8 Hours / 10 0 239
1)*8) + 2
PROP_HISTSOC + n History State of Charge 0x4000 + ((n- UINT8 Percent 0 127
1)*8) + 3
PROP_HISTCHARGE + n History Charge (Ah out) 0x4000 + ((n- UINT16 Ah 0 65534
1)*8) + 4
Identical to above
PROP_HISTLOAD + n History load (Ah in) 0x4000 + ((n- UINT16 Ah 0 65534
1)*8) + 6
Identical to above
Day 4 base address 0x4018
Day 5 base address 0x4020
Day 6 base address 0x4028
Day n base address 0x4000 + ((n-
1)*8)
Day 512 base address 0x4FF8

XLMI_DEVICE_KEY A special number for the device. 0x5000 20480 UINT16 0xFACE 0xFACE
(All devices must return a valid value)
XLMI_VERISON Version number of firmware. 0x5001 20481 UINT16 1270 MAX
(All devices must return a valid value)
XLMI_SERIAL_MSW Device serial ID (hi word) 0x5002 20482 UINT16 MIN MAX
XLMI_SERIAL_LSW Device serial ID (low word) 0x5003 20483 UINT16 MIN MAX
XLMI_UPTIME Number of seconds device has been running. 0x5004 20484 UINT16 seconds 0 MAX
Wraps back to zero on overflow
XLMI_BAUDRATE Stored baud rate 0x5010 20496 UINT16 bps 1200 19200
default 9600, Value of 0xFFFF also means default.

D232, DUSB and DNET Communications Specification v0.4


XLMI_OPTIONS_PARITY Stored parity 0x5011 20497 0xFF UINT8 enum 0 2
default even, value of 0xFF also means default.
XLMI_OPTIONS_STOPBITS Stored stop bits 0x5012 20498 0xFF UINT8 1 2
default 1, value of 0xFF also means default.

XLMI_OPTIONS_SLAVEADDR Modbus slave address.(Default 8). 0x5014 20500 0xFF UINT8 1 247
ESS
XLMI_RESET Special register for soft reset. 0x5FFF UINT16
To prevent unintended resets the device requires a
specific procedure of reads and writes in order to reset
properly:
1. Write any value to the XLMI_RESET register
2. Read the XLMI_RESET register and retain the result
3. Write the read value into the XLMI_RESET register.
The device will reset immediately and will not respond.
A maximum of 4 seconds is allowed between each
step. If this time out expires, the sequence must be
restarted.

D232, DUSB and DNET Communications Specification v0.4

You might also like