Summary
The Roland V-1HD+ is a 4-input HDMI video switcher/mixer with integrated audio mixing, picture-in-picture (PinP), split, and downstream key (DSK) compositing. This spec covers remote control via the RS-232 interface using ASCII command strings. The unit also exposes a USB port for remote control and a DB-9 TALLY connector for program/preview tally output.
Transport
protocols:
- serial
serial:
baud_rate: 38400 # configurable: 38400 or 115200 (RATE menu). Source states both; no single default value identified.
data_bits: 8
parity: none
stop_bits: 1
flow_control: xon_xoff # source: "Flow control XON/XOFF"; XON=11H, XOFF=13H
auth:
type: none # inferred: no auth procedure in source
# Command framing: STX (02H) + 3-char command code + ":param,param" + ";"
# Acknowledgement: ack (06H) returned for accepted commands.
# Verify ack before sending next command.
Traits
traits:
- routable # inferred: video input/output source selection (IPS, OH1, OH2, PGM, PST)
- queryable # inferred: status queries present (QAL, QPL, TLY, VER, ACS)
- levelable # inferred: volume, gain, position, key-level numeric adjustments
Actions
# Framing note: every command is prefixed with STX (ASCII 02H) and terminated with ";".
# The `command:` field shows the verbatim sent-command string as written in the source,
# with STX represented as "stx" per source notation. Parameters are substituted into
# the {a},{b} placeholders. Accepted commands return "ack" (ASCII 06H).
# ---- Video operations ----
- id: select_video_source
label: Select Video Source for INPUT 1-4
kind: action
command: "stxIPS:a,b;"
params:
- name: a
type: integer
description: "Input connector: 0 (INPUT 1), 1 (INPUT 2), 2 (INPUT 3), 3 (INPUT 4)"
- name: b
type: integer
description: "Source type: 0 (HDMI), 1 (STILL 1), 2 (STILL 2), 3 (STILL 3), 4 (STILL 4)"
- id: select_output_1
label: Select Video Output from OUTPUT 1 Connector
kind: action
command: "stxOH1:a;"
params:
- name: a
type: integer
description: "0 (PGM), 1 (PVW), 2 (Multi-View)"
- id: select_output_2
label: Select Video Output from OUTPUT 2 Connector
kind: action
command: "stxOH2:a;"
params:
- name: a
type: integer
description: "0 (PGM), 1 (PVW), 2 (Multi-View)"
- id: select_pgm
label: Select Final Output Video (PGM)
kind: action
command: "stxPGM:a;"
params:
- name: a
type: integer
description: "0 (INPUT 1), 1 (INPUT 2), 2 (INPUT 3), 3 (INPUT 4)"
- id: select_pvw
label: Select Preview Output Video (PST)
kind: action
command: "stxPST:a;"
params:
- name: a
type: integer
description: "0 (INPUT 1), 1 (INPUT 2), 2 (INPUT 3), 3 (INPUT 4)"
- id: select_transition_effect
label: Select Transition Effect
kind: action
command: "stxTRS:a;"
params:
- name: a
type: integer
description: "0 (MIX), 1 (WIPE)"
- id: set_transition_time
label: Set Video Transition Time
kind: action
command: "stxTIM:a;"
params:
- name: a
type: integer
description: "0 (0.0 sec) - 40 (4.0 sec)"
- id: press_cut
label: Press the CUT Button
kind: action
command: "stxCUT;"
params: []
- id: press_auto
label: Press the AUTO Button
kind: action
command: "stxATO;"
params: []
- id: press_pinp
label: Press the PinP Button
kind: action
command: "stxP1S;"
params: []
- id: press_split
label: Press the SPLIT Button
kind: action
command: "stxSPS;"
params: []
- id: press_dsk_on
label: Press the DSK ON Button
kind: action
command: "stxDSK;"
params: []
- id: press_dsk_pvw
label: Press the DSK PVW Button
kind: action
command: "stxDVW;"
params: []
- id: pinp_adjust_position
label: PinP Adjust Position of Inset Screen
kind: action
command: "stxPP1:a,b;"
params:
- name: a
type: integer
description: "Horizontal position: -500 - 500"
- name: b
type: integer
description: "Vertical position: -500 - 500"
- id: pinp_adjust_size
label: Adjust Size of the Inset Screen
kind: action
command: "stxPPS:a;"
params:
- name: a
type: integer
description: "100 (10.0%) - 1000 (100.0%)"
- id: pinp_adjust_zoom
label: Adjust Zoom Ratio of Inset Screen Video
kind: action
command: "stxPPZ:a;"
params:
- name: a
type: integer
description: "100 (100.0%) - 400 (400.0%)"
- id: set_inset_fade_time
label: Set Fade-in/out Time for the Inset Screen / Source Video
kind: action
command: "stxPTM:a;"
params:
- name: a
type: integer
description: "0 (0.0 sec) - 40 (4.0 sec). Source lists PTM for both PinP inset fade and DSK source-video fade."
notes: "Source documents this opcode (PTM) under both the PinP section (inset screen fade) and the DSK section (source video fade). Same opcode; treated as one action."
- id: split_adjust_position
label: Split Adjust Position of the Video
kind: action
command: "stxSPT:a,b;"
params:
- name: a
type: integer
description: "SPLIT V: horizontal position of left video (A/PGM bus), -500 - 500. SPLIT H: vertical position of upper video (A/PGM bus), -500 - 500."
- name: b
type: integer
description: "SPLIT V: horizontal position of right video (B/PST bus), -500 - 500. SPLIT H: vertical position of lower video (B/PST bus), -500 - 500."
- id: split_adjust_boundary
label: Adjust the Boundary Position (Split)
kind: action
command: "stxSCP:a;"
params:
- name: a
type: integer
description: "-500 - 500"
- id: dsk_adjust_key_level
label: DSK Adjust the Key Level (amount of extraction)
kind: action
command: "stxKYL:a;"
params:
- name: a
type: integer
description: "0 - 255"
- id: dsk_adjust_key_gain
label: DSK Adjust the Key Gain (semi-transmissive region)
kind: action
command: "stxKYG:a;"
params:
- name: a
type: integer
description: "0 - 255"
- id: turn_output_fade
label: Turn the OUTPUT FADE Knob
kind: action
command: "stxOFD:a;"
params:
- name: a
type: integer
description: "-63 - 64"
# ---- Audio operations ----
- id: adjust_input_volume
label: Adjust the Input Volume Level
kind: action
command: "stxIAL:a,b;"
params:
- name: a
type: integer
description: "0 (INPUT 1), 1 (INPUT 2), 2 (INPUT 3), 3 (INPUT 4), 4 (AUDIO IN 1), 5 (AUDIO IN 2), 6 (LINE IN), 7 (MIC/AUX IN)"
- name: b
type: integer
description: "-801 (-INF dB), -800 (-80.0 dB) - 0 (0.0 dB) - 100 (10.0 dB)"
- id: adjust_output_volume
label: Adjust the Output Volume Level
kind: action
command: "stxOAL:a;"
params:
- name: a
type: integer
description: "-801 (-INF dB), -800 (-80.0 dB) - 0 (0.0 dB) - 100 (10.0 dB)"
- id: adjust_analog_gain
label: Adjust the Analog Gain for AUDIO IN 1/2, MIC/AUX IN
kind: action
command: "stxIAG:a,b;"
params:
- name: a
type: integer
description: "0 (INPUT 1), 1 (INPUT 2), 2 (MIC/AUX IN)"
- name: b
type: integer
description: "0 (0 dB) - 64 (64 dB) when a=0 or 1; 0 (0 dB) - 55 (55 dB) when a=2"
- id: adjust_input_audio_delay
label: Adjust Delay Time of Input Audio
kind: action
command: "stxADT:a,b;"
params:
- name: a
type: integer
description: "0 (INPUT 1), 1 (INPUT 2), 2 (INPUT 3), 3 (INPUT 4), 4 (AUDIO IN 1), 5 (AUDIO IN 2), 6 (LINE IN), 7 (MIC/AUX IN)"
- name: b
type: integer
description: "0 (0.0 ms) - 5000 (500.0 ms)"
- id: press_limiter
label: Press the LIMITER Button
kind: action
command: "stxLIM;"
params: []
- id: stereo_link_toggle
label: Long-press the SETUP Button (stereo link function on/off)
kind: action
command: "stxLNK;"
params: []
- id: set_input_mute
label: Specify the Mute Function for Input Audio
kind: action
command: "stxIAM:a,b;"
params:
- name: a
type: integer
description: "0 (INPUT 1), 1 (INPUT 2), 2 (INPUT 3), 3 (INPUT 4), 4 (AUDIO IN 1), 5 (AUDIO IN 2), 6 (LINE IN), 7 (MIC/AUX IN)"
- name: b
type: integer
description: "0 (MUTE OFF), 1 (MUTE ON)"
- id: set_input_solo
label: Specify the Solo Function for Input Audio
kind: action
command: "stxIAS:a,b;"
params:
- name: a
type: integer
description: "0 (INPUT 1), 1 (INPUT 2), 2 (INPUT 3), 3 (INPUT 4), 4 (AUDIO IN 1), 5 (AUDIO IN 2), 6 (LINE IN), 7 (MIC/AUX IN)"
- name: b
type: integer
description: "0 (SOLO OFF), 1 (SOLO ON)"
# ---- Other operations ----
- id: select_button_function
label: Select Functions for Buttons [1/5]-[4/8]
kind: action
command: "stxMOD:a;"
params:
- name: a
type: integer
description: "0 (STILL IMAGE), 1 (PinP SOURCE), 2 (MEMORY 1-4), 3 (MEMORY 5-8)"
- id: press_numbered_button
label: Press Button [1/5]-[4/8]
kind: action
command: "stxMNS:a;"
params:
- name: a
type: integer
description: "0 (1/5) - 3 (4/8)"
- id: set_hdcp
label: Set HDCP On/Off
kind: action
command: "stxHCP:a;"
params:
- name: a
type: integer
description: "0 (OFF), 1 (ON)"
- id: recall_preset_memory
label: Recall Preset Memory
kind: action
command: "stxMEM:a;"
params:
- name: a
type: integer
description: "0 (1), 1 (2), 2 (3), 3 (4), 4 (5), 5 (6), 6 (7), 7 (8)"
- id: set_memory_inset_fade_time
label: Set the Fade-in Time for the Inset Screen when Recalling a Memory
kind: action
command: "stxPFT:a;"
params:
- name: a
type: integer
description: "0 (0.0 sec) - 10 (1.0 sec)"
- id: set_test_pattern
label: Set Test Pattern
kind: action
command: "stxTPT:a;"
params:
- name: a
type: integer
description: "0 (OFF), 1 (75% COLOR BAR), 2 (100% COLOR BAR), 3 (RAMP), 4 (STEP), 5 (HATCH)"
- id: set_test_tone
label: Set Test Tone
kind: action
command: "stxTTN:a;"
params:
- name: a
type: integer
description: "0 (OFF), 1 (-20dB@1kHz: 1kHz), 2 (-10dB@1kHz: 1kHz), 3 (0dB@1kHz: 1kHz), 4 (-20dB@1kHz: 500Hz), 5 (-10dB@1kHz: 500Hz), 6 (0dB@1kHz: 500Hz)"
# ---- Query commands ----
- id: query_volume_level
label: Acquire Information on Volume Level
kind: query
command: "stxQAL:a;"
params:
- name: a
type: integer
description: "0 (INPUT 1), 1 (INPUT 2), 2 (INPUT 3), 3 (INPUT 4), 4 (AUDIO IN 1), 5 (AUDIO IN 2), 6 (LINE IN), 7 (MIC/AUX IN), 8 (ALL)"
- id: query_control_status
label: Retrieve Status of Controls
kind: query
command: "stxQPL:a;"
params:
- name: a
type: integer
description: "0 (PGM/A), 1 (PST/B), 2 (MODE 1/5-4/8), 3 (MODE), 4 (TRANSITION), 5 (SPLIT), 6 (PinP), 7 (DSK PVW), 8 (DSK ON), 9 (LIMITER), 10 (LINK), 11 (Video fade level), 12 (ALL)"
- id: query_tally_output
label: Retrieve Output Status of INPUT 1-4 (Tally)
kind: query
command: "stxTLY;"
params: []
- id: acquire_unit_status
label: Acquire Status of the Unit
kind: query
command: "stxACS;"
params: []
- id: query_version
label: Version Information
kind: query
command: "stxVER;"
params: []
Feedbacks
- id: ack
type: raw
description: "Acknowledgement. ASCII 06H (ack) returned for accepted commands. Verify before sending next command."
- id: volume_level_response
type: raw
command: "stxQAL:b;"
description: "Response to QAL query. b = -801 (-INF dB) - 100 (10.0 dB) per channel; when a=8 (ALL) returns all levels e.g. stxQAL:100,80,70,60,50,40,30,20;"
- id: control_status_response
type: raw
command: "stxQPL:b;"
description: "Response to QPL query. Values depend on a (see QPL params). When a=12 (ALL) returns all fields e.g. stxQPL:0,3,2,1,1,0,0,0,0,0,0;"
- id: tally_response
type: raw
command: "stxTLY:a,b,c,d;"
description: "Response to TLY query. a-d = 0 (Dark), 1 (Red: final output), 2 (Green: preview output) for INPUT 1-4. e.g. stxTLY:1,2,0,0;"
- id: version_response
type: raw
command: "VER:V-1HD PLUS,a;"
description: "Response to VER query. a = version number (ASCII text)."
Variables
# No discrete settable parameters beyond those enumerated as Actions.
Events
- id: error
type: raw
command: "stxERR:a;"
description: "Spontaneously sent when an error is detected. a = 0 (Syntax error: received command contains an error), 5 (Out of range error: a parameter is out of range)."
- id: flow_control_xon
type: raw
command: "XON (11H)"
description: "Flow control signal spontaneously sent from this unit."
- id: flow_control_xoff
type: raw
command: "XOFF (13H)"
description: "Flow control signal spontaneously sent from this unit."
Macros
# No multi-step sequences explicitly described in source.
Safety
confirmation_required_for: []
interlocks: []
# UNRESOLVED: no safety warnings, interlock procedures, or power-on sequencing
# requirements stated in this source excerpt. Tally output is open-collector,
# max 12 V / 200 mA per the TALLY connector specification (informational, not an interlock).
Notes
- RS-232 must be enabled: press [MENU] → "TALLY/RS-232" → set "RS-232" to "ON".
- TALLY output must be enabled separately via the same menu ("TALLY" → "ON").
- Use an RS-232 crossover cable between unit and controller. Pins 4-6 and 7-8 are cross-connected inside the unit.
- RS-232 connector: DB-9 male. TALLY connector: DB-9 female (open-collector tally, pins 2-5 = PGM/A [1]-[4], pins 6-9 = PST/B [1]-[4], pin 1 = GND).
- Command framing: STX (02H) + 3-char command code + optional ":param,param" + ";". All ASCII.
- After each command, wait for ack (06H) before sending the next.
- RATE menu offers 38400 or 115200 bps; the controlling device must match the configured rate.
- Source reference: "Roland V-1HD+ RS-232 / Tally Control Excerpt, Reference Manual, Ver 1.10 and later. © 2020 Roland Corporation."
## Provenance
```yaml
source_domains:
- static.roland.com
source_urls:
- https://static.roland.com/assets/media/pdf/V-1HD_plus_reference_eng02_W.pdf
retrieved_at: 2026-07-13T20:30:05.962Z
last_checked_at: 2026-07-22T00:42:07.496Z
Verification Summary
verdict: verified
checked_at: 2026-07-22T00:42:07.496Z
matched_actions: 42
action_count: 42
confidence: medium
summary: "All 42 spec actions matched verbatim with correct parameter shapes and ranges. Transport fully verified. Complete bidirectional coverage of source command tokens. (5 unresolved item(s) noted in Known Gaps.)"
Known Gaps
- "USB remote-control protocol details not documented in this source excerpt (USB port mentioned but no command spec given)."
- "no safety warnings, interlock procedures, or power-on sequencing"
- "USB remote-control protocol not documented in this excerpt."
- "single default baud rate not identified (source lists 38400 and 115200 without marking a default)."
- "firmware version compatibility range not stated."
From the AI4AV catalog (https://ai4av.net) · ODbL-1.0