Summary
Planar UltraLux Series large-format LCD display (LUXxx-ERO-B-T family). External control via RS232 (binary hex commands, 8-byte Set / 4-byte Get, checksum=100h) and UDP port 57 (same command set). SNMP read-only monitoring also available. Source covers 44 RS232 command rows + UDP mirror + SNMP object table.
Transport
protocols:
- serial
- udp
serial:
baud_rate: 19200
data_bits: 8
parity: none
stop_bits: 1
flow_control: none
addressing:
port: 57
auth:
type: none
Serial config: 19200 8N1, no flow control (stated). UDP port 57 accepts identical command bytes; requires "Enable ASCII command service (UDP port 57)" checkbox in Remote Monitoring Access Control page. Straight-through RS232 cable.
Traits
traits:
- powerable
- queryable
- routable
- levelable
Actions
actions:
- id: power_off
label: Set Power Off
kind: action
command: "08 22 FE 00 00 00 00 D8"
params: []
- id: power_on
label: Set Power On
kind: action
command: "08 22 FD 00 00 00 00 D9"
params: []
- id: power_status_query
label: Get Power Status
kind: query
command: "04 21 16 C5"
params: []
- id: set_backlight_brightness
label: Set Backlight Brightness
kind: action
command: "08 22 00 00 00 00 {value} {checksum}"
params:
- name: value
type: integer
range: [1, 100]
description: Backlight brightness
- name: checksum
type: integer
description: "Byte chosen so sum of all 8 bytes mod 256 = 0 (checksum=100h). e.g. value=80 (0x50) -> 86"
- id: get_backlight_brightness
label: Get Backlight Brightness
kind: query
command: "04 21 08 D3"
params: []
- id: set_contrast
label: Set Contrast
kind: action
command: "08 22 01 00 00 00 {value} {checksum}"
params:
- name: value
type: integer
range: [0, 100]
description: "Contrast (not saved on hard power off; known bug)"
- name: checksum
type: integer
description: "Byte making 8-byte sum mod 256 = 0. e.g. value=40 (0x28) -> AD"
- id: get_contrast
label: Get Contrast
kind: query
command: "04 21 09 D2"
params: []
- id: set_sharpness
label: Set Sharpness
kind: action
command: "08 22 03 00 00 00 {value} {checksum}"
params:
- name: value
type: integer
range: [0, 8]
description: "Wire value = Sharpness setting + 4. Setting -4 -> 0x00; setting +4 -> 0x08"
- name: checksum
type: integer
description: "Byte making 8-byte sum mod 256 = 0. setting -4 (0x00) -> D3"
- id: get_sharpness
label: Get Sharpness
kind: query
command: "04 21 0A D1"
params: []
- id: set_color_temp_4200k
label: Set Color Temp 4200K
kind: action
command: "08 22 04 00 00 00 02 D0"
params: []
- id: set_color_temp_5000k
label: Set Color Temp 5000K
kind: action
command: "08 22 04 00 00 00 03 CF"
params: []
- id: set_color_temp_6500k
label: Set Color Temp 6500K
kind: action
command: "08 22 04 00 00 00 04 CE"
params: []
- id: set_color_temp_7500k
label: Set Color Temp 7500K
kind: action
command: "08 22 04 00 00 00 05 CD"
params: []
- id: set_color_temp_9300k
label: Set Color Temp 9300K
kind: action
command: "08 22 04 00 00 00 06 CC"
params: []
- id: get_color_temp
label: Get Color Temp
kind: query
command: "04 21 0B D0"
params: []
- id: set_red_gain
label: Set Red Gain
kind: action
command: "08 22 0E 00 00 00 {value} {checksum}"
params:
- name: value
type: integer
range: [0, 100]
description: Red gain (custom color temp)
- name: checksum
type: integer
description: "Byte making 8-byte sum mod 256 = 0. e.g. value=50 (0x32) -> 96"
- id: get_red_gain
label: Get Red Gain
kind: query
command: "04 21 0C CF"
params: []
- id: set_green_gain
label: Set Green Gain
kind: action
command: "08 22 0F 00 00 00 {value} {checksum}"
params:
- name: value
type: integer
range: [0, 100]
description: Green gain
- name: checksum
type: integer
description: "Byte making 8-byte sum mod 256 = 0. e.g. value=20 (0x14) -> B3"
- id: get_green_gain
label: Get Green Gain
kind: query
command: "04 21 0D CE"
params: []
- id: set_blue_gain
label: Set Blue Gain
kind: action
command: "08 22 10 00 00 00 {value} {checksum}"
params:
- name: value
type: integer
range: [0, 100]
description: Blue gain
- name: checksum
type: integer
description: "Byte making 8-byte sum mod 256 = 0. e.g. value=80 (0x50) -> 76"
- id: get_blue_gain
label: Get Blue Gain
kind: query
command: "04 21 0E CD"
params: []
- id: select_input_displayport
label: Set Input DisplayPort
kind: action
command: "08 22 02 00 00 00 00 D4"
params: []
- id: select_input_hdmi
label: Set Input HDMI
kind: action
command: "08 22 05 00 00 00 00 D1"
params: []
- id: select_input_vga
label: Set Input VGA
kind: action
command: "08 22 06 00 00 00 00 D0"
params: []
- id: get_input_status
label: Get Input Status
kind: query
command: "04 21 07 D4"
params: []
- id: set_volume
label: Set Volume
kind: action
command: "08 22 09 00 00 00 {value} {checksum}"
params:
- name: value
type: integer
range: [0, 100]
description: Speaker volume
- name: checksum
type: integer
description: "Byte making 8-byte sum mod 256 = 0. e.g. value=100 (0x64) -> 69"
- id: get_volume
label: Get Volume
kind: query
command: "04 21 0F CC"
params: []
- id: mute_on
label: Set Mute On
kind: action
command: "08 22 0A 00 00 00 01 CB"
params: []
- id: mute_off
label: Set Mute Off
kind: action
command: "08 22 0A 00 00 00 00 CC"
params: []
- id: get_mute
label: Get Mute
kind: query
command: "04 21 14 C7"
params: []
- id: set_color_space_full
label: Set Color Space Full Color
kind: action
command: "08 22 12 00 00 00 00 C4"
params: []
- id: set_color_space_srgb
label: Set Color Space sRGB
kind: action
command: "08 22 13 00 00 00 02 C1"
params: []
- id: get_color_space
label: Get Color Space
kind: query
command: "04 21 15 C6"
params: []
- id: auto_adjust
label: Do Auto Adjust
kind: action
command: "08 22 07 00 00 00 00 CF"
params: []
- id: auto_color_adjust
label: Do Auto Color Adjust
kind: action
command: "08 22 08 00 00 00 00 CE"
params: []
- id: factory_reset
label: Factory Reset
kind: action
command: "08 22 11 00 00 00 00 C5"
params: []
- id: get_blacklevel_brightness
label: Get Blacklevel Brightness
kind: query
command: "04 21 17 C4"
params: []
- id: set_blacklevel_brightness
label: Set Blacklevel Brightness
kind: action
command: "08 22 16 00 00 00 {value} {checksum}"
params:
- name: value
type: integer
range: [-350, 350]
description: "Blacklevel offset (scale differs from OSD 0-255). e.g. value=50 (0x32) -> 8E"
- name: checksum
type: integer
description: Byte making 8-byte sum mod 256 = 0
- id: get_auto_scan
label: Get Auto Scan Status
kind: query
command: "04 21 18 C3"
params: []
- id: set_auto_scan_on
label: Set Auto Scan On
kind: action
command: "08 22 17 00 00 00 01 BE"
params: []
- id: set_auto_scan_off
label: Set Auto Scan Off
kind: action
command: "08 22 17 00 00 00 00 BF"
params: []
- id: get_hdmi_full_range
label: Get HDMI Full Range
kind: query
command: "04 21 1A C1"
params: []
- id: set_hdmi_full_range_on
label: Set HDMI Full Range On
kind: action
command: "08 22 19 00 00 00 01 BC"
params: []
- id: set_hdmi_full_range_off
label: Set HDMI Full Range Off
kind: action
command: "08 22 19 00 00 00 00 BD"
params: []
Feedbacks
feedbacks:
- id: power_state
type: enum
values: [on, off, on_no_source]
description: "Get Power Status reply: 'Power: ON' / 'Power:' (off) / 'Power: OFF' (on, no source)"
- id: backlight_brightness
type: number
range: [1, 100]
- id: contrast
type: number
range: [0, 100]
- id: sharpness
type: number
range: [-4, 4]
- id: color_temp
type: enum
values: [4200K, 5000K, 6500K, 7500K, 9300K]
- id: red_gain
type: number
range: [0, 100]
- id: green_gain
type: number
range: [0, 100]
- id: blue_gain
type: number
range: [0, 100]
- id: input_source
type: enum
values: [HDMI, VGA, DisplayPort]
- id: volume
type: number
range: [0, 100]
- id: mute
type: enum
values: [on, off]
- id: color_space
type: enum
values: [full, sRGB]
- id: blacklevel_brightness
type: number
range: [-350, 350]
- id: auto_scan
type: enum
values: [on, off]
- id: hdmi_full_range
type: enum
values: [on, off, user_or_vga]
Variables
variables: []
All settable params exposed as actions above (set_*). No discrete non-action variables.
Events
events: []
Source states no SNMP traps; no unsolicited RS232/UDP push notifications documented.
Macros
macros: []
Source documents web-UI "Custom Commands" (10 user buttons) but no protocol-level multi-step macros.
Safety
confirmation_required_for: []
interlocks: []
Notes
Command framing: every Set = 8 bytes; every Get = 4 bytes. Last byte is checksum chosen so sum of all bytes mod 256 = 0 (source calls this "check sum = 100h" = 256 decimal). Example verbatim from source: Set Backlight 80 = 08 22 00 00 00 00 50 86 (0x08+0x22+0+0+0+0+0x50+0x86 = 256 = 0x100). For parameterized commands, compute checksum from chosen value.
Known bugs called out in source:
- Contrast not saved on hard power off.
- Mute not saved on hard power off.
- Get Mute may not reflect serial-changed mute state (only OSD-changed); known bug.
Get Input Status returns last searched source if none present — pair with Get Power Status to confirm active source.
Sharpness wire encoding: setting -4 -> byte 0x00; setting +4 -> byte 0x08 (offset +4). Get Sharpness returns setting+4.
SNMP monitoring (separate from RS232/UDP control): UDP/SNMP read-only, community "public", MIB file PLANAR-DISPLAY-MIB.txt, root OID 1.3.6.1.4.1.19125. Objects: plnrModel, plnrInputSelect (1=HDMI,2=DP,3=VGA), plnrInputStatus, plnrDisplayBacklight, plnrDisplayBrightness, plnrDisplayContrast, plnrDisplaySharpness (0-8), plnrDisplayColorSpace, plnrDisplayColorTemp, plnrDisplayGainRed/Green/Blue, plnrAudioVolume, plnrAudioMute, plnrPower1, plnrPower2. Integer -1 = internal/comm error.
Color Space SNMP codes differ from RS232: SNMP 0=full/2=sRGB; RS232 Get Color Space returns "Color Space = value".
Provenance
source_domains:
- planar.com
- manua.ls
source_urls:
- https://www.planar.com/media/434375/020-1207-00e_ultralux-installation-guide.pdf
- https://www.planar.com/media/440010/ultrares-x-series_rs232-user-manual.pdf
- https://www.planar.com/media/440011/ultrares-x-series_user-manual.pdf
- https://www.planar.com/media/440932/planar-ultrares-p-series-rs232-user-manual.pdf
- https://www.manua.ls/planar/ur8450-lx-ero-b-t/manual
retrieved_at: 2026-07-26T14:07:30.956Z
last_checked_at: 2026-08-05T08:37:12.534Z
Verification Summary
verdict: verified
checked_at: 2026-08-05T08:37:12.534Z
matched_actions: 44
action_count: 44
confidence: medium
summary: "All 44 spec actions match the 44 RS232 command rows in the source one-to-one, transport params verified. (3 unresolved item(s) noted in Known Gaps.)"
Known Gaps
- "exact \"LUXxx-ERO-B-T\" model string not in current Planar catalog; mapped to UltraLux Series per source title. Firmware version not stated. Voltage/power specs not in source."
- "source contains no safety warnings, interlock procedures, or power-on sequencing requirements."
- "exact LUXxx-ERO-B-T model identifier not present in Planar catalog; source titled \"UltraLux\" — LUX70-ERO-B-T etc. likely members. Firmware version range not stated. Power/voltage specs not in source. SNMP port (161) not explicitly stated in source. Whether UDP port 57 also returns query responses over UDP not explicitly stated (source only shows send side)."
From the AI4AV catalog (https://ai4av.net) · ODbL-1.0