Summary
The Nortek BlueBOLT BB-RS232 is an RS-232 to Ethernet gateway device that manages a chain of SmartSequencer™-compatible power conditioning devices (CN-xxxx and MP-xxxx series). Control and event messaging use XML documents exchanged over UDP port 57010. A built-in HTTP interface on port 80 allows network configuration. No authentication is required for local UDP control.
Transport
protocols:
- udp
addressing:
port: 57010 # UDP port for XML command/event messages
base_url: http://{device_ip} # HTTP interface for web configuration only
auth:
type: none # inferred: no auth procedure in source for UDP control
Traits
- powerable # sequence command, outlet switching, and power cycle commands present
- queryable # sendinfo, sendstatus, sendsettings, sendchild, sendfamily queries present
- routable # SmartLink chain supports device enumeration and addressing by SmartLink address
Actions
- id: sequence
label: Sequence
kind: action
params:
- name: action
type: integer
description: "1 = initiate power turn-on sequence; 0 = initiate power turn-off sequence"
description: Initiate a power turn-on or turn-off sequence for the entire chain of connected devices
- id: outlet
label: Switch Outlet
kind: action
params:
- name: id
type: integer
description: Outlet bank number (1-based)
- name: state
type: integer
description: "0 = OFF; 1 = ON"
description: Control an individual outlet on a connected SmartLink device
- id: cycleoutlet
label: Cycle Outlet
kind: action
params:
- name: id
type: integer
description: Outlet bank number (1-based)
- name: delay
type: integer
required: false
description: Delay in seconds (1-254). Outlet turns off then back on after this delay. Default 5 seconds.
description: Power cycle an individual outlet
- id: settime
label: Set Time
kind: action
params:
- name: unix_timestamp
type: integer
description: UNIX timestamp (seconds since Jan 1 1970 UTC)
description: Set the BB-RS232 internal clock. Not needed when connected to BlueBOLT cloud.
- id: setzoneinfo
label: Set Timezone
kind: action
params:
- name: timezone
type: integer
description: Seconds offset from UTC (e.g. -28800 for PST)
- name: dststart
type: integer
description: UNIX timestamp for daylight savings start
- name: dstshift
type: integer
description: Seconds to offset during DST (typically 3600)
- name: dstend
type: integer
description: UNIX timestamp for daylight savings end
description: Set the device timezone and DST rules
- id: enumerate
label: Enumerate
kind: action
params: []
description: Force rediscovery of the SmartLink chain. Rebuilds device inventory. Can take several minutes.
- id: rollcall
label: Roll Call
kind: action
params: []
description: Cause all SmartLink devices to report their SmartLink address. Non-destructive; does not reassign addresses.
- id: reboot
label: Reboot
kind: action
params: []
description: Reboot the BB-RS232 gateway
- id: refreshinfo
label: Refresh Info
kind: action
params: []
description: Force connected device to send updated system info to BB-RS232
- id: refreshsettings
label: Refresh Settings
kind: action
params: []
description: Force connected device to send updated settings to BB-RS232
- id: subscribe_events
label: Subscribe to Events
kind: action
params:
- name: uri
type: string
description: "Control system URI in format ctrlsys://IPADDR:PORT"
description: Subscribe to asynchronous event messages sent to a specific IP and port
- id: unsubscribe_events
label: Unsubscribe from Events
kind: action
params:
- name: uri
type: string
description: "Control system URI in format ctrlsys://IPADDR:PORT"
description: Unsubscribe from event messages
- id: event_ack
label: Acknowledge Event
kind: action
params:
- name: evtid
type: integer
description: Event ID to acknowledge
- name: subsid
type: integer
description: Subscriber ID that received the event
description: Send acknowledgement for a received event message
Feedbacks
- id: device_info
label: Device Information
kind: query
params: []
response: |
<info time="unix_timestamp">
<sernum>serial_number</sernum>
<fwver>firmware_version</fwver>
<bootcodever>bootloader_version</bootcodever>
<ipaddr>ip_address_as_32bit_decimal</ipaddr>
</info>
# For SmartLink devices (cnxxxx, cnmp):
# Also includes: <hwver>hardware_version</hwver> <sladdr>smartlink_address</sladdr>
- id: device_status
label: Device Status
kind: query
params: []
response: |
<status time="unix_timestamp">
<ntwkdevcnt>device_count</ntwkdevcnt>
<ntwkinvhash>inventory_hash</ntwkinvhash>
<ntwkpollstate>poll_state</ntwkpollstate>
<hdlcstate>0xhex_value</hdlcstate>
<tfilestate file_attributes/>
</status>
# For SmartLink devices:
# <voltage>volts</voltage> <amperage>amps</amperage> <wattage>watts</wattage>
# <pwrva>volt_amps</pwrva> <pwrfact>power_factor</pwrfact>
# <per id='1'>packet_error_rate</per> <per id='2'>secondary_link_error_rate</per>
# <remote>remote_input_level</remote> <protok>surge_protection_status</protok>
# <smp>series_mode_relay_state</smp> <secok>secondary_link_status</secok>
# <overvolt>overvoltage_status</overvolt> <undervolt>undervoltage_status</undervolt>
# <pwrok>power_ok_status</pwrok> <seqprog>sequence_in_progress</seqprog>
# <outlet id='n'>outlet_state</outlet>
- id: device_settings
label: Device Settings
kind: query
params: []
response: |
<settings time="unix_timestamp">
<adj>delay_adjustment_percent</adj>
<delay>dip_switch_delay_seconds</delay>
<totdelay>total_delay_seconds</totdelay>
<mode>remote_input_mode</mode>
<seq>sequence_mode</seq>
<alarm>alarm_mode</alarm>
<evs>extreme_voltage_shutdown_mode</evs>
<override>override_switch_position</override>
<evtsena>events_enabled</evtsena>
</settings>
- id: child_info
label: Child Device Info
kind: query
params:
- name: ndx
type: integer
description: SmartLink index number (0-based)
response: |
<child class="device_class" id="device_id" [sladdr="address"]/>
- id: family_info
label: Family / Device List
kind: query
params: []
response: |
<family>
<kids class="device_class">
<k>device_id</k>
...
</kids>
...
</family>
- id: sequence_done_event
label: Sequence Done Event
kind: event
payload: |
<seqdone>1</seqdone> <!-- 1 = done; 0 = in process -->
description: Posted when a power sequence completes or starts
- id: outlet_state_change_event
label: Outlet State Change Event
kind: event
payload: |
<outlet id="n">state</outlet> <!-- 0 = OFF; 1 = ON -->
description: Posted when any outlet bank changes state
- id: undervoltage_event
label: Under Voltage Event
kind: event
payload: |
<undervolt>state</undervolt> <!-- 0 = normal; 1 = undervoltage condition -->
description: Posted when device enters or exits undervoltage shutoff mode
- id: overvoltage_event
label: Over Voltage Event
kind: event
payload: |
<overvolt>state</overvolt> <!-- 0 = normal; 1 = overvoltage condition -->
description: Posted when device enters or exits overvoltage shutoff mode
- id: powerok_event
label: Power OK Event
kind: event
payload: |
<powerok>state</powerok> <!-- 1 = normal; 0 = abnormal -->
description: Posted when operating voltage enters or exits safe range
- id: alarm_event
label: Alarm Event
kind: event
payload: |
<alarm>state</alarm> <!-- 1 = active; 0 = no alarm -->
description: Posted when alarm input changes (latched; cleared with key on primary unit)
- id: protectok_event
label: Protection OK Event
kind: event
payload: |
<protectok>state</protectok> <!-- 1 = ok; 0 = failed -->
description: Posted when surge protection circuitry status changes
- id: reset_event
label: Reset Event
kind: event
payload: |
<reset>state</reset> <!-- 1 = reset in progress; 0 = normal -->
description: Posted when device enters or exits reset state
- id: enumerate_event
label: Enumerate Event
kind: event
payload: |
<enum phase="start|end" err="error_code"/>
description: Posted when enumeration starts or ends
- id: enumerate_required_event
label: Enumerate Required Event
kind: event
payload: |
<enumreqd sladdr="n"/>
description: Posted when a non-legitimate SmartLink address is detected
- id: rollcall_event
label: Roll Call Event
kind: event
payload: |
<roll phase="start|end" err="error_code"/>
description: Posted when roll call starts or ends
- id: object_destroy_event
label: Object Destroy Event
kind: event
payload: |
<objdestroy class="device_class" id="serial_number" sladdr="address"/>
description: Posted when a SmartLink device is removed from inventory
- id: object_create_event
label: Object Create Event
kind: event
payload: |
<objcreate class="device_class" id="serial_number" sladdr="address"/>
description: Posted when a SmartLink device is added to inventory
- id: devcnt_event
label: Device Count Event
kind: event
payload: |
<devcnt>n</devcnt>
description: Posted indicating number of devices in SmartLink chain
- id: ready_event
label: Ready Event
kind: event
payload: |
<ready class="device_class" id="serial_number" sladdr="n"/>
description: Posted when all required data has been recorded for a device
- id: fwupgdreqd_event
label: Firmware Upgrade Required Event
kind: event
payload: |
<ready fwupgdreqd="device_class" sladdr="n"/>
description: Posted when firmware update is necessary for a device
- id: hdlclink_event
label: HDLC Link Event
kind: event
payload: |
<hdlclink>status</hdlclink> <!-- 1 = up; 0 = down -->
description: Posted indicating status of HDLC link-level communication
- id: scheduled_action_event
label: Scheduled Action Fired Event
kind: event
payload: |
<schedmgr><fre><day>daysofweek</day><min>minuteofday</min><command><executed_cmd>...</executed_cmd></command></fre></schedmgr>
description: Posted when BB-RS232 executes a scheduled operation
Variables
# No settable parameters that are not discrete actions are documented.
# All device settings (delay, mode, alarm, etc.) are read-only via sendsettings query.
Events
# See Feedbacks section - events are the same message types delivered asynchronously.
# Events require a separate subscription via <eventmgr><subscribe uri="ctrlsys://IPADDR:PORT"/>
# Events repeat until acknowledged or until ~20 minutes timeout.
# acknowledgement: <command><eventmgr><ack evtid="n" subsid="m"/></eventmgr></command>
Macros
# No explicit multi-step macros are documented in the source.
Safety
confirmation_required_for: []
interlocks: []
# UNRESOLVED: no safety warnings or interlock procedures stated in source.
# Alarm input is latched and must be explicitly cleared with the key on the primary unit.
Notes
Message Envelope: All XML messages must include the XML declaration and a root <device> element with class and id attributes. The device class for BB-RS232 is bb232; identifiers are MAC addresses (no formatting). Connected SmartLink devices use their device class (e.g. cn1800, cn2400) and Device ID (serial number).
Example device classes:
| Model | Device Class |
|---|---|
| BB-RS232 | bb232 |
| CN-1800 S | cn1800 |
| CN-2400 S | cn2400 |
| CN-3600 SE | cn3600 |
| CN-15MP | cnmp15 |
| CN-20MP | cnmp20 |
IP address reporting: The <ipaddr> field in <sendinfo> response is a 32-bit decimal value (e.g. 3194548209), not a dotted-decimal string.
Event subscription: Devices must be subscribed individually. Only one IP address/port subscription is allowed per device. Events are not sent in reply to queries — they are autonomous notifications.
Acknowledgement: Commands with an optional xid attribute return an <ack xid="value"/> element.
Provenance
source_domains:
- classic.mybluebolt.com
source_urls:
- https://classic.mybluebolt.com/downloads/BB-RS232-COM-PROT-10006527-A.pdf
retrieved_at: 2026-04-30T04:41:42.766Z
last_checked_at: 2026-06-02T22:12:43.297Z
Verification Summary
verdict: verified
checked_at: 2026-06-02T22:12:43.297Z
matched_actions: 13
action_count: 13
confidence: medium
summary: "All 13 spec actions traced to source (dip-safe re-verify). (7 unresolved item(s) noted in Known Gaps.)"
Known Gaps
- "serial (RS-232) transport parameters not documented for BB-RS232 itself — the device acts as a gateway; the RS-232 side connects to a host PC or automation controller"
- "no safety warnings or interlock procedures stated in source."
- "serial (RS-232) transport parameters (baud rate, data bits, parity, stop bits) are not stated in this document — the BB-RS232 is described as an Ethernet gateway, and the RS-232 side is assumed to connect to a host/automation controller rather than being a configurable parameter"
- "HTTP web interface is for configuration only; the primary control protocol is UDP XML on port 57010"
- "no explicit firmware version compatibility range stated"
- "some event messages are marked \"For Furman Sound use only\" and not documented (schedmgr/setevent, seqchg, schedmgr/delevent, perchg, schedmgr/clearschedule, cmdconflict, fwupgd, loadfile, tfilebusy, tfilelock)"
- "scheduled action day encoding is a 7-bit bitmap in decimal; bit 0 = Thursday; this quirk may require client-side handling"
From the AI4AV catalog (https://ai4av.net) · ODbL-1.0