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: esp32-relay-x4-modbus-v1
esphome:
name: ${name}
friendly_name: "ESP32_Relay_X4_Modbus_v1.3"
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:
switch:
- platform: gpio
pin: GPIO23
id: relay1
name: "Relay 1" # Relay 1
restore_mode: RESTORE_DEFAULT_OFF
- platform: gpio
pin: GPIO5
id: relay2
name: "Relay 2" # Relay 2
restore_mode: RESTORE_DEFAULT_OFF
- platform: gpio
pin: GPIO4
id: relay3
name: "Relay 3" # Relay 3
restore_mode: RESTORE_DEFAULT_OFF
- platform: gpio
pin: GPIO13
id: relay4
name: "Relay 4" # Relay 4
restore_mode: RESTORE_DEFAULT_OFF
status_led:
pin:
number: GPIO15
inverted: false # LED
# Other pins from the pinout:
# GPIO25: Input 1
# GPIO26: Input 2
# GPIO27: Input 3
# GPIO33: Input 4
# GPIO19: RS485 TX
# GPIO18: RS485 RX
# GPIO32: RS485 DE
# GPIO16: Pad RX2
# GPIO17: Pad TX2
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.