Summary
Barco DLP VP projector controlled via JSON-RPC 2.0 over TCP (port 9090) or RS-232 serial. All commands are identical across both transport types. Authentication is optional; elevated access requires a pass code. The device supports power control, source routing, image adjustment, warp/blend configurations, optic motor control (focus/zoom/lens shift/shutter), environment monitoring, DMX, notifications, firmware management, and UI/OSD control.
Transport
protocols:
- tcp
- serial
addressing:
port: 9090 # TCP port for Pulse services
serial:
baud_rate: 19200
data_bits: 8
parity: none
stop_bits: 1
flow_control: none
auth:
type: optional # normal end user access requires no auth; elevated access uses authenticate method with pass code
Traits
- powerable # system.poweron / system.poweroff / system.gotoeco / system.gotoready present
- queryable # property.get, property.subscribe present
- routable # image.window.main.source selection + image.source.list present
- levelable # brightness, contrast, gamma, illumination power control present
Actions
# All JSON-RPC actions carry command equal to the method string. The full
# JSON-RPC 2.0 envelope is:
# { "jsonrpc": "2.0", "method": "<command>", "params": {...}, "id": <n> }
# See Notes for transport details.
# ============================================================
# Core JSON-RPC service API
# ============================================================
- id: property_set
label: Set Property Value
kind: action
command: "property.set"
params:
- name: property
type: string
description: Property path (e.g., "image.brightness")
- name: value
type: any
description: New value for the property
- id: property_get
label: Get Property Value
kind: query
command: "property.get"
params:
- name: property
type: any
description: Property path (string) or array of property paths
- id: property_subscribe
label: Subscribe To Property Changes
kind: action
command: "property.subscribe"
params:
- name: property
type: any
description: Property path (string) or array of property paths
- id: property_unsubscribe
label: Unsubscribe From Property Changes
kind: action
command: "property.unsubscribe"
params:
- name: property
type: any
description: Property path (string) or array of property paths
- id: signal_subscribe
label: Subscribe To Signal
kind: action
command: "signal.subscribe"
params:
- name: signal
type: any
description: Signal name (string) or array of signal names
- id: signal_unsubscribe
label: Unsubscribe From Signal
kind: action
command: "signal.unsubscribe"
params:
- name: signal
type: any
description: Signal name (string) or array of signal names
- id: introspect
label: Introspect Object Metadata
kind: query
command: "introspect"
params:
- name: object
type: string
description: Object name in dot notation (default empty = all)
- name: recursive
type: boolean
description: If false, only object names are listed (one level)
- id: authenticate
label: Authenticate
kind: action
command: "authenticate"
params:
- name: code
type: integer
description: Secret pass code for elevated access level
- id: ledctrl_blink
label: Blink LED
kind: action
command: "ledctrl.blink"
params:
- name: led
type: string
description: LED identifier (e.g., "systemstatus")
- name: color
type: string
description: LED color (e.g., "red")
- name: period
type: integer
description: Blink period
# ============================================================
# System / power control
# ============================================================
- id: system_poweron
label: Power On
kind: action
command: "system.poweron"
params: []
- id: system_poweroff
label: Power Off
kind: action
command: "system.poweroff"
params: []
- id: system_gotoeco
label: Go To Eco State
kind: action
command: "system.gotoeco"
params: []
- id: system_gotoready
label: Go To Ready State
kind: action
command: "system.gotoready"
params: []
- id: system_activity
label: Signal User Activity
kind: action
command: "system.activity"
description: Resets timeout countdown timers
params: []
- id: system_reboot
label: Reboot Projector
kind: action
command: "system.reboot"
description: Powers off the projector first, then reboots
params: []
- id: system_reset
label: Reset Domains
kind: action
command: "system.reset"
description: Asynchronously resets selected domains; completion signalled by system.performed
params:
- name: domains
type: array
description: Array of domain enums (ImageConnector, ImageSource, ImageFeatures, ImageRealColor, ImageWarp, ImageBlend, ImageOrientation, ImageResolution, ImageStereo, ImageDisplay, ImageTestPattern, ImageConvergence, UserInterface, Optics, Illumination, Network, Screen, System, LightMeasurement, Dmx)
- id: system_resetall
label: Reset All Domains
kind: action
command: "system.resetall"
params: []
- id: system_listresetdomains
label: List Reset Domains
kind: query
command: "system.listresetdomains"
params: []
- id: system_getidentification
label: Get Identification
kind: query
command: "system.getidentification"
params:
- name: identification
type: string
description: Identification key
- id: system_getidentifications
label: Get All Identifications
kind: query
command: "system.getidentifications"
params: []
- id: system_getsystemdate
label: Get System Date (UTC)
kind: query
command: "system.getsystemdate"
params: []
- id: system_boards_getboardinfo
label: Get Board Info
kind: query
command: "system.boards.getboardinfo"
params:
- name: boardname
type: string
description: Board name
- id: system_boards_getboardlist
label: Get Board List
kind: query
command: "system.boards.getboardlist"
params: []
- id: system_boards_getdeviceinfo
label: Get Device Info (Deprecated)
kind: query
command: "system.boards.getdeviceinfo"
description: DEPRECATED. Use GetBoardInfo instead
params:
- name: boardname
type: string
- id: system_boards_getmissingboardlist
label: Get Missing Board List
kind: query
command: "system.boards.getmissingboardlist"
params: []
- id: system_boards_getmoduleinfo
label: Get Module Info
kind: query
command: "system.boards.getmoduleinfo"
params:
- name: boardname
type: string
- id: system_license_option_flexbrightness_getmaximumlightoutputcode
label: Get Maximum Light Output Code
kind: query
command: "system.license.option.flexbrightness.getmaximumlightoutputcode"
params:
- name: lightoutput
type: integer
- name: signature
type: string
- id: system_license_option_flexbrightness_setmaximumlightoutput
label: Set Maximum Light Output
kind: action
command: "system.license.option.flexbrightness.setmaximumlightoutput"
params:
- name: code
type: string
- name: lightoutput
type: integer
- id: system_license_option_flexbrightness_setmaximumlightoutputcode
label: Set Maximum Light Output Code
kind: action
command: "system.license.option.flexbrightness.setmaximumlightoutputcode"
params:
- name: lightoutput
type: integer
- name: signature
type: string
# ============================================================
# ECO mode wake (RS-232 ASCII, not JSON-RPC)
# ============================================================
- id: wake_from_eco_serial
label: Wake From ECO Mode (Serial)
kind: action
command: ":POWR1\r"
description: ASCII wake command sent on RS-232 serial port for projectors in ECO/power save mode
params: []
# ============================================================
# Sources / connectors / windows
# ============================================================
- id: set_active_source
label: Set Active Source
kind: action
command: "property.set"
params:
- name: source
type: string
description: Source name (e.g., "DisplayPort 1", "HDMI")
- id: image_source_list
label: List Available Sources
kind: query
command: "image.source.list"
params: []
- id: image_connector_list
label: List Available Connectors
kind: query
command: "image.connector.list"
params: []
- id: image_window_list
label: List Available Windows
kind: query
command: "image.window.list"
params: []
- id: image_resolution_list
label: List Possible Resolutions
kind: query
command: "image.resolution.list"
params: []
- id: image_display_listdisplaymodes
label: List Display Modes
kind: query
command: "image.display.listdisplaymodes"
params: []
- id: image_stereo_listdarktime
label: List Stereo Darktime Values
kind: query
command: "image.stereo.listdarktime"
params: []
# Per-source listconnectors methods (each is a distinct source row in source)
- id: image_source_l1displayport_listconnectors
label: List Connectors - L1 DisplayPort
kind: query
command: "image.source.l1displayport.listconnectors"
params: []
- id: image_source_l1hdbaset1_listconnectors
label: List Connectors - L1 HDBaseT 1
kind: query
command: "image.source.l1hdbaset1.listconnectors"
params: []
- id: image_source_l1hdbaset2_listconnectors
label: List Connectors - L1 HDBaseT 2
kind: query
command: "image.source.l1hdbaset2.listconnectors"
params: []
- id: image_source_l1hdmi_listconnectors
label: List Connectors - L1 HDMI
kind: query
command: "image.source.l1hdmi.listconnectors"
params: []
- id: image_source_l1quadsdi_listconnectors
label: List Connectors - L1 Quad SDI
kind: query
command: "image.source.l1quadsdi.listconnectors"
params: []
- id: image_source_l1sdia_listconnectors
label: List Connectors - L1 SDI A
kind: query
command: "image.source.l1sdia.listconnectors"
params: []
- id: image_source_l1sdib_listconnectors
label: List Connectors - L1 SDI B
kind: query
command: "image.source.l1sdib.listconnectors"
params: []
- id: image_source_l1sdic_listconnectors
label: List Connectors - L1 SDI C
kind: query
command: "image.source.l1sdic.listconnectors"
params: []
- id: image_source_l1sdid_listconnectors
label: List Connectors - L1 SDI D
kind: query
command: "image.source.l1sdid.listconnectors"
params: []
- id: image_source_l2displayporta_listconnectors
label: List Connectors - L2 DisplayPort A
kind: query
command: "image.source.l2displayporta.listconnectors"
params: []
- id: image_source_l2displayportb_listconnectors
label: List Connectors - L2 DisplayPort B
kind: query
command: "image.source.l2displayportb.listconnectors"
params: []
- id: image_source_l2displayportc_listconnectors
label: List Connectors - L2 DisplayPort C
kind: query
command: "image.source.l2displayportc.listconnectors"
params: []
- id: image_source_l2displayportd_listconnectors
label: List Connectors - L2 DisplayPort D
kind: query
command: "image.source.l2displayportd.listconnectors"
params: []
- id: image_source_l2dualdpab_listconnectors
label: List Connectors - L2 Dual DP AB
kind: query
command: "image.source.l2dualdpab.listconnectors"
params: []
- id: image_source_l2dualdpac_listconnectors
label: List Connectors - L2 Dual DP AC
kind: query
command: "image.source.l2dualdpac.listconnectors"
params: []
- id: image_source_l2dualdpbd_listconnectors
label: List Connectors - L2 Dual DP BD
kind: query
command: "image.source.l2dualdpbd.listconnectors"
params: []
- id: image_source_l2dualdpcd_listconnectors
label: List Connectors - L2 Dual DP CD
kind: query
command: "image.source.l2dualdpcd.listconnectors"
params: []
- id: image_source_l2dualheaddpac_listconnectors
label: List Connectors - L2 Dual Head DP AC
kind: query
command: "image.source.l2dualheaddpac.listconnectors"
params: []
- id: image_source_l2dualheaddpbd_listconnectors
label: List Connectors - L2 Dual Head DP BD
kind: query
command: "image.source.l2dualheaddpbd.listconnectors"
params: []
- id: image_source_l2dualheaddualdpabcd_listconnectors
label: List Connectors - L2 Dual Head Dual DP ABCD
kind: query
command: "image.source.l2dualheaddualdpabcd.listconnectors"
params: []
- id: image_source_l2quadcolumndp_listconnectors
label: List Connectors - L2 Quad Column DP
kind: query
command: "image.source.l2quadcolumndp.listconnectors"
params: []
- id: image_source_l2quaddp_listconnectors
label: List Connectors - L2 Quad DP
kind: query
command: "image.source.l2quaddp.listconnectors"
params: []
# Per-connector EDID list methods
- id: image_connector_l1displayport_edid_list
label: List EDID - L1 DisplayPort
kind: query
command: "image.connector.l1displayport.edid.list"
params: []
- id: image_connector_l1hdbaset1_edid_list
label: List EDID - L1 HDBaseT 1
kind: query
command: "image.connector.l1hdbaset1.edid.list"
params: []
- id: image_connector_l1hdbaset2_edid_list
label: List EDID - L1 HDBaseT 2
kind: query
command: "image.connector.l1hdbaset2.edid.list"
params: []
- id: image_connector_l1hdmi_edid_list
label: List EDID - L1 HDMI
kind: query
command: "image.connector.l1hdmi.edid.list"
params: []
- id: image_connector_l2displayporta_edid_list
label: List EDID - L2 DisplayPort A
kind: query
command: "image.connector.l2displayporta.edid.list"
params: []
- id: image_connector_l2displayportb_edid_list
label: List EDID - L2 DisplayPort B
kind: query
command: "image.connector.l2displayportb.edid.list"
params: []
- id: image_connector_l2displayportc_edid_list
label: List EDID - L2 DisplayPort C
kind: query
command: "image.connector.l2displayportc.edid.list"
params: []
- id: image_connector_l2displayportd_edid_list
label: List EDID - L2 DisplayPort D
kind: query
command: "image.connector.l2displayportd.edid.list"
params: []
# ============================================================
# Color management
# ============================================================
- id: image_color_p7_custom_copypresettocustom
label: Copy Color Preset To Custom
kind: action
command: "image.color.p7.custom.copypresettocustom"
params:
- name: presetname
type: string
- id: image_color_p7_custom_resetpreset
label: Reset Color Preset
kind: action
command: "image.color.p7.custom.resetpreset"
params:
- name: presetname
type: string
- id: image_color_p7_custom_resettonative
label: Reset Color To Native
kind: action
command: "image.color.p7.custom.resettonative"
params: []
- id: image_color_rgbmode_nextrgbmode
label: Next RGB Mode
kind: action
command: "image.color.rgbmode.nextrgbmode"
description: Cycle to next RGB mode
params: []
# ============================================================
# Warp / blend / black level file & geometry methods
# ============================================================
- id: image_processing_warp_file_list
label: List Warp Files
kind: query
command: "image.processing.warp.file.list"
params: []
- id: image_processing_warp_file_delete
label: Delete Warp File
kind: action
command: "image.processing.warp.file.delete"
params:
- name: filename
type: string
- id: image_processing_blend_file_list
label: List Blend Files
kind: query
command: "image.processing.blend.file.list"
params: []
- id: image_processing_blend_file_delete
label: Delete Blend File
kind: action
command: "image.processing.blend.file.delete"
params:
- name: filename
type: string
- id: image_processing_blacklevel_file_list
label: List Black Level Files
kind: query
command: "image.processing.blacklevel.file.list"
params: []
- id: image_processing_blacklevel_file_delete
label: Delete Black Level File
kind: action
command: "image.processing.blacklevel.file.delete"
params:
- name: filename
type: string
- id: image_processing_warpgrid_getgrid
label: Get Warp Grid
kind: query
command: "image.processing.warpgrid.getgrid"
description: Returns current grid points as normalized and relative
params: []
- id: image_processing_warpgrid_getgridsize
label: Get Warp Grid Size
kind: query
command: "image.processing.warpgrid.getgridsize"
params: []
- id: image_processing_warpgrid_getscaledgrid
label: Get Scaled Warp Grid
kind: query
command: "image.processing.warpgrid.getscaledgrid"
params:
- name: resolution
type: object
description: "{ x: int, y: int }"
- id: image_processing_warp_fourcorners_getscaledcorners
label: Get Scaled Four-Corner Coordinates
kind: query
command: "image.processing.warp.fourcorners.getscaledcorners"
params:
- name: resolution
type: object
description: "{ x: int, y: int }"
- id: image_processing_warp_warpscaledpoints
label: Warp Scaled Points
kind: query
command: "image.processing.warp.warpscaledpoints"
params:
- name: points
type: array
description: "Array of { X: float, Y: float }"
- name: resolution
type: object
description: "{ X: float, Y: float }"
- id: image_processing_blacklevel_basicblacklevel_getblacklevelarea
label: Get Black Level Area
kind: query
command: "image.processing.blacklevel.basicblacklevel.getblacklevelarea"
params:
- name: resolution_width
type: float
- name: resolution_height
type: float
- id: image_processing_blacklevel_basicblacklevel_getwarpedblacklevelarea
label: Get Warped Black Level Area
kind: query
command: "image.processing.blacklevel.basicblacklevel.getwarpedblacklevelarea"
params:
- name: resolution_width
type: float
- name: resolution_height
type: float
- id: image_processing_blend_basicblend_getblendarea
label: Get Blend Area
kind: query
command: "image.processing.blend.basicblend.getblendarea"
params:
- name: resolution_width
type: float
- name: resolution_height
type: float
- id: image_processing_blend_basicblend_getwarpedblendarea
label: Get Warped Blend Area
kind: query
command: "image.processing.blend.basicblend.getwarpedblendarea"
params:
- name: resolution_width
type: float
- name: resolution_height
type: float
# ============================================================
# Test patterns
# ============================================================
- id: image_testpattern_list
label: List Test Patterns
kind: query
command: "image.testpattern.list"
params: []
- id: image_testpattern_file_list
label: List Custom Test Pattern Files
kind: query
command: "image.testpattern.file.list"
params: []
- id: image_testpattern_file_delete
label: Delete Test Pattern File
kind: action
command: "image.testpattern.file.delete"
params:
- name: filename
type: string
- id: image_testpattern_setproperties
label: Set Test Pattern Properties
kind: action
command: "image.testpattern.setproperties"
params:
- name: id
type: string
- name: properties
type: array
description: Array of { key, value }
# ============================================================
# Optics - focus motor
# ============================================================
- id: optics_focus_addlocation
label: Focus - Add Current Position To Location
kind: action
command: "optics.focus.addlocation"
params:
- name: location
type: string
- id: optics_focus_calibrate
label: Focus - Calibrate
kind: action
command: "optics.focus.calibrate"
params: []
- id: optics_focus_runforward
label: Focus - Run Forward
kind: action
command: "optics.focus.runforward"
params: []
- id: optics_focus_runforwardtime
label: Focus - Run Forward For Time
kind: action
command: "optics.focus.runforwardtime"
params:
- name: milliseconds
type: integer
- id: optics_focus_runreverse
label: Focus - Run Reverse
kind: action
command: "optics.focus.runreverse"
params: []
- id: optics_focus_runreversetime
label: Focus - Run Reverse For Time
kind: action
command: "optics.focus.runreversetime"
params:
- name: milliseconds
type: integer
- id: optics_focus_setlocation
label: Focus - Set Location
kind: action
command: "optics.focus.setlocation"
params:
- name: location
type: string
- id: optics_focus_stepforward
label: Focus - Step Forward
kind: action
command: "optics.focus.stepforward"
params: []
- id: optics_focus_stepreverse
label: Focus - Step Reverse
kind: action
command: "optics.focus.stepreverse"
params: []
- id: optics_focus_stop
label: Focus - Stop
kind: action
command: "optics.focus.stop"
params: []
# ============================================================
# Optics - lens shift horizontal motor
# ============================================================
- id: optics_lensshift_horizontal_addlocation
label: Lens Shift H - Add Location
kind: action
command: "optics.lensshift.horizontal.addlocation"
params:
- name: location
type: string
- id: optics_lensshift_horizontal_calibrate
label: Lens Shift H - Calibrate
kind: action
command: "optics.lensshift.horizontal.calibrate"
params: []
- id: optics_lensshift_horizontal_runforward
label: Lens Shift H - Run Forward
kind: action
command: "optics.lensshift.horizontal.runforward"
params: []
- id: optics_lensshift_horizontal_runforwardtime
label: Lens Shift H - Run Forward For Time
kind: action
command: "optics.lensshift.horizontal.runforwardtime"
params:
- name: milliseconds
type: integer
- id: optics_lensshift_horizontal_runreverse
label: Lens Shift H - Run Reverse
kind: action
command: "optics.lensshift.horizontal.runreverse"
params: []
- id: optics_lensshift_horizontal_runreversetime
label: Lens Shift H - Run Reverse For Time
kind: action
command: "optics.lensshift.horizontal.runreversetime"
params:
- name: milliseconds
type: integer
- id: optics_lensshift_horizontal_setlocation
label: Lens Shift H - Set Location
kind: action
command: "optics.lensshift.horizontal.setlocation"
params:
- name: location
type: string
- id: optics_lensshift_horizontal_stepforward
label: Lens Shift H - Step Forward
kind: action
command: "optics.lensshift.horizontal.stepforward"
params: []
- id: optics_lensshift_horizontal_stepreverse
label: Lens Shift H - Step Reverse
kind: action
command: "optics.lensshift.horizontal.stepreverse"
params: []
- id: optics_lensshift_horizontal_stop
label: Lens Shift H - Stop
kind: action
command: "optics.lensshift.horizontal.stop"
params: []
# ============================================================
# Optics - lens shift vertical motor
# ============================================================
- id: optics_lensshift_vertical_addlocation
label: Lens Shift V - Add Location
kind: action
command: "optics.lensshift.vertical.addlocation"
params:
- name: location
type: string
- id: optics_lensshift_vertical_calibrate
label: Lens Shift V - Calibrate
kind: action
command: "optics.lensshift.vertical.calibrate"
params: []
- id: optics_lensshift_vertical_runforward
label: Lens Shift V - Run Forward
kind: action
command: "optics.lensshift.vertical.runforward"
params: []
- id: optics_lensshift_vertical_runforwardtime
label: Lens Shift V - Run Forward For Time
kind: action
command: "optics.lensshift.vertical.runforwardtime"
params:
- name: milliseconds
type: integer
- id: optics_lensshift_vertical_runreverse
label: Lens Shift V - Run Reverse
kind: action
command: "optics.lensshift.vertical.runreverse"
params: []
- id: optics_lensshift_vertical_runreversetime
label: Lens Shift V - Run Reverse For Time
kind: action
command: "optics.lensshift.vertical.runreversetime"
params:
- name: milliseconds
type: integer
- id: optics_lensshift_vertical_setlocation
label: Lens Shift V - Set Location
kind: action
command: "optics.lensshift.vertical.setlocation"
params:
- name: location
type: string
- id: optics_lensshift_vertical_stepforward
label: Lens Shift V - Step Forward
kind: action
command: "optics.lensshift.vertical.stepforward"
params: []
- id: optics_lensshift_vertical_stepreverse
label: Lens Shift V - Step Reverse
kind: action
command: "optics.lensshift.vertical.stepreverse"
params: []
- id: optics_lensshift_vertical_stop
label: Lens Shift V - Stop
kind: action
command: "optics.lensshift.vertical.stop"
params: []
# ============================================================
# Optics - zoom motor
# ============================================================
- id: optics_zoom_addlocation
label: Zoom - Add Location
kind: action
command: "optics.zoom.addlocation"
params:
- name: location
type: string
- id: optics_zoom_calibrate
label: Zoom - Calibrate
kind: action
command: "optics.zoom.calibrate"
params: []
- id: optics_zoom_runforward
label: Zoom - Run Forward
kind: action
command: "optics.zoom.runforward"
params: []
- id: optics_zoom_runforwardtime
label: Zoom - Run Forward For Time
kind: action
command: "optics.zoom.runforwardtime"
params:
- name: milliseconds
type: integer
- id: optics_zoom_runreverse
label: Zoom - Run Reverse
kind: action
command: "optics.zoom.runreverse"
params: []
- id: optics_zoom_runreversetime
label: Zoom - Run Reverse For Time
kind: action
command: "optics.zoom.runreversetime"
params:
- name: milliseconds
type: integer
- id: optics_zoom_setlocation
label: Zoom - Set Location
kind: action
command: "optics.zoom.setlocation"
params:
- name: location
type: string
- id: optics_zoom_stepforward
label: Zoom - Step Forward
kind: action
command: "optics.zoom.stepforward"
params: []
- id: optics_zoom_stepreverse
label: Zoom - Step Reverse
kind: action
command: "optics.zoom.stepreverse"
params: []
- id: optics_zoom_stop
label: Zoom - Stop
kind: action
command: "optics.zoom.stop"
params: []
# ============================================================
# Optics - shutter, lens ID, shift center
# ============================================================
- id: optics_shutter_toggle
label: Toggle Shutter
kind: action
command: "optics.shutter.toggle"
params: []
- id: optics_shutter_getobjectpath
label: Get Shutter Object Path
kind: query
command: "optics.shutter.getobjectpath"
params: []
- id: optics_setlensid
label: Set Lens ID
kind: action
command: "optics.setlensid"
params:
- name: lensid
type: integer
- name: powerlensid
type: integer
- id: optics_getvalidlensids
label: Get Valid Lens IDs
kind: query
command: "optics.getvalidlensids"
params: []
- id: optics_shifttocenter
label: Shift Lens To Center
kind: action
command: "optics.shifttocenter"
description: Shift lens to center of allowed shift range
params: []
# ============================================================
# Peripheral frame motors (horizontal / vertical / rotation)
# ============================================================
- id: peripheral_frame_horizontal_calibrate
label: Frame Horizontal - Calibrate
kind: action
command: "peripheral.frame.horizontal.calibrate"
params: []
- id: peripheral_frame_horizontal_runforward
label: Frame Horizontal - Run Forward
kind: action
command: "peripheral.frame.horizontal.runforward"
params: []
- id: peripheral_frame_horizontal_runreverse
label: Frame Horizontal - Run Reverse
kind: action
command: "peripheral.frame.horizontal.runreverse"
params: []
- id: peripheral_frame_horizontal_stepforward
label: Frame Horizontal - Step Forward
kind: action
command: "peripheral.frame.horizontal.stepforward"
params: []
- id: peripheral_frame_horizontal_stepreverse
label: Frame Horizontal - Step Reverse
kind: action
command: "peripheral.frame.horizontal.stepreverse"
params: []
- id: peripheral_frame_horizontal_stop
label: Frame Horizontal - Stop
kind: action
command: "peripheral.frame.horizontal.stop"
params: []
- id: peripheral_frame_vertical_calibrate
label: Frame Vertical - Calibrate
kind: action
command: "peripheral.frame.vertical.calibrate"
params: []
- id: peripheral_frame_vertical_runforward
label: Frame Vertical - Run Forward
kind: action
command: "peripheral.frame.vertical.runforward"
params: []
- id: peripheral_frame_vertical_runreverse
label: Frame Vertical - Run Reverse
kind: action
command: "peripheral.frame.vertical.runreverse"
params: []
- id: peripheral_frame_vertical_stepforward
label: Frame Vertical - Step Forward
kind: action
command: "peripheral.frame.vertical.stepforward"
params: []
- id: peripheral_frame_vertical_stepreverse
label: Frame Vertical - Step Reverse
kind: action
command: "peripheral.frame.vertical.stepreverse"
params: []
- id: peripheral_frame_vertical_stop
label: Frame Vertical - Stop
kind: action
command: "peripheral.frame.vertical.stop"
params: []
- id: peripheral_frame_rotation_calibrate
label: Frame Rotation - Calibrate
kind: action
command: "peripheral.frame.rotation.calibrate"
params: []
- id: peripheral_frame_rotation_runforward
label: Frame Rotation - Run Forward
kind: action
command: "peripheral.frame.rotation.runforward"
params: []
- id: peripheral_frame_rotation_runreverse
label: Frame Rotation - Run Reverse
kind: action
command: "peripheral.frame.rotation.runreverse"
params: []
- id: peripheral_frame_rotation_stepforward
label: Frame Rotation - Step Forward
kind: action
command: "peripheral.frame.rotation.stepforward"
params: []
- id: peripheral_frame_rotation_stepreverse
label: Frame Rotation - Step Reverse
kind: action
command: "peripheral.frame.rotation.stepreverse"
params: []
- id: peripheral_frame_rotation_stop
label: Frame Rotation - Stop
kind: action
command: "peripheral.frame.rotation.stop"
params: []
# ============================================================
# Illumination
# ============================================================
- id: illumination_clo_engage
label: Engage Constant Light Output
kind: action
command: "illumination.clo.engage"
description: Engage CLO at the current light level
params: []
- id: illumination_laser_getserialnumber
label: Get Laser Serial Number
kind: query
command: "illumination.laser.getserialnumber"
params: []
# ============================================================
# Environment
# ============================================================
- id: environment_getcontrolblocks
label: Get Environment Control Blocks
kind: query
command: "environment.getcontrolblocks"
params:
- name: type
type: string
description: "Sensor | Filter | Controller | Actuator | Alarm | GenericBlock"
- name: valuetype
type: string
description: "Temperature | Speed | PWM | Voltage | Current | Power | Altitude | Pressure | Humidity | ADC | Coordinate | Peltier | Waveform | Average | Delay | Difference | Interpolation | Limit | Median | Noise | Weighting | Comparison | Threshold | Formula | Driver | PID | Mode | State | Pump | Resistance | Simulation | Constant | Manual | Range | Any"
- id: environment_getalarminfo
label: Get Alarm Info
kind: query
command: "environment.getalarminfo"
params: []
# ============================================================
# Firmware management
# ============================================================
- id: firmware_listcomponents
label: List Firmware Components
kind: query
command: "firmware.listcomponents"
params: []
- id: firmware_listcomponentversionstatus
label: List Firmware Component Versions And Status
kind: query
command: "firmware.listcomponentversionstatus"
params: []
- id: firmware_schedulecomponentupgrade
label: Schedule Component Upgrade
kind: action
command: "firmware.schedulecomponentupgrade"
description: Force a component upgrade at the following reboot
params: []
# ============================================================
# Statistics / counters
# ============================================================
- id: statistics_listcounters
label: List All Counters
kind: query
command: "statistics.listcounters"
params: []
- id: statistics_laserruntime_getname
label: Laser Runtime - Get Name
kind: query
command: "statistics.laserruntime.getname"
params: []
- id: statistics_laserruntime_getunit
label: Laser Runtime - Get Unit
kind: query
command: "statistics.laserruntime.getunit"
params: []
- id: statistics_laserstrikes_getname
label: Laser Strikes - Get Name
kind: query
command: "statistics.laserstrikes.getname"
params: []
- id: statistics_laserstrikes_getunit
label: Laser Strikes - Get Unit
kind: query
command: "statistics.laserstrikes.getunit"
params: []
- id: statistics_projectorruntime_getname
label: Projector Runtime - Get Name
kind: query
command: "statistics.projectorruntime.getname"
params: []
- id: statistics_projectorruntime_getunit
label: Projector Runtime - Get Unit
kind: query
command: "statistics.projectorruntime.getunit"
params: []
- id: statistics_systemtime_getname
label: System Time - Get Name
kind: query
command: "statistics.systemtime.getname"
params: []
- id: statistics_systemtime_getunit
label: System Time - Get Unit
kind: query
command: "statistics.systemtime.getunit"
params: []
- id: statistics_uptime_getname
label: Uptime - Get Name
kind: query
command: "statistics.uptime.getname"
params: []
- id: statistics_uptime_getunit
label: Uptime - Get Unit
kind: query
command: "statistics.uptime.getunit"
params: []
# ============================================================
# DMX
# ============================================================
- id: dmx_listchannels
label: List DMX Channels
kind: query
command: "dmx.listchannels"
params: []
- id: dmx_listmodes
label: List DMX Modes
kind: query
command: "dmx.listmodes"
params: []
# ============================================================
# Light measurement
# ============================================================
- id: lightmeasurement_getlightoutput
label: Get Light Output
kind: query
command: "lightmeasurement.getlightoutput"
params: []
# ============================================================
# Network
# ============================================================
- id: network_list
label: List Network Devices
kind: query
command: "network.list"
description: List logical device IDs (e.g., "wired1", "wifi1")
params: []
# ============================================================
# Notifications
# ============================================================
- id: notification_list
label: List Active Notifications
kind: query
command: "notification.list"
params: []
- id: notification_dismiss
label: Dismiss Notification
kind: action
command: "notification.dismiss"
params:
- name: id
type: string
- name: response
type: string
description: "NONE | OK | CANCEL | IGNORE | YES | NO | SUPPRESS"
- id: notification_listsuppressed
label: List Suppressed Notification Codes
kind: query
command: "notification.listsuppressed"
params: []
- id: notification_log
label: List Notification Log
kind: query
command: "notification.log"
params:
- name: minimumseverity
type: string
description: "INFO | CAUTION | WARNING | ERROR | CRITICAL"
- name: start
type: integer
- name: count
type: integer
- id: notification_suppress
label: Suppress Notification Code
kind: action
command: "notification.suppress"
params:
- name: code
type: string
- id: notification_unsuppress
label: Unsuppress Notification Code
kind: action
command: "notification.unsuppress"
params:
- name: code
type: string
- id: notification_unsuppressall
label: Unsuppress All Notification Codes
kind: action
command: "notification.unsuppressall"
params: []
# ============================================================
# Remote control
# ============================================================
- id: remotecontrol_listsensors
label: List IR Sensors
kind: query
command: "remotecontrol.listsensors"
params: []
# ============================================================
# Key dispatcher (RC / keypad simulation)
# ============================================================
- id: keydispatcher_sendclickevent
label: Send Key Click Event
kind: action
command: "keydispatcher.sendclickevent"
description: Key press followed immediately by key release
params:
- name: key
type: string
description: "Key enum (e.g., RC_POWER_ON, RC_POWER_OFF, RC_OSD, RC_SHUTTER_OPEN, KP_MENU, KP_INPUT, etc.)"
- id: keydispatcher_sendpressevent
label: Send Key Press Event
kind: action
command: "keydispatcher.sendpressevent"
params:
- name: key
type: string
- id: keydispatcher_sendreleaseevent
label: Send Key Release Event
kind: action
command: "keydispatcher.sendreleaseevent"
params:
- name: key
type: string
# ============================================================
# LED control
# ============================================================
- id: led_activity
label: Activate LEDs
kind: action
command: "led.activity"
description: Activates LEDs when enabled and restarts the LED timeout counter
params: []
- id: led_list
label: List LEDs
kind: query
command: "led.list"
params: []
# ============================================================
# UI / OSD / settings
# ============================================================
- id: ui_togglestealthmode
label: Toggle Stealth Mode (Deprecated)
kind: action
command: "ui.togglestealthmode"
description: DEPRECATED
params: []
- id: ui_settings_get
label: Get UI Setting
kind: query
command: "ui.settings.get"
params:
- name: key
type: string
- id: ui_settings_set
label: Set UI Setting
kind: action
command: "ui.settings.set"
params:
- name: key
type: string
- name: value
type: string
- id: ui_settings_remove
label: Remove UI Setting
kind: action
command: "ui.settings.remove"
params:
- name: key
type: string
- id: ui_settings_list
label: List UI Settings
kind: query
command: "ui.settings.list"
params: []
- id: ui_settings_keys
label: List UI Setting Keys
kind: query
command: "ui.settings.keys"
params: []
- id: ui_settings_geticons
label: Get UI Icons
kind: query
command: "ui.settings.geticons"
params:
- name: category
type: string
description: "Source | Connector | TestPattern"
- id: ui_settings_getfonticons
label: Get UI Font Icons
kind: query
command: "ui.settings.getfonticons"
params:
- name: category
type: string
description: "Source | Connector | TestPattern"
# ============================================================
# HTTP file endpoints (uses POST /api/...; not JSON-RPC)
# ============================================================
- id: firmware_transfer_upload
label: Upload Firmware Image
kind: action
command: "POST /api/firmware/transfer"
description: HTTP multipart upload of firmware image file
params:
- name: file
type: string
description: Path to firmware.dat
- id: image_connector_edid_transfer_upload
label: Upload EDID File
kind: action
command: "POST /api/image/connector/edid/transfer"
params:
- name: file
type: string
- id: image_connector_edid_transfer_download
label: Download EDID File
kind: query
command: "GET /api/image/connector/edid/transfer"
params: []
- id: image_processing_warp_file_transfer_upload
label: Upload Warp File
kind: action
command: "POST /api/image/processing/warp/file/transfer"
params:
- name: file
type: string
- id: image_processing_warp_file_transfer_download
label: Download Warp File
kind: query
command: "GET /api/image/processing/warp/file/transfer"
params: []
- id: image_processing_blend_file_transfer_upload
label: Upload Blend File
kind: action
command: "POST /api/image/processing/blend/file/transfer"
params:
- name: file
type: string
- id: image_processing_blend_file_transfer_download
label: Download Blend File
kind: query
command: "GET /api/image/processing/blend/file/transfer"
params: []
- id: image_processing_blacklevel_file_transfer_upload
label: Upload Black Level File
kind: action
command: "POST /api/image/processing/blacklevel/file/transfer"
params:
- name: file
type: string
- id: image_processing_blacklevel_file_transfer_download
label: Download Black Level File
kind: query
command: "GET /api/image/processing/blacklevel/file/transfer"
params: []
- id: image_testpattern_file_transfer_upload
label: Upload Test Pattern Image
kind: action
command: "POST /api/image/testpattern/file/transfer"
params:
- name: file
type: string
- id: image_testpattern_file_transfer_download
label: Download Test Pattern Image
kind: query
command: "GET /api/image/testpattern/file/transfer"
params: []
- id: notification_logger_transfer_download
label: Download Notification Log
kind: query
command: "GET /api/notification/logger/transfer"
params: []
Feedbacks
# System state query
- id: system_state
label: System State
type: enum
values:
- boot
- eco
- standby
- ready
- conditioning
- on
- service
- deconditioning
- error
# Active source query
- id: active_source
label: Active Source
type: string
# Property value query (generic)
- id: property_value
label: Property Value
type: any
# Multiple property query response
- id: property_batch_response
label: Property Batch Response
type: object
# Property change notification
- id: property_changed
label: Property Changed
type: object
# Signal callback notification
- id: signal_callback
label: Signal Callback
type: object
# Illumination state
- id: illumination_state
label: Illumination State
type: enum
values:
- On
- Off
# Illumination power level
- id: illumination_power
label: Illumination Power (percent)
type: float
# Authentication result
- id: authenticate_response
label: Authentication Response
type: boolean
# Board info response
- id: board_info
label: Board Info
type: object
# Identification response
- id: identification
label: Identification
type: string
# System date response
- id: system_date
label: System Date (UTC)
type: object
# EDID list response
- id: edid_list
label: EDID List
type: array
# Source list response
- id: source_list
label: Source List
type: array
# Connector list response
- id: connector_list
label: Connector List
type: array
# Alarm info response
- id: alarm_info
label: Alarm Info
type: array
# Firmware components response
- id: firmware_components
label: Firmware Components
type: array
# Statistics counter list response
- id: counter_list
label: Counter List
type: array
# Notification list response
- id: notification_list_response
label: Notification List
type: array
# Environment control blocks response
- id: environment_blocks
label: Environment Control Blocks
type: object
# Lens IDs response
- id: lens_ids
label: Valid Lens IDs
type: object
# Test pattern list response
- id: testpattern_list
label: Test Pattern List
type: array
# Light output response
- id: light_output
label: Light Output (lumens)
type: integer
Variables
# Image adjustments (read/write via property.get/property.set)
- id: image_brightness
label: Brightness
type: float
constraints:
min: -1
max: 1
step_size: 1
precision: 0.01
default: 0
- id: image_contrast
label: Contrast
type: float
constraints:
min: 0
max: 2
step_size: 1
precision: 0.01
default: 1
- id: image_gamma
label: Gamma
type: float
constraints:
min: 1
max: 3
step_size: 1
precision: 0.1
default: 2.2
- id: image_saturation
label: Saturation
type: float
constraints:
min: 0
max: 2
step_size: 1
precision: 0.01
default: 1
- id: image_sharpness
label: Sharpness
type: integer
constraints:
min: -2
max: 8
step_size: 1
precision: 1
- id: image_intensity
label: Intensity
type: float
constraints:
min: 0
max: 1
step_size: 0.1
precision: 0.01
- id: image_window_main_source
label: Main Window Source
type: string
- id: image_window_main_scalingmode
label: Main Window Scaling Mode
type: enum
values: [Fill, OneToOne, FillScreen, Stretch]
- id: image_window_main_position
label: Main Window Position
type: object
- id: image_window_main_size
label: Main Window Size
type: object
- id: image_orientation
label: Image Orientation
type: enum
values: [DESKTOP_FRONT, DESKTOP_REAR, CEILING_FRONT, CEILING_REAR]
- id: image_testpattern_selected
label: Selected Test Pattern ID
type: string
- id: image_testpattern_show
label: Show Test Pattern
type: boolean
# Display mode
- id: image_display_desireddisplaymode
label: Desired Display Mode
type: enum
values: [Mono, AutoStereo, ActiveStereo, NightVision, IGPixelShift]
- id: image_display_displaymode
label: Current Display Mode
type: enum
values: [Mono, AutoStereo, ActiveStereo, NightVision, IGPixelShift]
- id: image_display_frequency
label: Display Frequency
type: float
- id: image_display_synchronouslock
label: Display Synchronous Lock
type: boolean
# RGB mode
- id: image_color_rgbmode
label: RGB Mode
type: enum
values: [Full, Red, Green, Blue, RedGreen, GreenBlue, BlueRed]
# Stereo
- id: image_stereo_darktime
label: Stereo Darktime (us)
type: integer
- id: image_stereo_glassync_delay
label: Stereo Glass Sync Delay (us)
type: integer
- id: image_stereo_glassync_invert
label: Stereo Glass Sync Invert
type: boolean
- id: image_stereo_swapframepair
label: Stereo Swap Frame Pair
type: boolean
# Illumination
- id: illumination_sources_laser_power
label: Laser Power (percent)
type: float
constraints:
min: 0
max: 100
- id: illumination_sources_laser_maxpower
label: Laser Maximum Power (percent)
type: float
- id: illumination_sources_laser_minpower
label: Laser Minimum Power (percent)
type: float
- id: illumination_sources_laser_ispowerlimited
label: Laser Power Limited
type: boolean
- id: illumination_sources_laser_powerlimitreason
label: Laser Power Limit Reason
type: string
- id: illumination_clo_availability
label: CLO Availability
type: enum
values: [Available, SensorUnavailable, PendingWarmup, Unavailable, Unknown]
- id: illumination_clo_enable
label: CLO Enable
type: boolean
- id: illumination_clo_scale
label: CLO Scale (percent)
type: float
- id: illumination_clo_setpoint
label: CLO Setpoint
type: float
- id: illumination_clo_state
label: CLO State
type: enum
values: [Ok, TooDim, TooBright]
# Environment monitoring (read via environment.getcontrolblocks)
- id: temperature_readings
label: Temperature Sensors
type: object
- id: fan_speeds
label: Fan Speeds
type: object
- id: environment_alarmstate
label: Environment Alarm State
type: enum
values: [Fatal, Error, Alert, Warning, Ok]
# Warp/blend/blacklevel enable flags
- id: image_processing_warp_enable
label: Warp Enable
type: boolean
- id: image_processing_warp_file_enable
label: Warp File Enable
type: boolean
- id: image_processing_warp_file_selected
label: Warp File Selected
type: string
- id: image_processing_blend_file_enable
label: Blend File Enable
type: boolean
- id: image_processing_blend_file_selected
label: Blend File Selected
type: array
- id: image_processing_blend_scurve
label: Blend S-Curve Exponent
type: float
constraints:
min: 1
max: 4
precision: 0.1
- id: image_processing_blacklevel_file_enable
label: Black Level File Enable
type: boolean
- id: image_processing_blacklevel_file_selected
label: Black Level File Selected
type: string
- id: image_processing_blacklevel_basicblacklevel_enable
label: Basic Black Level Enable
type: boolean
- id: image_processing_blacklevel_basicblacklevel_level
label: Basic Black Level Level
type: integer
constraints:
min: 0
max: 65535
- id: image_processing_blend_basicblend_enable
label: Basic Blend Enable
type: boolean
- id: image_processing_transportdelay_desired
label: Desired Transport Delay
type: integer
- id: image_processing_transportdelay_actual
label: Actual Transport Delay
type: integer
- id: image_processing_transportdelay_minimum
label: Minimum Transport Delay
type: integer
# Optics
- id: optics_lenspresent
label: Lens Present
type: boolean
- id: optics_filteravailable
label: Optics Filter Available
type: boolean
- id: optics_focus_enabled
label: Focus Enabled
type: boolean
- id: optics_focus_position
label: Focus Position
type: integer
- id: optics_focus_target
label: Focus Target
type: integer
- id: optics_focus_state
label: Focus State
type: enum
values: [Stopped, Running, Calibrating, Homing]
- id: optics_zoom_enabled
label: Zoom Enabled
type: boolean
- id: optics_zoom_position
label: Zoom Position
type: integer
- id: optics_zoom_target
label: Zoom Target
type: integer
- id: optics_zoom_state
label: Zoom State
type: enum
values: [Stopped, Running, Calibrating, Homing]
- id: optics_lensshift_horizontal_enabled
label: Lens Shift Horizontal Enabled
type: boolean
- id: optics_lensshift_horizontal_position
label: Lens Shift Horizontal Position
type: integer
- id: optics_lensshift_horizontal_target
label: Lens Shift Horizontal Target
type: integer
- id: optics_lensshift_horizontal_state
label: Lens Shift Horizontal State
type: enum
values: [Stopped, Running, Calibrating, Homing]
- id: optics_lensshift_vertical_enabled
label: Lens Shift Vertical Enabled
type: boolean
- id: optics_lensshift_vertical_position
label: Lens Shift Vertical Position
type: integer
- id: optics_lensshift_vertical_target
label: Lens Shift Vertical Target
type: integer
- id: optics_lensshift_vertical_state
label: Lens Shift Vertical State
type: enum
values: [Stopped, Running, Calibrating, Homing]
- id: optics_shutter_enabled
label: Shutter Motor Enabled
type: boolean
- id: optics_shutter_position
label: Shutter Position
type: enum
values: [Open, Closed]
- id: optics_shutter_target
label: Shutter Target
type: enum
values: [Open, Closed]
# System
- id: system_modelname
label: Model Name
type: string
- id: system_familyname
label: Family Name
type: string
- id: system_serialnumber
label: Serial Number
type: string
- id: system_articlenumber
label: Article Number
type: string
- id: system_firmwareversion
label: Firmware Version
type: string
- id: system_initialstate
label: Initial State
type: enum
values: [boot, eco, standby, ready, conditioning, on, service, deconditioning, error]
- id: system_eco_available
label: Eco State Available
type: boolean
- id: system_eco_enable
label: Eco State Enable
type: boolean
- id: system_standby_available
label: Standby State Available
type: boolean
- id: system_standby_enable
label: Standby State Enable
type: boolean
- id: system_standby_timeout_duration
label: Standby Timeout Duration (s)
type: integer
- id: system_standby_timeout_enable
label: Standby Timeout Enable
type: boolean
- id: system_ready_timeout_duration
label: Ready Timeout Duration (s)
type: integer
- id: system_ready_timeout_enable
label: Ready Timeout Enable
type: boolean
- id: system_on_timeout_duration
label: On Timeout Duration (s)
type: integer
- id: system_on_timeout_enable
label: On Timeout Enable
type: boolean
- id: system_error_timeout_duration
label: Error Timeout Duration (s)
type: integer
- id: system_error_timeout_enable
label: Error Timeout Enable
type: boolean
- id: system_license_applicable
label: License Applicable
type: boolean
- id: system_license_available
label: License Available
type: boolean
- id: system_license_valid
label: License Valid
type: boolean
- id: system_license_options
label: License Options
type: object
- id: system_colorwheel
label: Color Wheel Article Number
type: string
- id: system_colorwheelname
label: Color Wheel Name
type: string
# Network
- id: network_hostname
label: Network Hostname
type: string
- id: network_version
label: Networking Service Version
type: string
- id: network_device_lan_carrier
label: LAN Carrier
type: boolean
- id: network_device_lan_state
label: LAN State
type: enum
values: [CONNECTED, DISCONNECTED]
- id: network_device_lan_speed
label: LAN Speed (Mbit/s)
type: integer
- id: network_device_lan_hwaddress
label: LAN MAC Address
type: string
- id: network_device_lan_ip4config
label: LAN IPv4 Config
type: object
- id: network_device_lan_ip6config
label: LAN IPv6 Config
type: object
# Firmware
- id: firmware_firmwareversion
label: Firmware Version Property
type: string
# GSM
- id: gsm_available
label: GSM Card Available
type: boolean
- id: gsm_pinstate
label: GSM PIN State
type: enum
values: [Accepted, Failed, Locked, Unknown]
- id: gsm_pin
label: GSM PIN Code
type: string
# Remote control
- id: remotecontrol_address
label: Remote Control Address
type: integer
constraints:
min: 1
max: 31
- id: remotecontrol_broadcastaddress
label: Remote Control Broadcast Address
type: integer
constraints:
min: 0
max: 1
# Screen
- id: screen_hdrboost
label: Screen HDR Boost
type: float
constraints:
min: 0.8
max: 1.2
step_size: 0.01
precision: 0.1
- id: screen_luminance
label: Screen Luminance (cd/m2)
type: float
constraints:
min: 50
max: 10000
step_size: 10
precision: 1
# Statistics counters (read/write)
- id: statistics_laserruntime_value
label: Laser Runtime
type: integer
- id: statistics_laserstrikes_value
label: Laser Strikes
type: integer
- id: statistics_projectorruntime_value
label: Projector Runtime
type: integer
- id: statistics_systemtime_value
label: System Time
type: integer
- id: statistics_uptime_value
label: Uptime
type: integer
# DMX
- id: dmx_artnet
label: DMX Artnet Enabled
type: boolean
- id: dmx_artnetnet
label: DMX Artnet Net
type: integer
- id: dmx_artnetuniverse
label: DMX Artnet Universe
type: integer
- id: dmx_mode
label: DMX Mode
type: string
- id: dmx_shutdown
label: DMX Shutdown Enabled
type: boolean
- id: dmx_shutdowntimeout
label: DMX Shutdown Timeout (minutes)
type: integer
- id: dmx_startchannel
label: DMX Start Channel (1..512)
type: integer
# UI
- id: ui_menu
label: UI Menu Visible
type: boolean
- id: ui_osd
label: OSD Enabled
type: boolean
- id: ui_minimize
label: UI Menu Minimized
type: boolean
- id: ui_stealthmode
label: Stealth Mode
type: enum
values: [Off, On]
- id: ui_hasstealthmode
label: Has Stealth Mode
type: boolean
- id: ui_backlight_state
label: Backlight State
type: enum
values: [Off, On, Auto]
- id: ui_backlight_timeout
label: Backlight Timeout (s)
type: integer
- id: ui_access_enduser
label: End User Access
type: boolean
- id: ui_access_poweruser
label: Power User Access
type: boolean
- id: ui_poweroffhint
label: Power Off Hint
type: boolean
- id: ui_sourcesignal
label: Show Source Signal
type: boolean
- id: notification_count
label: Notification Count
type: integer
# Connector-level signal / color properties (per-connector variants documented
# in source for l1displayport, l1hdbaset1/2, l1hdmi, l1sdia-d, l2displayporta-d).
# each with 4-5 properties; see source for the full per-connector list.
## Events
```yaml
# Property value change notifications (device pushes when subscribed property changes)
- id: property_changed_event
description: Pushed when subscribed property changes value
params:
- name: property
type: array
description: "Array of {propertyname: value} pairs"
# Signal notifications
- id: signal_callback_event
description: Pushed when subscribed signal fires
params:
- name: signal
type: array
description: "Array of {signalname: arguments} pairs"
# System state change notifications
- id: system_state_changed
description: Pushed when projector state changes
params:
- name: system_state
type: string
description: New state value
# Model updated signal
- id: modelupdated
description: Pushed when functionality for an object appears or disappears (new objects arrive or are removed)
params:
- name: object
type: string
description: Object name in JSON-RPC dot notation
- name: newobject
type: boolean
description: True if functionality added, false if removed
- name: accesslevel
type: string
description: "UNAUTHENTICATED_END_USER | END_USER | POWER_USER | SERVICE_PARTNER | MANUFACTURING | DEVELOPMENT | INACCESSIBLE"
# System identification changed
- id: system_identificationchanged
description: Raised whenever an identification is changed
params:
- name: identification
type: string
# System license changed
- id: system_license_licensechanged
description: Raised when the license file changes
params: []
# System reset performed
- id: system_performed
description: Emitted when one or more reset domains have completed
params:
- name: domains
type: array
description: Array of completed domain enums
# Warp grid changed (no payload)
- id: image_processing_warpgrid_changed
description: Fired when the warp grid changes, without grid data payload
params: []
# Warp grid changed (with payload)
- id: image_processing_warpgrid_gridchanged
description: Fired when the warp grid changes, with grid data
params:
- name: grid
type: array
description: "Array of { x: float, y: float }"
# File-list changed signals
- id: image_processing_warp_file_listchanged
description: Fired when warp file list changes
params: []
- id: image_processing_blend_file_listchanged
description: Fired when blend file list changes
params: []
- id: image_processing_blacklevel_file_listchanged
description: Fired when black level file list changes
params: []
- id: image_testpattern_file_listchanged
description: Fired when test pattern file list changes
params: []
# Per-connector EDID list-changed signals
- id: image_connector_l1displayport_edid_listchanged
description: EDID list changed for L1 DisplayPort
params: []
- id: image_connector_l1hdbaset1_edid_listchanged
description: EDID list changed for L1 HDBaseT 1
params: []
- id: image_connector_l1hdbaset2_edid_listchanged
description: EDID list changed for L1 HDBaseT 2
params: []
- id: image_connector_l1hdmi_edid_listchanged
description: EDID list changed for L1 HDMI
params: []
- id: image_connector_l2displayporta_edid_listchanged
description: EDID list changed for L2 DisplayPort A
params: []
- id: image_connector_l2displayportb_edid_listchanged
description: EDID list changed for L2 DisplayPort B
params: []
- id: image_connector_l2displayportc_edid_listchanged
description: EDID list changed for L2 DisplayPort C
params: []
- id: image_connector_l2displayportd_edid_listchanged
description: EDID list changed for L2 DisplayPort D
params: []
# Test pattern signals
- id: image_testpattern_added
description: Fired when a new test pattern is added
params:
- name: pattern
type: object
- id: image_testpattern_changed
description: Fired when a test pattern changes
params:
- name: id
type: string
- name: properties
type: array
- id: image_testpattern_removed
description: Fired when a test pattern is removed
params:
- name: pattern
type: object
# Network device signals
- id: network_added
description: Raised when a new network device is added
params:
- name: id
type: string
description: Logical device ID (e.g., "wifi1")
- id: network_removed
description: Raised when a network device is removed
params:
- name: id
type: string
# Notification signals
- id: notification_emitted
description: Fired when a new notification is emitted
params:
- name: notification
type: object
- id: notification_dismissed
description: Fired when a notification is dismissed
params:
- name: id
type: string
- name: response
type: string
# UI settings signals
- id: ui_settings_added
description: Fired when a new key/value pair is added
params:
- name: key
type: string
- name: value
type: string
- id: ui_settings_changed
description: Fired when a key value is updated
params:
- name: key
type: string
- name: value
type: string
- id: ui_settings_removed
description: Fired when a key is removed
params:
- name: key
type: string
Macros
# ECO mode wakeup sequence (for projectors in ECO/power save mode)
- id: wake_from_eco
description: Wake projector from ECO mode via serial port
steps:
- send: ":POWR1\r"
description: Send ASCII wake command on RS-232
# Black level adjustment using file upload
- id: apply_blacklevel_mask
description: Upload and enable black level mask image
steps:
- http_post: "http://{address}/api/image/processing/blacklevel/file/transfer"
params:
file: "@blacklevel.png"
- jsonrpc:
method: property.set
params:
property: image.processing.blacklevel.file.selected
value: "blacklevel.png"
- jsonrpc:
method: property.set
params:
property: image.processing.blacklevel.file.enable
value: true
# Blend mask upload and enable
- id: apply_blend_mask
description: Upload and enable blend mask image
steps:
- http_post: "http://{address}/api/image/processing/blend/file/transfer"
params:
file: "@mask.png"
- jsonrpc:
method: property.set
params:
property: image.processing.blend.file.selected
value: "mask.png"
- jsonrpc:
method: property.set
params:
property: image.processing.blend.file.enable
value: true
# Warp file upload and enable
- id: apply_warp_grid
description: Upload and enable warp grid file
steps:
- http_post: "http://{address}/api/image/processing/warp/file/transfer"
params:
file: "@warp.xml"
- jsonrpc:
method: property.set
params:
property: image.processing.warp.file.selected
value: "warp.xml"
- jsonrpc:
method: property.set
params:
property: image.processing.warp.enable
value: true
# Firmware upgrade via upload + scheduled upgrade + reboot
- id: upgrade_firmware
description: Upload firmware image, schedule component upgrade, and reboot
steps:
- http_post: "http://{address}/api/firmware/transfer"
params:
file: "@firmware.dat"
- jsonrpc:
method: firmware.schedulecomponentupgrade
- jsonrpc:
method: system.reboot
# EDID upload to a connector
- id: apply_edid
description: Upload EDID file to a connector
steps:
- http_post: "http://{address}/api/image/connector/edid/transfer"
params:
file: "@edid.dat"
# Test pattern upload and selection
- id: apply_testpattern
description: Upload custom test pattern image
steps:
- http_post: "http://{address}/api/image/testpattern/file/transfer"
params:
file: "@testpattern.dat"
Safety
confirmation_required_for:
- system_poweroff
- system_reboot
- system_reset
- system_resetall
- firmware_transfer_upload
- firmware_schedulecomponentupgrade
interlocks:
- description: Verify projector state is standby or ready before issuing power on command
- description: Verify projector state is on before issuing power off command
- description: Wait for property.set confirmation before setting same property again to avoid flooding server
- description: system.reboot powers off the projector first
- description: Subsequent calls to system.reset or system.resetall will fail until all domains have completed (signalled by system.performed)
# UNRESOLVED: no explicit safety warnings or interlock procedures beyond operational notes in source
Notes
JSON-RPC 2.0 is the sole command protocol, identical across TCP and RS-232 transports. TCP runs on port 9090. Serial uses 19200/8N1, no flow control, standard 9-pin cable (pin 2-2, 3-3, 5-5). Authentication is optional and only required for elevated access beyond normal end user privileges; pass code is numeric (example uses 98765). Property subscriptions push notifications asynchronously; the client must implement property.changed and signal.callback listener methods. Environment monitoring provides temperature, fan speed, voltage, and other sensor readings via environment.getcontrolblocks using type/valuetype filter enums. File upload/download uses HTTP POST/GET to /api endpoints.
The service API is fully introspectable via the introspect method; metadata is restricted by the client's authenticated access level. Property paths use JavaScript-like dot notation (e.g., image.brightness, illumination.sources.laser.power). Available sources and connectors vary by projector model and must be enumerated at runtime via image.source.list / image.connector.list. Per-source listconnectors methods are exposed under each source object (e.g., image.source.l1displayport.listconnectors). Per-connector properties (detectedsignal, colorprimaries, colorspace, signalrange, edid.selected) are documented for ~12 connectors in the source.
Best practice from source: wait for property.set confirmation before re-setting the same property; subscribe to system.state before issuing power commands to verify state; reflect source/connector structure in client to manage signal-detection subscriptions per active source.
Provenance
source_domains:
- audiogeneral.com
source_urls:
- "https://www.audiogeneral.com/barco/UDX%20Series/JSON_ReferenceGuide.pdf"
retrieved_at: 2026-07-12T03:47:59.335Z
last_checked_at: 2026-07-12T08:50:30.927Z
Verification Summary
verdict: verified
checked_at: 2026-07-12T08:50:30.927Z
matched_actions: 208
action_count: 208
confidence: medium
summary: "All 208 JSON-RPC/ASCII/HTTP spec actions match literal source commands one-to-one (S~207 incl. one command exposed under two ids); transport verified. (11 unresolved item(s) noted in Known Gaps.)"
Known Gaps
- "specific model variants not identified in source; list of available sources varies by projector model"
- "per-connector property variants not enumerated individually; source documents ~30 distinct connector objects each with 4-5 properties"
- "no explicit safety warnings or interlock procedures beyond operational notes in source"
- "specific model name/variant not stated in source (generic \"DLP VP\" used)"
- "firmware version not stated in source"
- "full list of available sources/connectors not fixed (varies by model)"
- "auth pass code format/length not specified beyond example value 98765"
- "per-connector property variants (~30 connector objects) not individually enumerated as Variables; see source \"Properties\" alphabetical list"
- "image.color.p7.custom.* color-management sub-properties (~40 coordinate/gain/luminance fields) not individually enumerated; source documents full CIE xy-coordinate + gain + luminance set for RGB/CMY/white"
- "image.processing.warp.bow.* and fourcorners.* geometry sub-properties documented but not individually enumerated"
- "ui.layer.* overlay rendering properties (adjustment, basicblacklevel, basicblend, fourcorner, grid, advancedblend) documented but not individually enumerated"
From the AI4AV catalog (https://ai4av.net) · ODbL-1.0