prefixkit Вопрос инженеруСпросить Поддержать EN

Устройства ESPHome

Shelly Plus 1PM: ESPHome

Shelly Plus 1PM (реле, ESP32): распиновка GPIO и готовый стартовый конфиг ESPHome — реле, кнопки, светодиод, замер мощности. Подключение к Home Assistant без облака.

Тип
Реле
Чип
ESP32
Стандарт розетки / региона
UK, US, EU

Распиновка

ПинНазначение
GPIO0LED (Inverted), Shelly Plus Add-On: DATA (Output)
GPIO1Shelly Plus Add-On: DATA (Input)
GPIO3Shelly Plus Add-On: ANALOG IN
GPIO4Switch input
GPIO5BL0937 CF
GPIO18BL0937 CF1
GPIO19Shelly Plus Add-On: DIGITAL IN
GPIO23BL0937 SEL (Inverted)
GPIO25Button (Inverted, Pull-up)
GPIO26Relay
GPIO32NTC
GPIO33Relay supply voltage sensor

Найти в магазинах: AliExpress

Ссылки ведут на поиск в магазинах; часть ссылок партнёрские — покупка по ним ничего не стоит вам и поддерживает сайт. Мы не продаём устройства и не получаем их от производителей.

Стартовый конфиг ESPHome

Собран по распиновке выше. Ключи и пароль Wi-Fi берутся из secrets.yaml в ESPHome. Перед прошивкой сверьте пины со своей ревизией устройства: у одной модели бывают разные платы.

substitutions:
  name: shelly-plus-1pm

esphome:
  name: ${name}
  friendly_name: "Shelly Plus 1PM"

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: GPIO26
    id: relay1
    name: "Relay 1"  # Relay
    restore_mode: RESTORE_DEFAULT_OFF
  - platform: gpio
    pin: GPIO33
    id: relay2
    name: "Relay 2"  # Relay supply voltage sensor
    restore_mode: RESTORE_DEFAULT_OFF

binary_sensor:
  - platform: gpio
    pin:
      number: GPIO25
      mode: INPUT_PULLUP
      inverted: true
    name: "Button"  # Button (Inverted, Pull-up)
    on_press:
      - switch.toggle: relay1

status_led:
  pin:
    number: GPIO0
    inverted: true  # LED (Inverted), Shelly Plus Add-On: DATA (Output)

sensor:
  - platform: hlw8012
    model: BL0937
    sel_pin:
      number: GPIO23
      inverted: true
    cf_pin: GPIO5
    cf1_pin: GPIO18
    voltage:
      name: "Voltage"
    current:
      name: "Current"
    power:
      name: "Power"
    energy:
      name: "Energy"
    update_interval: 10s
    # calibrate voltage_divider and current_resistor against a known load

# Other pins from the pinout:
#   GPIO1: Shelly Plus Add-On: DATA (Input)
#   GPIO3: Shelly Plus Add-On: ANALOG IN
#   GPIO4: Switch input
#   GPIO19: Shelly Plus Add-On: DIGITAL IN
#   GPIO32: NTC

Как прошить

  • Большинство устройств прошивают по UART: адаптер USB-TTL на 3,3 В к пинам RX, TX, GND и 3V3, при включении зажать GPIO0 на землю (для ESP8266/ESP32). Сетевое питание при этом отключено.
  • Чипы Beken (BK72xx) и Realtek прошивают через ltchiptool или cloudcutter без вскрытия — если прошивка устройства это допускает.
  • Подробности и фотографии платы — страница устройства в базе ESPHome.

Свой конфиг с нуля — генератор ESPHome. Какие пины безопасны — распиновка.

Похожие устройства

Идея?