Summary
8×10 HDMI matrix switcher with HDBaseT extension, controlled via JSON-RPC 2.0 over WebSocket, Telnet, SSH, or RS-232. Supports video/audio routing, video wall, EDID management, HDCP, display control (CEC/RS-232), IR pass-through, and receiver management.
Transport
protocols:
- tcp
- serial
addressing:
port: 80 # WS default; Telnet=23, SSH=22, WSS=443 also stated
base_url: "ws://<IP>/ws"
serial:
baud_rate: 115200
data_bits: 8
parity: none
stop_bits: 1
flow_control: null # UNRESOLVED: flow control not stated in source
auth:
type: UNRESOLVED # source does not state this (was inferred none: no auth procedure in source)
Traits
- powerable # inferred from SystemStandby.Set, Platform.Reboot
- routable # inferred from VideoSwitch.Set, AudioSwitch.Set
- queryable # inferred from numerous .Get methods
- levelable # inferred from AudioOutputVol.Set, ReceiverAnalogAudioVol.Set
Actions
- id: video_switch_set
label: Route Video Input to Output
kind: action
method: VideoSwitch.Set
params:
- name: in
type: string
description: "Input source (in1...in8, none to mute)"
- name: out
type: string
description: "Output destination (out1...out10, all)"
- id: audio_switch_set
label: Route Audio Input to Output
kind: action
method: AudioSwitch.Set
params:
- name: audioin
type: string
description: "Audio input (in1...in8, none to mute)"
- name: analogaudioout
type: string
description: "Analog audio output (out1...out8)"
- id: audio_output_mute_set
label: Mute/Unmute Audio Output
kind: action
method: AudioOutputMute.Set
params:
- name: analogaudioout
type: string
description: "Output (out1...out8)"
- name: mute
type: boolean
description: "true to mute, false to unmute"
- id: audio_output_vol_set
label: Set Audio Output Volume
kind: action
method: AudioOutputVol.Set
params:
- name: analogaudioout
type: string
description: "Output (out1...out8)"
- name: volume
type: integer
description: "Volume in dB (-80 to 0)"
- id: audio_switch_mode_set
label: Set Audio Follow Video Mode
kind: action
method: AudioSwitchMode.Set
params:
- name: followvideo
type: boolean
description: "Enable/disable audio follows video"
- id: system_standby_set
label: Set System Standby
kind: action
method: SystemStandby.Set
params:
- name: standby
type: boolean
description: "true for standby, false to wake"
- id: platform_reboot
label: Reboot Device
kind: action
method: Platform.Reboot
params: []
- id: platform_factory_reset
label: Factory Reset
kind: action
method: Platform.FactoryReset
params: []
- id: video_preset_save
label: Save Video Preset
kind: action
method: VideoPresetSave
params:
- name: preset
type: integer
description: "Preset number (1...10)"
- id: video_preset_load
label: Load Video Preset
kind: action
method: VideoPresetLoad
params:
- name: preset
type: integer
description: "Preset number (1...10)"
- id: video_preset_clear
label: Clear Video Preset
kind: action
method: VideoPreset.Clear
params:
- name: preset
type: integer
description: "Preset number (1...10)"
- id: video_preset_name_set
label: Name Video Preset
kind: action
method: VideoPresetName.Set
params:
- name: preset
type: string
description: "Preset number (1...10)"
- name: name
type: string
description: "Preset name (max 16 chars)"
- id: video_input_alias_set
label: Set Video Input Alias
kind: action
method: VideoInputAlias.Set
params:
- name: port
type: string
description: "Input port (in1...in8)"
- name: alias
type: string
description: "Alias name (max 16 chars)"
- id: video_output_alias_set
label: Set Video Output Alias
kind: action
method: VideoOutputAlias.Set
params:
- name: port
type: string
description: "Output port (out1...out10)"
- name: alias
type: string
description: "Alias name (max 16 chars)"
- id: video_hdmi_out_5v_set
label: Set HDMI Output +5V
kind: action
method: VideoHDMIOut5V.Set
params:
- name: sink
type: string
description: "Output port (out1...out10)"
- name: HDMIOut5V
type: boolean
description: "Enable/disable +5V when no signal"
- id: edid_input_set
label: Assign EDID to Input
kind: action
method: EdidInput.Set
params:
- name: source
type: string
description: "Input (in1...in8)"
- name: edidmode
type: integer
description: "EDID mode (1...26)"
- id: custom_edid_file_set
label: Upload Custom EDID
kind: action
method: CustomEdidFile.Set
params:
- name: index
type: integer
description: "Memory slot (1...5)"
- name: alias
type: string
description: "EDID name"
- name: edid
type: string
description: "Raw 512-byte EDID data"
- id: custom_edid_file_clear
label: Clear Custom EDID
kind: action
method: CustomEdidFile.Clear
params:
- name: index
type: integer
description: "Memory slot (1...5)"
- id: hdcp_compliant_set
label: Set HDCP State
kind: action
method: HdcpCompliant.Set
params:
- name: source
type: string
description: "Input (in1...in8)"
- name: hdcpCompliant
type: boolean
description: "Enable/disable HDCP"
- id: display_ctrl_cec_cmd_set
label: Send Display CEC Command
kind: action
method: DisplayCtrlCecCmd.Set
params:
- name: port
type: string
description: "Extension port (out1...out8)"
- name: cmd
type: string
description: "CEC command (poweron, poweroff, volumeup, volumedown)"
- id: display_ctrl_delay_set
label: Set Display Auto-Off Delay
kind: action
method: DisplayCtrlDelay.Set
params:
- name: port
type: string
description: "Extension port"
- name: AutocontrolDelay
type: integer
description: "Delay in minutes (1...38)"
- id: display_ctrl_rs232_set
label: Configure Display RS-232
kind: action
method: DisplayCtrlRs232.Set
params:
- name: port
type: string
description: "Port (1...8)"
- name: baudrate
type: string
description: "Baud rate (9600, 19200, 38400, 57600, 115200)"
- name: parity
type: string
description: "Parity (none, even, odd, mark)"
- name: dataBit
type: string
description: "Data bits (7, 8)"
- name: stopBit
type: string
description: "Stop bits (0, 1)"
- id: display_ctrl_rs232_cmd_send
label: Send RS-232 Command to Display
kind: action
method: DisplayCtrlRs232Cmd.Send
params:
- name: port
type: string
description: "Extension port (out1...out8)"
- name: mode
type: string
description: "Mode (str, hex)"
- name: data
type: string
description: "Command data"
- id: display_ctrl_store_cec_cmd_set
label: Store Display CEC Command
kind: action
method: DisplayCtrlStoreCecCmd.Set
params:
- name: port
type: string
description: "Extension port (out1...out8)"
- name: cmd
type: string
description: "CEC command type (poweron, poweroff, volumeup, volumedown)"
- name: data
type: string
description: "CEC command bytes"
- id: display_power_on_auto_set
label: Set Display Auto Power
kind: action
method: DisplayPowerOnAuto.Set
params:
- name: port
type: string
description: "Extension port (out1...out8)"
- name: AutocontrolEnable
type: boolean
description: "Enable/disable auto power"
- id: local_ctrl_rs232_set
label: Configure Local RS-232 Port
kind: action
method: LocalCtrlRs232.Set
params:
- name: port
type: string
description: "Port (out1...out8)"
- name: baudrate
type: string
description: "Baud rate (9600, 19200, 38400, 57600, 115200)"
- name: dataBit
type: string
description: "Data bits (7, 8)"
- name: parity
type: string
description: "Parity (NONE, ODD, EVEN)"
- name: stopBit
type: string
description: "Stop bits (1, 2)"
- id: extension_port_auto_sw_set
label: Set Extension Port Auto-Switch
kind: action
method: ExtensionPortAutoSw.Set
params:
- name: port
type: string
description: "Extension port"
- name: autoswitch
type: boolean
description: "Enable/disable auto copper/fiber detection"
- id: extension_port_ctrl_poe_set
label: Set Extension Port PoE
kind: action
method: ExtensionPortCtrlPoe.Set
params:
- name: port
type: string
description: "Extension port"
- name: PoEenable
type: boolean
description: "Enable/disable PoE"
- id: extension_port_switch_set
label: Set Extension Port Copper/Fiber
kind: action
method: ExtensionPortSwitch.Set
params:
- name: port
type: string
description: "Extension port"
- name: switch
type: string
description: "Port type (copper, fiber)"
- id: ir_ctrl_cmd_set
label: Send IR Command
kind: action
method: IRCtrlCmd.Set
params:
- name: port
type: string
description: "Extension port (out1...out8)"
- name: irdata
type: string
description: "IR data in Pronto code format"
- id: network_set
label: Configure Network
kind: action
method: Network.Set
params:
- name: ip_mode
type: string
description: "IP mode (autoip, dhcp, static)"
- name: ipaddr
type: string
description: "IP address"
- name: netmask
type: string
description: "Subnet mask"
- name: gateway
type: string
description: "Gateway address"
- id: network_hostname_set
label: Set Hostname
kind: action
method: NetworkHostname.Set
params:
- name: hostname
type: string
description: "Hostname string (empty for default)"
- id: ssh_telnet_enable_set
label: Enable/Disable SSH/Telnet
kind: action
method: SSHTelnetEnable.Set
params:
- name: enable
type: boolean
description: "true to enable, false to disable"
- id: tcp_proxy_enable_set
label: Enable/Disable TCP Proxy
kind: action
method: TCPProxyEnable.Set
params:
- name: enable
type: boolean
description: "true to enable, false to disable"
- id: web_https_enable_set
label: Enable/Disable HTTPS
kind: action
method: WebHttpsEnable.Set
params:
- name: enable
type: boolean
description: "true to enable, false to disable"
- id: system_blink_led_set
label: Set LED Blink
kind: action
method: SystemBlinkLed.Set
params:
- name: enable
type: boolean
description: "Enable/disable front panel LED blinking"
- id: time_set
label: Set System Time
kind: action
method: Time.Set
params:
- name: time
type: string
description: "Time as YYYY-MM-DD hh:mm:ss"
- id: time_ntp_set
label: Configure NTP
kind: action
method: TimeNTP.Set
params:
- name: enabled
type: boolean
description: "Enable/disable NTP"
- name: hostname
type: string
description: "NTP server hostname or IPv4"
- id: timezone_set
label: Set Timezone
kind: action
method: TimeZone.Set
params:
- name: timezone
type: string
description: "Timezone as COUNTRY(CONTINENT)/CITY"
- id: video_wall_set
label: Create Video Wall
kind: action
method: VideoWall.Set
params:
- name: walllayout
type: string
description: "Layout (2x2, 1x3, 2x4)"
- name: routedinput
type: string
description: "Input source (in1...in8, none to mute)"
- name: walloutput
type: string
description: "Comma-separated output ports (out1...out8)"
- id: video_wall_enable_set
label: Enable/Disable Video Wall
kind: action
method: VideoWallEnable.Set
params:
- name: enable
type: boolean
description: "true to enable, false to disable"
- id: video_wall_mode_set
label: Set Video Wall Display Mode
kind: action
method: VideoWallMode.Set
params:
- name: walllayout
type: string
description: "Layout (2x2, 1x3, 2x4)"
- name: wallmode
type: string
description: "Mode (wall_genlock, wall_fastswitch)"
- id: video_wall_bezel_set
label: Set Video Wall Bezel Compensation
kind: action
method: VideoWallBezel.Set
params:
- name: walllayout
type: string
description: "Layout (2x2, 1x3, 2x4)"
- name: wallbezel
type: string
description: "Bezel mm as InnerW,OuterW,InnerH,OuterH"
- id: video_wall_resolution_set
label: Set Video Wall Resolution
kind: action
method: VideoWallResolution.Set
params:
- name: walllayout
type: string
description: "Layout (2x2, 1x3, 2x4)"
- name: wallresolution
type: string
description: "Resolution (Auto, 1280x720, 1920x1080, 3840x2160, 4096x2160, etc.)"
- id: video_wall_preset_save
label: Save Video Wall Preset
kind: action
method: VideoWallPresetSave
params:
- name: preset
type: integer
description: "Preset number (1...10)"
- id: video_wall_preset_load
label: Load Video Wall Preset
kind: action
method: VideoWallPresetLoad
params:
- name: preset
type: integer
description: "Preset number (1...10)"
- id: video_wall_preset_clear
label: Clear Video Wall Preset
kind: action
method: VideoWallPreset.Clear
params:
- name: preset
type: integer
description: "Preset number (1...10)"
- id: video_wall_preset_name_set
label: Name Video Wall Preset
kind: action
method: VideoWallPresetName.Set
params:
- name: preset
type: integer
description: "Preset number (1...10)"
- name: name
type: string
description: "Preset name (max 16 chars)"
- id: receiver_analog_audio_alias_set
label: Set Receiver Audio Alias
kind: action
method: ReceiverAnalogAudioAlias.Set
params:
- name: port
type: string
description: "Extension port"
- name: alias
type: string
description: "Alias name (max 16 chars)"
- id: receiver_analog_audio_mute_set
label: Mute/Unmute Receiver Audio
kind: action
method: ReceiverAnalogAudioMute.Set
params:
- name: port
type: string
description: "Receiver output port"
- name: mute
type: boolean
description: "true to mute, false to unmute"
- id: receiver_analog_audio_vol_set
label: Set Receiver Audio Volume
kind: action
method: ReceiverAnalogAudioVol.Set
params:
- name: port
type: string
description: "Receiver output port"
- name: volume
type: integer
description: "Volume in dBVU (-80 to 0)"
- id: receiver_display_resolution_set
label: Set Receiver Display Resolution
kind: action
method: ReceiverDisplayResolution.Set
params:
- name: port
type: string
description: "Receiver port"
- name: resolution
type: string
description: "Resolution (720P, 1080P, 2160P, 4096x2160, 1024x768, etc.)"
- id: receiver_display_mode_set
label: Set Receiver Display Mode
kind: action
method: ReceiverDisplayMode.Set
params:
- name: port
type: string
description: "Receiver port"
- name: displaymode
type: string
description: "Mode (genlock, genlock_scaling, fastswitch)"
Feedbacks
- id: audio_status
label: Audio Status
method: Audio.Get
query_command: Audio.Get
type: object
description: "Audio status for each output including routed input, mute, volume"
- id: audio_input_format
label: Audio Input Format
method: AudioInputFormat.Get
query_command: AudioInputFormat.Get
type: string
description: "Source audio format for specified input (e.g. PCM;48kHZ)"
params:
- name: input
type: string
description: "Input (in1...in8)"
- id: audio_out_format
label: Audio Output Format
method: AudioOutFormat.Get
query_command: AudioOutFormat.Get
type: string
description: "Audio format for specified output"
params:
- name: output
type: string
description: "Output (out1...out8)"
- id: audio_switch_routing
label: Audio Routing
method: AudioSwitch.Get
query_command: AudioSwitch.Get
type: object
description: "Audio routing for each output and follow-video mode"
- id: video_switch_routing
label: Video Routing
method: VideoSwitch.Get
query_command: VideoSwitch.Get
type: object
description: "Current video routing state for each output"
- id: video_input_status
label: Video Input Status
method: VideoInputStatus.Get
query_command: VideoInputStatus.Get
type: object
description: "Input connection, signal, video format, HDCP status"
params:
- name: input
type: string
description: "Input (in1...in8)"
- id: video_output_status
label: Video Output Status
method: VideoOutputStatus.Get
query_command: VideoOutputStatus.Get
type: object
description: "Output connection, signal, video format, HDCP status"
params:
- name: output
type: string
description: "Output (out1...out10)"
- id: video_input_aliases
label: Video Input Aliases
method: VideoInputAlias.Get
query_command: VideoInputAlias.Get
type: array
description: "Alias names for each video input"
- id: video_output_aliases
label: Video Output Aliases
method: VideoOutputAlias.Get
query_command: VideoOutputAlias.Get
type: array
description: "Alias names for each video output"
- id: video_hdmi_out_5v
label: HDMI Output +5V Status
method: VideoHDMIOut5V.Get
query_command: VideoHDMIOut5V.Get
type: array
description: "HDMI +5V status per output"
- id: video_preset_info
label: Video Preset Info
method: VideoPresetInfo.Get
query_command: VideoPresetInfo.Get
type: array
description: "Names and info for all video presets"
- id: display_ctrl
label: Display Control Settings
method: DisplayCtrl.Get
query_command: DisplayCtrl.Get
type: object
description: "Display control config for specified output"
params:
- name: output
type: string
description: "Output (out1...out8)"
- id: edid_input
label: EDID Assignments
method: EDIDInput.Get
query_command: EDIDInput.Get
type: array
description: "Currently assigned EDID for all inputs"
- id: edid_sink_file
label: Raw EDID Data
method: EDIDSinkFile.Get
query_command: EDIDSinkFile.Get
type: object
description: "Raw EDID data for specified EDID mode"
params:
- name: edidmode
type: integer
description: "EDID mode (1...26)"
- id: custom_edid_aliases
label: Custom EDID Aliases
method: CustomEdidAlias.Get
query_command: CustomEdidAlias.Get
type: array
description: "Names of custom EDIDs from banks 21-26"
- id: hdcp_compliant_status
label: HDCP Status
method: HdcpCompliant.Get
query_command: HdcpCompliant.Get
type: array
description: "HDCP-compliant status for each input"
- id: extension_port_info
label: Extension Port Info
method: ExtensionPort.Get
query_command: ExtensionPort.Get
type: array
description: "Extension port details (PoE, link, auto-switch, active port)"
- id: receiver_info
label: Receiver Info
method: Receiver.Get
query_command: Receiver.Get
type: array
description: "Receiver connection status, audio, model, firmware, display mode"
- id: system_info
label: System Info
method: System.Get
query_command: System.Get
type: object
description: "Hardware/firmware version, model, serial, standby, temperature, fan speed, network"
- id: network_info
label: Network Settings
method: Network.Get
query_command: Network.Get
type: object
description: "IP mode, address, netmask, gateway, MAC"
- id: network_hostname
label: Hostname
method: NetworkHostname.Get
query_command: NetworkHostname.Get
type: string
description: "Current hostname"
- id: time_info
label: System Time
method: Time.Get
query_command: Time.Get
type: string
description: "Current system time"
- id: timezone_info
label: Timezone Info
method: TimeZone.Get
query_command: TimeZone.Get
type: object
description: "Available timezones and current timezone settings"
- id: video_wall_status
label: Video Wall Status
method: VideoWall.Get
query_command: VideoWall.Get
type: object
description: "Video wall configurations and enable state"
- id: video_wall_preset_info
label: Video Wall Preset Info
method: VideoWallPresetInfo.Get
query_command: VideoWallPresetInfo.Get
type: array
description: "Video wall preset details"
Variables
# UNRESOLVED: no settable continuous parameters beyond those captured as actions
Events
# UNRESOLVED: source does not document unsolicited push notifications or event subscriptions
Macros
- id: video_preset_recall
label: Video Preset Recall
description: "Load a saved video routing preset (1...10) to restore a full routing state"
steps:
- action: video_preset_load
params:
preset: integer
- id: video_wall_preset_recall
label: Video Wall Preset Recall
description: "Load a saved video wall preset (1...10)"
steps:
- action: video_wall_preset_load
params:
preset: integer
Safety
confirmation_required_for:
- platform_factory_reset
- platform_reboot
interlocks: []
# UNRESOLVED: source does not document safety interlock procedures or power-on sequencing
Notes
- JSON-RPC 2.0 protocol over WebSocket. The
idfield should follow the pattern[Namespace][Method]Resultsfor real-time web client updates (e.g.VideoSwitchSetResults), but any string works for command execution. - TCP proxy ports 9001–9008 map to EXT 1–8 for serial pass-through to connected displays.
- Video input range is in1–in8; output range is out1–out10. Audio analog output range is out1–out8.
VideoSwitch.Setaccepts"all"as output to route one input to every output."none"as input mutes an output.AudioSwitch.Setaccepts"none"as audioin to mute a line out port.- Video wall supports layouts 2×2, 1×3, 2×4 with modes
wall_genlockandwall_fastswitch. - Receiver commands only apply to connected AT-PRO5-101-RX or AT-PRO5-101-SC-RX receivers.
ReceiverDisplayResolution.Setis not compatible with video wall applications.
Provenance
source_domains:
- atlona.com
source_urls:
- https://atlona.com/pdf/AT-PRO5-MX810_API.pdf
- https://atlona.com/pdf/manuals/AT-PRO5-MX810.pdf
- https://atlona.com/pdf/data_sheet/AT-PRO5-MX810_Spec.pdf
- https://atlona.com/product/at-pro5-mx810/
- https://atlona.com/pdf/AT-UHD-PRO3-1616M_API.pdf
retrieved_at: 2026-05-22T15:23:34.834Z
last_checked_at: 2026-10-07T18:13:02.834Z
Verification Summary
verdict: verified
checked_at: 2026-10-07T18:13:02.834Z
matched_actions: 78
action_count: 78
confidence: medium
summary: "All 78 spec methods (53 actions, 25 queries) match the source's 78-method catalogue for the AT-PRO5-MX810, and the declared transport values are supported. (9 unresolved item(s) noted in Known Gaps.)"
Known Gaps
- "flow control not stated in source"
- "no settable continuous parameters beyond those captured as actions"
- "source does not document unsolicited push notifications or event subscriptions"
- "source does not document safety interlock procedures or power-on sequencing"
- "WebSocket connection lifecycle (ping/pong, reconnection) not documented"
- "Telnet/SSH command format over those transports not documented — only JSON-RPC examples shown"
- "error response format not documented"
- "maximum concurrent connection limit not stated"
- "firmware version compatibility range not stated"
From the AI4AV catalog (https://ai4av.net) · ODbL-1.0