Summary
Shure PSM1000 wireless in-ear monitor transmitter. Controlled via Ethernet (TCP/IP) on port 2202. ASCII message protocol with <...> envelope and CRLF terminator. Supports SET/GET/REPORT command pattern for channel and box parameters.
Transport
protocols:
- tcp
addressing:
port: 2202 # stated in source
auth:
type: none # inferred: no auth procedure in source
Traits
- queryable # inferred: GET commands present returning REPORT responses
- levelable # inferred: AUDIO_IN_LVL, RF_TX_LVL support SET level commands
Actions
# --- SET commands (channel = x; box params have no channel) ---
- id: set_device_name
label: Set Device Name
kind: action
command: "< SET DEVICE_NAME {name} >" # box parameter: no channel number
params:
- name: name
type: string
description: New device name (box parameter, no channel number)
- id: set_channel_name
label: Set Channel Name
kind: action
command: "< SET {channel} CHAN NAME {name} >" # source SET row uses "CHAN NAME" (two words)
params:
- name: channel
type: integer
description: Channel number (1-based)
- name: name
type: string
description: New channel name
- id: set_audio_level
label: Set Audio Level
kind: action
command: "< SET {channel} AUDIO_IN_LVL {level} >"
params:
- name: channel
type: integer
description: Channel number
- name: level
type: string
description: Audio level value
- id: set_group_channel
label: Set Transmitter Group & Channel
kind: action
command: "< SET {channel} GROUP_CHAN {group_channel} >"
params:
- name: channel
type: integer
description: Channel number
- name: group_channel
type: string
description: Format "gg,cc" (group, channel)
- id: set_frequency
label: Set Transmitter Frequency
kind: action
command: "< SET {channel} FREQUENCY {frequency} >"
params:
- name: channel
type: integer
description: Channel number
- name: frequency
type: string
description: Frequency value in Hz
- id: set_rf_tx_level
label: Set RF Tx Level
kind: action
command: "< SET {channel} RF_TX_LVL {level} >"
params:
- name: channel
type: integer
description: Channel number
- name: level
type: string
description: RF transmission power level
- id: set_rf_mute
label: Set RF Mute
kind: action
command: "< SET {channel} RF_MUTE {mute} >"
params:
- name: channel
type: integer
description: Channel number
- name: mute
type: integer
description: "1 = mute, 0 = unmute"
- id: set_audio_tx_mode
label: Set Audio Tx Mode
kind: action
command: "< SET {channel} AUDIO_TX_MODE {mode} >"
params:
- name: channel
type: integer
description: Channel number
- name: mode
type: integer
description: "1 = mono, 2 = point to point, 3 = stereo"
- id: set_audio_input_line_level
label: Set Audio Input Line Level
kind: action
command: "< SET {channel} AUDIO_IN_LINE_LVL {level} >"
params:
- name: channel
type: integer
description: Channel number
- name: level
type: integer
description: "0 = off (Aux), 1 = on (Line)"
- id: set_metering_rate
label: Set Metering Rate
kind: action
command: "< SET {channel} METER_RATE {rate} >"
params:
- name: channel
type: integer
description: Channel number
- name: rate
type: string
description: "0 = off, value in milliseconds"
# --- GET query commands (added in upgrade pass: previously missing) ---
- id: get_device_name
label: View Transmitter Name
kind: query
command: "< GET DEVICE_NAME >" # box parameter: no channel number
params: []
- id: get_channel_name
label: Get Channel Name
kind: query
command: "< GET {channel} CHAN NAME >"
params:
- name: channel
type: integer
description: Channel number
- id: get_audio_level
label: View Audio Level
kind: query
command: "< GET {channel} AUDIO_IN_LVL >"
params:
- name: channel
type: integer
description: Channel number
- id: get_group_channel
label: View Transmitter Group & Channel
kind: query
command: "< GET {channel} GROUP_CHAN >"
params:
- name: channel
type: integer
description: Channel number
- id: get_frequency
label: View Transmitter Frequency
kind: query
command: "< GET {channel} FREQUENCY >"
params:
- name: channel
type: integer
description: Channel number
- id: get_rf_tx_level
label: View RF Tx Level
kind: query
command: "< GET {channel} RF_TX_LVL >"
params:
- name: channel
type: integer
description: Channel number
- id: get_rf_mute
label: View RF Mute
kind: query
command: "< GET {channel} RF_MUTE >"
params:
- name: channel
type: integer
description: Channel number
- id: get_audio_tx_mode
label: View Audio Tx Mode
kind: query
command: "< GET {channel} AUDIO_TX_MODE >"
params:
- name: channel
type: integer
description: Channel number
- id: get_audio_input_line_level
label: View Audio Input Line Level
kind: query
command: "< GET {channel} AUDIO_IN_LINE_LVL >"
params:
- name: channel
type: integer
description: Channel number
- id: get_metering_rate
label: View Metering Rate
kind: query
command: "< GET {channel} METER_RATE >"
params:
- name: channel
type: integer
description: Channel number
Feedbacks
- id: device_name_report
label: Device Name Report
kind: feedback
params:
- name: name
type: string
- id: channel_name_report
label: Channel Name Report
kind: feedback
params:
- name: channel
type: integer
- name: name
type: string
- id: audio_level_report
label: Audio Level Report
kind: feedback
params:
- name: channel
type: integer
- name: level
type: string
- id: group_channel_report
label: Group & Channel Report
kind: feedback
params:
- name: channel
type: integer
- name: group_channel
type: string
- id: frequency_report
label: Frequency Report
kind: feedback
params:
- name: channel
type: integer
- name: frequency
type: string
- id: rf_tx_level_report
label: RF Tx Level Report
kind: feedback
params:
- name: channel
type: integer
- name: level
type: string
- id: rf_mute_report
label: RF Mute Report
kind: feedback
params:
- name: channel
type: integer
- name: mute
type: integer
- id: audio_tx_mode_report
label: Audio Tx Mode Report
kind: feedback
params:
- name: channel
type: integer
- name: mode
type: integer
- id: audio_input_line_level_report
label: Audio Input Line Level Report
kind: feedback
params:
- name: channel
type: integer
- name: level
type: integer
- id: metering_rate_report
label: Metering Rate Report
kind: feedback
params:
- name: channel
type: integer
- name: rate
type: string
- id: audio_meter_level
label: Audio Meter Level
kind: feedback
params:
- name: channel
type: integer
- name: left
type: string
- name: right
type: string
Variables
# UNRESOLVED: no standalone settable parameters distinct from actions found in source
Events
# REPORT strings are also sent unsolicited when a parameter changes on the device itself,
# but source documents no separate event/notification command set beyond REPORT.
Macros
# UNRESOLVED: no multi-step macro sequences described in source
Safety
confirmation_required_for: []
interlocks: []
# UNRESOLVED: no safety warnings or interlock procedures in source
Notes
Message syntax: ASCII enclosed in <...> with space after opening bracket and before closing bracket. Terminated by CRLF (0x0D0A). Channel parameters include channel number (e.g., < SET 1 FREQUENCY 578000 >). Box parameters (DEVICE_NAME) have no channel number.
REPORT sent in response to SET or GET, and also when parameter changed on device.
Audio meter level sends left and right channel values as separate REPORT messages (mnemonics AUDIO_IN_LVL_L and AUDIO_IN_LVL_R per source).
Source SET row uses the two-word mnemonic CHAN NAME for Set Channel Name; the corresponding REPORT uses the underscore form CHAN_NAME. Both forms verbatim from source.
Setting GROUP_CHAN also yields a FREQUENCY REPORT (source row returns both REPORT x FREQUENCY and REPORT x GROUP_CHAN); setting FREQUENCY likewise yields a GROUP_CHAN REPORT (--,-- placeholder). Implementers should expect the paired response.
Changes:
- Added `command:` payloads (verbatim, incl. `< >` envelope) to all 10 existing SET actions
- Added 10 new `get_*` query actions — previously absent, closes coverage gap
- Preserved all existing IDs, params, feedbacks, transport
- Noted CHAN NAME vs CHAN_NAME discrepancy + paired FREQUENCY/GROUP_CHAN REPORT behavior in Notes
## Provenance
```yaml
source_domains:
- pubs.shure.com
source_urls:
- https://pubs.shure.com/command-strings/PSM1000/en-US
retrieved_at: 2026-07-16T14:03:43.473Z
last_checked_at: 2026-07-22T01:10:15.440Z
```
## Verification Summary
```yaml
verdict: verified
checked_at: 2026-07-22T01:10:15.440Z
matched_actions: 20
action_count: 20
confidence: medium
summary: "All 20 spec actions (10 SET, 10 GET) matched verbatim in source; transport parameters (TCP, port 2202) verified; complete bidirectional coverage. (6 unresolved item(s) noted in Known Gaps.)"
```
## Known Gaps
```yaml
- "power on/off commands not present in source"
- "no standalone settable parameters distinct from actions found in source"
- "no multi-step macro sequences described in source"
- "no safety warnings or interlock procedures in source"
- "firmware version compatibility not stated in source"
- "no serial/RS-232 config (TCP only per source)"
```
---
From the AI4AV catalog (https://ai4av.net) · ODbL-1.0