Summary

Control spec for Epson EB-U50 and CB-X50 projectors using the ESC/VP21 command set over RS-232 (with TCP/IP and USB transport also described in the protocol family). The source document is the generic ESC/VP21 Command User's Guide for Epson home projectors and does not list EB-U50 or CB-X50 in its "Applicable models" section; commands here are documented from the protocol guide and marked as inferred where the EB-U50 / CB-X50 applicability is not confirmed.

Transport

protocols:
  - serial
  - tcp
  - usb  # UNRESOLVED: USB listed as transport option in source intro, no EB-U50/CB-X50 specific USB command protocol documented
serial:
  baud_rate: 9600  # stated in §5.1 Communication specification
  data_bits: 8
  parity: none
  stop_bits: 1
  flow_control: none
  connector: D-Sub 9-pin
  port_label: Control (RS-232C)
addressing:
  port: null  # UNRESOLVED: TCP port number not stated in source (referenced as ESC/VP.net protocol manual, not provided)
auth:
  type: UNRESOLVED  # source does not state this (was inferred none: no login/password/auth procedure documented in source)

Traits

- powerable  # inferred from PWR ON / PWR OFF command examples
- routable  # inferred from SOURCE change command set
- queryable  # inferred from get command format (command + "?") described in §2.2

Actions

- id: power_on
  label: Power On
  kind: action
  command: "PWR ON"
  params: []
  notes: "Per source note (*1), some models (TW200/TW200H, TW500) require additional steps before PWR ON works. EB-U50 / CB-X50 applicability unverified."

- id: power_off
  label: Power Off
  kind: action
  command: "PWR OFF"
  params: []

- id: mute_on
  label: Mute On
  kind: action
  command: "MUTE ON"
  params: []

- id: mute_off
  label: Mute Off
  kind: action
  command: "MUTE OFF"
  params: []

- id: msel_black
  label: MSEL Black
  kind: action
  command: "MSEL00"
  params: []

- id: msel_blue
  label: MSEL Blue
  kind: action
  command: "MSEL01"
  params: []

- id: msel_user_logo
  label: MSEL User Logo
  kind: action
  command: "MSEL02"
  params: []
  notes: "Per source note (*2), TW10/TW10H do not support User Logo."

- id: source_1x_cycle
  label: Source Change Input 1/A - Cycle
  kind: action
  command: "SOURCE 10"
  params: []

- id: source_11
  label: Source Change Input 1/A - AnalogRGB
  kind: action
  command: "SOURCE 11"
  params: []

- id: source_12
  label: Source Change Input 1/A - Digital RGB
  kind: action
  command: "SOURCE 12"
  params: []

- id: source_13
  label: Source Change Input 1/A - RGB Video
  kind: action
  command: "SOURCE 13"
  params: []

- id: source_14
  label: Source Change Input 1/A - YCbCr (Component)
  kind: action
  command: "SOURCE 14"
  params: []

- id: source_15
  label: Source Change Input 1/A - YPbPr (Component)
  kind: action
  command: "SOURCE 15"
  params: []

- id: source_1f
  label: Source Change Input 1/A - Auto
  kind: action
  command: "SOURCE 1F"
  params: []

- id: source_2x_cycle
  label: Source Change Input 2/B - Cycle
  kind: action
  command: "SOURCE 20"
  params: []

- id: source_21
  label: Source Change Input 2/B - AnalogRGB
  kind: action
  command: "SOURCE 21"
  params: []

- id: source_22
  label: Source Change Input 2/B - RGB Video
  kind: action
  command: "SOURCE 22"
  params: []

- id: source_23
  label: Source Change Input 2/B - YCbCr (Component)
  kind: action
  command: "SOURCE 23"
  params: []

- id: source_24
  label: Source Change Input 2/B - YPbPr (Component)
  kind: action
  command: "SOURCE 24"
  params: []

- id: source_25
  label: Source Change Input 2/B - YPbPr
  kind: action
  command: "SOURCE 25"
  params: []

- id: source_2f
  label: Source Change Input 2/B - Auto
  kind: action
  command: "SOURCE 2F"
  params: []

- id: source_3x_cycle
  label: Source Change Input 3 - Cycle
  kind: action
  command: "SOURCE 30"
  params: []

- id: source_31
  label: Source Change Input 3 - Digital RGB
  kind: action
  command: "SOURCE 31"
  params: []

- id: source_cx_cycle
  label: Source Change Input 5 - Cycle
  kind: action
  command: "SOURCE C0"
  params: []

- id: source_c3
  label: Source Change Input 5 - SCART
  kind: action
  command: "SOURCE C3"
  params: []

- id: source_c4
  label: Source Change Input 5 - YCbCr
  kind: action
  command: "SOURCE C4"
  params: []

- id: source_c5
  label: Source Change Input 5 - YPbPr
  kind: action
  command: "SOURCE C5"
  params: []

- id: source_cf
  label: Source Change Input 5 - Auto
  kind: action
  command: "SOURCE CF"
  params: []

- id: source_4x_cycle
  label: Source Change VIDEO - Cycle
  kind: action
  command: "SOURCE 40"
  params: []

- id: source_41
  label: Source Change VIDEO (RCA)
  kind: action
  command: "SOURCE 41"
  params: []

- id: source_42
  label: Source Change VIDEO (S)
  kind: action
  command: "SOURCE 42"
  params: []

- id: source_43
  label: Source Change VIDEO (YCbCr)
  kind: action
  command: "SOURCE 43"
  params: []

- id: source_44
  label: Source Change VIDEO (YPbPr)
  kind: action
  command: "SOURCE 44"
  params: []

- id: source_52
  label: Source Change USB - EasyMP
  kind: action
  command: "SOURCE 52"
  params: []

- id: source_a0
  label: Source Change HDMI - HDMI2
  kind: action
  command: "SOURCE A0"
  params: []

- id: source_a1
  label: Source Change HDMI - Digital RGB
  kind: action
  command: "SOURCE A1"
  params: []

- id: source_a3
  label: Source Change HDMI - RGB-Video
  kind: action
  command: "SOURCE A3"
  params: []

- id: source_a4
  label: Source Change HDMI - YCbCr
  kind: action
  command: "SOURCE A4"
  params: []

- id: source_a5
  label: Source Change HDMI - YPbPr
  kind: action
  command: "SOURCE A5"
  params: []

- id: source_d0
  label: Source Change WirelessHD
  kind: action
  command: "SOURCE D0"
  params: []

- id: source_d1
  label: Source Change WirelessHD - Digital RGB
  kind: action
  command: "SOURCE D1"
  params: []

- id: source_d3
  label: Source Change WirelessHD - RGB-Video
  kind: action
  command: "SOURCE D3"
  params: []

- id: source_d4
  label: Source Change WirelessHD - YCbCr
  kind: action
  command: "SOURCE D4"
  params: []

- id: source_d5
  label: Source Change WirelessHD - YPbPr
  kind: action
  command: "SOURCE D5"
  params: []

- id: null_command
  label: Null Command (keepalive)
  kind: action
  command: "\r"  # Hex 0D carriage return, per §2.3
  params: []
  notes: "Used to confirm projector is in operation."

Feedbacks

# Per §2.1: projector returns a colon ":" after executing a command (success acknowledgement).
# Per §2.4: projector returns "ERR\r:" on invalid commands.
- id: command_ack
  type: enum
  values: [colon, err]
  notes: |
    Success response: ":" (colon character).
    Error response: "ERR" followed by carriage return (Hex 0D) and colon.

Variables

# UNRESOLVED: no settable numeric parameters documented in source beyond
# command opcodes themselves. INC / DEC / INIT step parameters mentioned in §2.1
# but no concrete command families enumerated.

Events

# UNRESOLVED: no unsolicited notification events documented in source.

Macros

# Per source note (*1), a two-step macro is required for PWR ON on TW200/TW200H
# (SPWRLVL 01 preparatory command). EB-U50 / CB-X50 applicability unverified.
- id: power_on_tw200_macro
  label: Power On (TW200/TW200H preparatory sequence)
  steps:
    - "Turn on projector manually."
    - "Wait until projector can receive ESC/VP21 commands."
    - "Send: SPWRLVL 01"
    - "Turn off projector once."
    - "PWR ON now works from standby."
  notes: "Source explicitly applies to TW200/TW200H. EB-U50 / CB-X50 applicability unverified."

Safety

confirmation_required_for:
  - power_off  # UNRESOLVED: not stated; inferred from operational caution - projector cuts video output
interlocks: []
# UNRESOLVED: no explicit safety warnings or interlock procedures in source.

Notes

  • Source is the generic ESC/VP21 Command User's Guide for Epson home projectors (§3 Applicable models). EB-U50 and CB-X50 are NOT enumerated in the applicable models list; spec produced from protocol-family documentation. Per-model applicability of every command listed here is unverified for EB-U50 / CB-X50.
  • ESC/VP21 transport (§1): serial, USB, or TCP/IP. Only serial parameters (9600/8/N/1, D-Sub 9-pin Control) are stated in source (§5.1).
  • TCP/IP transport described at protocol-family level; port number not stated in source — see separate ESC/VP.net protocol manual (not provided).
  • Command set returned ":" on success and "ERR\r:" on invalid commands (§2.1, §2.4).
  • Null command (Hex 0D carriage return) used as keepalive; projector responds with ":" (§2.3).
  • Set commands support fixed parameters (ON/OFF/21) and step parameters (INC/DEC/INIT) per §2.1; no concrete step-parameter commands enumerated in source.
  • Get command format described as COMMAND? per §2.2; no concrete get-query mnemonics enumerated in source.

Provenance

source_domains:
  - files.support.epson.com
source_urls:
  - https://files.support.epson.com/pdf/pltw1_/pltw1_cm.pdf
  - https://files.support.epson.com/pdf/pl600p/pl600pcm.pdf
retrieved_at: 2026-05-14T16:03:22.963Z
last_checked_at: 2026-10-01T13:06:09.221Z

Verification Summary

verdict: verified
checked_at: 2026-10-01T13:06:09.221Z
matched_actions: 45
action_count: 45
confidence: medium
summary: "All 45 spec actions match source ESC/VP24 command table literally; transport params match §5.1; applicability caveat for EB-U50/CB-X50 noted (not in §3 Applicable models). (9 unresolved item(s) noted in Known Gaps.)"

Known Gaps

- "source document covers older Epson home projectors (TW/EMP/PL series). EB-U50 / CB-X50 are not enumerated in section 3 (Applicable models). Spec produced from ESC/VP21 protocol guide; per-model applicability unverified."
- "USB listed as transport option in source intro, no EB-U50/CB-X50 specific USB command protocol documented"
- "TCP port number not stated in source (referenced as ESC/VP.net protocol manual, not provided)"
- "TCP/IP port number not stated; source refers to separate ESC/VP.net protocol manual. USB transport described at protocol-family level only."
- "Set/get formats described generically (§2.1, §2.2) but no get-query commands enumerated by mnemonic in source. No query actions enumerated. EB-U50 / CB-X50 specific command subset not enumerated in source."
- "no settable numeric parameters documented in source beyond"
- "no unsolicited notification events documented in source."
- "not stated; inferred from operational caution - projector cuts video output"
- "no explicit safety warnings or interlock procedures in source."

From the AI4AV catalog (https://ai4av.net) · ODbL-1.0