prefixkit Ask an engineerAsk Support RU

ESPHome devices

elvinhome CTRL ONE ePaper Room Controller: ESPHome

elvinhome CTRL ONE ePaper Room Controller (other devices, ESP32): GPIO pinout and a starter ESPHome config with relays, buttons, LED. Local Home Assistant control with no cloud.

Type
Other devices
Chip
ESP32
Region standard
GLOBAL

Pinout

PinFunction
GPIO1Add-on connector general purpose pin
GPIO2I2C SCL
GPIO3I2C SDA
GPIO4Touchscreen interrupt (FT63x6)
GPIO5Touchscreen reset (FT63x6)
GPIO6Ambient light ADC
GPIO7Screen front-light PWM (LEDC)
GPIO8Indicator LED — red (inverted)
GPIO14Indicator LED — blue (inverted)
GPIO15Indicator LED — green (inverted)
GPIO16Add-on connector — UART TX
GPIO17Add-on connector — UART RX
GPIO18SPI MOSI (display)
GPIO19SPI CLK (display)
GPIO20Display CS
GPIO21Display DC
GPIO22Display reset
GPIO23Display busy

Find it in shops: AliExpress

Links open a search in the shop; some are affiliate links: buying through them costs you nothing extra and supports this site. We do not sell devices or get them from manufacturers.

Starter ESPHome config

Built from the pinout above. Keys and the Wi-Fi password come from secrets.yaml in ESPHome. Check the pins against your hardware revision before flashing: one model can ship with different boards.

substitutions:
  name: elvinhome-ctrl-one-epape

esphome:
  name: ${name}
  friendly_name: "elvinhome CTRL ONE ePaper Room Controller"

esp32:
  board: esp32dev

logger:
api:
  encryption:
    key: !secret api_key
ota:
  - platform: esphome
    password: !secret ota_password
wifi:
  ssid: !secret wifi_ssid
  password: !secret wifi_password
  ap: {}
captive_portal:

binary_sensor:
  - platform: gpio
    pin:
      number: GPIO4
      mode: INPUT_PULLUP
      inverted: true
    name: "Button 1"  # Touchscreen interrupt (FT63x6)
  - platform: gpio
    pin:
      number: GPIO5
      mode: INPUT_PULLUP
      inverted: true
    name: "Button 2"  # Touchscreen reset (FT63x6)

status_led:
  pin:
    number: GPIO7
    inverted: false  # Screen front-light PWM (LEDC)

# Other pins from the pinout:
#   GPIO8: Indicator LED — red (inverted)
#   GPIO14: Indicator LED — blue (inverted)
#   GPIO15: Indicator LED — green (inverted)
#   GPIO1: Add-on connector general purpose pin
#   GPIO2: I2C SCL
#   GPIO3: I2C SDA
#   GPIO6: Ambient light ADC
#   GPIO16: Add-on connector — UART TX
#   GPIO17: Add-on connector — UART RX
#   GPIO18: SPI MOSI (display)
#   GPIO19: SPI CLK (display)
#   GPIO20: Display CS
#   GPIO21: Display DC
#   GPIO22: Display reset
#   GPIO23: Display busy

How to flash

  • Most devices are flashed over UART: a 3.3 V USB-TTL adapter to RX, TX, GND and 3V3, holding GPIO0 to ground at power-on (ESP8266/ESP32). Mains power disconnected.
  • Beken (BK72xx) and Realtek chips are flashed with ltchiptool, or with cloudcutter without opening the case if the firmware allows it.
  • Details and board photos: the device page in the ESPHome database.

A config from scratch: ESPHome generator. Which pins are safe: pinout.

Similar devices

Idea?