Supported device types and versions
Communication line configuration
Communication station configuration
I/O tag configuration
Installation of KMFB02CB driver (obsolete)
Literature
Changes and modifications
Document revisions
This protocol supports communication with Honeywell devices based on the C-Bus communication bus.
It supports Honeywell devices, series EXCEL (XL20, XL50, 500,....). Communication has also been tested against LION Controller CLLIONLC01.
Following physical communication interfaces can be used:
Communication line category: Honeywell C-Bus.
Line parameters (C-Bus tab).
Device ID – is C-Bus Id which is assigned to the KMFB02 card. It must be an unused number in the range of 1 to 30, reserved for KMFB02 in the C-Bus network.
Baud rate – is a baud rate of C-Bus. Supported baud rates: 4800, 9600, and 19200 Bd.
Communication line category:: Serial (communication via serial port), SerialOverUDP Device Redundant (communication via a serial server in UDP mode)
Configuration line dialog box - tab Protocol parameters.
They influence some of the optional protocol parameters. The following line parameters can be set:
Table 1
Keyword | Full name | Description | Unit | Default value |
---|---|---|---|---|
| Device ID | This parameter is not used for the Honeywell C-Bus line. For other line types, it has a similar meaning as the "Device ID" parameter on the Honeywell C-Bus line: it is the C-Bus Id assigned to the D2000 KOM process. It must be an unused number between 1 and 30 reserved for the D2000 KOM process on the C-Bus network. | 1-30 | 30 |
| Baud Rate | This parameter is not used for the Honeywell C-Bus line. For other line types, it has a similar meaning as the "Baud Rate" parameter on the Honeywell C-Bus line: it is the C-Bus baud rate, supported baud rates are 4800, 9600, and 19200 Bd. | baud | 9600 |
| Line Mode | Mode of communication with C-Bus:
| ISA card KPX02 Direct | Direct |
| KOM Latency | The parameter allows "tuning" of time parameters. A positive value decreases the wait before sending a message, a negative value increases the wait. Reducing the wait can compensate for the slowness of the communication computer. | 0.1 ms | 0 |
| Periodic Reads | The parameter activates the explicit periodic reading of the values of the I/O tags. By default, Honeywell devices send values spontaneously upon change. | - | NO |
| Debug Input | Debugging messages for input data. The parameter is a bitmask, meaning of individual bits is as follows:
| - | 0 |
| Debug Output | Debugging messages for output data. The parameter is a bitmask, meaning of individual bits is as follows:
| - | 0 |
They influence the behavior of access to the communication medium. You can define the following parameters:
Table 1
Keyword | Full name | Meaning | Unit | Default value |
---|---|---|---|---|
WREXP | Write Request Expiration Timeout | The parameter defines a lifetime of request for writing a new value to the I/O tag. If this writing can not be performed (e.g. because the communication with the station does not work), the request is canceled after this time elapses. An error message is written into the line trace file. | sec | 60 |
IPT | Init Point Response Timeout | Timeout until which the device must respond after sending the request for initialization of communication with I/O tag into the device. After this time elapses, an error message is written into the line trace file. | sec | 6 |
WPT | Write Point Response Timeout | Timeout until which the device must respond after sending the request for writing the new value of I/O tag into the device. After this time elapses, an error message is written into the line trace file. | sec | 4 |
PRP | Parameter Read Period | The reading period of parameters from EXCEL devices. The changes in parameters (e.g. through EXCEL keyboard) are not transmitted automatically but they are read according to this period. | sec | 600 |
String with protocol parameters is written according to this rule:
Key_word=value;Key_word=value; ...
Example:
IPT=10;WREXP=90;
If a keyword with a valid value has not been found in the initial string, the default value is used according to Table 1.
I/O tags: Ai, Ao, Di, Do, Co, TxtI, TxtO
$.Px-y
where x is a file number (0 to 127) and y is a parameter number (1 to 255) within a file. Example: $.P0-1 or $.P2-3
The reading/writing into time channels is done by I/O tags with these addresses:
Address | I/O tag | Meaning |
---|---|---|
$.TPRFSH | Dout | By writing the value FALSE into this I/O tag, the reading of all information about time programs is started. The reading is finished when the I/O tag acquires TRUE value. |
$.TPLx | TxtI | I/O tag acquires the name of the time program with index x (the index of the first time program is 1). If this time program does not exist, the I/O tag will have an invalid value. |
$.TPWSx-y | TxtI | Name of the weekly schedule for time program with index x and day y (y in the range of 1 to 7 for Monday to Sunday). |
$.TPDSx-y | TxtI | Name of daily schedule with index y for time program with index x. If a daily schedule with this index does not exist, the I/O tag will have an invalid value. |
$.TPPLx-y | TxtI | Name of the permitted object for control with index y in time program with index x. If an object with this index does not exist, the I/O tag will have an invalid value. |
$.TPADSPx-y-z | TxtI | Name of an object in an action with index z, daily schedule with index y, time program with index x. If this action does not exist, the I/O tag will have an invalid value. |
$.TPADSTx-y-z | TxtI | The execution time of action with index z, daily schedule with index y, time program with index x. If this action does not exist, the I/O tag will have an invalid value. |
$.TPADSVx-y-z | TxtI | The value assigned to object in the action with index z, daily schedule with index y, time program with index x. If this action does not exist, the I/O tag will have an invalid value. |
$.TPWWSx-y | Co | Record of the new daily schedule in the weekly schedule. The day with index y (y in the range of 1 to 7 for Monday to Sunday), time program with index x. Written value is the index of daily schedule which was obtained by reading with the help of $.TPDS addresses. |
$.TPWDSx-y | TxtO | Writing/deletion of daily schedule with index y in time program x. The values: "DEL" - cancels a daily program |
$.TPADSWx-y-z | TxtO | Writing/change/deletion of action with index z in daily schedule with index y, time program with index x. The values: "DEL" - cancels the action. |
To obtain the complex information about time programs by static I/O tags is virtually impossible because of their large quantity. Therefore a dynamic change of address for all I/O tags for reading/writing of the time programs is enabled by SETPTADDR tell command. In combination with active pictures, you can implement a full displaying and controlling of the time programs. We created a sample solution as a template for the D2000 configuration database.
Address | I/O tag | Meaning |
---|---|---|
$.ALARM | TxtI | Text variable that contains the last received alarm from the device (parent of I/O tag – station). |
$.LIST | TxtI | Text variable that contains the list of objects received from the device (parent of I/O tag – station). |
$.CNAME | TxtI | Text variable that contains the device name (Controller name). |
You can obtain or modify the status M/A when you configure I/O tags Di, Dout with the address which contains the attribute - ".MAN" string . True means that the object is in Manual status, False - the object is in Auto status. Both I/O tags must be defined so that this object could work properly. E.g. I/O tag with address "Temp_in_Room_01" and another one with address "Temp_in_Room_01.MAN". The change of I/O tag with the ".MAN" attribute means the change of the Manual/Auto status of object in the device.
Manual/Auto status can be read or modified also by the setting of the A flag in object value. The object with ".MAN" attribute is not necessary then. If A flag is set, the object is in Auto status. If it is not set, the object is in Manual status.
When installing the driver of the KMFB02 card, follow these steps:
For installation of the driver, you need these files:
kmfb02cb.inf - installation file
kmfb02cb.sys - the driver itself
Installation procedure:
Note: KMFB-02 card uses the INT 5 interruption, therefore it must be released if it is reserved (it is used only for the parallel port LPT2 or network LAN card) this interruption is not usually used).
-
-
Supported device types and versions
Communication line configuration
Communication station configuration
I/O tag configuration
Installation of KMFB02CB driver (obsolete)
Literature
Changes and modifications
Document revisions
This protocol supports communication with Honeywell devices based on the C-Bus communication bus.
It supports Honeywell devices, series EXCEL (XL20, XL50, 500,....). Communication has also been tested against LION Controller CLLIONLC01.
Following physical communication interfaces can be used:
Communication line category: Honeywell C-Bus.
Line parameters (C-Bus tab).
Device ID – is C-Bus Id which is assigned to the KMFB02 card. It must be an unused number in the range of 1 to 30, reserved for KMFB02 in the C-Bus network.
Baud rate – is a baud rate of C-Bus. Supported baud rates: 4800, 9600, and 19200 Bd.
Communication line category:: Serial (communication via serial port), SerialOverUDP Device Redundant (communication via a serial server in UDP mode)
Configuration line dialog box - tab Protocol parameters.
They influence some of the optional protocol parameters. The following line parameters can be set:
Table 1
Keyword | Full name | Description | Unit | Default value |
---|---|---|---|---|
| Device ID | This parameter is not used for the Honeywell C-Bus line. For other line types, it has a similar meaning as the "Device ID" parameter on the Honeywell C-Bus line: it is the C-Bus Id assigned to the D2000 KOM process. It must be an unused number between 1 and 30 reserved for the D2000 KOM process on the C-Bus network. | 1-30 | 30 |
| Baud Rate | This parameter is not used for the Honeywell C-Bus line. For other line types, it has a similar meaning as the "Baud Rate" parameter on the Honeywell C-Bus line: it is the C-Bus baud rate, supported baud rates are 4800, 9600, and 19200 Bd. | baud | 9600 |
| Line Mode | Mode of communication with C-Bus:
| ISA card KPX02 Direct | Direct |
| KOM Latency | The parameter allows "tuning" of time parameters. A positive value decreases the wait before sending a message, a negative value increases the wait. Reducing the wait can compensate for the slowness of the communication computer. | 0.1 ms | 0 |
| Debug Input | Debugging messages for input data. The parameter is a bitmask, meaning of individual bits is as follows:
| - | 0 |
| Debug Output | Debugging messages for output data. The parameter is a bitmask, meaning of individual bits is as follows:
| - | 0 |
They influence the behavior of access to the communication medium. You can define the following parameters:
Table 1
Keyword | Full name | Meaning | Unit | Default value |
---|---|---|---|---|
WREXP | Write Request Expiration Timeout | The parameter defines a lifetime of request for writing a new value to the I/O tag. If this writing can not be performed (e.g. because the communication with the station does not work), the request is canceled after this time elapses. An error message is written into the line trace file. | sec | 60 |
IPT | Init Point Response Timeout | Timeout until which the device must respond after sending the request for initialization of communication with I/O tag into the device. After this time elapses, an error message is written into the line trace file. | sec | 6 |
WPT | Write Point Response Timeout | Timeout until which the device must respond after sending the request for writing the new value of I/O tag into the device. After this time elapses, an error message is written into the line trace file. | sec | 4 |
PRP | Parameter Read Period | The reading period of parameters from EXCEL devices. The changes in parameters (e.g. through EXCEL keyboard) are not transmitted automatically but they are read according to this period. | sec | 600 |
String with protocol parameters is written according to this rule:
Key_word=value;Key_word=value; ...
Example:
IPT=10;WREXP=90;
If a keyword with a valid value has not been found in the initial string, the default value is used according to Table 1.
I/O tags: Ai, Ao, Di, Do, Co, TxtI, TxtO
$.Px-y
where x is a file number (0 to 127) and y is a parameter number (1 to 255) within a file. Example: $.P0-1 or $.P2-3
The reading/writing into time channels is done by I/O tags with these addresses:
Address | I/O tag | Meaning |
---|---|---|
$.TPRFSH | Dout | By writing the value FALSE into this I/O tag, the reading of all information about time programs is started. The reading is finished when the I/O tag acquires TRUE value. |
$.TPLx | TxtI | I/O tag acquires the name of the time program with index x (the index of the first time program is 1). If this time program does not exist, the I/O tag will have an invalid value. |
$.TPWSx-y | TxtI | Name of the weekly schedule for time program with index x and day y (y in the range of 1 to 7 for Monday to Sunday). |
$.TPDSx-y | TxtI | Name of daily schedule with index y for time program with index x. If a daily schedule with this index does not exist, the I/O tag will have an invalid value. |
$.TPPLx-y | TxtI | Name of the permitted object for control with index y in time program with index x. If an object with this index does not exist, the I/O tag will have an invalid value. |
$.TPADSPx-y-z | TxtI | Name of an object in an action with index z, daily schedule with index y, time program with index x. If this action does not exist, the I/O tag will have an invalid value. |
$.TPADSTx-y-z | TxtI | The execution time of action with index z, daily schedule with index y, time program with index x. If this action does not exist, the I/O tag will have an invalid value. |
$.TPADSVx-y-z | TxtI | The value assigned to object in the action with index z, daily schedule with index y, time program with index x. If this action does not exist, the I/O tag will have an invalid value. |
$.TPWWSx-y | Co | Record of the new daily schedule in the weekly schedule. The day with index y (y in the range of 1 to 7 for Monday to Sunday), time program with index x. Written value is the index of daily schedule which was obtained by reading with the help of $.TPDS addresses. |
$.TPWDSx-y | TxtO | Writing/deletion of daily schedule with index y in time program x. The values: "DEL" - cancels a daily program |
$.TPADSWx-y-z | TxtO | Writing/change/deletion of action with index z in daily schedule with index y, time program with index x. The values: "DEL" - cancels the action. |
To obtain the complex information about time programs by static I/O tags is virtually impossible because of their large quantity. Therefore a dynamic change of address for all I/O tags for reading/writing of the time programs is enabled by SETPTADDR tell command. In combination with active pictures, you can implement a full displaying and controlling of the time programs. We created a sample solution as a template for the D2000 configuration database.
Address | I/O tag | Meaning |
---|---|---|
$.ALARM | TxtI | Text variable that contains the last received alarm from the device (parent of I/O tag – station). |
$.LIST | TxtI | Text variable that contains the list of objects received from the device (parent of I/O tag – station). |
$.CNAME | TxtI | Text variable that contains the device name (Controller name). |
You can obtain or modify the status M/A when you configure I/O tags Di, Dout with the address which contains the attribute - ".MAN" string . True means that the object is in Manual status, False - the object is in Auto status. Both I/O tags must be defined so that this object could work properly. E.g. I/O tag with address "Temp_in_Room_01" and another one with address "Temp_in_Room_01.MAN". The change of I/O tag with the ".MAN" attribute means the change of the Manual/Auto status of object in the device.
Manual/Auto status can be read or modified also by the setting of the A flag in object value. The object with ".MAN" attribute is not necessary then. If A flag is set, the object is in Auto status. If it is not set, the object is in Manual status.
When installing the driver of the KMFB02 card, follow these steps:
For installation of the driver, you need these files:
kmfb02cb.inf - installation file
kmfb02cb.sys - the driver itself
Installation procedure:
Note: KMFB-02 card uses the INT 5 interruption, therefore it must be released if it is reserved (it is used only for the parallel port LPT2 or network LAN card) this interruption is not usually used).
-
-