Summary
Epson home projector controlled via the ESC/VP21 ASCII command protocol. ESC/VP21 is transport-independent and can be carried over RS-232C serial, USB, or TCP/IP network. This spec covers power, A/V mute, mute-screen selection, and input/source selection commands, plus the command/response framing (set/get/null commands, colon acknowledgement, ERR for illegal commands).
Transport
protocols:
- serial
- tcp
serial:
baud_rate: 9600
data_bits: 8
parity: none
stop_bits: 1
flow_control: none
connector: D-Sub 9pin
notes: RS-232C must be selected at Advanced Setting of the menu; projector input is Control(RS-232C)
addressing:
port: null # UNRESOLVED: TCP port not stated in source; source defers to ESC/VP.net protocol manual
auth:
type: none # inferred: no auth procedure in source
Traits
# Inferred from command evidence in source (Tier 2)
- powerable # inferred: PWR ON / PWR OFF commands present
- routable # inferred: SOURCE xx input-selection commands present
- queryable # inferred: get command format (command + "?") described in source
Actions
# Framing: commands are ASCII; the null/terminator key code is Hex 0D (CR).
# Set commands return ":" after execution. Get commands append "?".
# Per-model availability varies - see source command tables and Notes.
- id: power_on
label: Power On
kind: action
command: "PWRON"
params: []
notes: "TW200/TW200H require SPWRLVL 01 preparation (see Macros); TW500 requires Network Monitoring = ON"
- id: power_off
label: Power Off
kind: action
command: "PWROFF"
params: []
- id: spwrlvl_set
label: Set Power On Level
kind: action
command: "SPWRLVL 01"
params: []
notes: "Prepares TW200/TW200H for PWR ON operation (see Macros)"
- id: mute_on
label: A/V Mute On
kind: action
command: "MUTE ON"
params: []
- id: mute_off
label: A/V Mute Off
kind: action
command: "MUTE OFF"
params: []
- id: mute_screen_black
label: Mute Screen Black
kind: action
command: "MSEL00"
params: []
- id: mute_screen_blue
label: Mute Screen Blue
kind: action
command: "MSEL01"
params: []
- id: mute_screen_user_logo
label: Mute Screen User Logo
kind: action
command: "MSEL02"
params: []
notes: "TW10/TW10H does not support the User Logo function"
- id: null_command
label: Null Command (liveness check)
kind: query
command: "0x0D"
params: []
notes: "Return key code (Hex 0D); projector returns a colon; used to confirm projector is in operation"
# --- Source selection: INPUT 1/A (SOURCE 1x) ---
- id: select_input1_cyclic
label: Select Input 1/A (cyclic)
kind: action
command: "SOURCE 10"
params: []
notes: "Cycles within signals available on INPUT 1/A"
- id: select_input1_analogrgb
label: Select Input 1/A AnalogRGB
kind: action
command: "SOURCE 11"
params: []
- id: select_input1_digital_rgb
label: Select Input 1/A Digital RGB
kind: action
command: "SOURCE 12"
params: []
- id: select_input1_rgb_video
label: Select Input 1/A RGB Video
kind: action
command: "SOURCE 13"
params: []
- id: select_input1_ycbcr
label: Select Input 1/A YCbCr (Component)
kind: action
command: "SOURCE 14"
params: []
notes: "On TW5500/HC700/TW450 models this command is get-only (*7 in source)"
- id: select_input1_ypbpr
label: Select Input 1/A YPbPr (Component)
kind: action
command: "SOURCE 15"
params: []
- id: select_input1_auto
label: Select Input 1/A Auto
kind: action
command: "SOURCE 1F"
params: []
# --- Source selection: INPUT 2/B (SOURCE 2x) ---
- id: select_input2_cyclic
label: Select Input 2/B (cyclic)
kind: action
command: "SOURCE 20"
params: []
notes: "Cycles within signals available on INPUT 2/B"
- id: select_input2_analogrgb
label: Select Input 2/B AnalogRGB
kind: action
command: "SOURCE 21"
params: []
- id: select_input2_rgb_video
label: Select Input 2/B RGB Video
kind: action
command: "SOURCE 22"
params: []
- id: select_input2_ycbcr
label: Select Input 2/B YCbCr (Component)
kind: action
command: "SOURCE 23"
params: []
- id: select_input2_ypbpr
label: Select Input 2/B YPbPr (Component)
kind: action
command: "SOURCE 24"
params: []
- id: select_input2_ypbpr_alt
label: Select Input 2/B YPbPr
kind: action
command: "SOURCE 25"
params: []
- id: select_input2_auto
label: Select Input 2/B Auto
kind: action
command: "SOURCE 2F"
params: []
# --- Source selection: INPUT 3 (SOURCE 3x) ---
- id: select_input3_cyclic
label: Select Input 3 (cyclic)
kind: action
command: "SOURCE 30"
params: []
notes: "Cycles within signals available on INPUT 3"
- id: select_input3_digital_rgb
label: Select Input 3 Digital RGB
kind: action
command: "SOURCE 31"
params: []
- id: select_input3_rgb_video
label: Select Input 3 RGB-Video
kind: action
command: "SOURCE 33"
params: []
- id: select_input3_ycbcr
label: Select Input 3 YCbCr
kind: action
command: "SOURCE 34"
params: []
- id: select_input3_ypbpr
label: Select Input 3 YPbPr
kind: action
command: "SOURCE 35"
params: []
# --- Source selection: VIDEO (SOURCE 4x) ---
- id: select_video_cyclic
label: Select VIDEO (cyclic)
kind: action
command: "SOURCE 40"
params: []
notes: "Cycles within signals available on VIDEO"
- id: select_video_rca
label: Select VIDEO (RCA)
kind: action
command: "SOURCE 41"
params: []
- id: select_video_s
label: Select VIDEO (S)
kind: action
command: "SOURCE 42"
params: []
- id: select_video_ycbcr
label: Select VIDEO (YCbCr)
kind: action
command: "SOURCE 43"
params: []
- id: select_video_ypbpr
label: Select VIDEO (YPbPr)
kind: action
command: "SOURCE 44"
params: []
# --- Source selection: USB (SOURCE 5x) ---
- id: select_usb_easypmp
label: Select USB EasyMP
kind: action
command: "SOURCE 52"
params: []
# --- Source selection: HDMI (SOURCE Ax) ---
- id: select_hdmi2
label: Select HDMI2
kind: action
command: "SOURCE A0"
params: []
- id: select_hdmi_digital_rgb
label: Select HDMI Digital RGB
kind: action
command: "SOURCE A1"
params: []
- id: select_hdmi_rgb_video
label: Select HDMI RGB-Video
kind: action
command: "SOURCE A3"
params: []
- id: select_hdmi_ycbcr
label: Select HDMI YCbCr
kind: action
command: "SOURCE A4"
params: []
- id: select_hdmi_ypbpr
label: Select HDMI YPbPr
kind: action
command: "SOURCE A5"
params: []
# --- Source selection: INPUT 5 (SOURCE Cx) ---
- id: select_input5_cyclic
label: Select Input 5 (cyclic)
kind: action
command: "SOURCE C0"
params: []
notes: "Cycles within signals available on INPUT 5"
- id: select_input5_scart
label: Select Input 5 SCART
kind: action
command: "SOURCE C3"
params: []
- id: select_input5_ycbcr
label: Select Input 5 YCbCr
kind: action
command: "SOURCE C4"
params: []
- id: select_input5_ypbpr
label: Select Input 5 YPbPr
kind: action
command: "SOURCE C5"
params: []
- id: select_input5_auto
label: Select Input 5 Auto
kind: action
command: "SOURCE CF"
params: []
# --- Source selection: WirelessHD (SOURCE Dx) ---
- id: select_wirelesshd
label: Select WirelessHD
kind: action
command: "SOURCE D0"
params: []
- id: select_wirelesshd_digital_rgb
label: Select WirelessHD Digital RGB
kind: action
command: "SOURCE D1"
params: []
- id: select_wirelesshd_rgb_video
label: Select WirelessHD RGB-Video
kind: action
command: "SOURCE D3"
params: []
- id: select_wirelesshd_ycbcr
label: Select WirelessHD YCbCr
kind: action
command: "SOURCE D4"
params: []
- id: select_wirelesshd_ypbpr
label: Select WirelessHD YPbPr
kind: action
command: "SOURCE D5"
params: []
Feedbacks
- id: command_ack
type: enum
values: [":"]
description: "Projector returns a colon after executing a set command or null command"
- id: illegal_command_error
type: enum
values: ["ERR"]
description: 'Projector returns "ERR" plus return key code (Hex 0D) and a colon when it receives an invalid command'
- id: get_response
type: string
description: "Get command (command + ?) returns the response parameter" # UNRESOLVED: per-command response value formats not enumerated in source
Variables
# UNRESOLVED: source describes step parameters INC (increment by one), DEC
# (decrement by one), INIT (initialize) usable with set commands, but does not
# enumerate which commands accept them or their ranges.
Events
# UNRESOLVED: no unsolicited notifications documented in source
Macros
- id: enable_pwr_on_tw200
label: Enable PWR ON on TW200/TW200H
steps:
- "Turn on the projector"
- 'Send "SPWRLVL 01" after the projector reaches the condition where it can receive ESC/VP21 commands'
- "Turn off the projector once; PWR ON works after the projector enters standby state"
notes: "TW500 alternative: set Network Monitoring (Operation in Setting menu) to ON, turn off once, then PWR ON works from standby"
Safety
confirmation_required_for: []
interlocks: []
# UNRESOLVED: source contains no safety warnings, interlock procedures, or
# power-on sequencing requirements beyond the TW200/TW200H PWR ON prep macro.
Notes
- ESC/VP21 command codes are ASCII; independent of communication protocol — serial, USB, or TCP/IP network can carry them. USB is a documented transport but has no serial-line parameters; TCP details defer to the ESC/VP.net protocol manual (not in source).
- Serial: select RS-232C at Advanced Setting of the menu. Connector D-Sub 9pin, projector input Control(RS-232C).
- Set commands consist of command + parameter; parameters are either fixed values (ON, OFF, 21) or step parameters (INC/DEC/INIT).
- Source model availability tables flag per-model support ("OK"/"-") for each SOURCE code; CH-LS Series does not appear in those tables — verify against real device before use.
- On TW10, source does not cycle within signals selectable on a terminal by these commands (*3).
Provenance
source_domains:
- files.support.epson.com
source_urls:
- https://files.support.epson.com/pdf/pltw1_/pltw1_cm.pdf
retrieved_at: 2026-09-02T15:17:07.062Z
last_checked_at: 2026-09-08T22:17:09.398Z
Verification Summary
verdict: verified
checked_at: 2026-09-08T22:17:09.398Z
matched_actions: 49
action_count: 49
confidence: medium
summary: "All 49 spec commands (PWRON/PWROFF/MUTE/MSEL/SOURCE 1x-5x/Ax/Cx/Dx/null) appear verbatim in source and all transport values match. (7 unresolved item(s) noted in Known Gaps.)"
Known Gaps
- "the source is an ESC/VP21 guide whose \"Applicable models\" list names TW/PL-series home projectors (TW100 through TW9000W, PL-HomeCinema/ProCinema); CH-LS Series is not explicitly listed in the source model tables — per-model command availability flags in the source do not cover CH-LS"
- "TCP port not stated in source; source defers to ESC/VP.net protocol manual"
- "per-command response value formats not enumerated in source"
- "source describes step parameters INC (increment by one), DEC"
- "no unsolicited notifications documented in source"
- "source contains no safety warnings, interlock procedures, or"
- "TCP port, USB communication parameters, firmware compatibility, response value formats, and CH-LS model applicability not stated in source"
From the AI4AV catalog (https://ai4av.net) · ODbL-1.0