FS-8700-132 Gamewell FCI-E3 Driver Manual Page 3 of 20
1. Gamewell FCI-E3 Series Serial Driver Description
The Gamewell FCI-E3 Series System Control Units are manufactured by Fire Control Instruments. An E3
Panel with an enabled serial port can transmit data to a FieldServer which can, in turn, make the data
available to other devices including those which communicate using different protocols (e.g. BACnet)
This passive Client driver does not poll for data, nor does it send data or commands to the E3. Messages
received from the E3 are analyzed and are then either discarded or used to update the FieldServer’s
internal Data Arrays. The action depends on which types of events, the type of device generating the
event and device address the FieldServer has been configured to process. Once stored in the
FieldServer the data is available to be read or written using other protocols such as BACnet.
No automatic panel data synchronization technique exists. The data in the FieldServer and the panel
status have to be synchronized manually. This typically requires a panel reset.
Since the driver cannot send data or commands to the E3 it cannot be used to acknowledge, silence or
reset alarms and other events.
The driver can process messages from networked panels. The driver connects to the main panel.
Subsidiary panels are configured to send event data to the main panel which then sends messages to the
FieldServer. Node information is sent in the line preceding the event and the driver uses this to
determine the panel at which the event originated and to store data appropriately.
The driver provides both Client and Server emulation. The Server side of the driver is intended to support
FieldServer’s Quality Assurance program and is not intended to provide complete emulation of an E3 and
is thus not fully documented. Should you require the Server side functionality to be documented and
enhanced, please contact FieldServer’s sales group.
Max Nodes Supported
FieldServer
Mode
Client 1
Server N/A Server side is not supported. See description.
Nodes Comments
1 Node per serial port. If there is more than one alarm panel they can be
networked and configured to send event data to the primary panel. The driver
can process messages which identify the node of origin.
FieldServer Technologies 1991 Tarob Court Milpitas, California 95035 USA Web: www.fieldserver.com
FS-8700-132 Gamewell FCI-E3 Driver Manual Page 6 of 20
4. Configuring the FieldServer as a Gamewell FCI-E3 Series Serial Driver 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 FCI Series E3.
4.1. Data Arrays/Descriptors
The configuration file tells the FieldServer about its interfaces, and the routing of data required. In
order to enable the FieldServer for Gamewell FCI-E3 Series Serial Driver 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
Data_Array_Length
Example
// Data Arrays
Provide data format. Each Data Array
can only take on one format.
Number of Data Objects. Must be
larger than the data storage area
required by the Map Descriptors for the
data being placed in this array.
Up to 15 alphanumeric
characters
Float, Bit, UInt16, SInt16,
Packed_Bit, Byte,
Packed_Byte,
Swapped_Byte
FS-8700-132 Gamewell FCI-E3 Driver Manual Page 7 of 20
4.2. Client Side Connection Descriptions
Section Title
Connections
Column Title Function Legal Values
Port Specify which port the device is connected to the FieldServer P1-P81
Protocol Specify protocol used FCI_E3
Specify baud rate
Vendor documentation indicated that the only supported Baud
Baud*
Parity* Specify parity
Data_Bits* Specify data bits
Stop_Bits* Specify stop bits
Handshaking* The E3 series panels do not support hand shaking.
rate was 9600. During testing we learned this was not true. The
driver was tested at 57600 and 9600 baud. Testing at 115200
Baud produced intermittent result and should not be used.
FS-8700-132 Gamewell FCI-E3 Driver Manual Page 8 of 20
4.3. Client Side Node Descriptors
Section Title
Nodes
Column Title Function Legal Values
Node_Name Provide name for Node
Only required for networked
configurations. Set the Node_ID of the
Node_ID
Protocol Specify protocol used FCI_E3
FCI_Reset_Action_Option*
Connection
Example
// Client Side Nodes
local panel to zero, and create one Node
Descriptor for each panel setting the
Node_ID to the panel number.
Only required for networked
configurations:
When not specified or set to
‘Reset_by_any_Node ‘ then the driver
will reset the data array points
associated with the given node
irrespective of the reset message’s
origin.
When set to ‘Reset_by_this_Node_Only’
then the driver only resets the data
associated with the given node if the
reset originated from the same node.
Specify which port the device is
connected to the FieldServer
Name of this Map
Descriptor
Name of Data Array
where data is to be stored
in the FieldServer
Starting location in Data
Array
Function of Client Map
Descriptor.
Up to 32 alphanumeric
characters
One of the Data Array names
from “Data Array” section above
0 to maximum specified in
“Data Array” section above
Server, Passive_Client
FS-8700-132 Gamewell FCI-E3 Driver Manual Page 9 of 20
‘Alarm’, ‘Fault’, ‘Trouble’ or ‘Other events.
4.4.2. Driver Related Map Descriptor Parameters
Column Title Function Legal Values
One of the Node
Node_Name Name of Node to fetch data from
This driver uses this parameter to determine the
suitability of a Map Descriptor when looking for a
location to store data from an incoming message.
Event Type
Point Type
Relay/Loop/Zone
Number
Length*
Address
Store As*
DA_Bit_Name
Clear on Reset*
A Map Descriptor may be defined to store only
Alternatively, specify “Any”
A table of events vs. categories is provided in
Appendix A.1
This driver uses this parameter to determine the
suitability of a Map Descriptor when looking for a
location to store data from an incoming message.
Ignored when the Point Type is ‘Panel’
Point Type = Relay 1..255
Point Type = Zone 1..8
Point Type = Loop 1..2
Point Type = Module 1..2
Point Type = Sensor 1..2
Each Map Descriptor defines storage locations for a
series of addresses. This parameter specifies the
length of the series.
This parameter is specific to Map Descriptors with
‘Event Type’ Module or Sensor. It specifies the
starting Module or Sensor number. The length
parameter then determines the range of the
Sensor/Module numbers
By default the driver stores using the ‘Index Value’
Method. If set to ‘Bit’ the driver will use the primary
Data Array to store using the ‘Bit Storage’ Method.
These methods are described in Appendix A.3
If the default ‘Store As’ is specified or if the
parameter is omitted then a secondary array can be
specified using this parameter - the driver will store
event data as ‘Bit Storage’ in the Secondary array
(and as ‘Index Values’ in the Primary array.) These
methods are described in Appendix A.3
If this parameter is specified it will prevent the Driver
resetting the Data Array points associated with the
Map Descriptor on reset.
Names specified in
Section 4.3
Any, Other, Fault,
Alarm, Trouble
Zone, Relay, Loop,
Sensor, Module,
Panel
Whole Numbers
1, 2 , etc
1,2,3 .etc
Whole numbers
1..99
Bit, Index_Value
One of the Data
Array names from
“Data Array”
section above
Yes, No
FieldServer Technologies 1991 Tarob Court Milpitas, California 95035 USA Web: www.fieldserver.com
secondary storage can be used to determine if more than one event is active at a time.
FS-8700-132 Gamewell FCI-E3 Driver Manual Page 12 of 20
5. Configuring the FieldServer as a Gamewell FCI-E3 Series Serial Driver Server
The server side of the driver is intended to support FieldServer’s Quality Assurance program and is not
intended to provide complete emulation of an E3 and is thus not fully documented. Should you require
the Server side functionality to be documented and enhanced, please contact FieldServer’s sales group.
FieldServer Technologies 1991 Tarob Court Milpitas, California 95035 USA Web: www.fieldserver.com
FS-8700-132 Gamewell FCI-E3 Driver Manual Page 13 of 20
Appendix A. Advanced Topics
Appendix A.1. Events and Event Categories
The driver reports the event cause using the matching index value. There are 4 event categories:
1 = Other
2 = Fault
The message category must match the ‘Event Type’ parameter specified on a Map Descriptor before
that Map Descriptor can be considered for storage of the message data.
FS-8700-132 Gamewell FCI-E3 Driver Manual Page 14 of 20
Appendix A.2. Extending the Event Table
New event causes may be added to the Event Table and the index value or category of existing event
causes modified by adding a section to the configuration CSV file. The examples below illustrate this:
Example 1: Index value of 'Trouble' is updated to a new value of 100
Since it has been added as category=3, only Map Descriptors with 'Event Type' set to “Alarm” or
“Any” will capture messages with this event description
All messages shorter than 102 characters are discarded unless they contain information identifying
the networked/local panel. All other messages are processed as follows:
• The driver determines if the message is a Zone, Relay, Loop, Sensor, Module or Panel message.
• The driver finds all Map Descriptors with matching ‘Point Type’ parameters.
• The event category is determined.
• Map Descriptor selection is refined based on whether the ‘Event Type’ matches or has been
defined as “Any”
•The driver determines the Loop. Relay, Zone, Sensor and Module numbers from the message
and refines its selection of Map Descriptors by selecting those that match the values determined
from the message.
•The selected Map Descriptors are now used to determine a Data Array and offset at which to
store the data.
•Finally the driver checks the ‘Store As’ parameter. If it hasn’t been specified then ‘Index Value’
storage is assumed. If it has been specified as ‘Bits’ then the driver will perform ‘Bit Storage’. In
cases where the Map Descriptor has both a primary and secondary Data Array, the driver will use
‘Index Value’ storage using the primary data array and ‘Bit Storage’ using the secondary array.
FieldServer Technologies 1991 Tarob Court Milpitas, California 95035 USA Web: www.fieldserver.com
FieldServer Technologies 1991 Tarob Court Milpitas, California 95035 USA Web: www.fieldserver.com
FS-8700-132 Gamewell FCI-E3 Driver Manual Page 16 of 20
Appendix A.4. Panel Synchronization
Manual synchronization is required. When the “Reset” button on the panel is pressed a message is
transmitted to the FieldServer, which clears the data in the FieldServer. After a reset the panel sends
messages to report all abnormal states. When all these messages have been processed the
FieldServer and panel will be synchronized. This process can be repeated at any time.
Appendix A.5. What happens when the panel sends a Reset Message
When a panel sends a reset message the driver processes every single Map Descriptor, looking at
the ‘Clear on Reset’ parameter (See section 4.4.2). If the parameter is set to yes, then the driver sets
all the Data Array elements referenced by the Map Descriptor to zero by looking up the Data Array
Name, the Data Array offset and the length. The driver also clears the relevant sections of a Data
Array specified with the DA_Bit_Name parameter.
The process can take some time. For this reason, it is suggested that you take care not to set the
Map Descriptor length to a value larger than necessary.
Appendix A.5.1. Networked Panels.
The driver can processes messages and store data from multiple panels provided that:
•The panels are connected in an FCI network and the panels are configured to report their
events to the main panel
•The main panel is configured to send the Node of origin in a message preceding the event
message. Consult with FCI for information on how to achieve this.
Example of message sent by a panel that is networked. The driver is dependent on seeing the
node of event origin included in parenthesis before each event message.
Local:
FIRST ALARM Photo Detector L1S001 09:24:52
12/01/06
The main panel is identified as ‘Local’. The driver interprets this as Node_ID=0.
To capture events from multiple networked panels a Node Descriptor is required for each panel
with the appropriate Node_ID. Each Node requires a set of Map Descriptors.
FieldServer Technologies 1991 Tarob Court Milpitas, California 95035 USA Web: www.fieldserver.com
Printed for information only. No action
required if it confirms your expectations.
There is only space for 60 event types.4
The Event type being added already
exists. If you are updating the category,
ignore the message. Otherwise correct the
configuration file.4
If the event index is greater than 64 then
the data cannot be stored as bits - only 64
bits are reserved for events.
The MD in question has a length and
offset which makes it run past the end of
the Data Array. Message 7b is printed
when data is being stored as bits.4
Printed for information only. No action
required.
A reset was received but the driver could
not reset any data. 'Clear_on_Reset'
possibly set to 'no' on all Map Descriptors?
Printed for information only. No action
required.
The Map Descriptor in question has a
length and offset which makes it run past
the end of the Data Array.4
FCI_E3:#12a Err. No MD's to store message data.
FCI_E3:#12b Err. No MD's to store message data."
FCI_E3:#13 Err. Msg was ignored. MD Required for
Storage.
FCI_E3:#13a Err. Diagnostic 1);
FCI_E3:#13b Err. Diagnostic 2);
FCI_E3:#13c Err. Diagnostic 3);
FCI_E3:#14 Err. <%s> file not found., md>mapdesc_name ) ;
FCI_E3:#15 Err. Event Type=<%s> Not recognized." ,
drv_bd->event_desc )
FCI_E3:#16 Err. Point Type='%c'(%#x) Not recognized. ,
drv_bd->point_identifier[0] , drv_bd->point_identifier[0] ) ;
4
Correct the configuration file, download to the FieldServer and restart the FieldServer for the changes to
take effect.
FieldServer Technologies 1991 Tarob Court Milpitas, California 95035 USA Web: www.fieldserver.com
The Driver could not find a place to store
data from a message received. If the data
is not required then the message may be
ignored. Otherwise update the
configuration file4.
Take a log. Try and repeat the event that
caused the message to be printed. Then
contact tech support.
If this error is repeated often it is possible
that a FCI firmware update has made the
driver unusable. Take a log and contact
tech support.
FS-8700-132 Gamewell FCI-E3 Driver Manual Page 18 of 20
FCI_E3:#21 Err. Point Type not recognized
FCI_E3:#22 Err. Undefined Point Type"
FCI_E3:#23 Err. Event Type not recognized
FCI_E3:#24 Err. Undefined Event Type
FCI_E3:#25a Err. Address+Length>99. Length Truncated
FCI_E3:#36 Err. Too Short. Bytes=%d , conn->ux_iptr"
byte in a message has been corrupted. If
you notice it more than once then take a
log and contact tech support.
If this error is repeated often it is possible
that a FCI firmware update has made the
driver unusable. Take a log and contact
tech support.
This message should only be printed if a
byte in a message has been corrupted. If
you notice it more than once then take a
log and contact tech support.
Valid Point Types are listed in section
4.4.25
Valid Event Types are listed in section
4.4.25
The maximum value for a sensor/module
is 99. The combination of address and
length specified produce a number > 995
Correct the configuration file5
Valid Point Types are listed in Section
4.4.25
The length of each Map Descriptor should
be specified. Refer to Section 4.4.25
The driver can only listen passively for
message from the panel. Map Descriptors
may not be configured as active. 5
An event message is less than 80 bytes
long. If this error is repeated often it is
possible that a FCI firmware update has
made the driver unusable. Take a log and
contact tech support.
5
Correct the configuration file, download to the FieldServer and restart the FieldServer for the changes to
take effect.
FieldServer Technologies 1991 Tarob Court Milpitas, California 95035 USA Web: www.fieldserver.com
FS-8700-132 Gamewell FCI-E3 Driver Manual Page 19 of 20
Appendix B.1. Driver Stats Exposed.
In addition to the standard FieldServer operating statistics the driver exposes certain key stats in a
Data Array if required. An upstream device can then monitor these stats.
Add the following to your configuration file to activate these stats.
The driver exposes stats based on a port handle. The offset specified in the table below must be
added to the handle number multiplied by 100. i.e. for port whose handle is 1 then the driver will store
the 1st stat at 1+100*1=101.
Stat Offset Description
#define FCI_E3_STAT_NO_PLACE_TO_STORE 1
#define
FCI_E3_STAT_NO_PLACE_TO_STORE_ZONE
#define
FCI_E3_STAT_NO_PLACE_TO_STORE_RELAY
#define
FCI_E3_STAT_NO_PLACE_TO_STORE_LOOP
#define
FCI_E3_STAT_NO_PLACE_TO_STORE_SENSOR
#define
FCI_E3_STAT_NO_PLACE_TO_STORE_MODULE
#define FCI_E3_STAT_EMPTY_MSG 7
#define FCI_E3_STAT_SHORT_MSG 8
#define FCI_E3_STAT_NO_RESET 9
#define
FCI_E3_STAT_NO_PLACE_TO_STORE_PANEL
#define FCI_E3_STAT_RCVD_MSGS 11
Increments each time point data is
received but there is no Map
Descriptor to store the data (any)
Increments each time point data is
2
3
4
5
6
10
received but there is no Map
Descriptor to store Zone data
Increments each time point data is
received but there is no Map
Descriptor to store Relay data
Increments each time point data is
received but there is no Map
Descriptor to store the Loop data
Increments each time point data is
received but there is no Map
Descriptor to store the Sensor
data
Increments each time point data is
received but there is no Map
Descriptor to store the Module
data
Number of times that a message
line was zero bytes long
(excluding the terminator)
Number of times that a message
line was too short probably a
system id tag line
Increments each time a reset was
rcvd but no Data Array was reset
Increments each time point data is
received but there is no Map
Descriptor to store data that
cannot be attributed to a zone,
relay, loop, sensor, module
Increments each time a message
is received
FieldServer Technologies 1991 Tarob Court Milpitas, California 95035 USA Web: www.fieldserver.com
FS-8700-132 Gamewell FCI-E3 Driver Manual Page 20 of 20
Stat Offset Description
Increments each time a character
is received from the panel. The
bytes are only added when a
#define FCI_E3_STAT_RCVD_BYTES 12
#define
FCI_E3_STAT_PARSED_NO_ERRS_EXCLD_RESET
#define FCI_E3_STAT_PARSED_NO_ERRS_RESET 14
#define FCI_E3_STAT_PARSED_NO_ACTION 15
#define FCI_E3_STAT_PARSED_WITH_ERRS 16
#define FCI_E3_STAT_INHIBIT_RESET 17 Set to 1 to inhibit resets altogether
#define FCI_E3_STAT_INHIBIT_RESET_DA_PUT 18
#define FCI_E3_STAT_INHIBIT_RESET_WHILE 19
#define FCI_E3_STAT_NODE_INFO_MSG 20
#define
FCI_E3_STAT_NO_PLACE_TO_STORE_NODE
13
21
message terminator is received.
Thus this count is equivalent to
the byte count in all
FCI_E3_STAT_RCVD_MSGS
Increments each time a message
is parsed without errors. Excludes
Reset Messages
Increments each time a reset
message is parsed without errors.
Increments each time a message
is parsed with no errors but the
nature of the message doesn’t
require data to be stored. (eg
empty message lines)
Increments each time a message
produces an error when parsed.
Set to 1 to inhibit resets from
clearing arrays
Set to 1 to inhibit the reset
function from looping through Map
Descriptors
Increments each time a message
with Node information is received
Increments each time an event
message containing Node
information relating to a Node that
cannot be found is discarded.
FieldServer Technologies 1991 Tarob Court Milpitas, California 95035 USA Web: www.fieldserver.com