Summary
Spec covers Rotel RA-6000 integrated amplifier over RS-232 serial and TCP/IP. ASCII command protocol, terminating "!" on commands and "$" on responses. Document v1.00, dated August 9, 2022.
Transport
protocols:
- serial
- tcp
serial:
baud_rate: 115200
data_bits: 8
parity: none
stop_bits: 1
flow_control: none
addressing:
port: 9590
auth:
type: none # inferred: no auth procedure in source
Traits
- powerable # inferred from power on/off/toggle commands
- routable # inferred from source selection commands
- queryable # inferred from "?" query commands
- levelable # inferred from volume, bass, treble, balance controls
Actions
# Power & Volume
- id: power_on
label: Power On
kind: action
command: "power_on!"
params: []
- id: power_off
label: Power Off
kind: action
command: "power_off!"
params: []
- id: power_toggle
label: Power Toggle
kind: action
command: "power_toggle!"
params: []
- id: vol_up
label: Volume Up
kind: action
command: "vol_up!"
params: []
- id: vol_dwn
label: Volume Down
kind: action
command: "vol_dwn!"
params: []
- id: vol_nn
label: Set Volume
kind: action
command: "vol_nn!"
params:
- name: nn
type: integer
description: Volume level 00-96
- id: mute
label: Mute Toggle
kind: action
command: "mute!"
params: []
- id: mute_on
label: Mute On
kind: action
command: "mute_on!"
params: []
- id: mute_off
label: Mute Off
kind: action
command: "mute_off!"
params: []
# Source Selection
- id: src_cd
label: Source CD
kind: action
command: "cd!"
params: []
- id: src_coax1
label: Source Coax 1
kind: action
command: "coax1!"
params: []
- id: src_coax2
label: Source Coax 2
kind: action
command: "coax2!"
params: []
- id: src_coax3
label: Source Coax 3
kind: action
command: "coax3!"
params: []
- id: src_opt1
label: Source Optical 1
kind: action
command: "opt1!"
params: []
- id: src_opt2
label: Source Optical 2
kind: action
command: "opt2!"
params: []
- id: src_opt3
label: Source Optical 3
kind: action
command: "opt3!"
params: []
- id: src_aux
label: Source Aux
kind: action
command: "aux!"
params: []
- id: src_tuner
label: Source Tuner
kind: action
command: "tuner!"
params: []
- id: src_phono
label: Source Phono
kind: action
command: "phono!"
params: []
- id: src_usb
label: Source Front USB
kind: action
command: "usb!"
params: []
- id: src_bluetooth
label: Source Bluetooth
kind: action
command: "bluetooth!"
params: []
- id: src_bal_xlr
label: Source XLR
kind: action
command: "bal_xlr!"
params: []
- id: src_pcusb
label: Source PC-USB
kind: action
command: "pcusb!"
params: []
# Source Control
- id: play
label: Play Source
kind: action
command: "play!"
params: []
- id: stop
label: Stop Source
kind: action
command: "stop!"
params: []
- id: pause
label: Pause Source
kind: action
command: "pause!"
params: []
- id: trkf
label: Track Forward / Tune Up
kind: action
command: "trkf!"
params: []
- id: trkb
label: Track Backward / Tune Down
kind: action
command: "trkb!"
params: []
# Tone Control
- id: bypass_on
label: Tone Bypass On
kind: action
command: "bypass_on!"
params: []
- id: bypass_off
label: Tone Bypass Off
kind: action
command: "bypass_off!"
params: []
- id: bass_up
label: Bass Up
kind: action
command: "bass_up!"
params: []
- id: bass_down
label: Bass Down
kind: action
command: "bass_down!"
params: []
- id: bass_minus
label: Set Bass Negative
kind: action
command: "bass_-nn!"
params:
- name: nn
type: integer
description: n = 01-10
- id: bass_zero
label: Set Bass to 0
kind: action
command: "bass_000!"
params: []
- id: bass_plus
label: Set Bass Positive
kind: action
command: "bass_+nn!"
params:
- name: nn
type: integer
description: n = 01-10
- id: treble_up
label: Treble Up
kind: action
command: "treble_up!"
params: []
- id: treble_down
label: Treble Down
kind: action
command: "treble_down!"
params: []
- id: treble_minus
label: Set Treble Negative
kind: action
command: "treble_-nn!"
params:
- name: nn
type: integer
description: n = 01-10
- id: treble_zero
label: Set Treble to 0
kind: action
command: "treble_000!"
params: []
- id: treble_plus
label: Set Treble Positive
kind: action
command: "treble_+nn!"
params:
- name: nn
type: integer
description: n = 01-10
# Balance
- id: balance_r
label: Balance Right
kind: action
command: "balance_r!"
params: []
- id: balance_l
label: Balance Left
kind: action
command: "balance_l!"
params: []
- id: balance_lnn
label: Set Balance Left
kind: action
command: "balance_lnn!"
params:
- name: nn
type: integer
description: n = 01-15
- id: balance_zero
label: Set Balance to 0
kind: action
command: "balance_000!"
params: []
- id: balance_rnn
label: Set Balance Right
kind: action
command: "balance_rnn!"
params:
- name: nn
type: integer
description: n = 01-15
# Dimmer
- id: dimmer_toggle
label: Toggle Display Dimmer
kind: action
command: "dimmer!"
params: []
- id: dimmer_0
label: Display Brightest
kind: action
command: "dimmer_0!"
params: []
- id: dimmer_1
label: Display Dimmer Level 1
kind: action
command: "dimmer_1!"
params: []
- id: dimmer_2
label: Display Dimmer Level 2
kind: action
command: "dimmer_2!"
params: []
- id: dimmer_3
label: Display Dimmer Level 3
kind: action
command: "dimmer_3!"
params: []
- id: dimmer_4
label: Display Dimmer Level 4
kind: action
command: "dimmer_4!"
params: []
- id: dimmer_5
label: Display Dimmer Level 5
kind: action
command: "dimmer_5!"
params: []
- id: dimmer_6
label: Display Dimmest
kind: action
command: "dimmer_6!"
params: []
# Feedback Mode
- id: rs232_update_on
label: RS232 Update Auto
kind: action
command: "rs232_update_on!"
params: []
- id: rs232_update_off
label: RS232 Update Manual
kind: action
command: "rs232_update_off!"
params: []
# Queries
- id: power_query
label: Power Status Query
kind: query
command: "power?"
params: []
- id: source_query
label: Source Query
kind: query
command: "source?"
params: []
- id: volume_query
label: Volume Query
kind: query
command: "volume?"
params: []
- id: mute_query
label: Mute Status Query
kind: query
command: "mute?"
params: []
- id: bypass_query
label: Tone Bypass Query
kind: query
command: "bypass?"
params: []
- id: bass_query
label: Bass Level Query
kind: query
command: "bass?"
params: []
- id: treble_query
label: Treble Level Query
kind: query
command: "treble?"
params: []
- id: balance_query
label: Balance Query
kind: query
command: "balance?"
params: []
- id: freq_query
label: Digital Input Frequency Query
kind: query
command: "freq?"
params: []
- id: dimmer_query
label: Display Dimmer Query
kind: query
command: "dimmer?"
params: []
- id: pcusb_query
label: PC-USB Class Query
kind: query
command: "pcusb?"
params: []
- id: version_query
label: Main CPU Version Query
kind: query
command: "version?"
params: []
- id: pc_version_query
label: PC-USB Version Query
kind: query
command: "pc_version?"
params: []
- id: ip_query
label: IP Address Query
kind: query
command: "ip?"
params: []
- id: mac_query
label: MAC Address Query
kind: query
command: "mac?"
params: []
- id: model_query
label: Model Number Query
kind: query
command: "model?"
params: []
- id: discover_query
label: Network Discovery Query
kind: query
command: "discover?"
params: []
Feedbacks
- id: power
type: enum
values: [on, standby]
- id: source
type: enum
values: [cd, coax1, coax2, coax3, opt1, opt2, opt3, aux, tuner, phono, usb, bluetooth, bal_xlr, pc_usb]
- id: volume
type: string
description: "2-digit volume level 00-96, format volume=##$"
- id: mute
type: enum
values: [on, off]
- id: bypass
type: enum
values: [on, off]
- id: bass
type: string
description: "bass=###$ format, range +01..+10, -01..-10, 000"
- id: treble
type: string
description: "treble=###$ format, range +01..+10, -01..-10, 000"
- id: balance
type: string
description: "balance=###$ format, l01-l15, r01-r15, 000"
- id: freq
type: enum
values: [off, "32", "44.1", "48", "88.2", "96", "176.4", "192", "384"]
- id: dimmer
type: enum
values: [0, 1, 2, 3, 4, 5, 6]
- id: pcusb_class
type: string
description: "pcusb_class=#$ format, current PC-USB class"
- id: version
type: string
description: "version=#.##$ main CPU software version"
- id: pc_version
type: string
description: "pc_version=#.##$ PC-USB software version"
- id: ipaddress
type: string
description: "ipaddress=###.###.###.###$ device IP address"
- id: mac
type: string
description: "mac=############$ MAC address, uppercase"
- id: model
type: string
description: "model=text$ Rotel model number"
- id: update_mode
type: enum
values: [auto, manual]
Variables
# Settable numeric/string parameters covered as parameterized actions above (volume, bass, treble, balance, dimmer).
# UNRESOLVED: no additional free-form variables documented beyond command parameters.
Events
# Automatic status updates when update_mode=auto. Device sends the same response strings as documented in Feedbacks.
# Triggered on: volume change, power change, source change, mute change, tone/bass/treble/balance change, dimmer change.
# Front USB metadata updates only in manual mode by default.
Macros
# UNRESOLVED: no multi-step sequences documented in source.
Safety
confirmation_required_for: []
interlocks: []
# UNRESOLVED: no safety warnings, interlocks, or power-on sequencing requirements in source.
Notes
ASCII command protocol. Commands terminate with "!" (no spaces, no CR/LF). Responses terminate with "$". RS-232 hardware has no flow control — care required to avoid packet loss. TCP control listens on port 9590 with identical command/response format. Auto-update mode (rs232_update_on!) causes device to push state-change responses unsolicited; manual mode requires explicit query.
Provenance
source_domains:
- rotel.com
source_urls:
- "https://www.rotel.com/sites/default/files/product/rs232/RA6000%20Protocol.pdf"
retrieved_at: 2026-06-30T16:08:31.711Z
last_checked_at: 2026-07-07T12:32:42.285Z
Verification Summary
verdict: verified
checked_at: 2026-07-07T12:32:42.285Z
matched_actions: 72
action_count: 72
confidence: medium
summary: "All 72 spec actions matched verbatim in source; all transport parameters verified; complete one-to-one coverage. (5 unresolved item(s) noted in Known Gaps.)"
Known Gaps
- "no firmware compatibility range stated in source"
- "no additional free-form variables documented beyond command parameters."
- "no multi-step sequences documented in source."
- "no safety warnings, interlocks, or power-on sequencing requirements in source."
- "discover? example response shows port=9596 in documentation, but IP control section states port 9590. Treat as UNRESOLVED unless clarified by vendor."
From the AI4AV catalog (https://ai4av.net) · ODbL-1.0