4.2Client Side Connection Descriptions .............................................................................................................. 9
4.3Client Side Node Descriptors ....................................................................................................................... 10
4.4Client Side Map Descriptors......................................................................................................................... 10
4.4.1 FieldServer Related Map Descriptor Parameters ................................................................................. 10
4.4.2 Driver Related Map Descriptor Parameters ......................................................................................... 11
4.4.4 Map Descriptor example 1 - Monitoring a MXL/XLS Device for Events ............................................... 12
4.4.5 Map Descriptor example 2 – Monitoring Analog Loop Devices ........................................................... 14
5 Advanced Client Configuration – Using Bidirectional capability ................................................................... 15
6 Configuring the FieldServer as a SBT-FSI Server ............................................................................................ 16
6.1Server Side Connection Descriptors ............................................................................................................ 17
6.2Server Side Node Descriptors ...................................................................................................................... 18
6.3Server Side Map Descriptors........................................................................................................................ 18
6.3.1 FieldServer Specific Map Descriptor Parameters ................................................................................. 18
6.3.2 Driver Specific Map Descriptor Parameters ......................................................................................... 19
6.3.3 Map Descriptor example 1 - Emulating a MXL/XLS device with events ............................................... 20
6.3.4 Map Descriptor example 2 - Emulating a MXL/XLS device with analogs ............................................. 21
Appendix A. Advanced Topics .............................................................................................................................. 22
Appendix A.1. Specifying a Poller Map Descriptor length ....................................................................................... 22
Configure the MXL/XLS device according to manufacturer’s instructions.
It is possible to connect a MXL/XLS device to any RS-232 or RS-485 port. The appropriate ports must be configured
for MXL/XLS in the configuration file.
3.1 Using the NIM-1R or NIM-1W for MXL
•Configure the NIM-1R
3
or NIM-1W for Foreign System Interface (FSI) by setting all of the switches in SW2
to open (or OFF). See connection diagram below:
•The ports on the RPM need to be configured by the XLS panel. Configuration can be set up for either RS-
232 or RS-485, but not both together. Connection to the RS-485 port of the RPM has not been tested and
is not supported.
3
Note that NIM-1R is no longer supported by Siemens and is therefore considered to be legacy while NIM-1W is common.
FieldServer Technologies 1991 Tarob Court Milpitas, California 95035 USA Web: www.fieldserver.com
4 CONFIGURING THE FIELDSERVER AS A SBT- FSI CLIENT
For a detailed discussion on FieldServer configuration, please refer to the FieldServer Configuration Manual. The
information that follows describes how to expand upon the factory defaults provided in the configuration files
included with the FieldServer (See “.csv” sample files provided with the FieldServer).
This section documents and describes the parameters necessary for configuring the FieldServer to communicate
with a SBT-FSI Server.
In FSI mode, the NIM-1R or NIM-1W or RPM allows the FieldServer to gather data from up to 63 MXL/XLS Panels
connected via an MXL/XLS network. The default configuration shipped with the FieldServer will monitor two
panels (1 and 2) with 8 modules (1 to 8) each.
When the FieldServer is configured as a Client, two sets of data are collected by a “poller” Map Descriptor.
The first is a collection of 19 counters per panel. Each 16-bit counter is incremented by the poller Map Descriptor
whenever the corresponding event occurs. An external Client can read these counters to quickly determine
whether a new event has been reported to the Server. The counters are mapped into the Data Array specified for
the poller Map Descriptor. Counter offsets into the Data Array per event type are indicated below:
Event Counter Offset
Fire Alarm In 0
Fire Alarm Out 1
Fire Alarm Acknowledge 2
Trouble In 3
Trouble Out 4
Trouble Acknowledge 5
Supervisory In 6
Supervisory Out 7
Supervisory Acknowledge 8
Security Alarm In 9
The second set of data is a collection of bit maps that can be queried to identify the device that has reported the
event. When an alarm event arrives from a device, the corresponding bit is set in two separate arrays. The bit in
one array indicates the alarm has occurred, and the bit in the other array indicates that the alarm has not yet been
acknowledged. When an “alarm clear” event arrives, the bit in the alarm array is cleared. If an “alarm
acknowledge” event arrives, the bit in the un-acknowledged array is cleared. All event arrays in a Client driver
configuration are optional. To enable an event array, a Map Descriptor must be defined in the configuration using
a Map Descriptor message type that corresponds to the array as shown in the following table:
Event Counter Offset
Security Alarm Out 10
Security Alarm Acknowledge 11
Status In 12
Status Out 13
Test In 14
Test Out 15
Audible Silenced 16
Audible Unsilenced 17
System Reset 18
Fire Alarm Fire
Fire Alarm Un-Acknowledged Fire_Ack
Trouble Alarm Trouble
Trouble Un-Acknowledged Trouble_Ack
Supervisory Alarm Super
Supervisory Un-Acknowledge Super_Ack
FieldServer Technologies 1991 Tarob Court Milpitas, California 95035 USA Web: www.fieldserver.com
1 Map Descriptors are used to determine which bit to set in the Data Array. When an event arrives from a
panel, the FieldServer will scan for a Map Descriptor with a Node_ID matching the panel number reported in
the event. This Map Descriptor will point to the Data Array to be modified. The location can be further
refined if a starting module within the panel is specified in the Block_Number field. Each module represents
256 bits that can be set or reset by an event. A Map Descriptor that is 512 bits long with a starting module
(Block_Number) of 3 represents the events for Modules 3 and 4. A Map Descriptor that is 10 bits long will
only map the first 10 devices for that module. The combination of Block_Number and Data_Array_Location
can be used to map multiple panels with various numbers of modules into a packed array to be read by the
Server side of the FieldServer.
2 When the customer receives a Communication FieldServer with the default driver installed, the configuration
is set to poll 2 MXL/XLS devices once per second.
3 In addition to the two sets of event counters, alarm bit arrays are set up for 8 modules (1 to 8) per device. If
the required configuration falls within this size, only the Server side of the FieldServer needs to be configured.
To connect to a device using Modbus RTU protocol, configure the interface as if the FieldServer were another
Modbus PLC and create a Map Descriptor to assign a Modbus address (such as 40001) to the Counts Data
Array so that it can be read by the Modbus bus master.
4 If the customer has different panel numbers, the Nodes section of the configuration file will need to be
changed. To add more panels, add Node entries and Map Descriptors by copying the original ones and
modifying the Panel number entries and Data Array offsets. To access panels with more modules, first
increase the Data Array lengths. If the extra modules are contiguous, the Map Descriptors for that panel can
have their lengths increased also. If there are large gaps in the numbering of the module, it will be more
efficient to add additional Map Descriptors by copying the ones that are given and modifying the
Block_Number to start at the next existing module number.
5 While the creation of passive Client-side Map Descriptors is optional, error messages will appear when events
arrive for which Map Descriptors cannot be found. It is therefore recommended that Map Descriptors
(especially ack mapdescs) be allocated even if only as dummies to prevent nuisance error messages.
FieldServer Technologies 1991 Tarob Court Milpitas, California 95035 USA Web: www.fieldserver.com
The configuration file tells the FieldServer about its interfaces, and the routing of data required. In order to enable
the FieldServer for SBT-FSI communications, the driver independent FieldServer buffers need to be declared in the
“Data Arrays” section, the destination device addresses need to be declared in the “Client Side Nodes” section, and
the data required from the Servers needs to be mapped in the “Client Side Map Descriptors” section. Details on
how to do this can be found below.
Note that in the tables, * indicates an optional parameter, with the bold legal value being the default.
Section Title
Data_Arrays
Column Title Function Legal Values
Data_Array_Name Provide name for Data Array
Data_Array_Format
Provide data format. E
format.
4
Number of Data Objects. Must be larger than the data storage
Data_Array_Length
area required by the Map Descriptors for the data being placed in
this array.
Port Specify which port the device is connected to the FieldServer P1-P8, R1-R25
Protocol Specify protocol used
Enables legacy or enhanced protocol
Enhanced_Protocol
support Enhanced_Protocol, so this parameter must be set to “No” for
MXL. The parameter is normally set to “Yes” for XLS, but may be set to
“No” if problems are being experienced.
System_Type Specifies Siemens Panel type MXL, XLS
Block_Acks
Fire_Alarms_Hold
Specifies if the driver uses block or individual command acks Yes, No
Specifies if the driver should hold fire alarms until the system reset, or
clear on fire alarms going out
Baud* Specify baud rate
Parity* Specify parity
Data_Bits* Specify data bits
Stop_Bits* Specify stop bits
Handshaking
Specify hardware handshaking * None
Poll _Delay* Time between internal polls
Example
Cerberus,
SBT-FSI
Yes (XLS)
No (MXL)
Yes, No
19200
(Vendor
limitation)
Even (Vendor
limitation)
7(Vendor
limitation)
1(Vendor
limitation)
0-32000
seconds, 1 second
// Client Side Connections
Connections
P1 ,SBT-FSI ,19200 ,Even ,7 ,0.100s
5
Not all ports shown are necessarily supported by the hardware. Consult the appropriate Instruction manual for details of the ports available
on specific hardware.
6
Refer to the Advanced Driver Manual for usage. This function not enabled on standard driver.
7
Handshaking is not supported.
FieldServer Technologies 1991 Tarob Court Milpitas, California 95035 USA Web: www.fieldserver.com
4.4.4 Map Descriptor example 1 - Monitoring a MXL/XLS Device for Events
To monitor a MXL/XLS device we need only one “poller” Map Descriptor as shown below. The function of this Map Descriptor’s is to continuously check the
MXL device for events from panels. Only one poller Map Descriptor per FieldServer port is required when monitoring more than one MXL/XLS device. The
Node_Name will indicate on which port this Map Descriptor resides.
Node Name specifies the panel
number for which events will
be stored.
Notes:
Block Number specifies the
starting module number under
which points are mapped.
Length specifies the number of points. There
are 256 points per module. A length of 1024
holds points for 4 modules.
1 All passive Map Descriptors are optional. Specific Map Descriptors may be defined for particular events to be monitored as per the Msg_Type. Should
events happen for which no Map Descriptors are defined, error messages will occur on the FieldServer. It may therefore be useful to add dummy Map
Descriptors especially for ack responses to prevent nuisance error messages.
2Passive Map Descriptors with Node_Name the same as the poller Map Descriptor will only be able to store events from a panel with the same Node_ID
e.g. Node_ID of 1 will only store events from panel 1. To store events from panel 2, it is necessary to add passive Map Descriptors with Node ID of 2 etc.
Do not add poller Map Descriptors for other panels.
Important Note about first alarm point and Data Array Offsets
3
Most SBT-FSI panels have device point numbers starting at one instead of zero. The FieldServer MXL driver reserves Data Array offset zero for points with
device numbers of zero although they are currently not used. Triggering the first alarm point on a MXL panel will thus result in a point status change at
Data_Array_Offset of one instead of zero.
FieldServer Technologies 1991 Tarob Court Milpitas, California 95035 USA Web: www.fieldserver.com
6 CONFIGURING THE FIELDSERVER AS A SBT- FSI SERVER
For a detailed discussion on FieldServer configuration, please refer to the FieldServer Configuration Manual. The
information that follows describes how to expand upon the factory defaults provided in the configuration files
included with the FieldServer (See “.csv” files provided with the FieldServer).
This section documents and describes the parameters necessary for configuring the FieldServer to communicate
with a SBT-FSI Client.
The driver can be used to emulate a MXL/XLS Server device. Other protocol drivers could then poll other remote
devices and access the local MXL/XLS Server data to set or clear events. In this configuration an existing SBT-FSI
system could be replaced with an MXL/XLS emulation. Existing Clients could poll the emulation driver on the
FieldServer to get the same data as from a conventional MXL/XLS Server.
Up to 99 panels can be emulated with the driver. A Map Descriptor has to be defined for each type of remote
device that would normally exist in a MXL/XLS Server. The following types can be used:
Device Type
Fire Alarm In
Fire Alarm Out
Fire Alarm Acknowledge
Trouble In
Trouble Out
Trouble Acknowledge
Supervisory In
Supervisory Out
Supervisory Acknowledge
Security Alarm In
Security Alarm Out
Security Alarm Acknowledge
Status Event
Test Event
Analog Voltage
Analog Sensitivity Voltage
Analog Threshold Voltage
The configuration file tells the FieldServer about its interfaces, and the routing of data required. In order to enable
the FieldServer for SBT-FSI communications, the driver independent FieldServer buffers need to be declared in the
“Data Arrays” section, the FieldServer virtual node(s) needs to be declared in the “Server Side Nodes” section, and
the data to be provided to the Clients needs to be mapped in the “Server Side Map Descriptors” section. Details on
how to do this can be found below.
Note that in the tables, * indicates an optional parameter, with the bold legal value being the default.
FieldServer Technologies 1991 Tarob Court Milpitas, California 95035 USA Web: www.fieldserver.com
waiting for the Client side to update data in Data_Array (if
6.1 Server Side Connection Descriptors
Section Title
Connections
Column Title Function Legal Values
Port Specify which port the device is connected to the FieldServer P1-P8, R1-R210
Protocol Specify protocol used Cerberus, SBT-FSI
Enables legacy or enhanced protocol.. MXL panels do not currently
Enhanced_Protocol
support Enhanced_Protocol, so this parameter must be set to “No”
for MXL. The parameter is normally set to “Yes” for XLS, but may be
set to “No” if problems are being experienced.
System_Type Specifies Siemens Panel type MXL, XLS
Echo Specifies if the server should echo the client’s polls Yes, No
Baud* Specify baud rate
Parity* Specify parity
Data_Bits* Specify data bits 7, 8
Stop_Bits* Specify stop bits
Handshaking
Specify hardware handshaking * None
Specifies time FieldServer will reserve Server side connection while
Note that Trouble modules 1 and 2
on Panel 1 are emulated with two
separate Map Descriptors.
Specifies the panel number
being emulated by this Server
Map Descriptor.
Specifies the module
number. A typical
Cerberus Server has 256
points per module.
Specifies the number
of points represented
within the indicated
module.
Notes:
1 MXL/XLS Server Map Descriptor fields differ in many respects from MXL/XLS Client Map Descriptors. Please follow the examples clearly and read all notes
to ensure a working configuration. No poller Map Descriptors may be defined in a configuration file that is used to configure a MXL/XLS Server.
2 Only one module specified by Block_Number can be emulated with a Server Map Descriptor whereas a Client Map Descriptor specifies a starting module
number with one module for every 256 counts of the Map Descriptor length. You have to use separate Map Descriptors for each module to emulate when
doing a Server configuration.
3 More than one Msg_Type Map Descriptor may be used to represent other modules.
FieldServer Technologies 1991 Tarob Court Milpitas, California 95035 USA Web: www.fieldserver.com
Appendix A.1. Specifying a Poller Map Descriptor length
The poller Map Descriptor is responsible for checking a remote MXL/XLS device for events. When events are
received the poller Map Descriptor increments counters at various offsets in the Data Array specified by the poller
Map Descriptor. The offsets and their meanings are explained under the Client configuration section of this Driver
Manual.
The poller Map Descriptor’s Data Array contains sets of 19 elements or counters. Each set of counters represents
the events from a panel. The Block_Number is used to specify the lowest panel number from which events will be
received. The highest Node_ID of any passive Map Descriptor on the same port as the poller Map Descriptor
specifies the highest panel number from which events will be received. The poller Map Descriptor’s length has to
be at least 19 and has to incremented by 19 for every extra panel above the Block_Number from which events will
be received.
If a poller Map Descriptor length is set below 19 and for example, event “System Reset” is received which needs to
be mapped at offset 18 in the Data Array, the following kernel message will be printed:
“Cannot store alarm event type counts!”, 11010” ‘offset=%u,da=%s”
• Event counters for panel 6 will reside in the first 19 elements and those for panel 7 in the next 19
elements.
Warning: An error will be generated when an event arrives from a panel with a number lower than the
Block_Number of the poller. The poller Map Descriptor’s Block_Number must equal the lowest panel number for
which a passive Map Descriptor exists on the same port.
FieldServer Technologies 1991 Tarob Court Milpitas, California 95035 USA Web: www.fieldserver.com
Ensure connection baudrate, start, stopbits and parity match the panel's
Check integrity of physical connection to panel, route cables away from
Corresponds to Block Number 1
Corresponds to Block Array point 1
Appendix A.2. Interpreting Panel Error Messages
A NAK is sent by the panel when it is unable to respond to a message. The format will be as follows:
T02> DRV-> CER : Panel replied with NAK on last message!
T02> DRV-> CER : Reason: 1
The following table lists the reason for the failure and the suggested corrective action. Note that the messages are
generated by the panel, not the FieldServer.
Reason # Error Corrective Action
Reason 1
Reason 2 Receive buffer full Increase scan interval on the poller Map Descriptor.
Reason 3 Syntax Error
Reason 4
fail
Unrecognized
message failure
settings
electromagnetic sources that can generate noise.
Replace hardware?
Appendix A.3. Obtaining Point Addresses from the panel report
In order to configure the FieldServer to capture data from the Panel, the point addresses being used in the panel
need to be identified. The Panel report that can be printed out from the panel can be used for this purpose, but
matching the Report parameters with the FieldServer configuration parameters is not a trivial exercise. The
following notes should assist in identifying the addresses needed for FieldServer configuration
• The preamble to the report is not relevant to the FieldServer Driver.
• The first Module can be identified by the title NET Address =1. This corresponds to FieldServer’s “Block
1”.
•The Module Subaddress corresponds to individual points in the Block Array.
This information is depicted in the following file extract:
NET ADDR: 1 ==> ALD-2 2 Analog Loop Module Page: 5
In order to see the trouble codes for incoming troubles it is necessary to use a Uint16 or Int16 data array for the
trouble instead of the normal Bit. When the driver stores a trouble code of for example 15 into a Bit data array, it
will be displayed as 1 since Bit only holds either a zero or a one value. Using a Uint16 or Int16 data array will
ensure the value of 15 is displayed.
The following information is taken from Siemens Fire Safety documentation
MXL/XLS Trouble Codes
These codes are sent in Field 5 of the Trouble in, Trouble out and Trouble Acknowledge messages 24H, 25H and
26H. Each code is sent as up to 3 ASCII bytes. Leading zeros are not sent. The Request Trouble Type message
(43H) can be used to obtain the text strings shown below for each of these codes. The trouble text string is
returned in the Trouble Type message (53H).
Trouble Type Trouble Type Text
0
1 Multiple Response
2 Communication Error
3 Input Dev. Response too low
4 Device Receive Error
5 Dev Detected Waveform Error
6 Not Responding
7 Not Responding
8 Unspecified Dev. Responding
9 Incorrect ID
10 INPUT DE-ISOLATED
11 INPUT ISOLATED
12 Input Disarmed
13 Addressable Relay disarmed
14 Relay Disarmed
15 Signal Circuit Disarmed
16 Solid State Output Disarmed
17 Relay Supervision Failure
18 Signal Circuit Loop Open
19 Loop Disarmed
20 Class A Trouble
21 Relay Driver Inoperative
22 Signal Circuit Shorted
23 ALD Reception Error
24 Coil Open
25 Zone Power Off
26 Power Cycling
27 Short Circuit
Trouble Type Trouble Type Text
28 Open Circuit
29 Voltage Low
30 Zone Power Loss
31 Loop Node
32 Not defined
33 Multiple Response
34 MOI-1 Local Trouble
35 MOI-1 Zone Trouble
36 No database – default in use
37 Too Many ALD-2’s
38 PSR-1 Driver Disarmed
39 Output Disarmed
40 Not Responding
41 Unspecified Module Responding
42 Communication Failure
43 RAM Failure
44 ROM Failure
45 A/D Convert Fail
46 Single Module Zone Code
47 Command Not Valid
48 Network A Pair Fail
49
50 Loss of 24V Input Power
51 Act Power Voltage Low
52 Default Trouble Active
53 Network Disabled
54 Alarm from Isolated Device
55 Printer off-line
FieldServer Technologies 1991 Tarob Court Milpitas, California 95035 USA Web: www.fieldserver.com
Appendix A.5. Activating and De-activating Entities
These examples demonstrate the methodology to activate or de-activate equipment on the MXL/XLS panel as per the SBT-FSI protocol specification. This
relates to the opcode Activate/Deactivate Entity 0x7b/0x7c.
The configuration example in Section 4 can be modified as per the example below for Activating and De-activating Entities on the MXL Panel.
This example demonstrates the methodology to arm or disarm equipment on the MXL/XLS panel as per the SBT-FSI protocol specification. This relates to the
opcodes Disarm/manuallycontrol entity – opcode 0x77; Arm entity – opcode 0x78,
The configuration example in Section 4 can be modified as per the example below for Arming and De-arming Entities on the MXL Panel.