Summary
The Integra HT-D03 is an AV receiver controllable via ISCP (Integra Serial Control Protocol) over both RS-232 and TCP/IP (eISCP). This spec covers the eISCP over Ethernet protocol (TCP port 60128 default) and the serial RS-232 interface. The protocol uses 3-character command codes with variable-length parameters. Commands cover power, volume, input selection, listening modes, tone control, multi-zone operation (Zones 2-4), tuner control, and network/USB playback.
Transport
protocols:
- tcp
- serial
addressing:
port: 60128 # default; configurable 49152-65535
serial:
baud_rate: 9600
data_bits: 8
parity: none
stop_bits: 1
flow_control: none
wiring: "3-wire RS-232C, DB9 female (pin 2=TX, pin 3=RX, pin 5=GND), straight-thru cable"
auth:
type: none # inferred: no auth procedure in source
eISCP Packet Structure (TCP)
Header (16 bytes, big-endian):
Magic: "ISCP" (4 bytes)
HdrSize: 0x00000010 (4 bytes, big-endian)
DataSize: <size of data> (4 bytes, big-endian)
Version: 0x01 (1 byte)
Reserved: 0x000000 (3 bytes)
Data (ISCP message):
Start: "!" (1 byte)
Unit: "1" (1 byte, "1" = Receiver)
Cmd: <3 chars> (3 bytes)
Param: <variable> (variable length)
End: 0x1A [0x0D 0x0A] (EOF, optional CR/LF)
RS-232 Message Format
Start: "!" Unit: "1" Cmd: <3 chars> Param: <variable> End: CR|LF|CRLF
Communication Notes
- Maintain a persistent TCP connection; status notifications are only sent on an active connection.
- Only one client connection is supported at a time.
- Minimum 50 ms interval between received messages.
- Response within 50 ms expected; if no response, communication has failed.
Traits
- powerable # PWR command: power on/standby
- queryable # QSTN parameter on most commands returns current state
- levelable # MVL master volume, tone controls, subwoofer level
- routable # SLI input selector, SLZ/SL3/SL4 zone selectors
- muteable # AMT audio muting
Actions
- id: power_on
label: Power On
kind: action
command: PWR01
params: []
- id: power_standby
label: Power Standby
kind: action
command: PWR00
params: []
- id: mute_on
label: Mute On
kind: action
command: AMT01
params: []
- id: mute_off
label: Mute Off
kind: action
command: AMT00
params: []
- id: mute_toggle
label: Mute Toggle
kind: action
command: AMTG
params: []
- id: volume_set
label: Set Master Volume
kind: action
command: MVL<level>
params:
- name: level
type: string
description: "Volume level in hex (00-64 for 0-100, or 00-50 for 0-80 range depending on model)"
- id: volume_up
label: Volume Up
kind: action
command: MVLUP
params: []
- id: volume_down
label: Volume Down
kind: action
command: MVLDOWN
params: []
- id: volume_up_1db
label: Volume Up 1dB
kind: action
command: MVLUP1
params: []
- id: volume_down_1db
label: Volume Down 1dB
kind: action
command: MVLDOWN1
params: []
- id: select_input
label: Select Input
kind: action
command: SLI<code>
params:
- name: code
type: enum
description: "Input selector code"
values:
- "00": "VIDEO1/VCR-DVR"
- "01": "VIDEO2/CBL-SAT"
- "02": "VIDEO3/GAME-TV"
- "03": "VIDEO4/AUX1"
- "04": "VIDEO5/AUX2"
- "05": "VIDEO6"
- "06": "VIDEO7"
- "10": "DVD"
- "20": "TAPE1-TV-TAPE"
- "21": "TAPE2"
- "22": "PHONO"
- "23": "CD"
- "24": "FM"
- "25": "AM"
- "26": "TUNER"
- "27": "MUSIC SERVER"
- "28": "INTERNET RADIO"
- "29": "USB-Front"
- "2A": "USB-Rear"
- "40": "UNIVERSAL PORT"
- "30": "MULTI CH"
- "31": "XM"
- "32": "SIRIUS"
- id: input_up
label: Input Selector Up
kind: action
command: SLIUP
params: []
- id: input_down
label: Input Selector Down
kind: action
command: SLIDOWN
params: []
- id: set_listening_mode
label: Set Listening Mode
kind: action
command: LMD<code>
params:
- name: code
type: enum
description: "Listening mode code (partial list)"
values:
- "00": "STEREO"
- "01": "DIRECT"
- "02": "SURROUND"
- "11": "PURE AUDIO"
- "0F": "MONO"
- "0C": "ALL CH STEREO"
- "80": "PLII-PLIIx Movie"
- "81": "PLII-PLIIx Music"
- "86": "PLII-PLIIx Game"
- "82": "Neo:6 Cinema"
- "83": "Neo:6 Music"
- "40": "5.1ch Surround-Straight Decode"
- "41": "Dolby EX-DTS ES"
- id: listening_mode_up
label: Listening Mode Up
kind: action
command: LMDUP
params: []
- id: listening_mode_down
label: Listening Mode Down
kind: action
command: LMDDOWN
params: []
- id: set_speaker_a
label: Speaker A On/Off
kind: action
command: SPA<code>
params:
- name: code
type: enum
values: ["00": "Off", "01": "On"]
- id: set_speaker_b
label: Speaker B On/Off
kind: action
command: SPB<code>
params:
- name: code
type: enum
values: ["00": "Off", "01": "On"]
- id: set_sleep_timer
label: Set Sleep Timer
kind: action
command: SLP<code>
params:
- name: code
type: string
description: "01-5A hex for 1-90 min, or OFF"
- id: set_dimmer
label: Set Dimmer Level
kind: action
command: DIM<code>
params:
- name: code
type: enum
values:
- "00": "Bright"
- "01": "Dim"
- "02": "Dark"
- "03": "Shut-Off"
- "08": "Bright and LED OFF"
- id: set_display_mode
label: Set Display Mode
kind: action
command: DIF<code>
params:
- name: code
type: enum
values:
- "00": "Selector + Volume"
- "01": "Selector + Listening Mode"
- id: set_audio_selector
label: Set Audio Selector
kind: action
command: SLA<code>
params:
- name: code
type: enum
values:
- "00": "AUTO"
- "01": "MULTI-CHANNEL"
- "02": "ANALOG"
- "04": "HDMI"
- "05": "COAX-OPT"
- id: set_tone_front_bass
label: Set Front Bass
kind: action
command: TFRB<xx>
params:
- name: xx
type: string
description: "Hex value -A to +A (-10 to +10 in 2-step increments)"
- id: set_tone_front_treble
label: Set Front Treble
kind: action
command: TFRT<xx>
params:
- name: xx
type: string
description: "Hex value -A to +A (-10 to +10 in 2-step increments)"
- id: trigger_a_on
label: 12V Trigger A On
kind: action
command: TGA01
params: []
- id: trigger_a_off
label: 12V Trigger A Off
kind: action
command: TGA00
params: []
- id: trigger_b_on
label: 12V Trigger B On
kind: action
command: TGB01
params: []
- id: trigger_b_off
label: 12V Trigger B Off
kind: action
command: TGB00
params: []
- id: trigger_c_on
label: 12V Trigger C On
kind: action
command: TGC01
params: []
- id: trigger_c_off
label: 12V Trigger C Off
kind: action
command: TGC00
params: []
- id: net_play
label: Network-USB Play
kind: action
command: NTCPLAY
params: []
- id: net_stop
label: Network-USB Stop
kind: action
command: NTCSTOP
params: []
- id: net_pause
label: Network-USB Pause
kind: action
command: NTCPAUSE
params: []
- id: net_track_up
label: Network-USB Track Up
kind: action
command: NTCTRUP
params: []
- id: net_track_down
label: Network-USB Track Down
kind: action
command: NTCTRDN
params: []
# Zone 2
- id: zone2_power_on
label: Zone 2 Power On
kind: action
command: ZPW01
params: []
- id: zone2_power_standby
label: Zone 2 Power Standby
kind: action
command: ZPW00
params: []
- id: zone2_mute_on
label: Zone 2 Mute On
kind: action
command: ZMT01
params: []
- id: zone2_mute_off
label: Zone 2 Mute Off
kind: action
command: ZMT00
params: []
- id: zone2_volume_set
label: Zone 2 Set Volume
kind: action
command: ZVL<level>
params:
- name: level
type: string
description: "Volume level in hex (00-64 or 00-50 range)"
- id: zone2_select_input
label: Zone 2 Select Input
kind: action
command: SLZ<code>
params:
- name: code
type: string
description: "Same input codes as main SLI command"
# Zone 3
- id: zone3_power_on
label: Zone 3 Power On
kind: action
command: PW301
params: []
- id: zone3_power_standby
label: Zone 3 Power Standby
kind: action
command: PW300
params: []
- id: zone3_mute_on
label: Zone 3 Mute On
kind: action
command: MT301
params: []
- id: zone3_mute_off
label: Zone 3 Mute Off
kind: action
command: MT300
params: []
- id: zone3_volume_set
label: Zone 3 Set Volume
kind: action
command: VL3<level>
params:
- name: level
type: string
description: "Volume level in hex"
- id: zone3_select_input
label: Zone 3 Select Input
kind: action
command: SL3<code>
params:
- name: code
type: string
description: "Same input codes as main SLI command"
# Zone 4
- id: zone4_power_on
label: Zone 4 Power On
kind: action
command: PW401
params: []
- id: zone4_power_standby
label: Zone 4 Power Standby
kind: action
command: PW400
params: []
- id: zone4_volume_set
label: Zone 4 Set Volume
kind: action
command: VL4<level>
params:
- name: level
type: string
description: "Volume level in hex"
- id: zone4_select_input
label: Zone 4 Select Input
kind: action
command: SL4<code>
params:
- name: code
type: string
description: "Same input codes as main SLI command"
# HDMI
- id: set_hdmi_output
label: Set HDMI Output
kind: action
command: HDO<code>
params:
- name: code
type: enum
values:
- "00": "No Analog"
- "01": "Out Main"
- "02": "Out Sub"
- "03": "Both"
- "04": "Both Main"
- "05": "Both Sub"
- id: set_resolution
label: Set Monitor Out Resolution
kind: action
command: RES<code>
params:
- name: code
type: enum
values:
- "00": "Through"
- "01": "Auto (HDMI only)"
- "02": "480p"
- "03": "720p"
- "04": "1080i"
- "05": "1080p (HDMI only)"
- "07": "1080p/24fs (HDMI only)"
- "06": "Source"
# Audyssey
- id: set_audyssey_eq
label: Set Audyssey EQ
kind: action
command: ADY<code>
params:
- name: code
type: enum
values: ["00": "Off", "01": "On"]
- id: set_audyssey_dynamic_eq
label: Set Audyssey Dynamic EQ
kind: action
command: ADQ<code>
params:
- name: code
type: enum
values: ["00": "Off", "01": "On"]
- id: set_audyssey_dynamic_volume
label: Set Audyssey Dynamic Volume
kind: action
command: ADV<code>
params:
- name: code
type: enum
values:
- "00": "Off"
- "01": "Light"
- "02": "Medium"
- "03": "Heavy"
Feedbacks
- id: power_state
type: enum
command: PWRQSTN
values: ["00": "Standby", "01": "On"]
- id: mute_state
type: enum
command: AMTQSTN
values: ["00": "Off", "01": "On"]
- id: volume_level
type: string
command: MVLQSTN
description: "Current volume level in hex"
- id: input_selector
type: string
command: SLIQSTN
description: "Current input selector code in hex"
- id: listening_mode
type: string
command: LMDQSTN
description: "Current listening mode code in hex"
- id: dimmer_level
type: enum
command: DIMQSTN
values:
- "00": "Bright"
- "01": "Dim"
- "02": "Dark"
- "03": "Shut-Off"
- "08": "Bright and LED OFF"
- id: display_mode
type: string
command: DIFQSTN
description: "Current display mode code"
- id: audio_selector
type: string
command: SLAQSTN
description: "Current audio selector code"
- id: tone_front
type: string
command: TFRQSTN
description: "Returns BxxTxx format"
- id: subwoofer_level
type: string
command: SWLQSTN
description: "Subwoofer temporary level"
- id: center_level
type: string
command: CTLQSTN
description: "Center temporary level"
- id: sleep_timer
type: string
command: SLPQSTN
description: "Current sleep timer value in hex or OFF"
- id: audio_info
type: string
command: IFAQSTN
description: "Audio information matching front panel display"
- id: video_info
type: string
command: IFVQSTN
description: "Video information matching front panel display"
- id: hdmi_output
type: string
command: HDOQSTN
description: "Current HDMI output selector code"
- id: resolution
type: string
command: RESQSTN
description: "Current monitor out resolution code"
- id: net_play_status
type: string
command: NSTQSTN
description: "3-char string: p=play status (S/P/p/F/R), r=repeat (-/R/F/1), s=shuffle (-/S/A)"
- id: net_track_info
type: string
command: NTRQSTN
description: "cccc/tttt format (current/total track)"
- id: net_time_info
type: string
command: NTMQSTN
description: "mm:ss/mm:ss format (elapsed/track time)"
- id: net_artist
type: string
command: NATQSTN
description: "Net/USB artist name (max 64 ASCII chars)"
- id: net_album
type: string
command: NALQSTN
description: "Net/USB album name (max 64 ASCII chars)"
- id: net_title
type: string
command: NTIQSTN
description: "Net/USB title name (max 64 ASCII chars)"
- id: zone2_power_state
type: enum
command: ZPWQSTN
values: ["00": "Standby", "01": "On"]
- id: zone2_mute_state
type: enum
command: ZMTQSTN
values: ["00": "Off", "01": "On"]
- id: zone2_volume_level
type: string
command: ZVLQSTN
description: "Zone 2 volume level in hex"
- id: zone2_input_selector
type: string
command: SLZQSTN
description: "Zone 2 input selector code"
- id: zone3_power_state
type: enum
command: PW3QSTN
values: ["00": "Standby", "01": "On"]
- id: zone3_mute_state
type: enum
command: MT3QSTN
values: ["00": "Off", "01": "On"]
- id: zone3_volume_level
type: string
command: VL3QSTN
description: "Zone 3 volume level in hex"
- id: zone4_power_state
type: enum
command: PW4QSTN
values: ["00": "Standby", "01": "On"]
- id: zone4_mute_state
type: enum
command: MT4QSTN
values: ["00": "Off", "01": "On"]
- id: zone4_volume_level
type: string
command: VL4QSTN
description: "Zone 4 volume level in hex"
Variables
# UNRESOLVED: all continuous parameters are expressed as discrete command codes in the ISCP protocol.
# Volume, tone, and level values are set via hex-encoded parameters in Actions above.
Events
- id: status_notification
description: >-
Unsolicited status message sent by the receiver when its state changes.
Format matches command response: !1<cmd><param>.
Example: receiver changes input -> sends "!1SLI03".
direction: device_to_controller
Macros
# UNRESOLVED: no multi-step macro sequences described in source
Safety
confirmation_required_for: []
interlocks:
- "Zone 2 volume/tone/balance only works when main zone is ON"
- "Zone 2 tone/balance only works when Zone 2 is powered or variable"
- "12V Triggers (TGA/TGB/TGC) only available when each trigger parameter is set to OFF in Setup Menu"
# UNRESOLVED: power-on sequencing requirements not stated in source
Notes
- ISCP (Integra Serial Control Protocol) uses 3-character command codes with variable-length hex parameters. The "QSTN" parameter is universally used as a query suffix on any command.
- eISCP over TCP wraps ISCP messages in a 16-byte big-endian header (magic "ISCP", header size 0x10, data size, version 0x01).
- RS-232 uses 3-wire connection (TX, RX, GND) with straight-thru cable, DB9 female connector.
- Volume levels are expressed in hexadecimal (e.g., "00"-"64" maps to 0-100 decimal).
- The receiver supports only one simultaneous TCP client connection. A persistent connection is required to receive unsolicited status change notifications.
- Minimum 50 ms between commands; receiver responds within 50 ms.
- Zone 2-4 command sets are largely parallel to the main zone commands with different command prefixes.
- Tuner (FM/AM/XM/SIRIUS/HD Radio) functions are shared across main and zone sides.
- Many commands (tone per speaker, XM, SIRIUS, HD Radio, RI system) are model-dependent and may not all apply to the HT-D03 specifically.
Provenance
source_domains:
- community.symcon.de
source_urls:
- https://community.symcon.de/uploads/short-url/7mxbIQ7qRIghfbEQrvcrEkU57ad.pdf
retrieved_at: 2026-04-29T09:20:33.420Z
last_checked_at: 2026-06-02T22:08:21.480Z
Verification Summary
verdict: verified
checked_at: 2026-06-02T22:08:21.480Z
matched_actions: 56
action_count: 56
confidence: medium
summary: "All 56 spec actions traced to source (dip-safe re-verify). (8 unresolved item(s) noted in Known Gaps.)"
Known Gaps
- "specific HT-D03 feature subset not confirmed — source is a generic Integra ISCP protocol reference, not model-specific documentation"
- "all continuous parameters are expressed as discrete command codes in the ISCP protocol."
- "no multi-step macro sequences described in source"
- "power-on sequencing requirements not stated in source"
- "exact HT-D03 command subset not confirmed — source is a generic Integra ISCP protocol reference"
- "firmware version compatibility not stated in source"
- "maximum volume range (0-100 vs 0-80) depends on model, not confirmed for HT-D03"
- "XM/SIRIUS/HD Radio command availability for HT-D03 not confirmed"
From the AI4AV catalog (https://ai4av.net) · ODbL-1.0