Summary
RGB LED light alert bar with full-duplex ASCII serial control over RS-232 (3.5mm TRS), USB virtual com port, Telnet/TCP (port 23), and UDP (port 31936). Supports up to 9 user color presets (R/G/B levels 0–100) with looping via Time On / Next Preset parameters, P1 logic input contact-closure recall, and a password-protected web configuration page.
Transport
protocols:
- serial
- tcp
- udp
serial:
baud_rate: 9600 # factory default; configurable 1200-230.4K via R5= command
data_bits: 8
parity: none
stop_bits: 1
flow_control: null # UNRESOLVED: not stated in source
# Note: USB virtual com port fixed at 115.2K baud, 8N1 (same protocol, separate transport).
addressing:
port: 23 # Telnet/TCP default
udp:
receive_port: 31936
feedback_port: 31935
# UDP command format prefixes device number: "{device}>cmd". Status responses sent
# to directed broadcast IP at port 31935.
auth:
type: none # inferred: no login procedure for ASCII serial/TCP/UDP control path
# Note: web page (Settings) is password protected; password derived from last 3
# bytes of MAC (e.g. MAC 00-14-C8-20-01-BA -> "2001BA"). Separate from control protocol auth.
Traits
- levelable # R/G/B output levels 0-100
- queryable # numerous query commands return state (IY, NP=, MC, MN, HR, ID, IB)
Actions
# Command framing: ASCII ">" prefix + 2-char command + optional params + CR ($0D).
# UDP framing: "{device}>cmd" + CR. Responses: "<cmd ..." + CR/LF.
# Parameterized actions shown with variable part in braces.
# --- Output level control ---
- id: set_red_level
label: Set Red Level
kind: action
command: "SR={level}"
params:
- name: level
type: integer
description: Red level 0-100
- id: set_green_level
label: Set Green Level
kind: action
command: "SG={level}"
params:
- name: level
type: integer
description: Green level 0-100
- id: set_blue_level
label: Set Blue Level
kind: action
command: "SB={level}"
params:
- name: level
type: integer
description: Blue level 0-100
# --- Presets ---
- id: save_preset
label: Save Preset
kind: action
command: "S{n}"
params:
- name: n
type: integer
description: Preset number 1-9
- id: recall_preset
label: Recall Preset
kind: action
command: "P{n}"
params:
- name: n
type: integer
description: Preset number 0-9; 0 sets output off
- id: set_preset_on_time
label: Set Preset On Time
kind: action
command: "I{n}={x}"
params:
- name: n
type: integer
description: Preset number 0-9
- name: x
type: integer
description: "0 = static; 1-240 = on time in 1/10s increments"
- id: clear_all_on_times
label: Clear All On Times
kind: action
command: "I0"
params: []
- id: set_next_preset
label: Set Next Preset
kind: action
command: "N{n}"
params:
- name: n
type: integer
description: Preset number to transition to after current preset's Time On
- id: set_preset_name
label: Set Preset Name
kind: action
command: "NP={n},{x}"
params:
- name: n
type: integer
description: Preset number 0-9
- name: x
type: string
description: Preset name, up to 10 alphanumeric characters
# --- Network setup ---
- id: set_ip_address
label: Set IP Address
kind: action
command: "IP={addr}"
params:
- name: addr
type: string
description: IP address xxx.xxx.xxx.xxx
- id: set_subnet_mask
label: Set Subnet Mask
kind: action
command: "IM={mask}"
params:
- name: mask
type: string
description: Subnet mask xxx.xxx.xxx.xxx
- id: set_default_gateway
label: Set Default Gateway
kind: action
command: "IG={gw}"
params:
- name: gw
type: string
description: Gateway address xxx.xxx.xxx.xxx
- id: set_ip_mode
label: Set IP Mode
kind: action
command: "IY={mode}"
params:
- name: mode
type: integer
description: "1 = Static, 2 = DHCP (default)"
- id: set_tcp_port
label: Set TCP Port
kind: action
command: "IX={port}"
params:
- name: port
type: integer
description: Receive port for Telnet/TCP; default 23
# --- Serial communication config ---
- id: enable_echo
label: Enable Echo
kind: action
command: "EE={mode}"
params:
- name: mode
type: integer
description: "0=Disable, 1=RS-232, 2=TCP, 3=RS-232+TCP (default), 4=USB, 5=RS-232+USB, 6=TCP+USB, 7=RS-232+USB+TCP"
- id: set_baud_rate
label: Set Baud Rate
kind: action
command: "R5={rate}"
params:
- name: rate
type: integer
description: "0=1200, 1=2400, 2=4800, 3=9600 (default), 4=19.2K, 5=38.4K, 6=115.2K, 7=230.4K"
# --- Unit ---
- id: set_unit_name
label: Set Unit Name
kind: action
command: "NM={name}"
params:
- name: name
type: string
description: LA-B18 name, up to 20 characters
# --- Queries (kind: query) ---
- id: query_ip_mode
label: Query IP Mode
kind: query
command: "IY"
params: []
- id: query_all_preset_names
label: Query All Preset Names
kind: query
command: "NP"
params: []
- id: query_preset_name
label: Query Preset Name
kind: query
command: "NP={n}"
params:
- name: n
type: integer
description: Preset number 0-9
- id: query_mac_address
label: Query MAC Address
kind: query
command: "MC"
params: []
- id: query_model_name
label: Query Model Name
kind: query
command: "MN"
params: []
- id: query_hardware_version
label: Query Hardware Version
kind: query
command: "HR"
params: []
- id: query_id
label: Query ID (Model + Firmware)
kind: query
command: "ID"
params: []
- id: query_bootloader
label: Query Bootloader Version
kind: query
command: "IB"
params: []
- id: help
label: Help
kind: query
command: "HE"
params: []
# --- System / maintenance ---
- id: reload_factory_defaults
label: Reload Factory Defaults
kind: action
command: "Z!"
params: []
# Reconfigures unit to factory defaults. IP will not revert to default until Z] or power cycle.
- id: reload_factory_defaults_retain_web_password
label: Reload Factory Defaults (Retain Web Password)
kind: action
command: "Z!2"
params: []
- id: reboot
label: Reboot
kind: action
command: "Z]"
params: []
Feedbacks
- id: command_echo
type: string
description: "Device echoes received command, e.g. command '>P6' → response '<P6'"
- id: ip_mode_state
type: enum
values: [Static, DHCP]
description: "Response to IY query, e.g. '<IY DHCP'"
- id: preset_name_response
type: string
description: "Response to NP= set/query, e.g. '<NP 2 Mauve'"
- id: preset_names_all
type: string
description: "Response to NP query - all preset names as comma-separated sequence"
- id: mac_address
type: string
description: "Response to MC query"
- id: model_name
type: string
description: "Response to MN query"
- id: hardware_version
type: string
description: "Response to HR query"
- id: id_string
type: string
description: "Response to ID query (product model + application firmware version)"
- id: bootloader_version
type: string
description: "Response to IB query"
- id: help_text
type: string
description: "Response to HE query - list of serial commands"
Variables
# Preset structure: each preset n (0-9) holds red/green/blue levels (0-100),
# Time On (0 or 1-240 in 1/10s), Next Preset (preset number), and Name (≤10 chars).
# Set/queried via the Save/Recall/Set commands above rather than a single variable slot.
Events
# Status responses are unsolicited after control commands or user actions, delayed ~125ms,
# sending most recent status. May be enabled/disabled per connection type (EE= command).
Macros
# Looped presets: chain of ≥2 presets defined via Set Preset On Time + Set Next Preset.
# Recalling any preset in the loop initiates it; selecting Preset 0 or a non-loop preset stops it.
# Example red/blue flash loop documented in source (Preset 1: R50/G0/B0/T5/Next=2;
# Preset 2: R0/G0/B50/T5/Next=1).
Safety
confirmation_required_for: []
interlocks: []
# UNRESOLVED: source contains no explicit safety warnings, interlock procedures,
# or power-on sequencing requirements. Contact-closure P1 logic input and DIP-switch
# programming sequences described but not marked as safety interlocks.
Notes
- RS-232 3.5mm TRS pinout: Tip=TX, Ring=RX, Sleeve=Common. Accepts 0–5 VDC non-standard swing (IR port compatibility).
- Status responses intentionally delayed ~125ms after control commands; can be enabled/disabled per connection type.
- Web page password: default derived from last 3 bytes of MAC, entered uppercase without punctuation (e.g. MAC
00-14-C8-20-01-BA→2001BA). Up to 20 chars after change. "Preset Ctl while logged out" option allows password-free preset recall while protecting settings. - UDP device addressing: command prefix
{device}>cmd. Reserved device numbers (multiples of 256) broadcast to the next 255 units; device 4095 = all units. Device 0 = demo mode (steps presets 1–7, 3s dwell). Set via SW1 (bits 1–8) + SW2 (bits 1–4). - P1 Logic Input: 3 contact inputs + 12 VDC; modes 0 (unused), 1 (Trigger, presets 1–9 momentary/latching), 2 (Static, presets 0–7 latching), 3 (Static+1, presets 1–8 latching). Shorting pin to ground = logic high.
- USB virtual com port fixed at 115.2K baud, 8N1 (separate from configurable RS-232 port).
- Help command
HEreturns full command list from device.
Provenance
source_domains:
- bucketeer-3c238a6b-adc2-4051-aeb1-2d2ab9e1e1b4.s3.amazonaws.com
source_urls:
- https://bucketeer-3c238a6b-adc2-4051-aeb1-2d2ab9e1e1b4.s3.amazonaws.com/documents/LA-B18_Product_Manual_122025.pdf
retrieved_at: 2026-06-30T00:30:14.555Z
last_checked_at: 2026-06-30T06:58:28.820Z
Verification Summary
verdict: verified
checked_at: 2026-06-30T06:58:28.820Z
matched_actions: 29
action_count: 29
confidence: medium
summary: "All 29 spec actions matched exactly to wire-level command tokens in the source; transport parameters fully verified; bidirectional coverage complete. (7 unresolved item(s) noted in Known Gaps.)"
Known Gaps
- "firmware version compatibility not stated; flow_control not stated; web page HTTP command API not documented (only serial/UDP ASCII strings)."
- "not stated in source"
- "source contains no explicit safety warnings, interlock procedures,"
- "firmware version compatibility not stated."
- "serial flow_control not stated."
- "HTTP/web REST API command set not documented — only ASCII serial/UDP strings."
- "response time guarantees beyond ~125ms delay note."
From the AI4AV catalog (https://ai4av.net) · ODbL-1.0