Summary
Shure P300 IntelliMix audio processor with Ethernet (TCP/IP) control on port 2202. ASCII command protocol using < GET|SET xx PARAM > / < REP xx PARAM > framing. Supports Dante and analog I/O, automixing, AEC, AGC, compressor, PEQ, matrix mixing, and metering. 28 audio channels across inputs, outputs, and processing blocks.
Transport
protocols:
- tcp
addressing:
port: 2202
auth:
type: none # inferred: no auth procedure in source
Traits
traits:
- powerable # inferred: reboot command present
- queryable # inferred: extensive GET/REP command set
- levelable # inferred: gain, threshold, ratio, delay controls
- routable # inferred: matrix mixer routing commands
Actions
actions:
- id: set_preset
label: Recall Preset
kind: action
command: "< SET PRESET {n} >"
params:
- name: n
type: integer
min: 1
max: 10
description: Preset number (1-10, leading zero optional on SET)
- id: mute_channel
label: Mute Channel
kind: action
command: "< SET {xx} AUDIO_MUTE ON >"
params:
- name: xx
type: integer
min: 0
max: 28
description: Channel number (00=all, 01-20, 23-28)
- id: unmute_channel
label: Unmute Channel
kind: action
command: "< SET {xx} AUDIO_MUTE OFF >"
params:
- name: xx
type: integer
min: 0
max: 28
description: Channel number (00=all, 01-20, 23-28)
- id: toggle_channel_mute
label: Toggle Channel Mute
kind: action
command: "< SET {xx} AUDIO_MUTE TOGGLE >"
params:
- name: xx
type: integer
min: 0
max: 28
description: Channel number (00=all, 01-20, 23-28)
- id: mute_device
label: Mute Device
kind: action
command: "< SET DEVICE_AUDIO_MUTE ON >"
params: []
- id: unmute_device
label: Unmute Device
kind: action
command: "< SET DEVICE_AUDIO_MUTE OFF >"
params: []
- id: toggle_device_mute
label: Toggle Device Mute
kind: action
command: "< SET DEVICE_AUDIO_MUTE TOGGLE >"
params: []
- id: set_flash_on
label: Flash Lights On
kind: action
command: "< SET FLASH ON >"
params: []
- id: set_flash_off
label: Flash Lights Off
kind: action
command: "< SET FLASH OFF >"
params: []
- id: reboot
label: Reboot Device
kind: action
command: "< SET REBOOT >"
params: []
- id: restore_defaults
label: Restore Default Settings
kind: action
command: "< SET DEFAULT_SETTINGS >"
params: []
- id: set_peq_filter
label: Set PEQ Filter Enable
kind: action
command: "< SET {xx} PEQ {yy} {state} >"
params:
- name: xx
type: integer
min: 0
max: 28
description: "PEQ block (00=all, 01-08=Dante mic in, 09-10=Dante in, 11-12=Analog in, 13=USB in, 14=Mobile in, 15-16=Dante out 1-2, 17-18=Analog out, 19=USB out, 21=automixer, 23-28=Dante out 3-8)"
- name: yy
type: integer
min: 1
max: 4
description: Filter number (01-04 for blocks 01-08/15-21; 01-02 for blocks 09-14)
- name: state
type: enum
values: [ON, OFF]
- id: set_matrix_route
label: Set Matrix Mixer Route
kind: action
command: "< SET {xx} MATRIX_MXR_ROUTE {yy} {state} >"
params:
- name: xx
type: integer
description: "Input channel (0, 01-14, 21)"
- name: yy
type: integer
description: "Output channel (0, 15-20, 23-28)"
- name: state
type: enum
values: [ON, OFF]
- id: set_aec_state
label: Set AEC State
kind: action
command: "< SET {xx} AEC {state} >"
params:
- name: xx
type: integer
description: "Channel (00=all, 01-08=Dante mic processing)"
- name: state
type: enum
values: [ON, OFF, TOGGLE]
- id: set_aec_reference
label: Set AEC Reference Signal
kind: action
command: "< SET {xx} AEC_REF {n} >"
params:
- name: xx
type: integer
description: "Channel (00 or 22)"
- name: n
type: enum
values: [DANTEOUT1, DANTEOUT2, DANTEOUT3, DANTEOUT4, DANTEOUT5, DANTEOUT6, DANTEOUT7, DANTEOUT8, ANALOGOUT1, ANALOGOUT2, DANTEIN9, DANTEIN10, ANALOGIN1, ANALOGIN2, USBIN, MOBILEIN]
- id: set_nlp_state
label: Set NLP State
kind: action
command: "< SET {xx} AEC_NLP {level} >"
params:
- name: xx
type: integer
description: "Channel (00=all, 01-08)"
- name: level
type: enum
values: [LOW, MEDIUM, HIGH]
- id: set_noise_reduction
label: Set Noise Reduction State
kind: action
command: "< SET {xx} NOISE_RED {state} >"
params:
- name: xx
type: integer
description: "Channel (00=all, 01-08)"
- name: state
type: enum
values: [ON, OFF]
- id: set_noise_reduction_level
label: Set Noise Reduction Level
kind: action
command: "< SET {xx} NOISE_RED_LVL {level} >"
params:
- name: xx
type: integer
description: "Channel (00=all, 01-08)"
- name: level
type: enum
values: [LOW, MEDIUM, HIGH]
- id: set_agc_state
label: Set AGC State
kind: action
command: "< SET {xx} AGC {state} >"
params:
- name: xx
type: integer
description: "Channel (00=all, 01-08)"
- name: state
type: enum
values: [ON, OFF, TOGGLE]
- id: set_gate_inhibit
label: Set Gate Inhibit State
kind: action
command: "< SET 22 GATE_INHIBIT {state} >"
params:
- name: state
type: enum
values: [ON, OFF, TOGGLE]
notes: Only works on firmware < 4.1.x
- id: set_automixer_mode
label: Set Automixer Mode
kind: action
command: "< SET {xx} AUTOMXR_MODE {mode} >"
params:
- name: xx
type: integer
description: "Automixer channel (00 or 21)"
- name: mode
type: enum
values: [MANUAL, GAINSHARE, GATING]
- id: set_automixer_mute
label: Set Automixer Post Gate Mute
kind: action
command: "< SET {xx} AUTOMXR_MUTE {state} >"
params:
- name: xx
type: integer
description: "Channel (00 or 21)"
- name: state
type: enum
values: [ON, OFF, TOGGLE]
- id: set_automixer_lmlo
label: Set Automixer Last Mic Lock On
kind: action
command: "< SET {xx} AUTOMXR_LMLO {state} >"
params:
- name: xx
type: integer
description: "Channel (00 or 21)"
- name: state
type: enum
values: [ON, OFF, TOGGLE]
- id: set_automixer_always_on
label: Set Automixer Channel Always On
kind: action
command: "< SET {xx} AUTOMXR_ALWAYS_ON {state} >"
params:
- name: xx
type: integer
description: "Channel (00=all, 01-08)"
- name: state
type: enum
values: [ON, OFF, TOGGLE]
- id: set_automixer_priority
label: Set Automixer Channel Priority
kind: action
command: "< SET {xx} AUTOMXR_PRIORITY {state} >"
params:
- name: xx
type: integer
description: "Channel (00=all, 01-08)"
- name: state
type: enum
values: [ON, OFF, TOGGLE]
- id: set_compressor_state
label: Set Compressor State
kind: action
command: "< SET {xx} COMPRESSOR {state} >"
params:
- name: xx
type: integer
description: "Channel (00 or 21)"
- name: state
type: enum
values: [ON, OFF, TOGGLE]
- id: set_input_meter_mode
label: Set Input Meter Display Mode
kind: action
command: "< SET INPUT_METER_MODE {mode} >"
params:
- name: mode
type: enum
values: [PRE_FADER, POST_FADER]
- id: set_output_meter_mode
label: Set Output Meter Display Mode
kind: action
command: "< SET OUTPUT_METER_MODE {mode} >"
params:
- name: mode
type: enum
values: [PRE_FADER, POST_FADER]
- id: set_input_level_switch
label: Set Analog Input Gain Switch
kind: action
command: "< SET {xx} AUDIO_IN_LVL_SWITCH {level} >"
params:
- name: xx
type: integer
description: "Channel (00, 11, or 12)"
- name: level
type: enum
values: [LINE_LVL, AUX_LVL]
- id: set_output_level_switch
label: Set Analog Output Gain Switch
kind: action
command: "< SET {xx} AUDIO_OUT_LVL_SWITCH {level} >"
params:
- name: xx
type: integer
description: "Channel (00, 17, or 18)"
- name: level
type: enum
values: [LINE_LVL, AUX_LVL, MIC_LVL]
- id: set_onhook_enable
label: Set Call Status Enable
kind: action
command: "< SET ONHOOK_ENABLE {state} >"
params:
- name: state
type: enum
values: [ON, OFF]
- id: set_direct_out_tap_point
label: Set Direct Out Tap Point
kind: action
command: "< SET {nn} DIRECTOUT_POINT {xx} >"
params:
- name: nn
type: integer
description: "Channel (00=all, 01-08=Dante input)"
- name: xx
type: integer
min: 0
max: 3
description: "0=Pre-gate/Pre Processing, 1=Pre-gate/Post Processing, 2=Post-gate/Pre Processing, 3=Post-gate/Post Processing"
notes: Firmware 4.1.x and newer
Feedbacks
feedbacks:
- id: report_all
label: Report All Parameters
type: string
command: "< GET {xx} ALL >"
response: "< REP ... >"
params:
- name: xx
description: "Channel (00-21, 23-28)"
- id: model_number
label: Model Number
type: string
command: "< GET MODEL >"
response: "< REP MODEL {32-char string} >"
- id: serial_number
label: Serial Number
type: string
command: "< GET SERIAL_NUM >"
response: "< REP SERIAL_NUM {32-char string} >"
- id: channel_name
label: Channel Name
type: string
command: "< GET {xx} CHAN_NAME >"
response: "< REP {xx} CHAN_NAME {31-char string} >"
params:
- name: xx
description: "Channel (00-20, 23-28)"
- id: device_id
label: Device ID
type: string
command: "< GET DEVICE_ID >"
response: "< REP DEVICE_ID {31-char string} >"
- id: firmware_version
label: Firmware Version
type: string
command: "< GET FW_VER >"
response: "< REP FW_VER {18-char string} >"
- id: preset
label: Current Preset
type: integer
command: "< GET PRESET >"
response: "< REP PRESET nn >"
values: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
- id: preset_name
label: Preset Name
type: string
command: "< GET PRESET{n} >"
response: "< REP PRESET{n} {25-char string} >"
- id: channel_mute
label: Channel Mute State
type: enum
values: [ON, OFF]
command: "< GET {xx} AUDIO_MUTE >"
response: "< REP {xx} AUDIO_MUTE {ON|OFF} >"
- id: device_mute
label: Device Mute State
type: enum
values: [ON, OFF]
command: "< GET DEVICE_AUDIO_MUTE >"
response: "< REP DEVICE_AUDIO_MUTE {ON|OFF} >"
- id: audio_gain
label: Audio Gain
type: integer
command: "< GET {xx} AUDIO_GAIN_HI_RES >"
response: "< REP {xx} AUDIO_GAIN_HI_RES yyyy >"
params:
- name: xx
description: "Channel (00-20, 22-28)"
notes: "yyyy range 0000-1400 in 0.1 dB steps"
- id: input_level_switch
label: Analog Input Gain Switch
type: enum
values: [LINE_LVL, AUX_LVL]
command: "< GET {xx} AUDIO_IN_LVL_SWITCH >"
response: "< REP {xx} AUDIO_IN_LVL_SWITCH {LINE_LVL|AUX_LVL} >"
- id: output_level_switch
label: Analog Output Gain Switch
type: enum
values: [LINE_LVL, AUX_LVL, MIC_LVL]
command: "< GET {xx} AUDIO_OUT_LVL_SWITCH >"
response: "< REP {xx} AUDIO_OUT_LVL_SWITCH {value} >"
- id: flash_state
label: Flash State
type: enum
values: [ON, OFF]
command: "< GET FLASH >"
response: "< REP FLASH {ON|OFF} >"
- id: led_brightness
label: LED Brightness
type: enum
values: [0, 1, 2]
command: "< GET LED_BRIGHTNESS >"
response: "< REP LED_BRIGHTNESS n >"
notes: "0=disabled, 1=dim, 2=default"
- id: audio_ip_address
label: Audio IP Address
type: string
command: "< GET IP_ADDR_NET_AUDIO_PRIMARY >"
response: "< REP IP_ADDR_NET_AUDIO_PRIMARY {15-char IP} >"
- id: audio_subnet
label: Audio Subnet Address
type: string
command: "< GET IP_SUBNET_NET_AUDIO_PRIMARY >"
response: "< REP IP_SUBNET_NET_AUDIO_PRIMARY {15-char subnet} >"
- id: audio_gateway
label: Audio Gateway Address
type: string
command: "< GET IP_GATEWAY_NET_AUDIO_PRIMARY >"
response: "< REP IP_GATEWAY_NET_AUDIO_PRIMARY {15-char gateway} >"
- id: encryption_status
label: Encryption Status
type: enum
values: [ON, OFF]
command: "< GET ENCRYPTION >"
response: "< REP ENCRYPTION {ON|OFF} >"
- id: peq_filter_state
label: PEQ Filter State
type: enum
values: [ON, OFF]
command: "< GET {xx} PEQ {yy} >"
response: "< REP {xx} PEQ {yy} {ON|OFF} >"
- id: input_meter_mode
label: Input Meter Display Mode
type: enum
values: [PRE_FADER, POST_FADER]
command: "< GET INPUT_METER_MODE >"
response: "< REP INPUT_METER_MODE {PRE_FADER|POST_FADER} >"
- id: output_meter_mode
label: Output Meter Display Mode
type: enum
values: [PRE_FADER, POST_FADER]
command: "< GET OUTPUT_METER_MODE >"
response: "< REP OUTPUT_METER_MODE {PRE_FADER|POST_FADER} >"
- id: usb_connection
label: USB Connection Status
type: enum
values: [ON, OFF]
command: "< GET USB_CONNECT >"
response: "< REP USB_CONNECT {ON|OFF} >"
- id: matrix_route
label: Matrix Mixer Route
type: enum
values: [ON, OFF]
command: "< GET {xx} MATRIX_MXR_ROUTE {yy} >"
response: "< REP {xx} MATRIX_MXR_ROUTE {yy} {ON|OFF} >"
- id: matrix_gain
label: Matrix Mixer Gain
type: integer
command: "< GET {xx} MATRIX_MXR_GAIN {yy} >"
response: "< REP {xx} MATRIX_MXR_GAIN {yy} zzzz >"
notes: "zzzz range 0000-1400 in 0.1 dB steps"
- id: control_mac_address
label: Control Network MAC Address
type: string
command: "< GET CONTROL_MAC_ADDR >"
response: "< REP CONTROL_MAC_ADDR yy:yy:yy:yy:yy:yy >"
- id: na_channel_name
label: Network Audio Channel Name
type: string
command: "< GET {xx} NA_CHAN_NAME >"
response: "< REP {xx} NA_CHAN_NAME {31-char string} >"
- id: na_device_name
label: Network Audio Device Name
type: string
command: "< GET NA_DEVICE_NAME >"
response: "< REP NA_DEVICE_NAME {31-char string} >"
- id: aec_state
label: AEC State
type: enum
values: [ON, OFF]
command: "< GET {xx} AEC >"
response: "< REP {xx} AEC {ON|OFF} >"
- id: aec_reference
label: AEC Reference Signal
type: enum
values: [DANTEOUT1, DANTEOUT2, DANTEOUT3, DANTEOUT4, DANTEOUT5, DANTEOUT6, DANTEOUT7, DANTEOUT8, ANALOGOUT1, ANALOGOUT2, DANTEIN9, DANTEIN10, ANALOGIN1, ANALOGIN2, USBIN, MOBILEIN]
command: "< GET {xx} AEC_REF >"
response: "< REP {xx} AEC_REF {n} >"
- id: nlp_state
label: NLP State
type: enum
values: [LOW, MEDIUM, HIGH]
command: "< GET {xx} AEC_NLP >"
response: "< REP {xx} AEC_NLP {LOW|MEDIUM|HIGH} >"
- id: noise_reduction_state
label: Noise Reduction State
type: enum
values: [ON, OFF]
command: "< GET {xx} NOISE_RED >"
response: "< REP {xx} NOISE_RED {ON|OFF} >"
- id: noise_reduction_level
label: Noise Reduction Level
type: enum
values: [LOW, MEDIUM, HIGH]
command: "< GET {xx} NOISE_RED_LVL >"
response: "< REP {xx} NOISE_RED_LVL {LOW|MEDIUM|HIGH} >"
- id: agc_state
label: AGC State
type: enum
values: [ON, OFF]
command: "< GET {xx} AGC >"
response: "< REP {xx} AGC {ON|OFF} >"
- id: agc_max_cut
label: AGC Max Cut Value
type: integer
command: "< GET {xx} AGC_MAX_CUT >"
response: "< REP {xx} AGC_MAX_CUT yyy >"
notes: "yyy range 000-200 (shifted by +20, ×10, actual -20.0 to 0.0 dB)"
- id: agc_max_boost
label: AGC Max Boost Value
type: integer
command: "< GET {xx} AGC_MAX_BOOST >"
response: "< REP {xx} AGC_MAX_BOOST yyy >"
notes: "yyy range 000-200 (actual 0.0 to +20.0 dB in 0.1 dB)"
- id: agc_target
label: AGC Target Level
type: integer
command: "< GET {xx} AGC_TARGET >"
response: "< REP {xx} AGC_TARGET yyy >"
notes: "yyy range 000-500 (shifted by +50, ×10, actual -50.0 to 0.0 dBFS)"
- id: gate_inhibit_state
label: Gate Inhibit State
type: enum
values: [ON, OFF]
command: "< GET 22 GATE_INHIBIT >"
response: "< REP 22 GATE_INHIBIT {ON|OFF} >"
notes: Only works on firmware < 4.1.x
- id: automixer_mode
label: Automixer Mode
type: enum
values: [MANUAL, GAINSHARE, GATING]
command: "< GET {xx} AUTOMXR_MODE >"
response: "< REP {xx} AUTOMXR_MODE {mode} >"
- id: automixer_off_attenuation
label: Automixer Off Attenuation
type: integer
command: "< GET {xx} AUTOMXR_OFF_ATT >"
response: "< REP {xx} AUTOMXR_OFF_ATT yyy >"
notes: "yyy range 0-107 (shifted by +110, actual -110 to -3 dB)"
- id: automixer_gate_sensitivity
label: Automixer Gating Sensitivity
type: integer
command: "< GET {xx} AUTOMXR_GATE_SEN >"
response: "< REP {xx} AUTOMXR_GATE_SEN y >"
notes: "y range 1-9"
- id: automixer_max_nom
label: Automixer Max Number of Mics
type: integer
command: "< GET {xx} AUTOMXR_MAX_NOM >"
response: "< REP {xx} AUTOMXR_MAX_NOM y >"
notes: "y range 1-8"
- id: automixer_lmlo
label: Automixer Last Mic Lock On
type: enum
values: [ON, OFF]
command: "< GET {xx} AUTOMXR_LMLO >"
response: "< REP {xx} AUTOMXR_LMLO {ON|OFF} >"
- id: automixer_holdtime
label: Automixer Hold Time
type: integer
command: "< GET {xx} AUTOMXR_HOLDTIME >"
response: "< REP {xx} AUTOMXR_HOLDTIME yyyy >"
notes: "yyyy range 0100-1500 ms"
- id: automixer_always_on
label: Automixer Channel Always On
type: enum
values: [ON, OFF]
command: "< GET {xx} AUTOMXR_ALWAYS_ON >"
response: "< REP {xx} AUTOMXR_ALWAYS_ON {ON|OFF} >"
- id: automixer_priority
label: Automixer Channel Priority
type: enum
values: [ON, OFF]
command: "< GET {xx} AUTOMXR_PRIORITY >"
response: "< REP {xx} AUTOMXR_PRIORITY {ON|OFF} >"
- id: automixer_mute
label: Automixer Post Gate Mute
type: enum
values: [ON, OFF]
command: "< GET {xx} AUTOMXR_MUTE >"
response: "< REP {xx} AUTOMXR_MUTE {ON|OFF} >"
- id: automixer_gate_status
label: Automixer Gate Status
type: enum
values: [ON, OFF]
command: "< GET {xx} AUTOMXR_GATE >"
response: "< REP {xx} AUTOMXR_GATE {ON|OFF} >"
notes: Read-only gate status per channel
- id: compressor_state
label: Compressor State
type: enum
values: [ON, OFF]
command: "< GET {xx} COMPRESSOR >"
response: "< REP {xx} COMPRESSOR {ON|OFF} >"
- id: compressor_threshold
label: Compressor Threshold
type: integer
command: "< GET {xx} COMP_THRESHOLD >"
response: "< REP {xx} COMP_THRESHOLD yyy >"
notes: "yyy range 000-600 (shifted by +60, ×10, actual -60.0 to 0.0 dB)"
- id: compressor_ratio
label: Compressor Ratio
type: integer
command: "< GET {xx} COMP_RATIO >"
response: "< REP {xx} COMP_RATIO yyyy >"
notes: "yyyy range 0010-1000 (actual 1.0:1 to 100.0:1 in 0.1 increments)"
- id: delay
label: Delay
type: integer
command: "< GET {xx} DELAY >"
response: "< REP {xx} DELAY yyyy >"
notes: "yyyy range 0-1000 ms; 0 = disabled. Channels: 00=all, 17-19"
- id: meter_rate_in
label: Input Metering Rate
type: integer
command: "< GET METER_RATE_IN >"
response: "< REP METER_RATE_IN yyyyy >"
notes: "00000=off, 00100-99999 ms. Values 00001-00099 invalid."
- id: meter_rate_out
label: Output Metering Rate
type: integer
command: "< GET METER_RATE_OUT >"
response: "< REP METER_RATE_OUT yyyyy >"
notes: "00000=off, 00100-99999 ms. Values 00001-00099 invalid."
- id: meter_rate_proc
label: Processing Metering Rate
type: integer
command: "< GET METER_RATE_PROC >"
response: "< REP METER_RATE_PROC yyyyy >"
notes: "00000=off, 00100-99999 ms. Values 00001-00099 invalid."
- id: meter_rate_erle
label: ERLE Metering Rate
type: integer
command: "< GET METER_RATE_ERLE >"
response: "< REP METER_RATE_ERLE yyyyy >"
notes: "00000=off, 00100-99999 ms. Values 00001-00099 invalid."
- id: meter_rate_agc
label: AGC Metering Rate
type: integer
command: "< GET METER_RATE_AGC >"
response: "< REP METER_RATE_AGC yyyyy >"
notes: "00000=off, 00100-99999 ms. Values 00001-00099 invalid."
- id: direct_out_tap_point
label: Direct Out Tap Point
type: integer
command: "< GET {nn} DIRECTOUT_POINT >"
response: "< REP {nn} DIRECTOUT_POINT {xx} >"
notes: "Firmware 4.1.x+. xx: 0=Pre-gate/Pre, 1=Pre-gate/Post, 2=Post-gate/Pre, 3=Post-gate/Post"
- id: onhook_enable
label: Call Status Enabled
type: enum
values: [ON, OFF]
command: "< GET ONHOOK_ENABLE >"
response: "< REP ONHOOK_ENABLE {state} >"
- id: onhook_state
label: Call Status State
type: enum
values: [ONHOOK, OFFHOOK]
command: "< GET ONHOOK_STATE >"
response: "< REP ONHOOK_STATE {state} >"
notes: "ONHOOK=not in call, OFFHOOK=in call. OFFHOOK when feature disabled."
Variables
variables:
- id: audio_gain
label: Audio Gain
command_set: "< SET {xx} AUDIO_GAIN_HI_RES {yyyy} >"
command_inc: "< SET {xx} AUDIO_GAIN_HI_RES INC {nn} >"
command_dec: "< SET {xx} AUDIO_GAIN_HI_RES DEC {nn} >"
params:
- name: xx
type: integer
description: "Channel (01-20, 22-28)"
- name: value
type: integer
min: 0
max: 1400
unit: "0.1 dB"
description: "0000 to 1400 in 0.1 dB steps"
- id: matrix_mixer_gain
label: Matrix Mixer Gain
command_set: "< SET {xx} MATRIX_MXR_GAIN {yy} {zzzz} >"
command_inc: "< SET {xx} MATRIX_MXR_GAIN {yy} INC {nn} >"
command_dec: "< SET {xx} MATRIX_MXR_GAIN {yy} DEC {nn} >"
params:
- name: xx
type: integer
description: "Input channel (0-14, 21)"
- name: yy
type: integer
description: "Output channel (15-20, 23-28)"
- name: value
type: integer
min: 0
max: 1400
unit: "0.1 dB"
description: "0000 to 1400 in 0.1 dB steps"
- id: meter_rate_in
label: Input Metering Rate
command_set: "< SET METER_RATE_IN {yyyyy} >"
params:
- name: value
type: integer
min: 0
max: 99999
unit: ms
description: "00000=off, 00100-99999 ms"
- id: meter_rate_out
label: Output Metering Rate
command_set: "< SET METER_RATE_OUT {yyyyy} >"
params:
- name: value
type: integer
min: 0
max: 99999
unit: ms
- id: meter_rate_proc
label: Processing Metering Rate
command_set: "< SET METER_RATE_PROC {yyyyy} >"
params:
- name: value
type: integer
min: 0
max: 99999
unit: ms
- id: meter_rate_erle
label: ERLE Metering Rate
command_set: "< SET METER_RATE_ERLE {yyyyy} >"
params:
- name: value
type: integer
min: 0
max: 99999
unit: ms
- id: meter_rate_agc
label: AGC Metering Rate
command_set: "< SET METER_RATE_AGC {yyyyy} >"
params:
- name: value
type: integer
min: 0
max: 99999
unit: ms
- id: led_brightness
label: LED Brightness
command_set: "< SET LED_BRIGHTNESS {n} >"
params:
- name: value
type: integer
min: 0
max: 2
description: "0=disabled, 1=dim, 2=default"
- id: agc_max_cut
label: AGC Max Cut
command_set: "< SET {xx} AGC_MAX_CUT {yyy} >"
command_inc: "< SET {xx} AGC_MAX_CUT inc {nnn} >"
command_dec: "< SET {xx} AGC_MAX_CUT dec {nnn} >"
params:
- name: xx
type: integer
description: "Channel (00=all, 01-08)"
- name: value
type: integer
min: 0
max: 200
unit: "0.1 dB"
description: "Shifted by +20, ×10; 000=-20.0 dB, 200=0.0 dB"
- id: agc_max_boost
label: AGC Max Boost
command_set: "< SET {xx} AGC_MAX_BOOST {yyy} >"
command_inc: "< SET {xx} AGC_MAX_BOOST inc {nnn} >"
command_dec: "< SET {xx} AGC_MAX_BOOST dec {nnn} >"
params:
- name: xx
type: integer
description: "Channel (00=all, 01-08)"
- name: value
type: integer
min: 0
max: 200
unit: "0.1 dB"
description: "000=0.0 dB, 200=+20.0 dB"
- id: agc_target
label: AGC Target Level
command_set: "< SET {xx} AGC_TARGET {yyy} >"
command_inc: "< SET {xx} AGC_TARGET inc {nnn} >"
command_dec: "< SET {xx} AGC_TARGET dec {nnn} >"
params:
- name: xx
type: integer
description: "Channel (00=all, 01-08)"
- name: value
type: integer
min: 0
max: 500
unit: "0.1 dBFS"
description: "Shifted by +50, ×10; 000=-50.0 dBFS, 500=0.0 dBFS"
- id: compressor_threshold
label: Compressor Threshold
command_set: "< SET {xx} COMP_THRESHOLD {yyy} >"
params:
- name: xx
type: integer
description: "Channel (00 or 21)"
- name: value
type: integer
min: 0
max: 600
unit: "0.1 dB"
description: "Shifted by +60, ×10; 000=-60.0 dB, 600=0.0 dB"
- id: compressor_ratio
label: Compressor Ratio
command_set: "< SET {xx} COMP_RATIO {yyyy} >"
params:
- name: xx
type: integer
description: "Channel (00 or 21)"
- name: value
type: integer
min: 10
max: 1000
unit: "0.1 ratio"
description: "0010=1.0:1, 1000=100.0:1"
- id: delay
label: Output Delay
command_set: "< SET {xx} DELAY {yyyy} >"
params:
- name: xx
type: integer
description: "Channel (00=all, 17=Analog Out 1, 18=Analog Out 2, 19=USB Out)"
- name: value
type: integer
min: 0
max: 1000
unit: ms
description: "0 = disabled"
- id: automixer_off_attenuation
label: Automixer Off Attenuation
command_set: "< SET {xx} AUTOMXR_OFF_ATT {yyy} >"
params:
- name: xx
type: integer
description: "Channel (00 or 21)"
- name: value
type: integer
min: 0
max: 107
unit: dB
description: "Shifted by +110; 000=-110 dB, 107=-3 dB"
- id: automixer_gate_sensitivity
label: Automixer Gating Sensitivity
command_set: "< SET {xx} AUTOMXR_GATE_SEN {y} >"
command_inc: "< SET {xx} AUTOMXR_GATE_SEN inc {n} >"
command_dec: "< SET {xx} AUTOMXR_GATE_SEN dec {n} >"
params:
- name: xx
type: integer
description: "Channel (00 or 21)"
- name: value
type: integer
min: 1
max: 9
- id: automixer_max_nom
label: Automixer Max Number of Mics
command_set: "< SET {xx} AUTOMXR_MAX_NOM {y} >"
params:
- name: xx
type: integer
description: "Channel (00 or 21)"
- name: value
type: integer
min: 1
max: 8
- id: automixer_holdtime
label: Automixer Hold Time
command_set: "< SET {xx} AUTOMXR_HOLDTIME {yyyy} >"
params:
- name: xx
type: integer
description: "Channel (00 or 21)"
- name: value
type: integer
min: 100
max: 1500
unit: ms
Events
events:
- id: sample_in
label: Input Audio Metering Sample
pattern: "< SAMPLE_IN aaa bbb ccc ddd eee fff ggg hhh iii jjj kkk lll mmm nnn >"
notes: "14 input channel levels, 000-060 representing -60 to 0 dBFS. Sent at configured METER_RATE_IN interval."
- id: sample_out
label: Output Audio Metering Sample
pattern: "< SAMPLE_OUT aaa bbb ccc ddd eee fff ... >"
notes: "Output channel levels, 000-060 representing -60 to 0 dBFS. Channels: Dante out 1-2, Analog out, USB out, Mobile out, Dante out 3-8. Sent at METER_RATE_OUT interval."
- id: sample_proc
label: Processing Block Metering Sample
pattern: "< SAMPLE_PROC aaa bbb ccc ddd eee fff ggg hhh iii jjj kkk lll >"
notes: "12 channels: 1-8=pre-AGC on Dante inputs, 9=automixer out, 10=pre-compressor, 11=AEC ref. 000-060 = -60 to 0 dBFS."
- id: sample_erle
label: ERLE Metering Sample
pattern: "< SAMPLE_ERLE aaa bbb ccc ddd eee fff ggg hhh >"
notes: "8 channels, 00-40 representing 0-40 dB ERLE in 1 dB increments."
- id: sample_agc
label: AGC Metering Sample
pattern: "< SAMPLE_AGC aaa bbb ccc ddd eee fff ggg hhh >"
notes: "8 channels, 00-40 representing -20 to +20 dB (scaled by +20). Sent at METER_RATE_AGC interval."
- id: unsolicited_rep
label: Unsolicited Parameter Report
pattern: "< REP {xx} {PARAM} {value} >"
notes: "Most parameters send REPORT when they change on the device. Not necessary to constantly poll."
Macros
# UNRESOLVED: no multi-step sequences explicitly described in source beyond the muting best-practice scenario
Safety
confirmation_required_for:
- reboot
- restore_defaults
interlocks:
- description: "Do NOT mute microphones locally when AEC/automixer active - mute P300 automixer output via logic control instead. Local mic muting breaks AEC continuous processing."
# UNRESOLVED: power-on sequencing requirements not stated in source
Notes
- All commands and responses are ASCII, framed with
<and>. - Channel numbers (xx) are two-digit ASCII: 00-28. See channel assignment table in source.
- Most parameters send unsolicited
< REP ... >on change — polling not required after initial< GET xx ALL >on power-up. - Gain values use shifted/scaled integer encoding (documented per command). All in 0.1 dB resolution.
- Metering sample data: 000-060 = -60 to 0 dBFS.
- Meter rates: values 00001-00099 ms are invalid and return
< REP ERR >. - Flash auto-disables after 30 seconds.
- Preset numbers: SET accepts 1-10 (leading zero optional); REP always returns 01-10.
- Some commands require firmware 4.1.x or newer (Dante outputs 3-8 channels 23-28, DIRECTOUT_POINT, GATE_INHIBIT deprecated).
- Static IP configuration requires Shure Designer software; control IP used for TCP/IP communication.
Provenance
source_domains:
- shure.com
- shure.stoplight.io
source_urls:
- https://www.shure.com/en-US/docs/commandstrings/P300
- https://www.shure.com/en-US/docs/guide/P300
- https://shure.stoplight.io/
retrieved_at: 2026-04-30T13:38:16.296Z
last_checked_at: 2026-06-02T22:14:34.039Z
Verification Summary
verdict: verified
checked_at: 2026-06-02T22:14:34.039Z
matched_actions: 32
action_count: 32
confidence: medium
summary: "All 32 spec actions traced to source (dip-safe re-verify). (7 unresolved item(s) noted in Known Gaps.)"
Known Gaps
- "no multi-step sequences explicitly described in source beyond the muting best-practice scenario"
- "power-on sequencing requirements not stated in source"
- "firmware version compatibility range not stated"
- "keep-alive / heartbeat mechanism not documented"
- "maximum concurrent connections not stated"
- "command delimiter beyond angle brackets not specified"
- "error response format only mentioned as <REP ERR> for metering — full error catalog not in source"
From the AI4AV catalog (https://ai4av.net) · ODbL-1.0