Skip to main content

Epson Projector

Epson projectors — the Pro L-series large-venue line, the PowerLite / EB installation projectors, and most network-capable home-cinema models — are controlled over Epson's ESC/VP.net protocol on the wired LAN. GEM connects to the projector on TCP port 3629, performs the ESC/VP.net handshake, and then drives power and input selection while polling the projector for its current power state and active source.

This driver controls a single projector as a device. It does not create a control zone of its own — you call its commands directly, from a button, or (most commonly) from the On/Off macros of the AV zone that serves the room. See "Using the projector in an AV zone" below.

What's controlled

  • Power on and off.
  • Input selection from a fixed set of friendly commands — HDMI, HDBaseT, DVI, VGA, and BNC — plus a generic input command that accepts a raw ESC/VP source code for inputs outside that list.
  • Live status polling — every 60 seconds GEM asks the projector for its power state and, when the projector is on, its active source. The projector also pushes change events (IMEVENT) when someone powers it on with the remote or switches the source at the panel, and GEM refreshes its view a couple of seconds later.

Prerequisites

  • A network-capable Epson projector reachable on the LAN, with the wired-LAN control interface enabled.
  • Standby Mode set to "Communication On" (some menus call this Network Control "On"). Epson defaults the LAN interface to power down with the projector — with Standby Mode set to Communication Off, the projector will not answer GEM while it is off, so GEM can never turn it back on over the network.
  • ESC/VP.net password protection disabled. This driver opens the control session without an authentication step. If the projector's network control is password-protected, the handshake will not complete and commands will not take effect.

Setup

  1. On the projector, open the menu and enable wired-LAN control: Network → Control Communications → On (wording varies slightly by model — older menus phrase it as enabling network/communications control on the wired LAN port).
  2. Set Standby Mode → Communication On so the projector keeps answering on the LAN while it is powered off.
  3. Make sure any ESC/VP.net / network-control password is turned off.
  4. Give the projector a static IP, or a DHCP reservation so its address never moves.
  5. In GEM, open Devices, click Add Device, and choose the Epson Projector (ESC/VP.net) driver. Set the Projector IP Address field. TCP Port defaults to 3629 — leave it unless your network was re-mapped.
  6. Pick the AV subsystem and the projector device type (GEM pre-selects the projector device type for this driver), then save.

On connect, GEM sends the ESC/VP.net handshake, waits two seconds and queries power (PWR?), then begins polling every 60 seconds. If the projector is on, each poll also queries the active source (SOURCE?).

Selecting inputs

The simplest way to switch inputs is the per-input commands — hdmi, hdbaset, dvi, vga, and bnc — each sends the matching ESC/VP source code for you. Use these in macros or on a button.

If you need an input that isn't one of those five, use the generic input command (or its alias set_input) and pass the raw ESC/VP source code in the input argument — for example an input value of 30 is HDMI, 80 is HDBaseT. The five built-in codes are:

InputESC/VP codeFriendly command
HDMI30hdmi
HDBaseT80hdbaset
DVIA0dvi
VGA11vga
BNCB1bnc
note

GEM only recognizes these five codes when reading the projector's reported source back. If you command a different source code with input, the projector switches, but GEM reports it back as the raw code rather than a friendly name.

Using the projector in an AV zone

A projector is the video side of a room. GEM does not bind it to an AV zone the way it binds an amplifier or receiver (those attach as the zone's Volume Device for audio). Instead, drive the projector's power and input from the room's macros:

  1. Open AV Zones and edit (or create) the zone for the theater or display room. The zone's audio device — the receiver or amp — goes in the Volume Device field; the projector is separate.
  2. Add the projector's power_on command (and the right input command, e.g. hdmi) to the zone's On macro, and power_off to the Off macro, so powering the room on raises the projector and selects the correct input. (Source-select macros under AV Sources are where a per-source input switch would live — e.g. a Blu-ray source's on-macro selects the projector's HDMI input.)

You can also call any of the projector's commands directly from the Commands screen or from any macro.

Attributes

Device — required

AttributeTypeDescription
ipstringProjector LAN IP address.

Device — optional

AttributeTypeDefaultDescription
portint3629ESC/VP.net TCP port.
status_intervalint60000How often GEM polls the projector for power/source, in milliseconds. Minimum 5000.

This is a single-device driver: it does not use a zone Address and exposes no zone-level attributes.

note

GEM tracks the projector's connection state (online / offline) on the device. The projector also reports its power and active-source changes in real time — these appear in the device's live response log and feed live subscriptions — but this revision does not store power state or input as saved device attributes. As a result they are not available as attribute-change triggers; drive automation from the commands you send, or trigger on the device's connection state.

Commands

CommandSendsNotes
power_onPWR ONTurn the projector on.
power_offPWR OFFTurn the projector off.
hdmiSOURCE 30Select the HDMI input.
hdbasetSOURCE 80Select the HDBaseT input.
dviSOURCE A0Select the DVI input.
vgaSOURCE 11Select the VGA / computer input.
bncSOURCE B1Select the BNC input.
inputSOURCE + codeSelect an input by raw ESC/VP source code (input argument).
set_inputSOURCE + codeAlias for input.
get_powerPWR?Query power state.
get_inputSOURCE?Query the active source.

After connecting, GEM issues PWR? (and, when the projector is on, SOURCE?) on its own every 60 seconds, so you normally do not need to call the get_* commands by hand.

Known limitations

  • On / off power only. GEM recognizes the steady on (01) and off (04) replies. The transitional warm-up and cool-down states the projector reports while a lamp/laser is ramping are not decoded, so during those few seconds GEM's last-known power reading does not change.
  • Signal-status query is not active. A signal-status command is listed for the driver, but this revision does not actually issue the query or read a signal reply, so "is there a live signal on the selected input" is not surfaced. Use the projector's on-screen display or its web interface to confirm signal lock.
  • No lamp hours, brightness, picture mode, or geometry control. This driver covers power and input selection. Other ESC/VP.net features (lamp/laser hours, aspect, color mode, lens memory, blanking, etc.) are not exposed as commands.
  • Power and input are not stored as device attributes in this revision — see the note under Attributes. They report live but cannot be used directly as attribute triggers.

Troubleshooting

SymptomCheck
No response while the projector is offStandby Mode is set to Communication Off, which powers the LAN interface down with the projector. Switch it to Communication On so GEM can reach it (and turn it back on) while it is off.
Connects but commands are ignored, or the connection drops immediatelyESC/VP.net / network-control password protection is enabled. This driver does not authenticate — turn the password off in the projector's network menu.
Projector replies with ERR:The command is not supported by this model — older or entry-level Epson units skip ESC/VP.net. If the unit has a control serial port, control it that way with a serial driver instead.
GEM shows the projector offlineConfirm the IP address (set a DHCP reservation so it does not move), that the projector is on the same reachable network, and that TCP port 3629 is not blocked between GEM and the projector.
Power reading seems stuck for a few seconds after on/offExpected — the warm-up / cool-down transitional states are not decoded; the reading updates once the projector reports steady on or off.

See also

  • AV Zones — set the room's audio device as the Volume Device, and call the projector's power/input commands from the zone's On/Off macros.
  • AV Sources — where a per-source input-switch macro lives.
  • Devices — adding and editing devices.
  • Commands — running a device command directly.
  • Macros — driving the projector from automation.