Summary
Linn AV5103 System Controller supporting RS-232 serial control. Commands use a structured format with source/group/destination identifiers, and responses are returned in two stages — initial acknowledgement within 10ms, final response within 3s depending on command complexity.
Transport
protocols:
- serial
serial:
baud_rate: 9600 # factory default; configurable: 1200/2400/4800/9600/19200/38400
data_bits: 7
parity: even
stop_bits: 1
flow_control: none
auth:
type: none # inferred: no auth procedure in source
Traits
# inferred from command set:
# - powerable: STBY (standby) command present
# - queryable: all commands support ? parameter for status queries
# - routable: AINP/VINP/DINP/MRAINP/MRVINP/MRDINP routing commands present
# - levelable: VAL command with +/-/INC/DEC for volume, balance, speaker levels
Actions
- id: mute
label: Mute
kind: action
params:
- name: state
type: enum
values: [Y, N]
description: Y=mute, N=un-mute
- id: osg
label: On Screen Graphics
kind: action
params:
- name: state
type: enum
values: [Y, N]
description: Y=on, N=off
- id: stby
label: Standby
kind: action
params:
- name: state
type: enum
values: [Y, N]
description: Y=enter standby, N=clear standby
- id: quiet
label: Quiet Mode
kind: action
params:
- name: state
type: enum
values: [Y, N]
description: Y=select quiet mode, N=clear quiet mode
- id: surr
label: Surround Mode
kind: action
params:
- name: mode
type: enum
values:
- STE # stereo
- STES # stereo with subwoofer
- PRL # pro logic
- PRLP # pro logic phantom
- PRLS # pro logic 3 stereo
- LIM3 # limbik 3
- LIM5 # limbik 5
- AC3 # DSP As Mix
- AC3P # DSP phantom
- AC3S # DSP 3 stereo
- PARTY # party mode
- NXT # next mode
description: Select surround sound mode
- id: sel
label: Select Operating Mode
kind: action
params:
- name: mode
type: enum
values: [VOL, REAR, CNTR, SUB, BAL, NXT]
description: VOL=volume, REAR=rear balance, CNTR=centre balance, SUB=subwoofer, BAL=stereo balance
- id: val
label: Set Value
kind: action
params:
- name: action
type: enum
values: [INC, DEC, ">", "<", S, nn, +?, -?, "?"]
description: "INC/DEC=increment/decrement by 1, >/<=repeat until VAL S, S=stop, nn=set value, +?=max, -?=min, ?=query"
- id: ainp
label: Select Audio Input
kind: action
params:
- name: source
type: string
description: "NONE, ANA_nn_ (1-10), DIG_n_ (1-5)"
- id: vinp
label: Select Video Input
kind: action
params:
- name: source
type: string
description: "NONE, COMP_n_ (1-8), SVHS_n_ (1-2)"
- id: dinp
label: Select Direct Input
kind: action
params:
- name: source
type: string
description: "NONE, ANA_nn_ (1-10), DIG_n_ (1-5), COMP_n_ (1-8), SVHS_n_ (1-2)"
- id: mrainp
label: Multi-Room Audio Input
kind: action
params:
- name: source
type: string
description: "NONE, ANA_nn_ (1-10), DIG_n_ (1-5)"
- id: mrvinp
label: Multi-Room Video Input
kind: action
params:
- name: source
type: string
description: "NONE, COMP_n_ (1-8), SVHS_n_ (1-2)"
- id: mrdinp
label: Multi-Room Direct Input
kind: action
params:
- name: source
type: string
description: "NONE, ANA_nn_ (1-10), DIG_n_ (1-5), COMP_n_ (1-8), SVHS_n_ (1-2)"
- id: drec
label: Direct Record
kind: action
params:
- name: input
type: string
description: "ANA1-10, DIG1-5, COMP1-8, SVHS1-2"
- name: record_output
type: string
description: "NONE, RDIG, RANA1-3, RCOMP1-2, RSVHS"
- id: rout
label: Record Connection Status
kind: action
params:
- name: connector
type: enum
values: [RANA_n_, RDIG, RCOMP_n_, RSVHS]
description: "Query record connector status"
- id: norm
label: Normalise
kind: action
params: []
- id: reset
label: Reset
kind: action
params: []
- id: clrec
label: Clear All Record Paths
kind: action
params: []
- id: set_id
label: Set Destination Identity
kind: action
params:
- name: identity
type: string
description: "Up to 8 chars, no spaces. ~ to remove."
- id: set_gid
label: Configure Group Identity
kind: action
params:
- name: identity
type: string
description: "Up to 5 group names, ~XXX to remove one, ~ to remove all"
- id: baud
label: Set Baud Rate
kind: action
params:
- name: rate
type: integer
description: "1200, 2400, 4800, 9600, 19200, or 38400"
- id: echo
label: Echo
kind: action
params:
- name: string
type: string
description: "ASCII string to echo back"
- id: poll_start
label: Poll Start
kind: action
params: []
- id: poll_id
label: Poll ID
kind: action
params: []
- id: poll_sleep
label: Poll Sleep
kind: action
params: []
- id: poll_done
label: Poll Done
kind: action
params: []
Feedbacks
# Primary response: ! (accepted) or !? (error) followed by CR LF
# Final response echoes command with current settings
#
# Query responses (?) return current state values:
# - MUTE: N or Y
# - OSG: N or Y
# - STBY: N or Y
# - QUIET: N or Y
# - SURR: current surround mode string
# - SEL: current mode string
# - VAL: current value nn
# - AINP/VINP/DINP: current source
# - ROUT: connector status (NONE, ANA1-10, DIG1-5, COMP1-8, SVHS1-2, UNAVAILABLE)
# - ID: current destination identity
# - GID: current group identities
# - BAUD: current baud rate
#
# Error responses: NAK character on framing/parity error or command > 46 chars
# UNRESOLVED: complete list of error codes/notifications
Variables
# Baud rate configurable: 1200/2400/4800/9600/19200/38400 bps
# Query current baud: $BAUD ?$ → !BAUD nn
baud_rate:
type: integer
writable: true
values: [1200, 2400, 4800, 9600, 19200, 38400]
Events
# UNRESOLVED: device sends unsolicited events (power-on message, etc.)
# Power-on message (if enabled): "LINN AV5103 SYSTEM CONTROLLER" sent on power up
Macros
# UNRESOLVED: no multi-step macro sequences described in source
Safety
confirmation_required_for: []
interlocks:
- "Standby mode (STBY Y) rejects all other commands until cleared (STBY N)"
- "AV5103 must be last product in RS-232 daisy chain (no switchable return path)"
- "Power-on sequence: press front panel + button while powering on to toggle RS-232 power-up message"
# UNRESOLVED: no explicit safety warnings in source beyond interlock behavior
Notes
Command structure: #SRC_ID#&GROUP_ID&@DEST_ID@$CMD(P)$ terminated by CR+LF.
Two-stage response: primary ! (accepted) or !? (invalid) within 10ms; final response with actual settings within 10ms–3s depending on command complexity.
When no identifiers are present, the controller ignores unrecognized commands (assumes other product on shared link).
Repeated increment/decrement operates at ~10Hz until limit reached or VAL S issued.
Record output routing via DREC returns error message if source cannot be connected.
Factory default identity: AV5103. Factory default baud: 9600.
Poll command enables auto-detection of daisy-chained Linn RS-232 devices.
Provenance
source_domains:
- docs.linn.co.uk
source_urls:
- https://docs.linn.co.uk/wiki/images/d/dc/AV5103_rs232.pdf
retrieved_at: 2026-04-30T04:32:32.379Z
last_checked_at: 2026-06-02T22:09:22.074Z
Verification Summary
verdict: verified
checked_at: 2026-06-02T22:09:22.074Z
matched_actions: 26
action_count: 26
confidence: medium
summary: "All 26 spec actions traced to source (dip-safe re-verify). (5 unresolved item(s) noted in Known Gaps.)"
Known Gaps
- "TCP/IP control not mentioned in source — serial only"
- "complete list of error codes/notifications"
- "device sends unsolicited events (power-on message, etc.)"
- "no multi-step macro sequences described in source"
- "no explicit safety warnings in source beyond interlock behavior"
From the AI4AV catalog (https://ai4av.net) · ODbL-1.0