Summary
Serial (RS-232) ASCII command protocol for controlling Christie E Series projectors (e.g. DWU670-E). Messages are wrapped in parentheses, use 3-letter function codes with optional 4-letter subcodes, and support Set, Request, and Reply message types. The protocol also exposes the same commands over Ethernet but the documented message format is identical.
Transport
protocols:
- serial
serial:
baud_rate: 115200 # default; selectable via BDR command (2400/4800/9600/14400/19200/38400/57600/115200)
data_bits: 8
parity: none
stop_bits: 1
flow_control: none
auth:
type: none # inferred: no auth procedure for normal commands. Service-mode commands require UID login (see Notes).
Traits
- powerable # inferred from PWR on/off commands
- routable # inferred from SIN input switching commands
- queryable # inferred from many (Code?) request commands
- levelable # inferred from BRT, CON, CLR and other 0-100 commands
Actions
# === Size & Position ===
- id: szp
label: Size Presets
kind: action
command: "(SZP{value})"
params:
- name: value
type: integer
description: "0=Auto, 1=Native, 2=4:3, 3=LetterBox, 4=Full Size, 5=Full Width, 6=Full Height"
- id: ovs
label: Overscan
kind: action
command: "(OVS{value})"
params:
- name: value
type: integer
description: "0=Off, 1=Zoom, 2=Crop"
- id: pxp
label: Pixel Phase
kind: action
command: "(PXP{value})"
params:
- name: value
type: integer
description: "0-100, default 50"
- id: pxt
label: Pixel Track
kind: action
command: "(PXT{value})"
params:
- name: value
type: integer
description: "0-100, default 50"
- id: hor
label: Horizontal Position
kind: action
command: "(HOR{value})"
params:
- name: value
type: integer
description: "0-100, default 50"
- id: vrt
label: Vertical Position
kind: action
command: "(VRT{value})"
params:
- name: value
type: integer
description: "0-100, default 50"
- id: wrp_hkst
label: Horizontal Keystone
kind: action
command: "(WRP+HKST{value})"
params:
- name: value
type: integer
description: "0-100, default 50"
- id: wrp_vkst
label: Vertical Keystone
kind: action
command: "(WRP+VKST{value})"
params:
- name: value
type: integer
description: "0-100, default 50"
- id: hpc
label: Horizontal Pincushion
kind: action
command: "(HPC{value})"
params:
- name: value
type: integer
description: "0-100, default 50"
- id: vpc
label: Vertical Pincushion
kind: action
command: "(VPC{value})"
params:
- name: value
type: integer
description: "0-100, default 50"
- id: siz
label: Digital Zoom
kind: action
command: "(SIZ{value})"
params:
- name: value
type: integer
description: "0-100, default 100"
- id: dsh
label: Digital Horizontal Shift
kind: action
command: "(DSH{value})"
params:
- name: value
type: integer
description: "0-100, default 50; requires Digital Zoom to be applied first"
- id: dsv
label: Digital Vertical Shift
kind: action
command: "(DSV{value})"
params:
- name: value
type: integer
description: "0-100, default 50; requires Digital Zoom to be applied first"
- id: aim
label: Auto Image
kind: action
command: "(AIM1)"
# === Image Settings ===
- id: brt
label: Brightness
kind: action
command: "(BRT{value})"
params:
- name: value
type: integer
description: "0-100, default 50"
- id: con
label: Contrast
kind: action
command: "(CON{value})"
params:
- name: value
type: integer
description: "0-100, default 50"
- id: csp
label: Color Space
kind: action
command: "(CSP{value})"
params:
- name: value
type: integer
description: "0=RGB, 1=REC709, 2=REC601, 3=RGB Video, 4=Auto"
- id: dtl
label: Detail (Sharpness)
kind: action
command: "(DTL{value})"
params:
- name: value
type: integer
description: "0=Maximum, 1=High, 2=Normal, 3=Low, 4=Minimum"
- id: clr
label: Color (Saturation)
kind: action
command: "(CLR{value})"
params:
- name: value
type: integer
description: "0-100, default 50"
- id: tnt
label: Tint
kind: action
command: "(TNT{value})"
params:
- name: value
type: integer
description: "0-100, default 50; analog NTSC sources only"
- id: nrd
label: Noise Reduction
kind: action
command: "(NRD{value})"
params:
- name: value
type: integer
description: "0-100, default 0"
- id: ftc
label: Flesh Tone Correction
kind: action
command: "(FTC{value})"
params:
- name: value
type: integer
description: "0-100, default 0"
- id: vbl
label: Video Black Level
kind: action
command: "(VBL{value})"
params:
- name: value
type: integer
description: "0=IRE off, 1=IRE on"
- id: fmd
label: Detect Film
kind: action
command: "(FMD{value})"
params:
- name: value
type: integer
description: "0=Off, 1=On"
- id: clc
label: Closed Captions
kind: action
command: "(CLC{value})"
params:
- name: value
type: integer
description: "0=Off, 1=CC1, 2=CC2"
- id: rog
label: Red Gain
kind: action
command: "(ROG{value})"
params:
- name: value
type: integer
description: "0-100, default 50"
- id: gog
label: Green Gain
kind: action
command: "(GOG{value})"
params:
- name: value
type: integer
description: "0-100, default 50"
- id: bog
label: Blue Gain
kind: action
command: "(BOG{value})"
params:
- name: value
type: integer
description: "0-100, default 50"
- id: roo
label: Red Offset
kind: action
command: "(ROO{value})"
params:
- name: value
type: integer
description: "0-100, default 50"
- id: goo
label: Green Offset
kind: action
command: "(GOO{value})"
params:
- name: value
type: integer
description: "0-100, default 50"
- id: boo
label: Blue Offset
kind: action
command: "(BOO{value})"
params:
- name: value
type: integer
description: "0-100, default 50"
- id: syt
label: Sync Threshold (SOG)
kind: action
command: "(SYT{value})"
params:
- name: value
type: integer
description: "0-100, default 50"
- id: gor
label: Reset RGB Gain/Offset
kind: action
command: "(GOR1)"
- id: pst
label: Picture Setting
kind: action
command: "(PST{value})"
params:
- name: value
type: integer
description: "0=Presentation, 1=Video, 2=Bright, 3=Whiteboard, 4=Blackboard, 5=Beige Wall, 6=User"
- id: pst_user
label: Store Picture Settings to User Mode
kind: action
command: "(PST+USER1)"
- id: dim
label: DynamicBlack
kind: action
command: "(DIM{value})"
params:
- name: value
type: integer
description: "0=Off, 1=On"
- id: bgc
label: Gamma Curve
kind: action
command: "(BGC{value})"
params:
- name: value
type: integer
description: "0=Video, 1=Film, 2=Bright, 3=CRT"
- id: bcl
label: BrilliantColor
kind: action
command: "(BCL{value})"
params:
- name: value
type: integer
description: "0=Normal Look, 1=Bright Look"
- id: wpk
label: White Peaking
kind: action
command: "(WPK{value})"
params:
- name: value
type: integer
description: "amount of white processing through data path"
- id: cci
label: Color Temperature
kind: action
command: "(CCI{value})"
params:
- name: value
type: integer
description: "0=Warmest, 1=Warm, 2=Cool, 3=Bright"
- id: edg
label: Edge Enhancement
kind: action
command: "(EDG{value})"
params:
- name: value
type: integer
description: "0=Off, 1=Normal, 2=Maximum"
- id: cws
label: Color Wheel Speed
kind: action
command: "(CWS{value})"
params:
- name: value
type: integer
description: "0=2x setting, 1=3x setting"
# === Configuration ===
- id: loc_lang
label: Language
kind: action
command: "(LOC+LANG{value})"
params:
- name: value
type: integer
description: "0=English, 1=Chinese, 2=French, 3=German, 4=Italian, 5=Japanese, 6=Korean, 7=Russian, 8=Spanish"
- id: fcs
label: Focus
kind: action
command: "(FCS{modifier})"
params:
- name: modifier
type: string
description: "n=increase by 1, p=decrease by 1, or absolute value"
- id: zom
label: Zoom
kind: action
command: "(ZOM{modifier})"
params:
- name: modifier
type: string
description: "n=increase by 1, p=decrease by 1, or absolute value"
- id: lvo
label: Lens Vertical Shift
kind: action
command: "(LVO{modifier})"
params:
- name: modifier
type: string
description: "n=increase by 1, p=decrease by 1, or absolute value"
- id: lho
label: Lens Horizontal Shift
kind: action
command: "(LHO{modifier})"
params:
- name: modifier
type: string
description: "n=increase by 1, p=decrease by 1, or absolute value"
- id: lcb_lock
label: Lock Lens Motors
kind: action
command: "(LCB+LOCK{value})"
params:
- name: value
type: integer
description: "0=Allow, 1=Locked"
- id: lcb_home
label: Lens Center (Calibrate & Home)
kind: action
command: "(LCB+HOME1)"
- id: cel
label: Ceiling Mount
kind: action
command: "(CEL{value})"
params:
- name: value
type: integer
description: "0=Off, 1=On, 2=Auto (G-sensor)"
- id: sor
label: Rear Projection
kind: action
command: "(SOR{value})"
params:
- name: value
type: integer
description: "0=Off, 1=On"
- id: msh
label: Menu Shift Horizontal
kind: action
command: "(MSH{value})"
params:
- name: value
type: integer
description: "0-100, default 0"
- id: msv
label: Menu Shift Vertical
kind: action
command: "(MSV{value})"
params:
- name: value
type: integer
description: "0-100, default 0"
- id: mbe_user
label: Show Messages (Message Box Enable)
kind: action
command: "(MBE+USER{value})"
params:
- name: value
type: integer
description: "0=Off, 1=On"
- id: ost
label: Menu Transparency
kind: action
command: "(OST{value})"
params:
- name: value
type: integer
description: "0-90, default 0"
- id: sps_slct
label: Splash Screen
kind: action
command: "(SPS+SLCT{value})"
params:
- name: value
type: integer
description: "0=Factory Logo, 1=Blue, 2=Black, 3=White"
- id: piv
label: PIN Protect
kind: action
command: '(PIV"XXXXX")'
params:
- name: XXXXX
type: string
description: "5-digit PIN; toggles PIN protect when correct"
- id: pcg
label: Change PIN
kind: action
command: '(PCG"OOOOO,NNNNN")'
params:
- name: OOOOO
type: string
description: "5-digit old password"
- name: NNNNN
type: string
description: "5-digit new password"
- id: pwr_stbm
label: Standby Mode
kind: action
command: "(PWR+STBM{value})"
params:
- name: value
type: integer
description: "0=1W Mode, 1=Communication"
- id: apw
label: Auto Power On
kind: action
command: "(APW{value})"
params:
- name: value
type: integer
description: "0=Off, 1=On"
- id: ash
label: Auto Shutdown
kind: action
command: "(ASH{value})"
params:
- name: value
type: integer
description: "0=Off/Never, 1=5min, 2=10min, 3=15min, 4=20min, 5=25min, 6=30min"
- id: slp
label: Sleep Timer
kind: action
command: "(SLP{value})"
params:
- name: value
type: integer
description: "0=Off, 1=2 Hrs, 2=4 Hrs, 3=6 Hrs"
- id: hat
label: High Altitude
kind: action
command: "(HAT{value})"
params:
- name: value
type: integer
description: "0=Off, 1=On"
- id: net_dhcp
label: Network DHCP
kind: action
command: "(NET+DHCP{value})"
params:
- name: value
type: integer
description: "0=Off, 1=On"
- id: net_eth0
label: Network IP Address
kind: action
command: '(NET+ETH0"X.X.X.X")'
params:
- name: ip
type: string
description: "IP address, e.g. 192.168.000.001"
- id: net_sub0
label: Network Subnet Mask
kind: action
command: '(NET+SUB0"X.X.X.X")'
- id: net_gate
label: Network Default Gateway
kind: action
command: '(NET+GATE"X.X.X.X")'
- id: net_host
label: Network Projector Name
kind: action
command: '(NET+HOST"name")'
- id: net_mac0
label: Network MAC Address
kind: action
command: '(NET+MAC0"XX:XX:XX:XX:XX:XX")'
- id: net_show
label: Network Show Messages
kind: action
command: "(NET+SHOW{value})"
params:
- name: value
type: integer
description: "0=Off, 1=On"
- id: net_rstr
label: Network Restart
kind: action
command: "(NET+RSTR1)"
- id: net_rset
label: Network Factory Reset
kind: action
command: "(NET+RSET)"
- id: bdr
label: Serial Port Baud Rate
kind: action
command: "(BDR{value})"
params:
- name: value
type: integer
description: "0=2400, 1=4800, 2=9600, 3=14400, 4=19200, 5=38400, 6=57600, 7=115200"
- id: sec
label: Serial Port Echo
kind: action
command: "(SEC{value})"
params:
- name: value
type: integer
description: "0=Off, 1=On"
- id: vtt
label: 12V Trigger
kind: action
command: "(VTT{value})"
params:
- name: value
type: integer
description: "0=Off, 1=On"
- id: hks
label: Hot-Key Settings
kind: action
command: "(HKS{value})"
params:
- name: value
type: integer
description: "0=Blank Screen, 1=Aspect Ratio, 2=Freeze Screen, 3=Projector Info, 4=Overscan, 5=Closed Captions"
# === Lamp ===
- id: lpm
label: Lamp Power
kind: action
command: "(LPM{value})"
params:
- name: value
type: integer
description: "0-10 (280W, 285W, 290W, 295W, 300W, 305W, 310W, 315W, 320W, 325W, 330W)"
- id: lop
label: Current Lamp
kind: action
command: "(LOP{value})"
params:
- name: value
type: integer
description: "1=Only Lamp 1, 2=Only Lamp 2, 3=Both Lamps"
- id: wsp
label: Whisper Mode
kind: action
command: "(WSP{value})"
params:
- name: value
type: integer
description: "0=Off, 1=Lamp1, 2=Lamp2, 3=Auto"
- id: lsf
label: Lamp Auto Switch Mode
kind: action
command: "(LSF{value})"
params:
- name: value
type: integer
description: "0=Switch on lamp fail only, 1=Switch every power on, 2=Switch after N hours"
- id: lsf_time
label: Lamp Auto Switch Hours
kind: action
command: "(LSF+TIME{hours})"
params:
- name: hours
type: integer
description: "Number of hours before lamp auto-switch"
- id: lif_lp1h
label: Get Lamp 1 Hours
kind: query
command: "(LIF+LP1H?)"
- id: lif_lp2h
label: Get Lamp 2 Hours
kind: query
command: "(LIF+LP2H?)"
- id: lif_lpth
label: Get Total Lamp Hours
kind: query
command: "(LIF+LPTH?)"
- id: lif_lp1r
label: Get Lamp 1 Reset Times
kind: query
command: "(LIF+LP1R?)"
- id: lif_lp2r
label: Get Lamp 2 Reset Times
kind: query
command: "(LIF+LP2R?)"
- id: lpl
label: Lamp Life Warning
kind: action
command: "(LPL{hours})"
params:
- name: hours
type: integer
description: "Number of hours at which to warn; 0=feature off (default)"
- id: lpc_lmp1
label: Reset Lamp 1 Hours
kind: action
command: "(LPC+LMP11)"
- id: lpc_lmp2
label: Reset Lamp 2 Hours
kind: action
command: "(LPC+LMP21)"
- id: lpc_both
label: Reset Both Lamp Hours
kind: action
command: "(LPC+BOTH1)"
# === Input Switching & PIP ===
- id: sin
label: Select Source (Main, by index)
kind: action
command: "(SIN{value})"
params:
- name: value
type: integer
description: "0=VGA1, 1=VGA2, 2=RGBHV (5-wire BNC), 3=HDMI 1, 4=HDMI 2, 5=Component, 6=S-Video, 7=Composite"
- id: sin_main
label: Set Main Source by name
kind: action
command: "(SIN+MAIN{value})"
params:
- name: value
type: integer
description: "input number for main image"
- id: sin_piip
label: Set PIP Source
kind: action
command: "(SIN+PIIP{value})"
params:
- name: value
type: integer
description: "input number for PIP image"
- id: pip
label: PIP/PBP Enable
kind: action
command: "(PIP{value})"
params:
- name: value
type: integer
description: "0=Disable, 1=Enable"
- id: pps
label: PIP/PBP Swap
kind: action
command: "(PPS1)"
- id: phs
label: PIP/PBP Size
kind: action
command: "(PHS{value})"
params:
- name: value
type: integer
description: "0=Small, 1=Medium, 2=Large"
- id: ppp
label: PIP/PBP Layout
kind: action
command: "(PPP{value})"
params:
- name: value
type: integer
description: "0=POP Bigger Left, 1=Over-Under Bigger Upper, 2=POP Bigger Right, 3=Over-Under Bigger Lower, 4=PIP-Bottom Right, 5=PIP-Bottom Left, 6=PIP-Top Left, 7=PIP-Top Right"
- id: tmg
label: Timing Detect Mode
kind: action
command: "(TMG{value})"
params:
- name: value
type: integer
description: "0=Normal, 1=Wide"
- id: mif_acts
label: Get Main Active Source
kind: query
command: "(MIF+ACTS?)"
- id: mif_sgft
label: Get Main Signal Format
kind: query
command: "(MIF+SGFT?)"
- id: mif_aprt
label: Get Main Aspect Ratio
kind: query
command: "(MIF+APRT?)"
- id: mif_resl
label: Get Main Resolution
kind: query
command: "(MIF+RESL?)"
- id: mif_vref
label: Get Main Vert Refresh
kind: query
command: "(MIF+VREF?)"
- id: mif_href
label: Get Main Horz Refresh
kind: query
command: "(MIF+HREF?)"
- id: mif_pixc
label: Get Main Pixel Clock
kind: query
command: "(MIF+PIXC?)"
- id: mif_sync
label: Get Main Sync Type
kind: query
command: "(MIF+SYNC?)"
- id: mif_clsp
label: Get Main Color Space
kind: query
command: "(MIF+CLSP?)"
- id: sif_acts
label: Get PIP/PBP Active Source
kind: query
command: "(SIF+ACTS?)"
- id: sif_sgft
label: Get PIP/PBP Signal Format
kind: query
command: "(SIF+SGFT?)"
- id: sif_aprt
label: Get PIP/PBP Aspect Ratio
kind: query
command: "(SIF+APRT?)"
- id: sif_resl
label: Get PIP/PBP Resolution
kind: query
command: "(SIF+RESL?)"
- id: sif_vref
label: Get PIP/PBP Vert Refresh
kind: query
command: "(SIF+VREF?)"
- id: sif_href
label: Get PIP/PBP Horz Refresh
kind: query
command: "(SIF+HREF?)"
- id: sif_pixc
label: Get PIP/PBP Pixel Clock
kind: query
command: "(SIF+PIXC?)"
- id: sif_sync
label: Get PIP/PBP Sync Type
kind: query
command: "(SIF+SYNC?)"
- id: sif_clsp
label: Get PIP/PBP Color Space
kind: query
command: "(SIF+CLSP?)"
- id: esh
label: Main Source Hot-Key Enable
kind: action
command: "(ESH{value})"
params:
- name: value
type: integer
description: "0=On, 1=Off"
- id: mhk_vga1
label: Hot-Key for VGA1
kind: action
command: "(MHK+VGA1{key})"
params:
- name: key
type: integer
description: "number-key digit to assign"
- id: mhk_vga2
label: Hot-Key for VGA2
kind: action
command: "(MHK+VGA2{key})"
params:
- name: key
type: integer
description: "number-key digit to assign"
- id: mhk_bnc1
label: Hot-Key for BNC
kind: action
command: "(MHK+BNC1{key})"
params:
- name: key
type: integer
description: "number-key digit to assign"
- id: mhk_hdm1
label: Hot-Key for HDMI1
kind: action
command: "(MHK+HDM1{key})"
params:
- name: key
type: integer
description: "number-key digit to assign"
- id: mhk_hdm2
label: Hot-Key for HDMI2
kind: action
command: "(MHK+HDM2{key})"
params:
- name: key
type: integer
description: "number-key digit to assign"
- id: mhk_con1
label: Hot-Key for Component
kind: action
command: "(MHK+CON1{key})"
params:
- name: key
type: integer
description: "number-key digit to assign"
- id: mhk_svdo
label: Hot-Key for S-Video
kind: action
command: "(MHK+SVDO{key})"
params:
- name: key
type: integer
description: "number-key digit to assign"
- id: mhk_cops
label: Hot-Key for Composite
kind: action
command: "(MHK+COPS{key})"
params:
- name: key
type: integer
description: "number-key digit to assign"
- id: sks
label: Source Key Function
kind: action
command: "(SKS{value})"
params:
- name: value
type: integer
description: "0=Change source, 1=List all sources, 2=Change source with Auto"
# === Miscellaneous ===
- id: itp
label: Test Pattern
kind: action
command: "(ITP{value})"
params:
- name: value
type: integer
description: "0=Off, 1=Grid, 2=White, 3=Black, 4=Checkerboard, 5=Color bars, 6=Red (Service), 7=Green (Service), 8=Blue (Service), 9=Yellow (Service), 10=Magenta (Service), 11=Cyan (Service)"
- id: sst
label: Projector Status
kind: query
command: "(SST?)"
# Returns a series of (SST!NNN "value" "label") replies, index 000..022 (model, serial, native res, main input, main signal format, main pixel, main sync, main h-refresh, main v-refresh, PIP input, PIP signal format, PIP pixel, PIP sync, PIP h-refresh, PIP v-refresh, lamp power, current lamp, lamp1 hours, lamp2 hours, standby mode, lens lock, IP, DHCP)
# === Service ===
- id: cwi_spx2
label: Color Wheel Index 2x (Service)
kind: action
command: "(CWI+SPX2{index})"
params:
- name: index
type: integer
description: "service mode only"
- id: cwi_spx3
label: Color Wheel Index 3x (Service)
kind: action
command: "(CWI+SPX3{index})"
params:
- name: index
type: integer
description: "service mode only"
- id: pif_mdln
label: Get Model Name (Service)
kind: query
command: "(PIF+MDLN?)"
- id: pif_snum
label: Get Serial Number (Service)
kind: query
command: "(PIF+SNUM?)"
- id: pif_ners
label: Get Native Resolution (Service)
kind: query
command: "(PIF+NERS?)"
- id: pif_fwvs
label: Get Firmware Version (Service)
kind: query
command: "(PIF+FWVS?)"
- id: pif_cfvs
label: Get Configuration Version (Service)
kind: query
command: "(PIF+CFVS?)"
- id: pif_bcvs
label: Get Boot Code Version (Service)
kind: query
command: "(PIF+BCVS?)"
- id: def
label: Factory Defaults (Service)
kind: action
command: "(DEF 111)"
# requires service mode login
- id: uid
label: Enter Service Code
kind: action
command: '(UID"username,password")'
params:
- name: username
type: string
description: "service username"
- name: password
type: string
description: "service password"
# Service mode auto-disables on power off
# === Functions used only by serial ===
- id: siv
label: Get Serial Command Version
kind: query
command: "(SIV?)"
- id: lce
label: Get Last Serial Command Error
kind: query
command: "(LCE?)"
- id: lse
label: Get Last System Error
kind: query
command: "(LSE?)"
# Returns: 1=lamp did not strike after 5 attempts, 3=lamp went out unexpectedly, 4=fan failure, 5=over temperature
- id: pwr
label: Power On/Off
kind: action
command: "(PWR{value})"
params:
- name: value
type: integer
description: "0=Off (Standby), 1=On (Lamps On)"
- id: sns_src0
label: Rename Source VGA1
kind: action
command: '(SNS+SRC0"name")'
params:
- name: name
type: string
description: "new user-defined source name"
- id: sns_src1
label: Rename Source VGA2
kind: action
command: '(SNS+SRC1"name")'
params:
- name: name
type: string
description: "new user-defined source name"
- id: sns_src2
label: Rename Source BNC
kind: action
command: '(SNS+SRC2"name")'
params:
- name: name
type: string
description: "new user-defined source name"
- id: sns_src3
label: Rename Source HDMI1
kind: action
command: '(SNS+SRC3"name")'
params:
- name: name
type: string
description: "new user-defined source name"
- id: sns_src4
label: Rename Source HDMI2
kind: action
command: '(SNS+SRC4"name")'
params:
- name: name
type: string
description: "new user-defined source name"
- id: sns_src5
label: Rename Source Component
kind: action
command: '(SNS+SRC5"name")'
params:
- name: name
type: string
description: "new user-defined source name"
- id: sns_src6
label: Rename Source S-Video
kind: action
command: '(SNS+SRC6"name")'
params:
- name: name
type: string
description: "new user-defined source name"
- id: sns_src7
label: Rename Source Video (Composite)
kind: action
command: '(SNS+SRC7"name")'
params:
- name: name
type: string
description: "new user-defined source name"
- id: key
label: Key-Code Entry (IR emulation)
kind: action
command: "(KEY{keycode})"
params:
- name: keycode
type: integer
description: "decimal keycode (0=Power, 19=Menu, 20=Exit, 38=Up, 39=Left, 40=Enter, 41=Right, 42=Down, 48=Input, see Appendix 2)"
- id: shu
label: Shutter
kind: action
command: "(SHU{value})"
params:
- name: value
type: integer
description: "0=Open (shutter off), 1=Closed (shutter on, black screen)"
- id: osd
label: OSD Show/Hide
kind: action
command: "(OSD{value})"
params:
- name: value
type: integer
description: "0=Hide, 1=Show"
Feedbacks
# Replies mirror the request form: (Code+Subcode!value) or (Code Data) for set confirms.
# Example full SST status stream (000..022) is documented in the source. Single-status
# replies are described per-action above.
- id: szp_reply
type: integer
notes: "(SZP!value) - current size preset (0-6)"
- id: pwr_state
type: enum
values: [on, standby]
notes: "inferred from PWR command semantics; source uses (PWR1)/(PWR0) only"
- id: sst_status
type: object
notes: "SST? returns ordered (SST!NNN \"value\" \"label\") rows 000-022 (model, serial, native res, main input, main signal format, main pixel clock, main sync, main h-refresh, main v-refresh, PIP input, PIP signal format, PIP pixel, PIP sync, PIP h-refresh, PIP v-refresh, lamp power, current lamp, lamp1 hours, lamp2 hours, standby mode, lens lock, IP, DHCP)"
- id: lse_code
type: enum
values: ["1=lamp did not strike after 5 attempts", "3=lamp went out unexpectedly", "4=fan failure", "5=over temperature"]
Variables
# All 0-100 level/image parameters and enums are exposed as action parameters (above)
# rather than settable Variables, per AI4AV convention. No continuous analog
# variables are defined in the source.
[]
Events
# The source does not describe unsolicited notifications. Status is query-only via (SST?) and per-field (Code?) requests.
[]
Macros
# No multi-step sequences are explicitly defined in the source.
[]
Safety
# No safety warnings, interlocks, or power-on sequencing requirements stated in source.
# Standby-mode selection (PWR+STBM) affects wake-on-serial capability, but the source
# does not characterize this as a safety interlock.
[]
Notes
- Message format: every command is wrapped in parentheses, e.g.
(PWR1). A space between code and parameter is optional ((PWR 1)). Modifiersnandpmean "next value" / "previous value" for commands that list a discrete set. - Subcode syntax: code+subcode separated by
+, e.g.(NET+DHCP0),(LIF+LP1H?). If no subcode, the+is omitted. - Request/reply symbols:
?for query (controller),!for reply (projector). Set messages have neither. - Acknowledgement: prefix
#before the function code to request a full acknowledgement echo. - The same ASCII command set also works over Ethernet (TCP); the document explicitly mentions ETHERNET as an alternative port.
- Default baud 115200, but selectable at runtime via
(BDR0..7). The serial port can echo its own characters back when(SEC1)is set. - "Service Mode" is required for some commands (DEF, PIF, CWI, some ITP patterns, red/green/blue/yellow/magenta/cyan test patterns). Enter with
(UID"service,service")(or service credentials). Service Mode auto-disables on power off. (ITP)Grid and Color Bars test patterns take up to 18 seconds to switch away from.(KEY)command emulates IR remote; keycodes are decimal. Two known quirks: Enter does not select items in a drop-down; Exit closes a drop-down rather than the parent menu.- Multiple baud rates are listed in the BDR command examples (2400..115200), all selectable at runtime.
- Default PIN is
12345(used by PIV/PCG).
Provenance
source_domains:
- christiedigital.com
source_urls:
- https://www.christiedigital.com/globalassets/resources/public/020-000372-05-christie-e-series-serial-communications.pdf
retrieved_at: 2026-04-30T04:26:22.212Z
last_checked_at: 2026-06-02T21:41:08.679Z
Verification Summary
verdict: verified
checked_at: 2026-06-02T21:41:08.679Z
matched_actions: 153
action_count: 153
confidence: medium
summary: "All 153 spec actions have verbatim wire-token matches in the source; transport fully confirmed; coverage ratio 1.00. (1 unresolved item(s) noted in Known Gaps.)"
Known Gaps
- "firmware version compatibility not stated in source"
From the AI4AV catalog (https://ai4av.net) · ODbL-1.0