Epson Home Cinema 1080 Projector

Just replaced our old Hitachi projector with a common model of Epson projector (Home Cinema 1080) and come to find out, doesn’t seem to work natively with our Harmony hub and remote which I’ve used for years and tied to Home Assistant. Found the epson plugin, but I’m running into the issues in this thread and unfortunately, doesn’t look like my unit support PJLink which is what most of the other folks used.

Any other potential solutions that folks have used for modern Epson projectors? All I really need are on/off controls and it seems silly that I can pull it up and control via web browser with the unit being wifi-enabled, but can’t get Home Assistant to turn it off & on.

Ethernet ?

Hdmi cec?

Serial?

What model?

I have an Epson Cinema 6100 with only an RS232 port. I use an ethernet to serial box and use the following config to create a switch for power on/off. But that is all I use I don’t need to switch inputs, etc.

- platform: telnet
  switches:
    projector:
      name: Projector
      resource: "projector"
      port: 4999
      command_on: "PWR ON"
      command_off: "PWR OFF"
      command_state: "PWR?"
      value_template: '{{ value == "PWR=01" }}'

I’d very much prefer to not have to run cable to it (my ~15 year old projector worked out of the box with our wireless harmony hub and it’d be a hefty run to get it all of the way back to my home assistant server). Thanks for the suggestion though!

Unless maybe you use a serial to wireless adapter?

My adapter is wired, but you could try wireless. I think all Epsons support the ESC/VP21 protocol over serial or ethernet if they have those ports.

My harmony works with my proj too, I am using Epson EMP-6100 profile in harmony. Not the same model but you could give it a shot hope the IR commands are the same.

1 Like

Model is in the title and description (Home Cinema 1080)

I’m looking for a wireless solution since this both has a remote (wireless) and is wifi-enabled. Both Ethernet and Serial would require rather hefty wire runs. I’ll see if the model supports CEC…that could work if it detects activity & turns on from the reciever. Hadn’t heard of that before.

880 models has wireless lan feature. Maybe it is possible to make this work. Usually this feature may be available but

Also try below
Auto Power On: automatically turns on the projector when it receives an image signal (available only when Standby Mode is set to Communication On)

Likely there is a similar Off feature

1 Like

You can do this with a few lines of code in ESPHome and some cheap hardware.

Wemos D1 Mini or similar ESP dev board
Max3232 RS232 to TTL converter. (make sure is 3.3v version)
You just need to connect 4 wires to the Max3232 module, GND, +3.3v, the TX and RX lines to the respective TX/RX UART pins on the Wemos board.
You will also need a 5V power supply to power it.

esphome:
  name: mediaroom-bridge
  includes:
    - uart_read_line_sensor.h

logger:
  level: DEBUG #makes uart stream available in esphome logstream
  baud_rate: 0 #disable logging over uart

uart:
  id: uart_bus
  tx_pin: 1
  rx_pin: 3
  baud_rate: 9600

text_sensor:
- platform: custom
  lambda: |-
    auto my_custom_sensor = new UartReadLineSensor(id(uart_bus));
    App.register_component(my_custom_sensor);
    return {my_custom_sensor};
  text_sensors:
    id: "uart_readline"

switch:
  - platform: template
    name: "EpsonProjector"
    lambda: |-
      if (id(uart_readline).state == ":PWR=01") {
        return true;
      } else if(id(uart_readline).state == ":PWR=00") {
        return false;
      } else {
        return {};
      }
    turn_on_action:
      - uart.write: "PWR ON\r\n"
    turn_off_action:
      - uart.write: "PWR OFF\r\n"

interval:
  - interval: 10s
    then:
      - uart.write: "PWR?\r\n"
    
esp8266:
  board: d1_mini
  
web_server:
  port: 80

# Enable Home Assistant API
api:

and the uart_read_line_sensor.h

#include "esphome.h"

class UartReadLineSensor : public Component, public UARTDevice, public TextSensor {
 public:
  UartReadLineSensor(UARTComponent *parent) : UARTDevice(parent) {}

  void setup() override {
    // nothing to do here
  }

  int readline(int readch, char *buffer, int len)
  {
    static int pos = 0;
    int rpos;

    if (readch > 0) {
      switch (readch) {
        case '\n': // Ignore new-lines
          break;
        case '\r': // Return on CR
          rpos = pos;
          pos = 0;  // Reset position index ready for next time
          return rpos;
        default:
          if (pos < len-1) {
            buffer[pos++] = readch;
            buffer[pos] = 0;
          }
      }
    }
    // No end of line has been found, so return -1.
    return -1;
  }

  void loop() override {
    const int max_line_length = 80;
    static char buffer[max_line_length];
    while (available()) {
      if(readline(read(), buffer, max_line_length) > 0) {
        publish_state(buffer);
      }
    }
  }
};
1 Like

Hi Community,

I’m hoping someone can help me here. I have an Epson Ex10000 Laser 1080p Projector. I literally just started using Home Assistant to do this function. Downloaded VMware Fusion with HA on an 2014 Intel Mac mini running Monterey. It’s working and seeing my smart devices aka HomePod, Polycom desk phone, printer, etc for quick add.

I am trying to accomplish the following: when I walk into my office, I want the projector to turn on, nothing more nothing less. I have an Eve motion sensor through Apple HomeKit that is mounted to the office ceiling. I have done many automations with motion for lights in HomeKit with HomeKit certified devices never something like this. I’m stuck on just getting the epson added into HA, please help!

When I add new integration through HA. I search and click “Epson”. It then asks for Host IP and name. I enter and it comes back with “Failed to connect”. I pulled the IP from the projector and the network router (to be sure) and still the error. The projector is wired (has wireless built in also) to a single VLan and that is the only Vlan that exists in my network. It’s controlling just fine through Epson iProjection app. Turn off, source commands are working just fine from the phone from epson app. Please advise on what I should do, I’ve been up all night lol.
-Phil :slight_smile:

https://www.amazon.com/Epson-Pro-EX10000-Projector-Brightness/dp/B08P5935VK/ref=sr_1_3?crid=Z021MR3I3RZ4&dib=eyJ2IjoiMSJ9.LZlY6Dpj5Y3zJ6SYDQQ5aCP2khde6dYCq4S4C2YvE5YOwZyMkomYn5FA3pMM6JduYENdPECtUPpjMPYuDpUmpJUluqPRh2LyT-_xKAik85CClsaI7mxpvfsD95JeyFYjNrmSKP0yF8VCHjmj-YALxd9oE8t_Et4fHEEXuVfB_E7LwFE7QATepNBWfG3dIGI27H1AUdtDkkHMnkLWPv1qRS6eG-n0jEI-iXDbE6JDtis.kb72MpCKciDqgYOxwxZcbj28bcLJf6q0JKqqTcn3EUE&dib_tag=se&keywords=Epson+Ex10000&qid=1710657828&sprefix=epson+ex10000%2Caps%2C658&sr=8-3

You projector is not in list of tested models. Do you know if it supports the esc/vp21 protocol.

Try connecting directly in a web browser to verify the units LAN control is functioning/listening

Just wanted to reply and tell you I used this exact code and it worked perfectly on the first try. Thanks for the help!