XDX9100.tlk Driver Reference
Johnson Controls Metasys DX9100 Protocol Driver
This driver requires that you have TAS-HMITalk 8.04 installed.
The XDX9100 driver allows you to connect to devices that conform to
the Metasys DX9100 protocol specification.
The serial communication link between a supervisory system and up to
256 System 91 units, is an asynchronous half-duplex line split in
RS-485 channels for 30 System 91 units each. The supervisory system
initiates all data transactions on a point to pint basis.
Typical port settings are 9600, N, 8, 1. The beginning of a request
message should be delayed of at least 30000/BR msec (BR=baudrate bit/sec)
after the reception of the last character of the previous answer message.
You can use either T1Delay or T3Delay to implement this delay.
For a list of the Items that can be read, refer to your device's manual.
Remote Terminal Units
JOHNSON CONTROLS DR9100 Room Controllers
JOHNSON CONTROLS DC9100 Plant Controllers
JOHNSON CONTROLS IM9100 Modem Interfaces
JOHNSON CONTROLS DO9100 Digital Optimizers
JOHNSON CONTROLS DX9100 Digital Controllers
JOHNSON CONTROLS TC9100 Room Controllers
JOHNSON CONTROLS XT9100 Extension Modules
JOHNSON CONTROLS UI9100 User Interfaces
JOHNSON CONTROLS RC9100 Refrigeration Controllers
Read Block of Consecutive Items
Read Block of Consecutive Extended Items
Read Block of Consecutive Bits
Read Block of Consecutive Extended Bits
Write Block of Consecutive Items
Write Block of Consecutive Extended Items
Write Block of Consecutive Bits
Write Block of Consecutive Extended Bits
COMMAND DESCRIPTION:
Executes a request for Item #0 to get the type of System 91
device connected to the serial link.
Possible device types are:
1 = DR9100 Room Controller Revision 1
2 = DC9100 Plant Controller Revision 1
3 = IM9100 Modem Interface Revision 1
4 = DO9100 Digital Optimizer Revision 1
5 = DX9100 Digital Controller Revision 1
6 = TC9100 Room Controller Revision 1
8 = XT9100 Extension Module Revision 1
9 = UI9100 User Interface Revision 1
10 = RC9100 Refrigeration Controller Revision 1
17 = DR9100 Room Controller Revision 2
18 = DC9100 Plant Controller Revision 2
21 = DX9100 Digital Controller Revision 2
PROPERTY SETTINGS REQUIRED:
HMITalk1.DriverDataType = Analog Input
HMITalk1.DriverNumPoints = 1
HMITalk1.DriverP0 = Address of device (0-255)
HMITalk1.DriverP1 = 128 (80h)
HMITalk1.DriverP2 = 0
HMITalk1.DriverP3 = 0
RETURNS:
- HMITalk1.PointValue(0) = Device type
COMMAND DESCRIPTION:
Executes a request for one single item in the range 0 to FFFh
divided into four pages of up to 4095 items each.
PROPERTY SETTINGS REQUIRED:
HMITalk1.DriverDataType = Analog Input
HMITalk1.DriverNumPoints = 1
HMITalk1.DriverP0 = System 91 unit address (0-255)
HMITalk1.DriverP1 = 128 (80h)
HMITalk1.DriverP2 = Page # (0-3)
HMITalk1.DriverP3 = Item # (0h-FFFh, 0-4095)
HMITalk1.DriverP6 = Format of item being requested.
Must be one of these characters:
B = 1 byte data
N = 2 bytes data, floating point number
W = 2 bytes data, unsigned 16 bits hexadecimal number
L = 4 bytes data, unsigned 32 bits hexadecimal number
RETURNS:
- HMITalk1.PointValue(0) = Requested item value
COMMAND DESCRIPTION:
Executes a request for one extended single item in the range
of 0 to FFFFh.
PROPERTY SETTINGS REQUIRED:
HMITalk1.DriverDataType = Analog Input
HMITalk1.DriverNumPoints = 1
HMITalk1.DriverP0 = System 91 unit address (0-255)
HMITalk1.DriverP1 = 132 (84h)
HMITalk1.DriverP2 = Address of begin of module (0-FFFh, 0-4095).
HMITalk1.DriverP3 = Relative item index (RI) from begin of module.
HMITalk1.DriverP6 = Format of item being requested.
Must be one of these characters:
B = 1 byte data
N = 2 bytes data, floating point number
W = 2 bytes data, unsigned 16 bits hexadecimal number
L = 4 bytes data, unsigned 32 bits hexadecimal number
RETURNS:
- HMITalk1.PointValue(0) = Requested extended item value
COMMAND DESCRIPTION:
Reads a block of consecutive items.
PROPERTY SETTINGS REQUIRED:
HMITalk1.DriverDataType = Analog Input
HMITalk1.DriverNumPoints = 1-69 (depend on the item formats requested)
HMITalk1.DriverP0 = System 91 unit address (0-255)
HMITalk1.DriverP1 = 168 (A8h)
HMITalk1.DriverP2 = 0
HMITalk1.DriverP3 = First item # (0h-FFh, 0-255)
HMITalk1.DriverP6 = String of characters with the format
of each item being requested.
Must be one of these characters:
B = 1 byte data
N = 2 bytes data, floating point number
W = 2 bytes data, unsigned 16 bits hexadecimal number
L = 4 bytes data, unsigned 32 bits hexadecimal number
Example: If requesting 3 unsigned 16 bits and one floating
point number, use P6=WWWN
RETURNS:
- HMITalk1.PointValue(0) = First requested item value
- HMITalk1.PointValue(1) = Second requested item value
...
- HMITalk1.PointValue(DriverNumPoints-1) = Last requested item value
COMMAND DESCRIPTION:
Reads a block of consecutive extended items.
PROPERTY SETTINGS REQUIRED:
HMITalk1.DriverDataType = Analog Input
HMITalk1.DriverNumPoints = 1-69 (depend on the item formats requested)
HMITalk1.DriverP0 = System 91 unit address (0-255)
HMITalk1.DriverP1 = 172 (ACh)
HMITalk1.DriverP2 = 0
HMITalk1.DriverP3 = First item # (0h-FFFh, 0-4095)
HMITalk1.DriverP6 = String of characters with the format
of each item being requested.
Must be one of these characters:
B = 1 byte data
N = 2 bytes data, floating point number
W = 2 bytes data, unsigned 16 bits hexadecimal number
L = 4 bytes data, unsigned 32 bits hexadecimal number
Example: If requesting 3 unsigned 16 bits and one floating
point number, use P6=WWWN
RETURNS:
- HMITalk1.PointValue(0) = First requested item value
- HMITalk1.PointValue(1) = Second requested item value
...
- HMITalk1.PointValue(DriverNumPoints-1) = Last requested item value
COMMAND DESCRIPTION:
Reads a block of consecutive bits from a given starting item,
returning the status of the 8 bits for each byte read.
PROPERTY SETTINGS REQUIRED:
HMITalk1.DriverDataType = Digital Input
HMITalk1.DriverNumPoints = 1-552 (depend on the item formats involved)
HMITalk1.DriverP0 = System 91 unit address (0-255)
HMITalk1.DriverP1 = 168 (A8h)
HMITalk1.DriverP2 = Number of items to be read (1-69).
According to each Item format in the
block being read, there must be an enough
number of bytes to provide as many bits as
is requested in DriverNumPoints.
HMITalk1.DriverP3 = First item # (0h-FFh, 0-255)
RETURNS:
- HMITalk1.PointValue(0) = First bit of first byte read
- HMITalk1.PointValue(1) = Second bit of first byte read
...
- HMITalk1.PointValue(DriverNumPoints-1) = Last bit of last byte read
COMMAND DESCRIPTION:
Reads a block of consecutive bits from a given starting
extended item, returning the status of the 8 bits for each
byte read.
PROPERTY SETTINGS REQUIRED:
HMITalk1.DriverDataType = Digital Input
HMITalk1.DriverNumPoints = 1-552 (depend on the item formats involved)
HMITalk1.DriverP0 = System 91 unit address (0-255)
HMITalk1.DriverP1 = 172 (ACh)
HMITalk1.DriverP2 = Number of items to be read (1-69).
According to each Item format in the
block being read, there must be an enough
number of bytes to provide as many bits as
is requested in DriverNumPoints.
HMITalk1.DriverP3 = First item # (0h-FFFh, 0-4095)
RETURNS:
- HMITalk1.PointValue(0) = First bit of first byte read
- HMITalk1.PointValue(1) = Second bit of first byte read
...
- HMITalk1.PointValue(DriverNumPoints-1) = Last bit of last byte read
COMMAND DESCRIPTION:
Executes a request to write one single item in the range 0 to FFFh
divided into four pages of up to 4095 items each.
PROPERTY SETTINGS REQUIRED:
HMITalk1.DriverDataType = Analog Output
HMITalk1.DriverNumPoints = 1
HMITalk1.DriverP0 = System 91 unit address (0-255)
HMITalk1.DriverP1 = 192 (C0h)
HMITalk1.DriverP2 = Page # (0-3)
HMITalk1.DriverP3 = Item # (0h-FFFh, 0-4095)
HMITalk1.DriverP6 = Format of item being written.
Must be one of these characters:
B = 1 byte data
W = 2 bytes data, unsigned 16 bits hexadecimal number
L = 4 bytes data, unsigned 32 bits hexadecimal number
WHERE:
- HMITalk1.PointValue(0) = New item value
COMMAND DESCRIPTION:
Executes a request to write one extended single item in
the range of 0 to FFFh.
PROPERTY SETTINGS REQUIRED:
HMITalk1.DriverDataType = Analog Output
HMITalk1.DriverNumPoints = 1
HMITalk1.DriverP0 = System 91 unit address (0-255)
HMITalk1.DriverP1 = 196 (C4h)
HMITalk1.DriverP2 = Address of begin of module (0-FFFh, 0-4095).
HMITalk1.DriverP3 = Relative item index (RI) from begin of module.
HMITalk1.DriverP6 = Format of item being written.
Must be one of these characters:
B = 1 byte data
W = 2 bytes data, unsigned 16 bits hexadecimal number
L = 4 bytes data, unsigned 32 bits hexadecimal number
WHERE:
- HMITalk1.PointValue(0) = New extended item value
COMMAND DESCRIPTION:
Writes a block of consecutive items.
PROPERTY SETTINGS REQUIRED:
HMITalk1.DriverDataType = Analog Output
HMITalk1.DriverNumPoints = 1-69 (depend on the item formats written)
HMITalk1.DriverP0 = System 91 unit address (0-255)
HMITalk1.DriverP1 = 232 (E8h)
HMITalk1.DriverP2 = 0
HMITalk1.DriverP3 = First item # (0h-FFh, 0-255)
HMITalk1.DriverP6 = String of characters with the format
of each item being written.
Must be one of these characters:
B = 1 byte data
W = 2 bytes data, unsigned 16 bits hexadecimal number
L = 4 bytes data, unsigned 32 bits hexadecimal number
Example: If writing 3 unsigned 16 bits and one byte
point number, use P6=WWWB
WHERE:
- HMITalk1.PointValue(0) = New first item value
- HMITalk1.PointValue(1) = New second item value
...
- HMITalk1.PointValue(DriverNumPoints-1) = New last item value
COMMAND DESCRIPTION:
Writes a block of consecutive extended items.
PROPERTY SETTINGS REQUIRED:
HMITalk1.DriverDataType = Analog Output
HMITalk1.DriverNumPoints = 1-69 (depend on the item formats written)
HMITalk1.DriverP0 = System 91 unit address (0-255)
HMITalk1.DriverP1 = 236 (ECh)
HMITalk1.DriverP2 = 0
HMITalk1.DriverP3 = First item # (0h-FFFh, 0-4095)
HMITalk1.DriverP6 = String of characters with the format
of each item being written.
Must be one of these characters:
B = 1 byte data
W = 2 bytes data, unsigned 16 bits hexadecimal number
L = 4 bytes data, unsigned 32 bits hexadecimal number
Example: If writing 3 unsigned 16 bits and one byte
point number, use P6=WWWB
WHERE:
- HMITalk1.PointValue(0) = New first item value
- HMITalk1.PointValue(1) = New second item value
...
- HMITalk1.PointValue(DriverNumPoints-1) = New last item value
COMMAND DESCRIPTION:
Writes a block of consecutive bits, starting from a given item.
Every 8 bits, one byte will be output. Make sure that you
write as many bits as required to complete each whole
item size, according of the format of each item.
PROPERTY SETTINGS REQUIRED:
HMITalk1.DriverDataType = Digital Output
HMITalk1.DriverNumPoints = 1-552
HMITalk1.DriverP0 = System 91 unit address (0-255)
HMITalk1.DriverP1 = 232 (E8h)
HMITalk1.DriverP2 = Number of items that will be affected (1-69),
according to the number of bits that
will be writen. This depends on the
format of each item in the affected block.
The number of bits is given by DriverNumPoints.
HMITalk1.DriverP3 = First item # (0h-FFh, 0-255)
WHERE:
- HMITalk1.PointValue(0) = first bit of first item affected
- HMITalk1.PointValue(1) = second bit of first item affected
...
- HMITalk1.PointValue(DriverNumPoints-1) = last bit of last item affected
COMMAND DESCRIPTION:
Writes a block of consecutive extended bits, starting from
a given item. Every 8 bits, one byte will be output. Make
sure that you write as many bits as required to complete each
whole item size, according of the format of each item.
PROPERTY SETTINGS REQUIRED:
HMITalk1.DriverDataType = Digital Output
HMITalk1.DriverNumPoints = 1-552
HMITalk1.DriverP0 = System 91 unit address (0-255)
HMITalk1.DriverP1 = 236 (ECh)
HMITalk1.DriverP2 = Number of items that will be affected (1-69),
according to the number of bits that
will be writen. This depends on the
format of each item in the affected block.
The number of bits is given by DriverNumPoints.
HMITalk1.DriverP3 = First item # (0h-FFFh, 0-4095)
WHERE:
- HMITalk1.PointValue(0) = first bit of first item affected
- HMITalk1.PointValue(1) = second bit of first item affected
...
- HMITalk1.PointValue(DriverNumPoints-1) = last bit of last item affected
[1005] DRIVER (Internal): Invalid driver stage
[1300] PROTOCOL (Timeout): No answer
[1429] PROTOCOL (Format): Unknown response
[1433] PROTOCOL (Format): Validation error in device response
[2147] CONFIG (NumValues): Only one value can be read or written
[2148] CONFIG (NumValues): Only one value can be requested
[2149] CONFIG (NumValues): Only one value can be written
[2189] CONFIG (NumValues): Too many values (max=16)
[2245] CONFIG (NumValues): Too many values requested
[2280] CONFIG (NumValues): Too many items to be written
[2281] CONFIG (NumValues): Too many bits to be written
[3014] CONFIG (P0): Invalid device address (0-255)
[3508] CONFIG (P1): Invalid command
[4062] CONFIG (P2): Invalid first rack module number (0-15)
[4086] CONFIG (P2): Invalid rack module number (0-16)
[4130] CONFIG (P2): Invalid page number (0-3)
[4131] CONFIG (P2): Invalid module begin address (0000h-FFFFh)
[4133] CONFIG (P2): Invalid number of items
[4551] CONFIG (P3): Invalid number of samples (0-255)
[4587] CONFIG (P3): Invalid item number
[8351] CONFIG (Remote): Unknown error type
[8368] CONFIG (Remote): Idle device
[8369] CONFIG (Remote): Not existing command code
[8370] CONFIG (Remote): Data not matching the item or function type
[8371] CONFIG (Remote): Not existing item or function
[8372] CONFIG (Remote): Temporarily impossible to access the item
[8373] CONFIG (Remote): Not programmable item
[8374] CONFIG (Remote): Table programmed with illegal items
[8375] CONFIG (Remote): Trend programmed with illegal items
[8376] CONFIG (Remote): Invalid functional module
[8377] CONFIG (Remote): exceeding addressing range
[8378] CONFIG (Remote): Password not enabled
This driver requires that you have TAS-HMITalk 8.04 installed.
Driver Source Code Last Update: 05/12/2004 18:48:04
Driver Reference Last Update: 10/30/2008 17:37:05
© 1990-2008, CPKSoft Engineering. All rights reserved.