Summary
Barco CRT VP projector and professional display system. Supports both RS-232 serial and TCP/IP control via JSON-RPC 2.0 API on port 9090. Authentication is optional for normal end-user access; elevated access requires a numeric pass code. File upload/download via HTTP at /api endpoints. ECO mode wake also supports serial :POWR1\r ASCII command.
Transport
protocols:
- tcp
- serial
addressing:
port: 9090 # stated: TCP service available on port number 9090
serial:
baud_rate: 19200 # stated: baud rate 19200
data_bits: 8 # stated: data bits 8
parity: none # stated: parity None
stop_bits: 1 # stated: stop bits 1
flow_control: none # stated: flow control None
auth:
type: none # inferred: normal end-user access requires no auth; auth optional for higher access
Traits
- powerable # inferred: system.poweron / system.poweroff commands present
- queryable # inferred: property.get commands returning state present
- routable # inferred: source selection and input routing commands present
- levelable # inferred: brightness, contrast, gamma, color gain controls present
Actions
# CRITICAL: each method below is enumerated as one action; literal JSON-RPC payloads preserved verbatim from source.
- id: system_poweron
label: Power On
kind: action
command: '{ "jsonrpc": "2.0", "method": "system.poweron" }'
params: []
- id: system_poweroff
label: Power Off
kind: action
command: '{ "jsonrpc": "2.0", "method": "system.poweroff" }'
params: []
- id: system_gotoeco
label: Set Device in ECO State
kind: action
command: '{ "jsonrpc": "2.0", "method": "system.gotoeco" }'
params: []
- id: system_gotoready
label: Set Device in Ready State
kind: action
command: '{ "jsonrpc": "2.0", "method": "system.gotoready" }'
params: []
- id: system_reboot
label: Reboot Projector (Powers Off First)
kind: action
command: '{ "jsonrpc": "2.0", "method": "system.reboot" }'
params: []
- id: system_reset
label: Reset Selected Domains (Asynchronous)
kind: action
command: '{ "jsonrpc": "2.0", "method": "system.reset", "params": { "domains": ["ImageConnector","ImageSource","ImageFeatures","ImageRealColor","ImageWarp","ImageBlend","ImageOrientation","ImageResolution","ImageStereo","ImageDisplay","ImageTestPattern","ImageConvergence","UserInterface","Optics","Illumination","Network","Screen","System","LightMeasurement","Dmx"] } }'
params:
- name: domains
type: array
description: Reset domains (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 (Asynchronous)
kind: action
command: '{ "jsonrpc": "2.0", "method": "system.resetall" }'
params: []
- id: system_listresetdomains
label: List Available Reset Domains
kind: query
command: '{ "jsonrpc": "2.0", "method": "system.listresetdomains" }'
params: []
- id: system_activity
label: Signal User Activity (Resets Timeout Countdown Timers)
kind: action
command: '{ "jsonrpc": "2.0", "method": "system.activity" }'
params: []
- id: system_getidentification
label: Get System Identification
kind: query
command: '{ "jsonrpc": "2.0", "method": "system.getidentification" }'
params: []
- id: system_getidentifications
label: Get All System Identifications
kind: query
command: '{ "jsonrpc": "2.0", "method": "system.getidentifications" }'
params: []
- id: system_getsystemdate
label: Get System Date (UTC)
kind: query
command: '{ "jsonrpc": "2.0", "method": "system.getsystemdate" }'
params: []
- id: system_boards_getboardinfo
label: Get Board Properties
kind: query
command: '{ "jsonrpc": "2.0", "method": "system.boards.getboardinfo", "params": { "boardname": "" } }'
params:
- name: boardname
type: string
description: Board name
- id: system_boards_getboardlist
label: List Boards
kind: query
command: '{ "jsonrpc": "2.0", "method": "system.boards.getboardlist" }'
params: []
- id: system_boards_getdeviceinfo
label: Get Device Info (Deprecated)
kind: query
command: '{ "jsonrpc": "2.0", "method": "system.boards.getdeviceinfo", "params": { "boardname": "" } }'
params:
- name: boardname
type: string
- id: system_boards_getmissingboardlist
label: List Missing Boards
kind: query
command: '{ "jsonrpc": "2.0", "method": "system.boards.getmissingboardlist" }'
params: []
- id: system_boards_getmoduleinfo
label: Get Module Info
kind: query
command: '{ "jsonrpc": "2.0", "method": "system.boards.getmoduleinfo", "params": { "boardname": "" } }'
params:
- name: boardname
type: string
- id: property_set
label: Set Property
kind: action
command: '{ "jsonrpc": "2.0", "method": "property.set", "params": { "property": "{property}", "value": {value} } }'
params:
- name: property
type: string
description: Property name in dot notation (e.g. "image.window.main.source")
- name: value
type: mixed
description: New value for the property
- id: property_get
label: Get Property
kind: query
command: '{ "jsonrpc": "2.0", "method": "property.get", "params": { "property": "{property}" } }'
params:
- name: property
type: string
description: Property name in dot notation (single string or array)
- id: property_subscribe
label: Subscribe to Property Changes
kind: action
command: '{ "jsonrpc": "2.0", "method": "property.subscribe", "params": { "property": "{property}" } }'
params:
- name: property
type: string
description: Property name or array of names to subscribe to
- id: property_unsubscribe
label: Unsubscribe from Property Changes
kind: action
command: '{ "jsonrpc": "2.0", "method": "property.unsubscribe", "params": { "property": "{property}" } }'
params:
- name: property
type: string
description: Property name or array of names to unsubscribe from
- id: authenticate
label: Authenticate
kind: action
command: '{ "jsonrpc": "2.0", "method": "authenticate", "params": { "code": {code} } }'
params:
- name: code
type: integer
description: Pass code for elevated access level
- id: signal_subscribe
label: Subscribe to Signal
kind: action
command: '{ "jsonrpc": "2.0", "method": "signal.subscribe", "params": { "signal": "{signal}" } }'
params:
- name: signal
type: string
description: Signal name or array of names to subscribe to
- id: signal_unsubscribe
label: Unsubscribe from Signal
kind: action
command: '{ "jsonrpc": "2.0", "method": "signal.unsubscribe", "params": { "signal": "{signal}" } }'
params:
- name: signal
type: string
description: Signal name or array of names to unsubscribe from
- id: introspect
label: Introspect Object
kind: query
command: '{ "jsonrpc": "2.0", "method": "introspect", "params": { "object": "{object}", "recursive": true } }'
params:
- name: object
type: string
description: Object name in dot notation (default empty introspects everything)
- name: recursive
type: boolean
description: Whether to recursively introspect (default true)
- id: image_source_list
label: List Available Sources
kind: query
command: '{ "jsonrpc": "2.0", "method": "image.source.list" }'
params: []
- id: image_connector_list
label: List Available Connectors
kind: query
command: '{ "jsonrpc": "2.0", "method": "image.connector.list" }'
params: []
- id: image_window_list
label: List Available Windows
kind: query
command: '{ "jsonrpc": "2.0", "method": "image.window.list" }'
params: []
- id: image_resolution_list
label: List Possible Resolutions
kind: query
command: '{ "jsonrpc": "2.0", "method": "image.resolution.list" }'
params: []
- id: image_display_listdisplaymodes
label: List Possible Display Modes
kind: query
command: '{ "jsonrpc": "2.0", "method": "image.display.listdisplaymodes" }'
params: []
- id: image_source_l1displayport_listconnectors
label: List Connectors for Source l1displayport
kind: query
command: '{ "jsonrpc": "2.0", "method": "image.source.l1displayport.listconnectors" }'
params: []
- id: image_source_l1hdbaset1_listconnectors
label: List Connectors for Source l1hdbaset1
kind: query
command: '{ "jsonrpc": "2.0", "method": "image.source.l1hdbaset1.listconnectors" }'
params: []
- id: image_source_l1hdbaset2_listconnectors
label: List Connectors for Source l1hdbaset2
kind: query
command: '{ "jsonrpc": "2.0", "method": "image.source.l1hdbaset2.listconnectors" }'
params: []
- id: image_source_l1hdmi_listconnectors
label: List Connectors for Source l1hdmi
kind: query
command: '{ "jsonrpc": "2.0", "method": "image.source.l1hdmi.listconnectors" }'
params: []
- id: image_source_l1quadsdi_listconnectors
label: List Connectors for Source l1quadsdi
kind: query
command: '{ "jsonrpc": "2.0", "method": "image.source.l1quadsdi.listconnectors" }'
params: []
- id: image_source_l1sdia_listconnectors
label: List Connectors for Source l1sdia
kind: query
command: '{ "jsonrpc": "2.0", "method": "image.source.l1sdia.listconnectors" }'
params: []
- id: image_source_l1sdib_listconnectors
label: List Connectors for Source l1sdib
kind: query
command: '{ "jsonrpc": "2.0", "method": "image.source.l1sdib.listconnectors" }'
params: []
- id: image_source_l1sdic_listconnectors
label: List Connectors for Source l1sdic
kind: query
command: '{ "jsonrpc": "2.0", "method": "image.source.l1sdic.listconnectors" }'
params: []
- id: image_source_l1sdid_listconnectors
label: List Connectors for Source l1sdid
kind: query
command: '{ "jsonrpc": "2.0", "method": "image.source.l1sdid.listconnectors" }'
params: []
- id: image_source_l2displayporta_listconnectors
label: List Connectors for Source l2displayporta
kind: query
command: '{ "jsonrpc": "2.0", "method": "image.source.l2displayporta.listconnectors" }'
params: []
- id: image_source_l2displayportb_listconnectors
label: List Connectors for Source l2displayportb
kind: query
command: '{ "jsonrpc": "2.0", "method": "image.source.l2displayportb.listconnectors" }'
params: []
- id: image_source_l2displayportc_listconnectors
label: List Connectors for Source l2displayportc
kind: query
command: '{ "jsonrpc": "2.0", "method": "image.source.l2displayportc.listconnectors" }'
params: []
- id: image_source_l2displayportd_listconnectors
label: List Connectors for Source l2displayportd
kind: query
command: '{ "jsonrpc": "2.0", "method": "image.source.l2displayportd.listconnectors" }'
params: []
- id: image_source_l2dualdpab_listconnectors
label: List Connectors for Source l2dualdpab
kind: query
command: '{ "jsonrpc": "2.0", "method": "image.source.l2dualdpab.listconnectors" }'
params: []
- id: image_source_l2dualdpac_listconnectors
label: List Connectors for Source l2dualdpac
kind: query
command: '{ "jsonrpc": "2.0", "method": "image.source.l2dualdpac.listconnectors" }'
params: []
- id: image_source_l2dualdpbd_listconnectors
label: List Connectors for Source l2dualdpbd
kind: query
command: '{ "jsonrpc": "2.0", "method": "image.source.l2dualdpbd.listconnectors" }'
params: []
- id: image_source_l2dualdpcd_listconnectors
label: List Connectors for Source l2dualdpcd
kind: query
command: '{ "jsonrpc": "2.0", "method": "image.source.l2dualdpcd.listconnectors" }'
params: []
- id: image_source_l2dualheaddpac_listconnectors
label: List Connectors for Source l2dualheaddpac
kind: query
command: '{ "jsonrpc": "2.0", "method": "image.source.l2dualheaddpac.listconnectors" }'
params: []
- id: image_source_l2dualheaddpbd_listconnectors
label: List Connectors for Source l2dualheaddpbd
kind: query
command: '{ "jsonrpc": "2.0", "method": "image.source.l2dualheaddpbd.listconnectors" }'
params: []
- id: image_source_l2dualheaddualdpabcd_listconnectors
label: List Connectors for Source l2dualheaddualdpabcd
kind: query
command: '{ "jsonrpc": "2.0", "method": "image.source.l2dualheaddualdpabcd.listconnectors" }'
params: []
- id: image_source_l2quadcolumndp_listconnectors
label: List Connectors for Source l2quadcolumndp
kind: query
command: '{ "jsonrpc": "2.0", "method": "image.source.l2quadcolumndp.listconnectors" }'
params: []
- id: image_source_l2quaddp_listconnectors
label: List Connectors for Source l2quaddp
kind: query
command: '{ "jsonrpc": "2.0", "method": "image.source.l2quaddp.listconnectors" }'
params: []
- id: environment_getcontrolblocks
label: Get Environment Sensors / Control Blocks
kind: query
command: '{ "jsonrpc": "2.0", "method": "environment.getcontrolblocks", "params": { "type": "Sensor", "valuetype": "Temperature" } }'
params:
- name: type
type: string
description: 'Sensor type (Sensor, Filter, Controller, Actuator, Alarm, GenericBlock)'
- name: valuetype
type: string
description: 'Value type (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 Information
kind: query
command: '{ "jsonrpc": "2.0", "method": "environment.getalarminfo" }'
params: []
- id: firmware_listcomponents
label: List Managed Firmware Components
kind: query
command: '{ "jsonrpc": "2.0", "method": "firmware.listcomponents" }'
params: []
- id: firmware_listcomponentversionstatus
label: List Firmware Components / Versions / Upgrade Status
kind: query
command: '{ "jsonrpc": "2.0", "method": "firmware.listcomponentversionstatus" }'
params: []
- id: firmware_schedulecomponentupgrade
label: Schedule Component Upgrade at Next Reboot
kind: action
command: '{ "jsonrpc": "2.0", "method": "firmware.schedulecomponentupgrade" }'
params: []
- id: illumination_clo_engage
label: Engage CLO at Current Light Level
kind: action
command: '{ "jsonrpc": "2.0", "method": "illumination.clo.engage" }'
params: []
- id: illumination_laser_getserialnumber
label: Get Laser Serial Number
kind: query
command: '{ "jsonrpc": "2.0", "method": "illumination.laser.getserialnumber" }'
params: []
- id: image_color_p7_custom_copypresettocustom
label: Copy P7 Preset to Custom
kind: action
command: '{ "jsonrpc": "2.0", "method": "image.color.p7.custom.copypresettocustom", "params": { "presetname": "{presetname}" } }'
params:
- name: presetname
type: string
- id: image_color_p7_custom_resetpreset
label: Reset P7 Preset to Defaults
kind: action
command: '{ "jsonrpc": "2.0", "method": "image.color.p7.custom.resetpreset", "params": { "presetname": "{presetname}" } }'
params:
- name: presetname
type: string
- id: image_color_p7_custom_resettonative
label: Reset P7 Custom to Native
kind: action
command: '{ "jsonrpc": "2.0", "method": "image.color.p7.custom.resettonative" }'
params: []
- id: image_color_rgbmode_nextrgbmode
label: Cycle to Next RGB Mode
kind: action
command: '{ "jsonrpc": "2.0", "method": "image.color.rgbmode.nextrgbmode" }'
params: []
- id: image_connector_l1displayport_edid_list
label: List EDIDs for Connector l1displayport
kind: query
command: '{ "jsonrpc": "2.0", "method": "image.connector.l1displayport.edid.list" }'
params: []
- id: image_connector_l1hdbaset1_edid_list
label: List EDIDs for Connector l1hdbaset1
kind: query
command: '{ "jsonrpc": "2.0", "method": "image.connector.l1hdbaset1.edid.list" }'
params: []
- id: image_connector_l1hdbaset2_edid_list
label: List EDIDs for Connector l1hdbaset2
kind: query
command: '{ "jsonrpc": "2.0", "method": "image.connector.l1hdbaset2.edid.list" }'
params: []
- id: image_connector_l1hdmi_edid_list
label: List EDIDs for Connector l1hdmi
kind: query
command: '{ "jsonrpc": "2.0", "method": "image.connector.l1hdmi.edid.list" }'
params: []
- id: image_connector_l2displayporta_edid_list
label: List EDIDs for Connector l2displayporta
kind: query
command: '{ "jsonrpc": "2.0", "method": "image.connector.l2displayporta.edid.list" }'
params: []
- id: image_connector_l2displayportb_edid_list
label: List EDIDs for Connector l2displayportb
kind: query
command: '{ "jsonrpc": "2.0", "method": "image.connector.l2displayportb.edid.list" }'
params: []
- id: image_connector_l2displayportc_edid_list
label: List EDIDs for Connector l2displayportc
kind: query
command: '{ "jsonrpc": "2.0", "method": "image.connector.l2displayportc.edid.list" }'
params: []
- id: image_connector_l2displayportd_edid_list
label: List EDIDs for Connector l2displayportd
kind: query
command: '{ "jsonrpc": "2.0", "method": "image.connector.l2displayportd.edid.list" }'
params: []
- id: image_processing_blacklevel_basicblacklevel_getblacklevelarea
label: Get Black Level Area (Before Warp)
kind: query
command: '{ "jsonrpc": "2.0", "method": "image.processing.blacklevel.basicblacklevel.getblacklevelarea" }'
params: []
- id: image_processing_blacklevel_basicblacklevel_getwarpedblacklevelarea
label: Get Warped Black Level Area
kind: query
command: '{ "jsonrpc": "2.0", "method": "image.processing.blacklevel.basicblacklevel.getwarpedblacklevelarea" }'
params: []
- id: image_processing_blacklevel_file_delete
label: Delete Black Level Correction File
kind: action
command: '{ "jsonrpc": "2.0", "method": "image.processing.blacklevel.file.delete", "params": { "filename": "{filename}" } }'
params:
- name: filename
type: string
- id: image_processing_blacklevel_file_list
label: List Black Level Correction Files
kind: query
command: '{ "jsonrpc": "2.0", "method": "image.processing.blacklevel.file.list" }'
params: []
- id: image_processing_blend_basicblend_getblendarea
label: Get Blend Area (Before Warp)
kind: query
command: '{ "jsonrpc": "2.0", "method": "image.processing.blend.basicblend.getblendarea" }'
params: []
- id: image_processing_blend_basicblend_getwarpedblendarea
label: Get Warped Blend Area
kind: query
command: '{ "jsonrpc": "2.0", "method": "image.processing.blend.basicblend.getwarpedblendarea" }'
params: []
- id: image_processing_blend_file_delete
label: Delete Blend File
kind: action
command: '{ "jsonrpc": "2.0", "method": "image.processing.blend.file.delete", "params": { "filename": "{filename}" } }'
params:
- name: filename
type: string
- id: image_processing_blend_file_list
label: List Blend Files
kind: query
command: '{ "jsonrpc": "2.0", "method": "image.processing.blend.file.list" }'
params: []
- id: image_processing_warp_file_delete
label: Delete Warp File
kind: action
command: '{ "jsonrpc": "2.0", "method": "image.processing.warp.file.delete", "params": { "filename": "{filename}" } }'
params:
- name: filename
type: string
- id: image_processing_warp_file_list
label: List Warp Files
kind: query
command: '{ "jsonrpc": "2.0", "method": "image.processing.warp.file.list" }'
params: []
- id: image_processing_warp_fourcorners_getscaledcorners
label: Get Scaled Four Corners
kind: query
command: '{ "jsonrpc": "2.0", "method": "image.processing.warp.fourcorners.getscaledcorners", "params": { "resolution": { "x": 0, "y": 0 } } }'
params:
- name: resolution
type: object
description: 'Resolution object {x: int, y: int}'
- id: image_processing_warp_warpscaledpoints
label: Warp Scaled Points
kind: query
command: '{ "jsonrpc": "2.0", "method": "image.processing.warp.warpscaledpoints", "params": { "points": [], "resolution": {} } }'
params:
- name: points
type: array
description: Array of {x,y} points
- name: resolution
type: object
description: Resolution {x,y}
- id: image_processing_warpgrid_getgrid
label: Get Current Warp Grid (Normalized)
kind: query
command: '{ "jsonrpc": "2.0", "method": "image.processing.warpgrid.getgrid" }'
params: []
- id: image_processing_warpgrid_getgridsize
label: Get Warp Grid Size
kind: query
command: '{ "jsonrpc": "2.0", "method": "image.processing.warpgrid.getgridsize" }'
params: []
- id: image_processing_warpgrid_getscaledgrid
label: Get Scaled Warp Grid
kind: query
command: '{ "jsonrpc": "2.0", "method": "image.processing.warpgrid.getscaledgrid", "params": { "resolution": { "x": 0, "y": 0 } } }'
params:
- name: resolution
type: object
- id: image_stereo_listdarktime
label: List All Possible Stereo Darktime Values (us)
kind: query
command: '{ "jsonrpc": "2.0", "method": "image.stereo.listdarktime" }'
params: []
- id: image_testpattern_file_delete
label: Delete Test Pattern File
kind: action
command: '{ "jsonrpc": "2.0", "method": "image.testpattern.file.delete", "params": { "filename": "{filename}" } }'
params:
- name: filename
type: string
- id: image_testpattern_file_list
label: List Available Custom Test Patterns
kind: query
command: '{ "jsonrpc": "2.0", "method": "image.testpattern.file.list" }'
params: []
- id: image_testpattern_list
label: List Available Test Patterns
kind: query
command: '{ "jsonrpc": "2.0", "method": "image.testpattern.list" }'
params: []
- id: image_testpattern_setproperties
label: Set Test Pattern Properties
kind: action
command: '{ "jsonrpc": "2.0", "method": "image.testpattern.setproperties", "params": { "id": "{id}", "properties": [] } }'
params:
- name: id
type: string
description: Pattern id
- name: properties
type: array
description: 'Array of {key,value} string pairs'
- id: keydispatcher_sendclickevent
label: Send Key Click Event (Press + Release)
kind: action
command: '{ "jsonrpc": "2.0", "method": "keydispatcher.sendclickevent", "params": { "key": "{key}" } }'
params:
- name: key
type: string
description: 'Key name (RC_SHUTTER_OPEN, RC_SHUTTER_CLOSE, RC_POWER_ON, RC_POWER_OFF, RC_OSD, RC_LCD, RC_PATTERN, RC_RGB, RC_ZOOM_PLUS, RC_ZOOM_MINUS, RC_SHIFT_LEFT, RC_SHIFT_UP, RC_SHIFT_RIGHT, RC_SHIFT_DOWN, RC_FOCUS_PLUS, RC_FOCUS_MINUS, RC_MENU, RC_DEFAULT, RC_BACK, RC_UP, RC_LEFT, RC_OK, RC_RIGHT, RC_DOWN, RC_ADDRESS, RC_INPUT, RC_MACRO, RC_0..RC_9, RC_ASTERISK, RC_NUMBER, KP_LEFT, KP_UP, KP_OK, KP_RIGHT, KP_DOWN, KP_MENU, KP_POWER, KP_BACK, KP_OSD, KP_LENS, KP_PATTERN, KP_SHUTTER, KP_INPUT, KP_STANDBY)'
- id: keydispatcher_sendpressevent
label: Send Key Press Event
kind: action
command: '{ "jsonrpc": "2.0", "method": "keydispatcher.sendpressevent", "params": { "key": "{key}" } }'
params:
- name: key
type: string
description: 'Key name (same enum as sendclickevent)'
- id: keydispatcher_sendreleaseevent
label: Send Key Release Event
kind: action
command: '{ "jsonrpc": "2.0", "method": "keydispatcher.sendreleaseevent", "params": { "key": "{key}" } }'
params:
- name: key
type: string
description: 'Key name (same enum as sendclickevent)'
- id: led_activity
label: Activate LEDs / Restart LED Timeout
kind: action
command: '{ "jsonrpc": "2.0", "method": "led.activity" }'
params: []
- id: led_list
label: List LEDs
kind: query
command: '{ "jsonrpc": "2.0", "method": "led.list" }'
params: []
- id: ledctrl_blink
label: Blink Status LED
kind: action
command: '{ "jsonrpc": "2.0", "method": "ledctrl.blink", "params": { "led": "systemstatus", "color": "red", "period": 42 } }'
params:
- name: led
type: string
description: 'LED name (e.g. "systemstatus")'
- name: color
type: string
description: 'LED color (e.g. "red")'
- name: period
type: integer
description: Blink period
- id: lightmeasurement_getlightoutput
label: Get Light Output (Lumens)
kind: query
command: '{ "jsonrpc": "2.0", "method": "lightmeasurement.getlightoutput" }'
params: []
- id: network_list
label: List Network Devices
kind: query
command: '{ "jsonrpc": "2.0", "method": "network.list" }'
params: []
- id: notification_dismiss
label: Dismiss Notification
kind: action
command: '{ "jsonrpc": "2.0", "method": "notification.dismiss", "params": { "id": "{id}", "response": "OK" } }'
params:
- name: id
type: string
description: Notification id
- name: response
type: string
description: 'Response (NONE, OK, CANCEL, IGNORE, YES, NO, SUPPRESS)'
- id: notification_list
label: List Active Notifications
kind: query
command: '{ "jsonrpc": "2.0", "method": "notification.list" }'
params: []
- id: notification_listsuppressed
label: List Suppressed Notification Codes
kind: query
command: '{ "jsonrpc": "2.0", "method": "notification.listsuppressed" }'
params: []
- id: notification_log
label: Get Saved Notification Log
kind: query
command: '{ "jsonrpc": "2.0", "method": "notification.log" }'
params: []
- id: notification_suppress
label: Suppress Notification Code
kind: action
command: '{ "jsonrpc": "2.0", "method": "notification.suppress", "params": { "code": "{code}" } }'
params:
- name: code
type: string
- id: notification_unsuppress
label: Unsuppress Notification Code
kind: action
command: '{ "jsonrpc": "2.0", "method": "notification.unsuppress", "params": { "code": "{code}" } }'
params:
- name: code
type: string
- id: notification_unsuppressall
label: Unsuppress All Notification Codes
kind: action
command: '{ "jsonrpc": "2.0", "method": "notification.unsuppressall" }'
params: []
- id: optics_focus_addlocation
label: Add Focus Location
kind: action
command: '{ "jsonrpc": "2.0", "method": "optics.focus.addlocation", "params": { "location": "{location}" } }'
params:
- name: location
type: string
- id: optics_focus_calibrate
label: Calibrate Focus
kind: action
command: '{ "jsonrpc": "2.0", "method": "optics.focus.calibrate" }'
params: []
- id: optics_focus_runforward
label: Run Focus Forward
kind: action
command: '{ "jsonrpc": "2.0", "method": "optics.focus.runforward" }'
params: []
- id: optics_focus_runforwardtime
label: Run Focus Forward for Time (ms)
kind: action
command: '{ "jsonrpc": "2.0", "method": "optics.focus.runforwardtime" }'
params: []
- id: optics_focus_runreverse
label: Run Focus Reverse
kind: action
command: '{ "jsonrpc": "2.0", "method": "optics.focus.runreverse" }'
params: []
- id: optics_focus_runreversetime
label: Run Focus Reverse for Time (ms)
kind: action
command: '{ "jsonrpc": "2.0", "method": "optics.focus.runreversetime" }'
params: []
- id: optics_focus_setlocation
label: Set Focus Target to Saved Location
kind: action
command: '{ "jsonrpc": "2.0", "method": "optics.focus.setlocation", "params": { "location": "{location}" } }'
params:
- name: location
type: string
- id: optics_focus_stepforward
label: Step Focus Forward
kind: action
command: '{ "jsonrpc": "2.0", "method": "optics.focus.stepforward" }'
params: []
- id: optics_focus_stepreverse
label: Step Focus Reverse
kind: action
command: '{ "jsonrpc": "2.0", "method": "optics.focus.stepreverse" }'
params: []
- id: optics_focus_stop
label: Stop Focus
kind: action
command: '{ "jsonrpc": "2.0", "method": "optics.focus.stop" }'
params: []
- id: optics_lensshift_horizontal_addlocation
label: Add Lens Shift H Location
kind: action
command: '{ "jsonrpc": "2.0", "method": "optics.lensshift.horizontal.addlocation", "params": { "location": "{location}" } }'
params:
- name: location
type: string
- id: optics_lensshift_horizontal_calibrate
label: Calibrate Lens Shift H
kind: action
command: '{ "jsonrpc": "2.0", "method": "optics.lensshift.horizontal.calibrate" }'
params: []
- id: optics_lensshift_horizontal_runforward
label: Run Lens Shift H Forward
kind: action
command: '{ "jsonrpc": "2.0", "method": "optics.lensshift.horizontal.runforward" }'
params: []
- id: optics_lensshift_horizontal_runforwardtime
label: Run Lens Shift H Forward for Time (ms)
kind: action
command: '{ "jsonrpc": "2.0", "method": "optics.lensshift.horizontal.runforwardtime" }'
params: []
- id: optics_lensshift_horizontal_runreverse
label: Run Lens Shift H Reverse
kind: action
command: '{ "jsonrpc": "2.0", "method": "optics.lensshift.horizontal.runreverse" }'
params: []
- id: optics_lensshift_horizontal_runreversetime
label: Run Lens Shift H Reverse for Time (ms)
kind: action
command: '{ "jsonrpc": "2.0", "method": "optics.lensshift.horizontal.runreversetime" }'
params: []
- id: optics_lensshift_horizontal_setlocation
label: Set Lens Shift H Target to Saved Location
kind: action
command: '{ "jsonrpc": "2.0", "method": "optics.lensshift.horizontal.setlocation", "params": { "location": "{location}" } }'
params:
- name: location
type: string
- id: optics_lensshift_horizontal_stepforward
label: Step Lens Shift H Forward
kind: action
command: '{ "jsonrpc": "2.0", "method": "optics.lensshift.horizontal.stepforward" }'
params: []
- id: optics_lensshift_horizontal_stepreverse
label: Step Lens Shift H Reverse
kind: action
command: '{ "jsonrpc": "2.0", "method": "optics.lensshift.horizontal.stepreverse" }'
params: []
- id: optics_lensshift_horizontal_stop
label: Stop Lens Shift H
kind: action
command: '{ "jsonrpc": "2.0", "method": "optics.lensshift.horizontal.stop" }'
params: []
- id: optics_lensshift_vertical_addlocation
label: Add Lens Shift V Location
kind: action
command: '{ "jsonrpc": "2.0", "method": "optics.lensshift.vertical.addlocation", "params": { "location": "{location}" } }'
params:
- name: location
type: string
- id: optics_lensshift_vertical_calibrate
label: Calibrate Lens Shift V
kind: action
command: '{ "jsonrpc": "2.0", "method": "optics.lensshift.vertical.calibrate" }'
params: []
- id: optics_lensshift_vertical_runforward
label: Run Lens Shift V Forward
kind: action
command: '{ "jsonrpc": "2.0", "method": "optics.lensshift.vertical.runforward" }'
params: []
- id: optics_lensshift_vertical_runforwardtime
label: Run Lens Shift V Forward for Time (ms)
kind: action
command: '{ "jsonrpc": "2.0", "method": "optics.lensshift.vertical.runforwardtime" }'
params: []
- id: optics_lensshift_vertical_runreverse
label: Run Lens Shift V Reverse
kind: action
command: '{ "jsonrpc": "2.0", "method": "optics.lensshift.vertical.runreverse" }'
params: []
- id: optics_lensshift_vertical_runreversetime
label: Run Lens Shift V Reverse for Time (ms)
kind: action
command: '{ "jsonrpc": "2.0", "method": "optics.lensshift.vertical.runreversetime" }'
params: []
- id: optics_lensshift_vertical_setlocation
label: Set Lens Shift V Target to Saved Location
kind: action
command: '{ "jsonrpc": "2.0", "method": "optics.lensshift.vertical.setlocation", "params": { "location": "{location}" } }'
params:
- name: location
type: string
- id: optics_lensshift_vertical_stepforward
label: Step Lens Shift V Forward
kind: action
command: '{ "jsonrpc": "2.0", "method": "optics.lensshift.vertical.stepforward" }'
params: []
- id: optics_lensshift_vertical_stepreverse
label: Step Lens Shift V Reverse
kind: action
command: '{ "jsonrpc": "2.0", "method": "optics.lensshift.vertical.stepreverse" }'
params: []
- id: optics_lensshift_vertical_stop
label: Stop Lens Shift V
kind: action
command: '{ "jsonrpc": "2.0", "method": "optics.lensshift.vertical.stop" }'
params: []
- id: optics_zoom_addlocation
label: Add Zoom Location
kind: action
command: '{ "jsonrpc": "2.0", "method": "optics.zoom.addlocation", "params": { "location": "{location}" } }'
params:
- name: location
type: string
- id: optics_zoom_calibrate
label: Calibrate Zoom
kind: action
command: '{ "jsonrpc": "2.0", "method": "optics.zoom.calibrate" }'
params: []
- id: optics_zoom_runforward
label: Run Zoom Forward
kind: action
command: '{ "jsonrpc": "2.0", "method": "optics.zoom.runforward" }'
params: []
- id: optics_zoom_runforwardtime
label: Run Zoom Forward for Time (ms)
kind: action
command: '{ "jsonrpc": "2.0", "method": "optics.zoom.runforwardtime" }'
params: []
- id: optics_zoom_runreverse
label: Run Zoom Reverse
kind: action
command: '{ "jsonrpc": "2.0", "method": "optics.zoom.runreverse" }'
params: []
- id: optics_zoom_runreversetime
label: Run Zoom Reverse for Time (ms)
kind: action
command: '{ "jsonrpc": "2.0", "method": "optics.zoom.runreversetime" }'
params: []
- id: optics_zoom_setlocation
label: Set Zoom Target to Saved Location
kind: action
command: '{ "jsonrpc": "2.0", "method": "optics.zoom.setlocation", "params": { "location": "{location}" } }'
params:
- name: location
type: string
- id: optics_zoom_stepforward
label: Step Zoom Forward
kind: action
command: '{ "jsonrpc": "2.0", "method": "optics.zoom.stepforward" }'
params: []
- id: optics_zoom_stepreverse
label: Step Zoom Reverse
kind: action
command: '{ "jsonrpc": "2.0", "method": "optics.zoom.stepreverse" }'
params: []
- id: optics_zoom_stop
label: Stop Zoom
kind: action
command: '{ "jsonrpc": "2.0", "method": "optics.zoom.stop" }'
params: []
- id: optics_getvalidlensids
label: Get Valid Lens IDs
kind: query
command: '{ "jsonrpc": "2.0", "method": "optics.getvalidlensids" }'
params: []
- id: optics_setlensid
label: Set Lens ID
kind: action
command: '{ "jsonrpc": "2.0", "method": "optics.setlensid", "params": { "lensid": 0, "powerlensid": 0 } }'
params:
- name: lensid
type: integer
- name: powerlensid
type: integer
- id: optics_shifttocenter
label: Shift Lens to Center
kind: action
command: '{ "jsonrpc": "2.0", "method": "optics.shifttocenter" }'
params: []
- id: optics_shutter_getobjectpath
label: Get Shutter Motor Object Path
kind: query
command: '{ "jsonrpc": "2.0", "method": "optics.shutter.getobjectpath" }'
params: []
- id: optics_shutter_toggle
label: Toggle Shutter Position
kind: action
command: '{ "jsonrpc": "2.0", "method": "optics.shutter.toggle" }'
params: []
- id: peripheral_frame_horizontal_calibrate
label: Calibrate Frame H
kind: action
command: '{ "jsonrpc": "2.0", "method": "peripheral.frame.horizontal.calibrate" }'
params: []
- id: peripheral_frame_horizontal_runforward
label: Run Frame H Forward
kind: action
command: '{ "jsonrpc": "2.0", "method": "peripheral.frame.horizontal.runforward" }'
params: []
- id: peripheral_frame_horizontal_runreverse
label: Run Frame H Reverse
kind: action
command: '{ "jsonrpc": "2.0", "method": "peripheral.frame.horizontal.runreverse" }'
params: []
- id: peripheral_frame_horizontal_stepforward
label: Step Frame H Forward
kind: action
command: '{ "jsonrpc": "2.0", "method": "peripheral.frame.horizontal.stepforward" }'
params: []
- id: peripheral_frame_horizontal_stepreverse
label: Step Frame H Reverse
kind: action
command: '{ "jsonrpc": "2.0", "method": "peripheral.frame.horizontal.stepreverse" }'
params: []
- id: peripheral_frame_horizontal_stop
label: Stop Frame H
kind: action
command: '{ "jsonrpc": "2.0", "method": "peripheral.frame.horizontal.stop" }'
params: []
- id: peripheral_frame_rotation_calibrate
label: Calibrate Frame Rotation
kind: action
command: '{ "jsonrpc": "2.0", "method": "peripheral.frame.rotation.calibrate" }'
params: []
- id: peripheral_frame_rotation_runforward
label: Run Frame Rotation Forward
kind: action
command: '{ "jsonrpc": "2.0", "method": "peripheral.frame.rotation.runforward" }'
params: []
- id: peripheral_frame_rotation_runreverse
label: Run Frame Rotation Reverse
kind: action
command: '{ "jsonrpc": "2.0", "method": "peripheral.frame.rotation.runreverse" }'
params: []
- id: peripheral_frame_rotation_stepforward
label: Step Frame Rotation Forward
kind: action
command: '{ "jsonrpc": "2.0", "method": "peripheral.frame.rotation.stepforward" }'
params: []
- id: peripheral_frame_rotation_stepreverse
label: Step Frame Rotation Reverse
kind: action
command: '{ "jsonrpc": "2.0", "method": "peripheral.frame.rotation.stepreverse" }'
params: []
- id: peripheral_frame_rotation_stop
label: Stop Frame Rotation
kind: action
command: '{ "jsonrpc": "2.0", "method": "peripheral.frame.rotation.stop" }'
params: []
- id: peripheral_frame_vertical_calibrate
label: Calibrate Frame V
kind: action
command: '{ "jsonrpc": "2.0", "method": "peripheral.frame.vertical.calibrate" }'
params: []
- id: peripheral_frame_vertical_runforward
label: Run Frame V Forward
kind: action
command: '{ "jsonrpc": "2.0", "method": "peripheral.frame.vertical.runforward" }'
params: []
- id: peripheral_frame_vertical_runreverse
label: Run Frame V Reverse
kind: action
command: '{ "jsonrpc": "2.0", "method": "peripheral.frame.vertical.runreverse" }'
params: []
- id: peripheral_frame_vertical_stepforward
label: Step Frame V Forward
kind: action
command: '{ "jsonrpc": "2.0", "method": "peripheral.frame.vertical.stepforward" }'
params: []
- id: peripheral_frame_vertical_stepreverse
label: Step Frame V Reverse
kind: action
command: '{ "jsonrpc": "2.0", "method": "peripheral.frame.vertical.stepreverse" }'
params: []
- id: peripheral_frame_vertical_stop
label: Stop Frame V
kind: action
command: '{ "jsonrpc": "2.0", "method": "peripheral.frame.vertical.stop" }'
params: []
- id: remotecontrol_listsensors
label: List IR Sensors
kind: query
command: '{ "jsonrpc": "2.0", "method": "remotecontrol.listsensors" }'
params: []
- id: dmx_listchannels
label: List DMX Channels
kind: query
command: '{ "jsonrpc": "2.0", "method": "dmx.listchannels" }'
params: []
- id: dmx_listmodes
label: List DMX Modes
kind: query
command: '{ "jsonrpc": "2.0", "method": "dmx.listmodes" }'
params: []
- id: statistics_listcounters
label: List All Counter Names
kind: query
command: '{ "jsonrpc": "2.0", "method": "statistics.listcounters" }'
params: []
- id: statistics_laserruntime_getname
label: Get Laser Runtime Counter Name
kind: query
command: '{ "jsonrpc": "2.0", "method": "statistics.laserruntime.getname" }'
params: []
- id: statistics_laserruntime_getunit
label: Get Laser Runtime Counter Unit
kind: query
command: '{ "jsonrpc": "2.0", "method": "statistics.laserruntime.getunit" }'
params: []
- id: statistics_laserstrikes_getname
label: Get Laser Strikes Counter Name
kind: query
command: '{ "jsonrpc": "2.0", "method": "statistics.laserstrikes.getname" }'
params: []
- id: statistics_laserstrikes_getunit
label: Get Laser Strikes Counter Unit
kind: query
command: '{ "jsonrpc": "2.0", "method": "statistics.laserstrikes.getunit" }'
params: []
- id: statistics_projectorruntime_getname
label: Get Projector Runtime Counter Name
kind: query
command: '{ "jsonrpc": "2.0", "method": "statistics.projectorruntime.getname" }'
params: []
- id: statistics_projectorruntime_getunit
label: Get Projector Runtime Counter Unit
kind: query
command: '{ "jsonrpc": "2.0", "method": "statistics.projectorruntime.getunit" }'
params: []
- id: statistics_systemtime_getname
label: Get System Time Counter Name
kind: query
command: '{ "jsonrpc": "2.0", "method": "statistics.systemtime.getname" }'
params: []
- id: statistics_systemtime_getunit
label: Get System Time Counter Unit
kind: query
command: '{ "jsonrpc": "2.0", "method": "statistics.systemtime.getunit" }'
params: []
- id: statistics_uptime_getname
label: Get Uptime Counter Name
kind: query
command: '{ "jsonrpc": "2.0", "method": "statistics.uptime.getname" }'
params: []
- id: statistics_uptime_getunit
label: Get Uptime Counter Unit
kind: query
command: '{ "jsonrpc": "2.0", "method": "statistics.uptime.getunit" }'
params: []
- id: system_license_option_flexbrightness_getmaximumlightoutputcode
label: Get Flex Brightness Maximum Light Output Code
kind: query
command: '{ "jsonrpc": "2.0", "method": "system.license.option.flexbrightness.getmaximumlightoutputcode" }'
params: []
- id: system_license_option_flexbrightness_setmaximumlightoutput
label: Set Flex Brightness Maximum Light Output
kind: action
command: '{ "jsonrpc": "2.0", "method": "system.license.option.flexbrightness.setmaximumlightoutput", "params": { "code": "{code}", "lightoutput": 0 } }'
params:
- name: code
type: string
- name: lightoutput
type: integer
- id: system_license_option_flexbrightness_setmaximumlightoutputcode
label: Set Flex Brightness Maximum Light Output Code
kind: action
command: '{ "jsonrpc": "2.0", "method": "system.license.option.flexbrightness.setmaximumlightoutputcode", "params": { "lightoutput": 0, "signature": "{signature}", "code": "{code}" } }'
params:
- name: lightoutput
type: integer
- name: signature
type: string
- name: code
type: string
- id: ui_settings_get
label: Get UI Setting Value
kind: query
command: '{ "jsonrpc": "2.0", "method": "ui.settings.get", "params": { "key": "{key}" } }'
params:
- name: key
type: string
- id: ui_settings_getfonticons
label: Get Font Icons for Category
kind: query
command: '{ "jsonrpc": "2.0", "method": "ui.settings.getfonticons", "params": { "category": "Source" } }'
params:
- name: category
type: string
description: 'Source, Connector, or TestPattern'
- id: ui_settings_geticons
label: Get SVG Icons for Category
kind: query
command: '{ "jsonrpc": "2.0", "method": "ui.settings.geticons", "params": { "category": "Source" } }'
params:
- name: category
type: string
description: 'Source, Connector, or TestPattern'
- id: ui_settings_keys
label: Get UI Setting Keys
kind: query
command: '{ "jsonrpc": "2.0", "method": "ui.settings.keys" }'
params: []
- id: ui_settings_list
label: List UI Settings (Key/Value Pairs)
kind: query
command: '{ "jsonrpc": "2.0", "method": "ui.settings.list" }'
params: []
- id: ui_settings_remove
label: Remove UI Setting
kind: action
command: '{ "jsonrpc": "2.0", "method": "ui.settings.remove", "params": { "key": "{key}" } }'
params:
- name: key
type: string
- id: ui_settings_set
label: Set UI Setting
kind: action
command: '{ "jsonrpc": "2.0", "method": "ui.settings.set", "params": { "key": "{key}", "value": "{value}" } }'
params:
- name: key
type: string
- name: value
type: string
- id: ui_togglestealthmode
label: Toggle Stealth Mode (Deprecated)
kind: action
command: '{ "jsonrpc": "2.0", "method": "ui.togglestealthmode" }'
params: []
# Serial wake-up command (ECO mode)
- id: serial_wake_from_eco
label: Wake Projector from ECO Mode via RS-232
kind: action
command: ":POWR1\r"
params: []
# HTTP file endpoints (upload/download)
- id: http_firmware_transfer_upload
label: Upload Firmware Image (HTTP POST)
kind: action
command: "curl -F file=@firmware.dat http://{projector_ip}/api/firmware/transfer"
params:
- name: file
type: string
description: Path to firmware file
- name: projector_ip
type: string
description: Projector IP address
- id: http_edid_transfer_upload
label: Upload EDID File (HTTP POST)
kind: action
command: "curl -F file=@edid.dat http://{projector_ip}/api/image/connector/edid/transfer"
params:
- name: file
type: string
- name: projector_ip
type: string
- id: http_edid_transfer_download
label: Download EDID File (HTTP GET)
kind: action
command: "curl -O -J http://{projector_ip}/api/image/connector/edid/transfer"
params:
- name: projector_ip
type: string
- id: http_blacklevel_file_transfer_upload
label: Upload Black Level File (HTTP POST)
kind: action
command: "curl -F file=@blacklevel.dat http://{projector_ip}/api/image/processing/blacklevel/file/transfer"
params:
- name: file
type: string
- name: projector_ip
type: string
- id: http_blacklevel_file_transfer_download
label: Download Black Level File (HTTP GET)
kind: action
command: "curl -O -J http://{projector_ip}/api/image/processing/blacklevel/file/transfer"
params:
- name: projector_ip
type: string
- id: http_blend_file_transfer_upload
label: Upload Blend File (HTTP POST)
kind: action
command: "curl -F file=@blend.dat http://{projector_ip}/api/image/processing/blend/file/transfer"
params:
- name: file
type: string
- name: projector_ip
type: string
- id: http_blend_file_transfer_download
label: Download Blend File (HTTP GET)
kind: action
command: "curl -O -J http://{projector_ip}/api/image/processing/blend/file/transfer"
params:
- name: projector_ip
type: string
- id: http_warp_file_transfer_upload
label: Upload Warp File (HTTP POST)
kind: action
command: "curl -F file=@warp.dat http://{projector_ip}/api/image/processing/warp/file/transfer"
params:
- name: file
type: string
- name: projector_ip
type: string
- id: http_warp_file_transfer_download
label: Download Warp File (HTTP GET)
kind: action
command: "curl -O -J http://{projector_ip}/api/image/processing/warp/file/transfer"
params:
- name: projector_ip
type: string
- id: http_testpattern_file_transfer_upload
label: Upload Test Pattern Image (HTTP POST)
kind: action
command: "curl -F file=@testpattern.dat http://{projector_ip}/api/image/testpattern/file/transfer"
params:
- name: file
type: string
- name: projector_ip
type: string
- id: http_testpattern_file_transfer_download
label: Download Test Pattern Image (HTTP GET)
kind: action
command: "curl -O -J http://{projector_ip}/api/image/testpattern/file/transfer"
params:
- name: projector_ip
type: string
- id: http_notification_logger_transfer_download
label: Download Notification Log (HTTP GET)
kind: action
command: "curl -O -J http://{projector_ip}/api/notification/logger/transfer"
params:
- name: projector_ip
type: string
Feedbacks
- id: property_changed
label: Property Changed Notification
type: notification
command: '{ "jsonrpc": "2.0", "method": "property.changed", "params": { "property": [ { "objectname.propertyname": 100 } ] } }'
params:
- name: property
type: array
description: Array of property/value pairs that changed
- id: signal_callback
label: Signal Callback Notification
type: notification
command: '{ "jsonrpc": "2.0", "method": "signal.callback", "params": { "signal": [ { "objectname.signalname": { "arg1": 100, "arg2": "cat" } } ] } }'
params:
- name: signal
type: array
description: Array of signal/argument-list pairs
- id: system_state_feedback
label: System State
type: enum
values:
- boot
- eco
- standby
- ready
- conditioning
- on
- service
- deconditioning
- error
- id: illumination_state_feedback
label: Illumination State
type: enum
values:
- On
- Off
- id: environment_alarmstate_feedback
label: Environment Alarm State
type: enum
values:
- Fatal
- Error
- Alert
- Warning
- Ok
- id: gsm_pinstate_feedback
label: GSM PIN State
type: enum
values:
- Accepted
- Failed
- Locked
- Unknown
- id: illumination_clo_availability_feedback
label: CLO Availability
type: enum
values:
- Available
- SensorUnavailable
- PendingWarmup
- Unavailable
- Unknown
- id: illumination_clo_state_feedback
label: CLO State
type: enum
values:
- Ok
- TooDim
- TooBright
- id: dmx_monitor_connectionstate_feedback
label: DMX/Artnet Connection Active
type: boolean
description: 'true if DMX or Artnet packet received in last 10 seconds'
- id: image_orientation_feedback
label: Image Orientation
type: enum
values:
- DESKTOP_FRONT
- DESKTOP_REAR
- CEILING_FRONT
- CEILING_REAR
- id: image_display_mode_feedback
label: Display Mode
type: enum
values:
- Mono
- AutoStereo
- ActiveStereo
- NightVision
- IGPixelShift
- id: optics_shutter_position_feedback
label: Shutter Position
type: enum
values:
- Open
- Closed
- id: optics_focus_state_feedback
label: Focus Motor State
type: enum
values:
- Stopped
- Running
- Calibrating
- Homing
- id: optics_zoom_state_feedback
label: Zoom Motor State
type: enum
values:
- Stopped
- Running
- Calibrating
- Homing
- id: optics_lensshift_state_feedback
label: Lens Shift Motor State
type: enum
values:
- Stopped
- Running
- Calibrating
- Homing
- id: network_device_lan_state_feedback
label: Network Device State
type: enum
values:
- CONNECTED
- DISCONNECTED
- id: notification_severity_feedback
label: Notification Severity
type: enum
values:
- INFO
- CAUTION
- WARNING
- ERROR
- CRITICAL
- id: ui_backlight_state_feedback
label: UI Backlight State
type: enum
values:
- Off
- On
- Auto
- id: ui_stealthmode_feedback
label: UI Stealth Mode
type: enum
values:
- Off
- On
Variables
# Settable properties documented in source:
- id: system_state
type: enum
values: [boot, eco, standby, ready, conditioning, on, service, deconditioning, error]
read_only: false
- id: image_window_main_source
type: string
description: Active source for main window
- id: image_brightness
type: float
constraints:
min: -1
max: 1
step_size: 1
precision: 0.01
- id: image_contrast
type: float
constraints:
min: 0
max: 2
step_size: 1
precision: 0.01
- id: image_saturation
type: float
constraints:
min: 0
max: 2
step_size: 1
precision: 0.01
- id: image_gamma
type: float
constraints:
min: 1
max: 3
step_size: 1
precision: 0.1
- id: image_sharpness
type: integer
constraints:
min: -2
max: 8
step_size: 1
precision: 1
- id: image_intensity
type: float
constraints:
min: 0
max: 1
step_size: 0.1
precision: 0.01
- id: image_orientation
type: enum
values: [DESKTOP_FRONT, DESKTOP_REAR, CEILING_FRONT, CEILING_REAR]
- id: image_display_desireddisplaymode
type: enum
values: [Mono, AutoStereo, ActiveStereo, NightVision, IGPixelShift]
- id: illumination_sources_laser_power
type: float
description: Laser power in percent
constraints:
min: 0
max: 100
- id: illumination_state
type: enum
values: [On, Off]
- id: illumination_clo_enable
type: boolean
- id: illumination_clo_scale
type: float
- id: illumination_clo_setpoint
type: float
- id: image_processing_warp_enable
type: boolean
- id: image_processing_blend_file_enable
type: boolean
- id: image_processing_blacklevel_file_enable
type: boolean
- id: image_processing_blend_scurve
type: float
constraints:
min: 1
max: 4
step_size: 1
precision: 0.1
- id: image_processing_transportdelay_desired
type: integer
- id: screen_hdrboost
type: float
constraints:
min: 0.8
max: 1.2
step_size: 0.01
precision: 0.1
- id: screen_luminance
type: float
constraints:
min: 50
max: 10000
step_size: 10
precision: 1
- id: system_initialstate
type: enum
values: [boot, eco, standby, ready, conditioning, on, service, deconditioning, error]
- id: system_eco_enable
type: boolean
- id: system_standby_enable
type: boolean
- id: system_on_timeout_duration
type: integer
- id: system_ready_timeout_duration
type: integer
- id: system_standby_timeout_duration
type: integer
- id: system_error_timeout_duration
type: integer
- id: remotecontrol_address
type: integer
constraints:
min: 1
max: 31
- id: dmx_artnet
type: boolean
- id: dmx_artnetnet
type: integer
- id: dmx_artnetuniverse
type: integer
- id: dmx_startchannel
type: integer
constraints:
min: 1
max: 512
- id: dmx_shutdown
type: boolean
- id: dmx_shutdowntimeout
type: integer
- id: ui_osd
type: boolean
- id: ui_menu
type: boolean
- id: ui_minimize
type: boolean
- id: ui_stealthmode
type: enum
values: [Off, On]
- id: ui_backlight_state
type: enum
values: [Off, On, Auto]
- id: ui_backlight_timeout
type: integer
- id: ui_poweroffhint
type: boolean
- id: ui_sourcesignal
type: boolean
- id: gsm_pin
type: string
description: PIN code for SIM card
- id: optics_shutter_target
type: enum
values: [Open, Closed]
- id: optics_focus_target
type: integer
- id: optics_zoom_target
type: integer
- id: optics_lensshift_horizontal_target
type: integer
- id: optics_lensshift_vertical_target
type: integer
Events
# Server-initiated notifications client must implement:
- id: property.changed
description: Fired when any subscribed property value changes
command: '{ "jsonrpc": "2.0", "method": "property.changed", "params": { "property": [ { "system.state": "ready" } ] } }'
- id: signal.callback
description: Fired when any subscribed signal is triggered
command: '{ "jsonrpc": "2.0", "method": "signal.callback", "params": { "signal": [ { "objectname.signalname": {} } ] } }'
- id: modelupdated
description: Fired when new objects arrive or objects are removed
command: '{ "jsonrpc": "2.0", "method": "signal.callback", "params": { "signal": [ { "introspect.objectchanged": { "object": "motors.motor1", "newobject": true } } ] } }'
- id: image_connector_edid_listchanged
description: EDID list changed for one or more connectors
- id: image_processing_blacklevel_file_listchanged
description: Black level file list changed
- id: image_processing_blend_file_listchanged
description: Blend file list changed
- id: image_processing_warp_file_listchanged
description: Warp file list changed
- id: image_processing_warpgrid_changed
description: Warp grid changed (no payload)
- id: image_processing_warpgrid_gridchanged
description: Warp grid changed with grid payload
- id: image_testpattern_added
description: New test pattern added
- id: image_testpattern_changed
description: Test pattern properties changed
- id: image_testpattern_removed
description: Test pattern removed
- id: network_added
description: Network device added
- id: network_removed
description: Network device removed
- id: notification_emitted
description: New notification emitted by device
- id: notification_dismissed
description: Notification dismissed
- id: system_identificationchanged
description: System identification changed
- id: system_license_licensechanged
description: License changed
- id: system_performed
description: Reset domains completed (emitted per domain group)
- id: ui_settings_added
description: UI setting added
- id: ui_settings_changed
description: UI setting value changed
- id: ui_settings_removed
description: UI setting removed
Macros
# Multi-step sequences described in source:
- id: warp_upload_and_enable
label: Upload and Enable Warp Grid
steps:
- Upload warp file via HTTP POST to http://{projector_ip}/api/image/processing/warp/file/transfer
- property.set image.processing.warp.file.selected to filename
- property.set image.processing.warp.file.enable to true
- property.set image.processing.warp.enable to true
- id: blend_upload_and_enable
label: Upload and Enable Blend Mask
steps:
- Upload blend file via HTTP POST to http://{projector_ip}/api/image/processing/blend/file/transfer
- property.set image.processing.blend.file.selected to filename
- property.set image.processing.blend.file.enable to true
- id: blacklevel_upload_and_enable
label: Upload and Enable Black Level Mask
steps:
- Upload black level file via HTTP POST to http://{projector_ip}/api/image/processing/blacklevel/file/transfer
- property.set image.processing.blacklevel.file.selected to filename
- property.set image.processing.blacklevel.file.enable to true
- id: edid_upload_and_select
label: Upload EDID and Select
steps:
- Upload EDID file via HTTP POST to http://{projector_ip}/api/image/connector/edid/transfer
- property.set image.connector.{name}.edid.selected to filename
- id: firmware_upload_and_upgrade
label: Upload Firmware and Schedule Upgrade
steps:
- Upload firmware via HTTP POST to http://{projector_ip}/api/firmware/transfer
- firmware.schedulecomponentupgrade (force upgrade at next reboot)
- system.reboot
- id: eco_wake_serial
label: Wake Projector from ECO via RS-232
steps:
- Send ASCII ":POWR1\r" over RS-232
- id: source_signal_subscribe_setup
label: Subscribe to Source/Connector Signal Updates
steps:
- Call image.source.list to enumerate sources
- Translate source names to object names (remove non-word chars, lowercase)
- For each source call image.source.{name}.listconnectors
- For each connector subscribe to image.connector.{name}.detectedsignal
- Subscribe to image.window.main.source for active source changes
- id: picture_settings_set
label: Set Picture Settings (brightness/contrast/saturation/gamma)
steps:
- introspect image to discover property constraints
- property.set image.brightness {value}
- property.set image.contrast {value}
- property.set image.saturation {value}
- property.set image.gamma {value}
Safety
confirmation_required_for:
- system.reboot
- system.reset
- system.resetall
- system.poweroff
interlocks: []
# UNRESOLVED: explicit safety warnings or interlock procedures not present in source beyond standard "verify state before issuing power commands"
Notes
JSON-RPC 2.0 is the sole protocol over TCP/serial. All commands use method invocation with named parameters. Properties use dot-notation (e.g. image.window.main.source). Authentication pass code shown in documentation is example value 98765 — actual credential not stated.
File upload/download uses HTTP with projector IP address and /api endpoint path. Example projector address 192.168.1.100 appears in documentation — not a default or stated value.
For ECO mode wake: send wake on LAN with MAC address, use remote/keypad, or send :POWR1\r via RS-232.
Best practice: wait for property.set confirmation before sending next property.set on same property. Subscribing does not deliver current value — use property.get to read current.
System supports three file-based image types: blend masks (PNG/JPEG/TIFF, grayscale; blue channel used if color), black level masks (PNG/JPEG/TIFF, grayscale), warp files (MCM500/400 format). Blend/blacklevel mask sizes vary by projector resolution (WUXGA 1920x1200, WQXGA/4K 1280x800, 4K Cinemascope 1280x540).
Reset domains: ImageConnector, ImageSource, ImageFeatures, ImageRealColor, ImageWarp, ImageBlend, ImageOrientation, ImageResolution, ImageStereo, ImageDisplay, ImageTestPattern, ImageConvergence, UserInterface, Optics, Illumination, Network, Screen, System, LightMeasurement, Dmx.
Key dispatcher supports RC_/KP_ prefixed key codes for remote and keypad events.
Provenance
source_domains:
- audiogeneral.com
source_urls:
- "https://www.audiogeneral.com/barco/UDX%20Series/JSON_ReferenceGuide.pdf"
retrieved_at: 2026-07-12T03:39:16.329Z
last_checked_at: 2026-07-13T06:40:27.320Z
Verification Summary
verdict: verified
checked_at: 2026-07-13T06:40:27.320Z
matched_actions: 207
action_count: 207
confidence: medium
summary: "All 207 spec actions match literal JSON-RPC methods, the RS-232 wake ASCII string, or curl file-transfer endpoints documented verbatim in source after removal of the fabricated firmware-download action; transport values (port 9090, 19200/8/N/1) confirmed. (7 unresolved item(s) noted in Known Gaps.)"
Known Gaps
- "specific model number not stated in source; derived from filename"
- "explicit safety warnings or interlock procedures not present in source beyond standard \"verify state before issuing power commands\""
- "specific model variant not stated — CRT VP family model designation unclear"
- "firmware version compatibility not stated in source"
- "authentication pass code format/entropy not stated"
- "default IP address or DHCP behavior not stated"
- "command timing / rate limiting not stated"
From the AI4AV catalog (https://ai4av.net) · ODbL-1.0