Summary
Allen & Heath dLive digital mixing system, controlled over TCP/IP via MIDI-format messages. Network port on dLive Surface or MixRack; messages follow the dLive MIDI over TCP/IP protocol. Supports fader/mute/send/scene/preamp/EQ/DCA/Mute-Group control.
Transport
protocols:
- tcp
addressing:
port: 51325 # Rendezvous port (no encryption), stated in source
auth:
type: credentials # source: TLS/SSL socket expects first message "UserProfile,UserPassword"
notes: >-
Authentication applies to the TLS/SSL socket (Rendezvous port 51327).
First data sent to dLive must be "UserProfile,UserPassword" where
UserProfile = 00 to 1F. If credentials match, unit responds with the
six characters "AuthOK"; otherwise connection is dropped.
# UNRESOLVED: source does not state whether the non-encrypted port (51325)
# requires authentication.
Traits
# - levelable (fader / send / gain / EQ control present)
# - routable (input→main assign, input→group/aux assign present)
# - queryable (get commands returning state present)
# - powerable # UNRESOLVED: no power on/off command found in source
Actions
# SysEx Header (applies to all SysEx messages) = F0 00 00 1A 50 10 01 00
# (where MV=01 Major version, mV=00 Minor version, stated in source).
# Variables: N = base MIDI channel (0-B for MIDI channels 1-12, set in
# Utility/Control/MIDI); CH = channel note number per Channel Selection
# table; LV/GV/vv = value bytes; MP = socket preamp number.
#
# Channel Selection (source table):
# Inputs 1-128 N=N, CH=00-7F
# Mono Groups 1-62 N=N+1, CH=00-3D
# Stereo Groups 1-31 N=N+1, CH=40-5E
# Mono Aux 1-62 N=N+2, CH=00-3D
# Stereo Aux 1-31 N=N+2, CH=40-5E
# Mono Matrix 1-62 N=N+3, CH=00-3D
# Stereo Matrix 1-31 N=N+3, CH=40-5E
# Mono FX Send 1-16 N=N+4, CH=00-0F
# Stereo FX Send 1-16 N=N+4, CH=10-1F
# FX Return 1-16 N=N+4, CH=20-2F
# Mains 1-6 N=N+4, CH=30-35
# DCA 1-24 N=N+4, CH=36-4D
# Mute Group 1-8 N=N+4, CH=4E-55
- id: get_fader_level
label: Get Fader Level
kind: query
command: "F0 00 00 1A 50 10 01 00 0N 05 0B 17 CH F7"
params:
- name: N
type: integer
description: Base MIDI channel 0-B (MIDI channels 1-12)
- name: CH
type: integer
description: Channel note number per Channel Selection table
notes: Unit responds with appropriate Fader Level message.
- id: set_fader_level
label: Set Fader Level
kind: action
command: "BN 63 CH [BN] 62 17 [BN] 06 LV"
params:
- name: N
type: integer
description: Base MIDI channel 0-B
- name: CH
type: integer
description: Channel note number per Channel Selection table
- name: LV
type: integer
description: Fader value -inf to +10dB = 00 to 7F
notes: NRPN with parameter ID 17.
- id: mute_on
label: Mute ON
kind: action
command: "9N CH 7F [9N] CH 00"
params:
- name: N
type: integer
description: Base MIDI channel 0-B
- name: CH
type: integer
description: Channel note number per Channel Selection table
notes: Note On velocity > 40 followed by Note Off. Running status omits [9N].
- id: mute_off
label: Mute OFF
kind: action
command: "9N CH 3F [9N] CH 00"
params:
- name: N
type: integer
description: Base MIDI channel 0-B
- name: CH
type: integer
description: Channel note number per Channel Selection table
notes: Note On velocity < 40 followed by Note Off.
- id: get_mute_status
label: Get Mute Status
kind: query
command: "F0 00 00 1A 50 10 01 00 0N 05 09 CH F7"
params:
- name: N
type: integer
description: Base MIDI channel 0-B
- name: CH
type: integer
description: Channel note number per Channel Selection table
notes: Unit responds with appropriate Channel Mute ON or OFF message.
- id: assign_main_mix_on
label: Channel Assignment to Main Mix ON
kind: action
command: "BN 63 CH [BN] 62 18 [BN] 06 7F"
params:
- name: N
type: integer
description: Base MIDI channel 0-B
- name: CH
type: integer
description: Channel note number per Channel Selection table
notes: NRPN parameter ID 18, ON value 40 to 7F (7F shown).
- id: assign_main_mix_off
label: Channel Assignment to Main Mix OFF
kind: action
command: "BN 63 CH [BN] 62 18 [BN] 06 3F"
params:
- name: N
type: integer
description: Base MIDI channel 0-B
- name: CH
type: integer
description: Channel note number per Channel Selection table
notes: NRPN parameter ID 18, OFF value 00 to 3F (3F shown).
- id: get_main_mix_assignment
label: Get Channel Assignment to Main Mix
kind: query
command: "F0 00 00 1A 50 10 01 00 0N 05 0B 18 CH F7"
params:
- name: N
type: integer
description: Base MIDI channel 0-B
- name: CH
type: integer
description: Channel note number per Channel Selection table
notes: Unit responds with appropriate Channel Assignment to Main Mix message.
- id: set_send_level
label: Set AUX/FX/Matrix Send Level
kind: action
command: "F0 00 00 1A 50 10 01 00 0N 0D CH SndN SndCH LV F7"
params:
- name: N
type: integer
description: Base MIDI channel 0-B
- name: CH
type: integer
description: Source channel note number
- name: SndN
type: integer
description: MIDI channel of the destination channel
- name: SndCH
type: integer
description: Note number of the destination channel
- name: LV
type: integer
description: Send value -inf to +10dB = 00 to 7F
notes: SndN and SndCH are MIDI channel and note number for the channel to be sent to.
- id: get_send_level
label: Get AUX/FX/Matrix Send Level
kind: query
command: "F0 00 00 1A 50 10 01 00 0N 05 0F 0D CH SndN SndCH F7"
params:
- name: N
type: integer
description: Base MIDI channel 0-B
- name: CH
type: integer
description: Source channel note number
- name: SndN
type: integer
description: Destination MIDI channel
- name: SndCH
type: integer
description: Destination note number
- id: input_to_group_aux_on
label: Input to Group/Aux ON
kind: action
command: "F0 00 00 1A 50 10 01 00 0N 0E CH SndN SndCH V F7"
params:
- name: N
type: integer
description: Base MIDI channel 0-B
- name: CH
type: integer
description: Source channel note number
- name: SndN
type: integer
description: Destination MIDI channel
- name: SndCH
type: integer
description: Destination note number
- name: V
type: integer
description: On value 40 to 7F
- id: get_input_to_group_aux
label: Get Input to Group/Aux
kind: query
command: "F0 00 00 1A 50 10 01 00 0N 05 0F 0E CH SndN SndCH F7"
params:
- name: N
type: integer
description: Base MIDI channel 0-B
- name: CH
type: integer
description: Source channel note number
- name: SndN
type: integer
description: Destination MIDI channel
- name: SndCH
type: integer
description: Destination note number
- id: set_socket_preamp_gain
label: Set Socket Preamp Gain
kind: action
command: "EN MP GV"
params:
- name: N
type: integer
description: Base MIDI channel 0-B (Pitchbend status byte E N)
- name: MP
type: integer
description: Socket preamp number (Mixrack sockets 1-64 = 00-3F; Mixrack DX 1/2 1-32 = 40-5F; Mixrack DX 3/4 1-32 = 60-7F)
- name: GV
type: integer
description: Gain value min to max = 00 to 7F
notes: Pitchbend message.
- id: get_socket_preamp_gain
label: Get Socket Preamp Gain
kind: query
command: "F0 00 00 1A 50 10 01 00 0N 05 0B 19 CH F7"
params:
- name: N
type: integer
description: Base MIDI channel 0-B
- name: CH
type: integer
description: Channel note number
notes: Unit responds with appropriate Socket Preamp Gain message.
- id: set_socket_preamp_pad
label: Set Socket Preamp Pad
kind: action
command: "F0 00 00 1A 50 10 01 00 0N 09 MP Pad F7"
params:
- name: N
type: integer
description: Base MIDI channel 0-B
- name: MP
type: integer
description: Socket preamp number
- name: Pad
type: integer
description: Pad OFF = 00 to 3F, ON = 40 to 7F
- id: get_socket_preamp_pad
label: Get Socket Preamp Pad
kind: query
command: "F0 00 00 1A 50 10 01 00 0N 07 MP F7"
params:
- name: N
type: integer
description: Base MIDI channel 0-B
- name: MP
type: integer
description: Socket preamp number
notes: Unit responds "F0 00 00 1A 50 10 01 00 0N 08 MP Pad F7" where Pad OFF=00, ON=7F.
- id: set_socket_preamp_48v
label: Set Socket Preamp 48V
kind: action
command: "F0 00 00 1A 50 10 01 00 0N 0C MP 48V F7"
params:
- name: N
type: integer
description: Base MIDI channel 0-B
- name: MP
type: integer
description: Socket preamp number
- name: 48V
type: integer
description: 48V OFF = 00 to 3F, ON = 40 to 7F
- id: get_socket_preamp_48v
label: Get Socket Preamp 48V
kind: query
command: "F0 00 00 1A 50 10 01 00 0N 0A MP F7"
params:
- name: N
type: integer
description: Base MIDI channel 0-B
- name: MP
type: integer
description: Socket preamp number
notes: Unit responds "F0 00 00 1A 50 10 01 00 0N 0B MP 48V F7" where 48V OFF=00, ON=7F.
- id: dca_assign_on
label: DCA Assignment ON
kind: action
command: "BN 63 CH [BN] 62 40 [BN] 06 DB"
params:
- name: N
type: integer
description: Base MIDI channel 0-B
- name: CH
type: integer
description: Channel note number
- name: DB
type: integer
description: ON value for DCA 1 to 24 = 40 to 57
notes: NRPN parameter ID 40.
- id: dca_assign_off
label: DCA Assignment OFF
kind: action
command: "BN 63 CH [BN] 62 40 [BN] 06 DA"
params:
- name: N
type: integer
description: Base MIDI channel 0-B
- name: CH
type: integer
description: Channel note number
- name: DA
type: integer
description: OFF value for DCA 1 to 24 = 00 to 17
notes: NRPN parameter ID 40.
- id: mute_group_assign_on
label: Mute Group Assignment ON
kind: action
command: "BN 63 CH [BN] 62 40 [BN] 06 DB"
params:
- name: N
type: integer
description: Base MIDI channel 0-B
- name: CH
type: integer
description: Channel note number
- name: DB
type: integer
description: ON value for Mute Group 1 to 8 = 58 to 5F
notes: NRPN parameter ID 40.
- id: mute_group_assign_off
label: Mute Group Assignment OFF
kind: action
command: "BN 63 CH [BN] 62 40 [BN] 06 DA"
params:
- name: N
type: integer
description: Base MIDI channel 0-B
- name: CH
type: integer
description: Channel note number
- name: DA
type: integer
description: OFF value for Mute Group 1 to 8 = 18 to 1F
notes: NRPN parameter ID 40.
- id: set_channel_name
label: Set Channel Name
kind: action
command: "F0 00 00 1A 50 10 01 00 0N 03 CH Name F7"
params:
- name: N
type: integer
description: Base MIDI channel 0-B
- name: CH
type: integer
description: Channel note number
- name: Name
type: string
description: Hex ASCII String
- id: get_channel_name
label: Get Channel Name
kind: query
command: "F0 00 00 1A 50 10 01 00 0N 01 CH F7"
params:
- name: N
type: integer
description: Base MIDI channel 0-B
- name: CH
type: integer
description: Channel note number
notes: Unit responds "F0 00 00 1A 50 10 01 00 0N 02 CH Name F7".
- id: set_channel_colour
label: Set Channel Colour
kind: action
command: "F0 00 00 1A 50 10 01 00 0N 06 CH Col F7"
params:
- name: N
type: integer
description: Base MIDI channel 0-B
- name: CH
type: integer
description: Channel note number
- name: Col
type: integer
description: Colour 00-07 (Off/Red/Green/Yellow/Blue/Purple/Lt Blue/White)
- id: get_channel_colour
label: Get Channel Colour
kind: query
command: "F0 00 00 1A 50 10 01 00 0N 04 CH F7"
params:
- name: N
type: integer
description: Base MIDI channel 0-B
- name: CH
type: integer
description: Channel note number
notes: Unit responds "F0 00 00 1A 50 10 01 00 0N 05 CH Col F7" where Col = 00 to 07.
- id: set_peq
label: Set Parametric EQ
kind: action
command: "BN 63 CH [BN] 62 nn [BN] 06 vv"
params:
- name: N
type: integer
description: Base MIDI channel 0-B
- name: CH
type: integer
description: Channel note number
- name: nn
type: integer
description: >-
Parameter ID 1A-29 depending on function and band.
Band0 Type1A Freq1B Width1C Gain1D; Band1 1E/1F/20/21;
Band2 22/23/24/25; Band3 26/27/28/29.
- name: vv
type: integer
description: Value per type (Type: Shelf00/LF Shelf01/HF Shelf02/L Pass03/H Pass04; Frequency/Gain/Width formulas in source)
notes: NRPN parameter ID between 1A and 29.
- id: get_peq
label: Get Parametric EQ
kind: query
command: "F0 00 00 1A 50 10 01 00 0N 05 0B nn CH F7"
params:
- name: N
type: integer
description: Base MIDI channel 0-B
- name: CH
type: integer
description: Channel note number
- name: nn
type: integer
description: Parameter ID 1A-29 (see PEQ table)
notes: Unit responds with appropriate Parametric EQ message.
- id: set_hpf_frequency
label: Set HPF Frequency
kind: action
command: "BN 63 CH [BN] 62 30 [BN] 06 vv"
params:
- name: N
type: integer
description: Base MIDI channel 0-B
- name: CH
type: integer
description: Channel note number
- name: vv
type: integer
description: vv = INT(127*((4608*LOG10(FREQUENCY/4)/LOG10(2))-10699)/41314)
notes: NRPN parameter ID 30.
- id: get_hpf_frequency
label: Get HPF Frequency
kind: query
command: "F0 00 00 1A 50 10 01 00 0N 05 0B 30 CH F7"
params:
- name: N
type: integer
description: Base MIDI channel 0-B
- name: CH
type: integer
description: Channel note number
- id: set_hpf_on_off
label: Set HPF On/Off
kind: action
command: "BN 63 CH [BN] 62 31 [BN] 06 HPF"
params:
- name: N
type: integer
description: Base MIDI channel 0-B
- name: CH
type: integer
description: Channel note number
- name: HPF
type: integer
description: HPF OFF = 00 to 3F, ON = 40 to 7F
notes: NRPN parameter ID 31.
- id: get_hpf_on_off
label: Get HPF On/Off
kind: query
command: "F0 00 00 1A 50 10 01 00 0N 05 0B 31 CH F7"
params:
- name: N
type: integer
description: Base MIDI channel 0-B
- name: CH
type: integer
description: Channel note number
- id: recall_scene
label: Recall Scene
kind: action
command: "BN 00 {bank} CN SS"
params:
- name: N
type: integer
description: Base MIDI channel 0-B
- name: bank
type: integer
description: >-
Scene bank 00/01/02/03. Bank 00 = Scene 1-128; Bank 01 = 129-256;
Bank 02 = 257-384; Bank 03 = 385-500.
- name: SS
type: integer
description: Scene number within bank 00-7F (refer to source scene table)
notes: >-
Bank + Program Change message. 500 Scenes across 4 banks. Bank select
CC then Program Change. dLive also transmits this message when a Scene
is recalled from the dLive screen (unsolicited).
- id: midi_strip_control
label: MIDI Strip Custom Control
kind: action
command: "{strip_control_message}"
params:
- name: strip_control_message
type: string
description: >-
Custom MIDI message assigned per strip control (factory defaults):
Fader B1 00-1F <VAR>; Rotary Gain B2 00-1F; Rotary Pan B2 20-3F;
Rotary Custom 1 B2 40-5F; Rotary Custom 2 B2 60-7F;
Rotary Custom 3 B2 40-5F; Rotary Custom 4 B2 60-7F;
Mute key 91 00-1F; Mix key 91 20-3F; PAFL key 91 40-5F.
<VAR> = value determined by control position.
notes: >-
32 MIDI Strips available within Banks. Factory defaults restored by
recalling Scene 9 within the Template Show. Sel key excluded (used to
select Processing screen). By default Rotary Custom 3 uses same values
as Rotary Custom 1, and Custom 4 same as Custom 2.
Feedbacks
- id: fader_level_reply
type: numeric
values: "00 to 7F (-inf to +10dB)"
notes: Transmitted in response to Get Fader Level.
- id: mute_status_reply
type: enum
values: [on, off]
notes: >-
Transmitted in response to Get Mute Status. Received Mute messages:
Velocity 00 and NOTE OFF ignored; Velocity 01-3F = Mute OFF;
Velocity 40-7F = Mute ON.
- id: main_mix_assignment_reply
type: enum
values: [on, off]
notes: Response to Get Channel Assignment to Main Mix.
- id: send_level_reply
type: numeric
values: "00 to 7F"
notes: Response to Get AUX/FX/Matrix Send Level.
- id: socket_preamp_gain_reply
type: numeric
values: "00 to 7F"
notes: Response to Get Socket Preamp Gain.
- id: socket_preamp_pad_reply
type: enum
values: [off, on]
notes: Reply "SysEx Header 0N 08 MP Pad F7" where Pad OFF=00, ON=7F.
- id: socket_preamp_48v_reply
type: enum
values: [off, on]
notes: Reply "SysEx Header 0N 0B MP 48V F7" where 48V OFF=00, ON=7F.
- id: channel_name_reply
type: string
notes: Reply "SysEx Header 0N 02 CH Name F7", Name = Hex ASCII String.
- id: channel_colour_reply
type: enum
values: [off, red, green, yellow, blue, purple, lt_blue, white]
notes: Reply "SysEx Header 0N 05 CH Col F7" where Col = 00 to 07.
- id: peq_reply
type: numeric
notes: Response to Get Parametric EQ (value per nn parameter).
- id: hpf_frequency_reply
type: numeric
notes: Response to Get HPF Frequency.
- id: hpf_on_off_reply
type: enum
values: [on, off]
notes: Response to Get HPF On/Off.
- id: auth_result
type: enum
values: [AuthOK, dropped]
notes: >-
On TLS/SSL socket, unit responds with the six characters "AuthOK" if
credentials match, otherwise drops the connection.
Variables
# Settable parameters are embedded in the Actions above (LV, GV, vv, Col, Name,
# Pad, 48V, HPF, DB, DA, V, SS, bank).
# UNRESOLVED: no separately enumerated variable registry in source.
Events
- id: scene_recalled_notification
description: >-
Unit transmits the Scene Recall message when a Scene is recalled from the
dLive screen (unsolicited).
payload: "BN 00 {bank} CN SS"
- id: received_mute_note
description: >-
Unit interprets received Note messages: Velocity 00 and NOTE OFF ignored;
Velocity 01-3F = Mute OFF; Velocity 40-7F = Mute ON.
Macros
# UNRESOLVED: no multi-step sequences explicitly described in source.
Safety
confirmation_required_for: []
interlocks: []
# UNRESOLVED: source contains no explicit safety warnings, interlock procedures,
# or power-on sequencing requirements. Phantom power (48V) and preamp controls
# are present but no safety/interlock text documented in source.
Notes
- All MIDI message numbers are hexadecimal.
- SysEx Header (all SysEx messages) =
F0 00 00 1A 50 10 01 00(MV=01 Major, mV=00 Minor version). - dLive uses MIDI running status; status byte may be omitted when same as previous message. Omitted bytes shown as
[9N]/[BN]in source. - Base MIDI channel N is the lowest channel of the range selected in Utility/Control/MIDI; audio channel type selected by offsetting the MIDI channel; audio channel number selected via note number (CH).
- Preamp control, Scene recall and MIDI transport use the base MIDI channel N.
- Two rendezvous ports: TCP 51325 (no encryption) and TCP 51327 (TLS/SSL). Authentication ("UserProfile,UserPassword" → "AuthOK") applies to the TLS/SSL socket.
- PEQ frequency formula:
vv = INT(127*((4608*LOG10(FREQUENCY/4)/LOG10(2))-10699)/45922). - PEQ gain formula:
Vv = (GAIN+15)*126/30for -15dB to +15dB. - Fader Level LV dBu/Hex mapping and Preamp Gain GV dB/Hex mapping tables provided in source.
Provenance
source_domains:
- allen-heath.com
source_urls:
- https://www.allen-heath.com/content/uploads/2023/05/dLive-MIDI-Over-TCP-Protocol-V1.9.pdf
- https://www.allen-heath.com/support
retrieved_at: 2026-07-13T19:23:33.449Z
last_checked_at: 2026-10-07T13:51:22.513Z
Verification Summary
verdict: verified
checked_at: 2026-10-07T13:51:22.513Z
matched_actions: 34
action_count: 34
confidence: medium
summary: "All 34 spec actions match source frames and transport; source names dLive rather than CDM48 (same-family generic). (9 unresolved item(s) noted in Known Gaps.)"
Known Gaps
- "supplied device name \"Cdm48\" does not appear in the source; the source documents the dLive system. Model \"dLive\" populated from source; \"Cdm48\" entity kept as supplied. Confirm whether Cdm48 is a MixRack variant within the dLive family."
- "source does not state whether the non-encrypted port (51325)"
- "no power on/off command found in source"
- "no separately enumerated variable registry in source."
- "no multi-step sequences explicitly described in source."
- "source contains no explicit safety warnings, interlock procedures,"
- "device name \"Cdm48\" supplied by operator does not appear in source; source documents the dLive system. Model set to \"dLive\" from source."
- "whether non-encryption port (51325) requires authentication not stated."
- "complete scene-number / hex mapping table partially present in source but truncated; full 1-500 mapping not fully reproduced."
From the AI4AV catalog (https://ai4av.net) · ODbL-1.0