BlueBOLT BB-RS232 Command Set

advertisement
BB-RS232
Command Set /
Protocol Specifications
ACCESSORY POWER ONLY
RECEIVE DATA
TRANSMIT DATA
ACCESSORY POWER ONLY
SIGNAL GROUND
ACCESSORY POWER ONLY
REQUEST TO SEND
CLEAR TO SEND
ACCESSORY POWER ONLY
PIN NO.
ACCESSORY POWER ONLY
1
(NEGATIVE 12VDC RETURN)
2
3
4
5
6
7
8
9
RECEIVE DATA
TRANSMIT DATA
ACCESSORY POWER ONLY
SIGNAL GROUND
ACCESSORY POWER ONLY
REQUEST TO SEND
CLEAR TO SEND
ACCESSORY POWER ONLY
(POSITIVE 12V)
CONNECT ONLY TO
BlueBOLT SUPPORTED
DEVICES WITH
9-CONDUCTOR
STRAIGHT-THROUGH
CABLE !
CONNECT ONLY TO
BlueBOLT SUPPORTED
DEVICES WITH
9-CONDUCTOR
STRAIGHT-THROUGH
CABLE !
5 4 3 2 1
6 7 8 9
BB-RS232
ETHERNET
STATUS +12VDC IN 400mA
POWER
PUSH TO
RESET
ACTIVITY
LINK
BlueBOLT
10006527 REV. A
5-7-15
NETWORKING CONFIGURATION
BB-RS232 provides a built-in HTTP interface (web page server at default port 80) which can be accessed via a typical “web page browser” allowing the user to configure the
network settings.
• DHCP or static IP address assignment
• IP address
• Subnet mask
• Gateway Address
• DNS server Address 1
On start-up, BB-RS232 will use two IP addresses on its Ethernet connection:
1. A random link-local address can be discovered by link-local utilities such as the Bonjour zero-configuration networking utility by Apple.
2. A local network address, either statically assigned, or from DHCP. If the address was assigned by DHCP it can be discovered by inspection of your router’s connected
devices table.
In addition to providing external access and control via Panamax/Furman’s hosted BlueBOLT platform, BB-RS232 and BlueBOLT enabled devices may also be interfaced to
control and automation systems on the local area network. Command, information and event messages are provided in standard XML format over UDP port 57010.
MESSAGING AND COMMUNICATION
GENERAL
All messages to and from BB-RS232 are encapsulated in standard XML format. As per XML standard, It is required that the XML version declaration be included at the
start of each message. Messages that do not conform to the standard will be ignored. In addition to the XML version declaration, every message must also specify the type
of device (class) and its unique identifier (id) in its root element using the <device> tag. For BB-RS232, the device class is “bb232” and its identifier is the MAC address
expressed with no formatting.
<?xml version=”1.0” ?><device class=”dev_class” id=”identifier”>…</device>
For the devices connected to a BB-RS232, the device class is listed in the table below and the identifier is its Device ID. The Device ID for any Furman Contractor Series
device is also its 14-digit serial number.
Model
Device Class
Identifier (id)
BB-RS232bb232MAC Address
CN-1800 S
cn1800
Device ID
CN-2400 S
cn2400
Device ID
CN-3600 SE
cn3600
Device ID
CN-15MPcnmp15Device ID
CN-20MPcnmp20Device ID
Table 1 – Device Classes
Example to address the BB-RS232 device:
<?xml version=”1.0” ?><device class=”bb232” id=”1065a3020000”>…</device>
Example to address a CN-1800 S device:
<?xml version=”1.0” ?><device class=”cn1800” id=”02846132800288”>…</device>
This would be considered the “envelope” for all messages, where the “…” is to be considered the “contents” of the message.
There are three types of messages: event messages, information messages and command messages.
Event messages are time stamped in UNIX time and sent in response to a change of device status or settings. It should be noted that events are not sent in reply to a query.
Command messages are sent to the devices to query information, change settings or initiate an action.
Information messages are sent from the devices in response to a query command.
1
Examples of the message format are provided in the table below.
Example Event Message Event message for a power on sequence of
a chain of SmartLink devices
Example Command Message
Command to switch outlet bank 2 OFF on a device in
the SmartLink chain
<?xml version=”1.0” ?>
<device class=”bb232”
id=”1065a3020000”>
<event time=”1403729752”>
<sequence>1</sequence>
</event>
</device>
<?xml version=”1.0” ?>
<device class=”cn1800”
id=”02845133200267”>
<command>
<outlet id=”2”>0</outlet>
</command>
</device>
Example Information Message
Snippet of the response to <sendinfo> query
<?xml version=”1.0” ?>
<device class=”bb232”
id=”1065a3020000”>
<info time=”1403729752”>
<sernum>12345678</sernum>
<fwver>1.0.1</fwver>
..
</info>
</device
The following sections document the possible message content and it should be assumed that the contents are always enclosed by the “envelope” and that the “envelope” text
will not be repeated, unless needed for clarity.
Action and Queries
Command messages are sent to a device to have it perform a task. When the task is to perform a physical action such as initiating a power switching sequence, it is referred
to as an action. When the task is to transmit data such as device status it is referred to as a query. Whether the task is an action or query, the message is classified as a
command.
Not all commands issued to a device will result in a response message. If it is desired to receive an acknowledgement of receiving the command, the optional “xid” attribute
may be included in the <command> element. Command messages with the “xid” attribute expressed will return an acknowledgement enclosed in the <ack> element. For
example, when the xid=”123” is included within the <command> element, the device will include the <ack xid=”123”/> element in its response. A more detailed example is
provided in the General Command Structure section below.
General Command Element Structure
Command messages are contained within a <command> element.
Sample command to initiate a turn-on sequence of all the connected devices, the first example is with no acknowledgement; the second example is with acknowledgement:
CommandResponse
<command><sequence>1</sequence></command>
None
<command xid=”123” >
<ack xid=”123”/>
<sequence>1</sequence></command>
General Query Element Structure
All query command messages are contained within a <command> element. The device responds to the query with a set of elements enclosed in the <info>, <status> or
<settings> element depending on the type of query. Every query contains a timestamp attribute “time” which is expressed as standard UNIX time. UNIX time is the number of
elapsed seconds since January 1st, 1970.
Section 1 – BB-RS232 Queries
1.1
Send Information Query
The Send Information query is used to retrieve the following system-level information from the BB-RS232. Information elements are enclosed in the <info> element.
Query:<sendinfo/>
Response:
<info time=”timestamp”
<sernum>serialnumber
<fwver>firmwareversion
<bootcodever>bootcode
<ipaddr>ipaddress
Time stamp of the data, provided in UNIX time
Serial number
Firmware version
Boot loader firmware version
IP address, provided as a 32-bit (base-10) decimal value
2
QueryResponse
<?xml version=”1.0”?><?xml version=”1.0”>
<device class=”bb232”<device class=”bb232”
id=”1065a3020000”>
id=”1065a3020000”>
<command xid=”19”><sendinfo/>
<info time=”1403729752”>
</command><sernum>12345678</sernum>
</device><fwver>1.0</fwver>
<bootcodever>1.0</bootcodever>
<ipaddr>3194548209</ipaddr>
</info><ack xid=”19”/>
</device>
1.2
Send Status Query
The Send Status query is used to retrieve the following status information from the BB-RS232. Status elements are enclosed in the <status> element.
Query:
<sendstatus/>
Response:
<status time=”timestamp”…
<ntwkdevcnt>count
<ntwkinvhash>hash
<ntwkpollstate>state
<hdlcstate errs=’n’
hdlclink=’link’
<tfilestate>
Time stamp of the data, provided in UNIX time
Count of SmartLink connected devices
Hash code of connected devices. Changes if device chain changes.
Indicates polling state of the device chain
For Furman Sound use only
errs indicates errors in the SmartLink communication.
Values other than 0x000 indicate a communication error
hdlclink indicates the state of the communication link.
1 = communication link is up; 0 = communication link is down
Firmware update file management
For Furman Sound use only
Example:
Query
<?xml version=”1.0” ?>
<device class=”bb232” id=”1065a3020000”>
<command>
<sendstatus/>
</command></device>
Response
<?xml version=’1.0’ ?>
<device class=’bb232’ id=’1065a3020000’>
<status time=’1423680610’>
<ntwkdevcnt>2</ntwkdevcnt>
<ntwkinvhash>2ce5b92ddd28f8f429e584ad05cc504f9984b3f6</ntwkinvhash>
<ntwkpollstate>0</ntwkpollstate>
<hdlcstate>0x000</hdlcstate>
<tfilestate len=’0’ chk=’4294967295’
mtime=’4294967295’ busy=’0’ lock=’0’ url=’’/></status></device>
1.3
Send Child Query
The Send Child query is used to identify an individual device connected to the BB-RS232 and SmartLink chain. To identify all connected devices, the Send Child query must be
sent once for each device with the index number “n”, starting at zero. The index number is also referred to as the SmartLink address. For example if the <sendstatus/> query
reports a count of 3 devices you can identify the connected devices by issuing 3 <sendchild ..> queries with index numbers of 0, 1 and 2.
Query: <sendchild ndx=”n”/>
Response:
<child
class=”ClassName”
The device type / model, per Table 1
id=”deviceID”/>
SmartLink address the device.
Example of <sendchild/> to identify the second device (ndx = 1) in the SmartLink chain.
Query
<?xml version=”1.0” ?>
<device class=”bb232” id=”1065a3020000”>
<command>
<sendchild ndx=”1”/>
</command></device>
3
Response
<?xml version=’1.0’ ?>
<device class=’bb232’ id=’1065a3020000’>
<child class=’cn2400’ id=’02846132800288’/>
</device>
1.4
Send Family Query
The Send Family query is used to retrieve a complete list of all devices connected to the BB-RS232 and SmartLink chain.
Query: <sendfamily/>
Response
<family>
<kids class=”ClassName”>
<k>deviceID</k>
All devices of the same type are enclosed within <kids>
Unique identifier (serial number) for the device.
Example of <sendfamily/> for a system with two CN-1800S and one CN-2400S device.
Query
<?xml version=”1.0” ?>
<device class=”bb232” id=”1065a3020000”>
<command>
<sendfamily/>
</command></device>
Response
<?xml version=’1.0’ ?>
<device class=’bb232’ id=’1065a3020000’>
<family>
<kids class=”cn1800”>
<k>02845133200267</k>
<k>02845133200299</k>
</kids>
<kids class=”cn2400”>
<k>02846132800288</k></kids>
</family>
</device>
Section 2 – BB-RS232 Commands
2.1
Set Time Command
The Set Time command is used to set the time of the internal clock. If BB-RS232 is communicating with the BlueBOLT cloud, it is not necessary to use this command as
BlueBOLT automatically manages the time. This command is required when not communicating with BlueBOLT. It is recommended that the time be reset on a regular interval
of at least two times per day. The time value is standard UNIX format. Searching on the term “current unix time” in your favorite internet search engine should provide several
online resources to determine past, present and future UNIX time.
Command: <settime>unix_timestamp</settime>
Response: None
Example: set BB-RS232 time for January 1st 2015, 12:00:00 AM UTC
<settime>1420070400</settime>
2.2
Set Timezone Command
The Set Timezone command sets the time zone of where the device is physically located. Since UNIX time is based on the UTC/GMT time zone, it is necessary to provide a
time offset between GMT and your local time zone. Like Set Time, this command is required if not connected to the BlueBOLT cloud.
Command
<setzoneinfo>
<timezone>offset</timezone>
<dststart>dst_start_time</dststart>
<dstshift>3600</dstshift>
<dstend>dst_end_time</dstend>
</setzoneinfo>
Number of seconds offset from UTC
UNIX timestamp of when to start daylight savings time
Number of seconds to offset from standard time during daylight savings time
UNIX timestamp of when to stop daylight savings time
Response: None
Example: Set BB-RS232 for the Pacific time zone (UTC-8), daylight savings time to start at 2:00:00 AM on 3/8/2015, ending at 2:00:00 AM on 11/1/2015.
<setzoneinfo>
<timezone> -28800</timezone>
<dststart>1425805200</dststart>
<dstshift>3600</dstshift>
<dstend>1446372000</dstend>
</setzoneinfo>
PST is 8 hours (28800 seconds) behind UTC
1425805200 is 3/8/2015 2:00AM, PST UNIX time
Time shifts by one hour (3600 seconds) during DST
1446372000 is 11/1/2015 2:00AM, PST UNIX time
4
2.3
Enumerate Command
The Enumerate command will remove the current device inventory from memory and (re)discover the connected devices by forcing the devices to renumber their SmartLink
address and then command BB-RS232 to rebuild its device inventory list. After executing this command, the device list in your application should be rebuilt using the <sendchild> or <sendfamily> queries. Depending on the number of units in the chain, the enumerate process can take several minutes
Command
<enumerate/>
Response: None
2.4
Roll Call Command
The Roll Call command will cause the devices to report their SmartLink address back to rebuild its device inventory list. Roll Call differs from Enumerate in that it is nondestructive to the devices and does not re-assign their SmartLink addresses.
Command
<rollcall/>
Response: None
2.5
Reboot Command
The Sequence command will start a power turn-on or power turn-off sequence for the entire chain of connected devices
Command
<reboot/>
Response: None
2.6
Sequence Command
The Sequence command will start a power turn-on or power turn-off sequence for the entire chain of connected devices.
Command
<sequence>action</sequence>action
1 = initiate a power turn-on sequence
0 = initiate a power turn-off sequence
Response: None
Section 3 – SmartSequencer™ Device Queries
3.1
Send Information Query
The Send Information query is used to retrieve the following system-level information from a device connected to the BB-RS232. Information elements are enclosed in the
<info> element.
Query: <sendinfo/>
Response:
<info time=”timestamp”
<sernum>serialnumber
<fwver>firmwareversion
<hwver>hardware version
<sladdr>smartlnk address
Time stamp of the data, provided in UNIX time
Serial number
Firmware version
Hardware version of the device
SmartLink address / index number (refer <sendchild/> query)
Example:
Query
<?xml version=”1.0” ?>
<device class=”cn1800” id=”02845133200267”>
<command><sendinfo/></command>
</device>
5
Response
<?xml version=’1.0’ ?>
<device class=’cn1800’ id=’02845133200267’>
<info time=’1423700279’>
<fwver>2.1.5</fwver>
<hwver>1</hwver>
<sladdr>1</sladdr>
</info></device>
3.2
Send Status Query
The Send Status query is used to retrieve the following status information from an individual connected device. Status elements are enclosed in the <status> element.
Query: <sendstatus/>
Response
<status time=”timestamp”…
<voltage>voltage
<amperage>amps
<wattage>watts
<pwrva>voltamps
<pwrfact>powerfactor
<per id=’n’>packeterror
<remote>remoteinput
<protok>protection
<smp>powerrelay
<secok>seclink
<overvolt>ov
<undervolt>uv
<pwrok>powerok
<seqprog>seqstatus
<outlet id=’n’>outletstate
Time stamp of the data, provided in UNIX time
Measured RMS line voltage, 0.1Vac resolution
Measured total load current, 0.01A resolution
Measured total power delivered to the load, 1 Watt resolution
Measured volt-amperes delivered to the load, 1 VA resolution
Measured power factor of the loads, 0.01 resolution
Packet error rate, expressed as a percentage, 0.00 to 1.00
id = 1: primary link; id=2: secondary link
The logic level of the remote sensing input
Surge protection circuit status
1 = Protection circuit is okay
0 = No protection
Series Mode Protection power relay state
1 = relay is on, AC power available
0 = relay is off, AC power not available
Secondary SmartLink Status
1 = secondary link is communicating
0 = no response on the secondary link
Overvoltage Status
1 = Overvoltage condition detected
0 = No overvoltage condition detected
Undervoltage Status
1 = Undervoltage condition detected
0 = No undervoltage condition detected
Normal Power Condition
1 = Power is normal
0 = Power fault; overvoltage or undervoltage
Power Sequence Status
1 = a power on/off sequence is in progress
0 = no power on/off sequence is in progress
Outlet Bank Power State
1 = Outlet bank n is ON
0 = Outlet bank n is OFF
Example:
Query
<?xml version=”1.0” ?>
<device class=”cn1800” id=”02845133200267”>
<command><sendstatus/></command>
</device>
Response
<?xml version=’1.0’ ?>
<device class=’cn1800’ id=’02845133200267’>
<status time=”1423770400”>
<voltage>120.60</voltage>
<amperage>2.19</amperage>
<wattage>216.57</wattage>
<pwrva>264.11</pwrva>
<pwrfact>0.82</pwrfact>
<per id=’1’>0.00</per>
<per id=’2’>0.00</per>
<remote>0</remote>
<protok>1</protok>
<smp>1</smp>
<alm>0</alm>
<secok>0</secok>
<overvolt>0</overvolt>
<undervolt>0</undervolt>
<pwrok>1</pwrok>
<seqprog>0</seqprog>
<outlet id=’1’>0</outlet>
<outlet id=’2’>0</outlet>
<outlet id=’3’>0</outlet>
</status></device>
6
3.3
Send Settings Query
The Send Settings query is used to retrieve the device settings from a connected device such as outlet bank delays, remote input mode and alarm mode. Setting elements are
enclosed in the <settings> element.
Query:
<sendsettings/>
Response
<status time=”timestamp”…
<adj>percent
<delay>seconds
<totdelay>seconds
<mode>remoteinputmode
<seq>sequencemode
<alarm>alarmmode
<evs>evsmode
<override>
<evtsena>eventenable
Time stamp of the data, provided in UNIX time
Delay time adjustment, percentage of time set by the DIP switch
Time delay set by the DIP switches
Total delay time = <delay> * <adj>
Remote Input Operating Mode set by DIP switch
0 = 12V off
1 = 12V on
2 = Ground on
3 = MOM (momentary)
Sequence Mode
1 = Primary
0 = Secondary
Alarm Input Mode
1 = Normally Open
0 = Normally Closed
Extreme Voltage Shutdown Mode
CNxxxx Devices: 1 = automatic; 0 - manual
MPxxxx Devices: 1 = on; 0 = off
Indicates the switch position for overriding remote commands
cnmp15/20: bypass (0 = OFF, 1 = ON)
cn1800/2400/3600: Key (0 = OFF, 1 = ON, 2 = REMOTE)
Events Enabled
1 = Enabled
0 = Disabled
Example:
Query
<?xml version=”1.0” ?>
<device class=”cn1800” id=”02845133200267”>
<command><sendsettings/>
</command></device>
7
Response
<?xml version=’1.0’ ?>
<device class=’cn1800’ id=’02845133200267’>
<settings time=’1423769459’>
<adj>0.50</adj>
<delay>10</delay>
<totdelay>5.00</totdelay>
<mode>3</mode>
<seq>0</seq>
<alarm>1</alarm>
<evs>1</evs>
<override>2</override>
<evtsena>1</evtsena></settings></device>
Section 4 – SmartSeqencerTM Device Commands
4.1
Switch Outlet Command
The Switch Outlet command is used to control an individual outlet on a connected device in the SmartLink chain.
Command
<outlet id=”n”>state
Switch outlet (bank) n
0 = OFF
1 = ON
Response: None
4.2
Cycle Outlet Command
The Cycle Outlet command is used to power cycle an individual outlet on an individual device in the SmartLink chain. The outlet will turn off
then turn back on five seconds later. With the optional delay attribute, the delay time can be between 1 to 254 seconds.
Command
<cycleoutlet id=”n” delay=”t”/>
Power cycle outlet (bank) n
delay for t seconds (optional)
Response: None
4.3
Sequence Command
The Sequence command is used to initiate a power-on or power-off sequence of all outlets on an individual device in the SmartLink chain.
Command
<sequence>on_off
Initiate a power sequence
0 = turn OFF sequence
1 = turn ON sequence
Response: None
4.4
Refresh Info Command
The Refresh Info command forces the connected device to send its system information to the BB-RS232. This command is used to ensure
that the <sendinfo> query will report up-to-date information.
Command
<refreshinfo/>
Refresh system information
Response: None
4.5
Refresh Settings Command
The Refresh Settings command forces the connected device to immediately send its settings information to the BB-RS232.
This command is used to ensure that the <sendsettings> queries will report up-to-date information.
Command
<refreshsettings/>
Refresh settings information
Response: None
8
Section 5 – Event Messaging, General
Event messages are sent autonomously from BB-RS232 or connected device when some change occurs within the device – they are not replies to a query.
5.1
Subscribing to Event Messages
After start-up, no event messages will be sent. To receive event messages a command to “subscribe” to events must be sent.
The event subscription command is enclosed within the XML declaration and <command> element and is as follows:
…<eventmgr><subscribe uri=”ctrlsys://IPADDR:PORT”/></eventmgr>…
IPADDR is the IP address and PORT is the port number where the event messages should be sent. It may be a different IP address than the control system which sent the
request.
Devices must be subscribed to individually and only one IP address / port event subscription is allowed per device.
For example, to have event messages sent from a BB-RS232 with MAC address 10-65-A3-02-FF-FF to a control system at IP address 192.168.0.127 listening on port 1726:
<?xml version=”1.0” ?><device class=”bb232” id=”1065a302ffff”>
<command><eventmgr><subscribe uri=”ctrlsys://192.168.0.127:1726”/>
</eventmgr></command></device>
The unsubscribe command follows the same format
…<command><eventmgr><unsubscribe uri=”ctrlsys://IPADDR:PORT”/></eventmgr></command>…
5.2
General Event Element Structure
All event messages are contained within an <event> element and will include a timestamp attribute, “time”, an event ID attribute, “evtid” and an event subscriber ID attribute
“subsid”. The time attribute is a UNIX timestamp, up to 10 decimal digit characters and represents the number of seconds that have passed since January 1st 1970 GMT.
The evtid attribute is the numeric ID value of the event message, starting from 0 after each device start-up. A subscriber ID, “subsid” is assigned to each event subscription.
A sample event message for the initiation of a power on sequence:
<?xml version=”1.0”><device class=”bb232” id=”1065a302ffff”>
<event time=”1234567890” evtid=”123” subsid=”1”>
<outlet id=”1”>0</outlet>
</event></device>
Event messages will be repeated until an acknowledgement message is sent back to the subscribed device, or after a timeout period of approximately 20 minutes.
The acknowledgement message syntax is:
…<command><eventmgr><ack evtid=”123” subsid=”1”></eventmgr></command></device>
There are several event messages that are intended for Furman Sound use only and are not documented in this manual. However, these messages will still be posted.
The following table lists the undocumented event messages:
BB-RS232 <schedmgr><setevent>
<schedmgr><delevent>
<schedmgr><clearschedule>
<fwupgd>
<loadfile>
<tfilebusy>
<tfilelock>
9
CN/MP- SmartSequencerTM Devices
<seqchg>
<perchg>
<cmdconflict>
Section 6 - Event Messages, BB-RS232
6.1
Enumerate Event
An Enumerate event is posted when a device enumeration (or “discovery”) has started or ended. Refer to the <enumerate> command in section 2 for details.
<enum
phase=”phase”
err=”error_code”/>
Example:
<event time=”1234567890”… >
<enum phase=”end”
err=”no 2,3”/>
</event>
“start” = enumeration has started
“end” = enumeration has ended
“timeout “ = enumeration timed out
“blocked” = enumeration blocked
“no n,m….” = n,m is a list of devices (by SmartLink
address) that were expected, but not found
Event header
Enumeration has ended
Devices 2 and 3 did not respond
6.2
Enumerate Required Event
An Enumerate Required event message is posted when BB-RS232 detects a non-legitimate SmartLink address. After receiving the Enumerate Required
event message, the <enumerate> command should be issued to re-discover the connected devices.
<enumreqd
sladdr=”n”/>
“n” is the non-legitimate
SmartLink address
Example:
<event time=”1234567890”… >
<enumreqd sladdr=”254”/>
</event>
Event header
SmartLink address 254 is non-legitimate
6.3
Roll Call Event
The BB-RS232 and SmartLink devices perform a “Roll Call” action in which all of the devices report their SmartLink address to confirm that they are communicating.
<roll
phase=”phase”
err=”error_code”/>
Example:
<event time=”1234567890”… >
<roll phase=”end”
err=”timeout”/>
</event>
“start” = enumeration has started
“end” = enumeration has ended
“timeout “ = enumeration timed out
“blocked” = enumeration blocked
“dup n,m….” = n,m is a list of SmartLink addresses
that were reported by multiple connected devices
Event header
Roll call has ended
Roll call timed out
10
6.4
Object Destroy Event
The BB-RS232 posts an Object Destroy event message when a SmartLink device is removed from its internal inventory.
<objdestroy
class=”device_class”
id=”serial_number”
sladdr=’address’/>
Example:
<event time=”1234567890”… >
<objdestroy
class=”cn1800”
id=”02845133200267”
sladdr=’2’/>
</event>
Type of device removed, per Table 1
id= device serial number
sladdr = Smart Link address
Event header
Removing from inventory
A CN-1800 S device
With device ID 02845133200267
That had SmartLink address 2
6.5
Object Create Event
The BB-RS232 posts an Object Create event message when a SmartLink device is added to its internal inventory.
<objcreate
class=”device_class”
id=”serial_number”
sladdr=’address’/>
Example:
<event time=”1234567890”… >
<objdestroy
class=”cn1800”
id=”02845133200267”
sladdr=’2’/>
</event>
Type of device created, per Table 1
id=device serial number
sladdr = Smart Link address
Event header
Adding to inventory
A CN-1800 S device
With device ID 02845133200267
That had SmartLink address 2
6.6
SmartSequencerTM Count Event
The BB-RS232 posts a SmartSequencerTM Count event message indicating the number of devices in the SmartLink chain.
<devcnt>n</devcnt>
n= Number of devices found on the SmartLink chain
Example:
<event time=”1234567890”… >
<devcnt>4</devcnt>
</event
Event header
Four devices found on the SmartLink chain
6.7
SmartSequencerTM Ready Event
The BB-RS232 posts a SmartSequencerTM Ready event message when all required data has been recorded in inventory.
<ready
class=”device_class”
id=”serial_number”
sladdr=”n”/>
Example:
<event time=”1234567890”… >
<ready class=”cn1800”
id=”02845133200267”
sladdr=”1”/>
</event>
11
Device type
id=device serial number
sladdr = SmartLink address
Event header
A CN-1800 S device is ready
With serial number 02845133200267
And SmartLink address 1
6.8
SmartSequencer™ Firmware Upgrade Required Event
The BB-RS232 posts a SmartSequencerTM Firmware Upgrade Required event message when firmware updating is necessary.
<fwupgdreqd
class=”device_class”
sladdr=”n”/>
Example:
<event time=”1234567890”… >
<ready fwupgdreqd=”cn1800”
sladdr=”1”/>
</event>
Device type
sladdr = SmartLink address
Event header
CN-1800 S device
With SmartLink address 1 requires a firmware upgrade
6.9
HDLC Link Event
The BB-RS232 posts an HDLC Link event message to indicate the status of the link-level communication between the SmartLink devices.
<hdlclink>status</hdlclink>
Example:
<event time=”1234567890”… >
<hdlclink>1</hdlclink>
</event>
1 = HDLC link is up
0 = HDLC link is down
Event header
HDLC link is up
6.10
Scheduled Action Fired Event
A Scheduled Action Fired event is posted when the BB-RS232 performs a scheduled operation. The description of the command that was executed
on schedule is contained in <command>..</command>
<schedmgr><fire>
<fire>
<day>daysofweek</day>
<min>minuteofday</min>
<command>
<executed_cmd>..</executed_cmd>
</command>
</fire>
Example:
<event time=”1234567890”… >
<schedmgr>
<fire>
<day>115</day>
<min>550</min>
<command>
<sequence>1</sequence>
</command>
</fire>
</schedmgr>
Scheduled days. See below.
Elapsed minutes since midnight
Executed command
Event header
Scheduled event
fired
scheduled for Monday-Friday
at minute 550 of today (9:10AM)
the event was a command
for initiate a turn on sequence
The <day> element contains the daysofweek value for the days of the week the action is scheduled to fire. This element is a bit tricky in that the scheduled days are encoded
in a 7-bit binary bitmap that is provided in decimal format. To process the data it must be converted from decimal to binary where each bit represents a day of the week the
action is scheduled. Bit 0 represents Thursday.
Scheduled day(s) of the week daysofweek
Binary
Thursday10000001
Friday20000010
Saturday40000100
Sunday80001000
Monday160010000
Tuesday320100000
Wednesday641000000
Monday-Friday1151110011
Saturday-Sunday120001100
12
Section 7 – Event Messages, SmartSequencerTM Devices
7.1
Sequence Done Event
A Sequence Done event message is posted when a power on or power off sequence is initiated or completed
<seqdone>state</seqdone>
1 = Sequence is done
0 = Sequence is in process
Example:
<event time=”1234567890”… >
<seqdone>1</seqdone>
</event>
Event header
Power sequence is done
7.2
Outlet State Change Event
An Outlet State Change event message is posted when any of the outlet banks turn ON->OFF or OFF->ON.
<outlet id=”n”>state</outlet>
Outlet n state changed to:
0 = outlet is OFF
1 = outlet is ON
Example:
<event time=”1234567890”… > <outlet id=”1”>0</outlet>
<event>
Event header
Outlet 1 is OFF
7.3
Under Voltage Event
An Under Voltage event message is posted when the device goes in or out of under voltage shutoff mode.
<undervolt>state</undervolt> 0 = no undervoltage condition
1 = undervoltage condition
Example:
<event time=”1234567890”… >
<undervolt>1</undervolt>
</event>
Event header
Undervoltage condition present
7.4
Over Voltage Event
An Over Voltage event message is posted when the device goes in or out of over voltage shutoff mode.
<overvolt>state</overvolt> 0 = no overvoltage condition
1 = overvoltage condition
Example:
<event time=”1234567890”… >
<overvolt>1</overvolt>
</event>
13
Event header
Over voltage condition present
7.5
Power OK Event
A Power OK event message is posted when the operating voltage falls in or out of the safe normal operating range.
<powerok>state</powerok> 1 = Normal voltage present
0 = Abnormal voltage present
Example:
<event time=”1234567890”… >
<powerok>1</powerok>
</event>
Event header
Voltage is in normal operating range
7.6
Alarm Event
An Alarm event message is posted when the alarm input on the device has changed. The alarm state is latched, and must be explicitly cleared with the key on the primary unit
(the first device in the chain).
<alarm>state</alarm> state
1 = Alarm input is active
0 = No alarm
Example:
<event time=”1234567890”… >
Event header
<alarm>1</alarm>Alarm is active
</event>
7.7
Protection OK Event
A Protection OK event message indicates the status of the surge protection circuitry.
<protectok>state</protectok> state
1 = Surge protection circuit is ok
0 = Surge protection circuit has failed
Example:
<event time=”1234567890”… >
<protectok>0</protectok>
</event>
Event header
Surge protection circuit has failed
7.8
Reset Event
A Reset event message is posted when the device is in a reset state.
<reset>state</reset> 1 = Reset in progress
0 = Normal operation
Example:
<event time=”1234567890”… >
<reset>1</reset>
</event>
Event header
A device reset is in progress
10006527 REV. A
5-7-15
14
Download