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

Устройства ESPHome

Nameless DS-102 2/3-Gang Wall-Switch: ESPHome

Nameless DS-102 2/3-Gang Wall-Switch (настенные выключатели, ESP8266): распиновка GPIO и готовый стартовый конфиг ESPHome — реле, кнопки, светодиод. Подключение к Home Assistant без облака.

Тип
Настенные выключатели
Чип
ESP8266
Стандарт розетки / региона
EU

Распиновка

ПинНазначение
GPIO0Status LED
GPIO3Button 1 (HIGH = off, LOW = on)
GPIO5Button 2 (HIGH = off, LOW = on)
GPIO13Relay 1
GPIO4Relay 2
GPIO14Blue LED in Button 1 (dimmable)
GPIO1Blue LED in Button 2 (dimmable)
GPIO0Status LED
GPIO12Button 1 (HIGH = off, LOW = on)
GPIO3Button 2 (HIGH = off, LOW = on)
GPIO5Button 3 (HIGH = off, LOW = on)
GPIO13Relay 1
GPIO4Relay 2
GPIO15Relay 3
GPIO16Blue LED in Button 1 (dimmable)
GPIO14Blue LED in Button 2 (dimmable)
GPIO1Blue LED in Button 3 (dimmable)

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

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

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

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

substitutions:
  name: nameless-ds-102-2-3-gang

esphome:
  name: ${name}
  friendly_name: "Nameless DS-102 2/3-Gang Wall-Switch"

esp8266:
  board: esp01_1m  # most plugs and relays have 1 MB flash; check yours

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: GPIO13
    id: relay1
    name: "Relay 1"  # Relay 1
    restore_mode: RESTORE_DEFAULT_OFF
  - platform: gpio
    pin: GPIO4
    id: relay2
    name: "Relay 2"  # Relay 2
    restore_mode: RESTORE_DEFAULT_OFF
  - platform: gpio
    pin: GPIO13
    id: relay3
    name: "Relay 3"  # Relay 1
    restore_mode: RESTORE_DEFAULT_OFF
  - platform: gpio
    pin: GPIO4
    id: relay4
    name: "Relay 4"  # Relay 2
    restore_mode: RESTORE_DEFAULT_OFF
  - platform: gpio
    pin: GPIO15
    id: relay5
    name: "Relay 5"  # Relay 3
    restore_mode: RESTORE_DEFAULT_OFF

binary_sensor:
  - platform: gpio
    pin:
      number: GPIO3
      mode: INPUT_PULLUP
      inverted: true
    name: "Button 1"  # Button 1 (HIGH = off, LOW = on)
    on_press:
      - switch.toggle: relay1
  - platform: gpio
    pin:
      number: GPIO5
      mode: INPUT_PULLUP
      inverted: true
    name: "Button 2"  # Button 2 (HIGH = off, LOW = on)
    on_press:
      - switch.toggle: relay2
  - platform: gpio
    pin:
      number: GPIO14
      mode: INPUT_PULLUP
      inverted: true
    name: "Button 3"  # Blue LED in Button 1 (dimmable)
    on_press:
      - switch.toggle: relay3
  - platform: gpio
    pin:
      number: GPIO1
      mode: INPUT_PULLUP
      inverted: true
    name: "Button 4"  # Blue LED in Button 2 (dimmable)
    on_press:
      - switch.toggle: relay4
  - platform: gpio
    pin:
      number: GPIO12
      mode: INPUT_PULLUP
      inverted: true
    name: "Button 5"  # Button 1 (HIGH = off, LOW = on)
    on_press:
      - switch.toggle: relay5
  - platform: gpio
    pin:
      number: GPIO3
      mode: INPUT_PULLUP
      inverted: true
    name: "Button 6"  # Button 2 (HIGH = off, LOW = on)
    on_press:
      - switch.toggle: relay1
  - platform: gpio
    pin:
      number: GPIO5
      mode: INPUT_PULLUP
      inverted: true
    name: "Button 7"  # Button 3 (HIGH = off, LOW = on)
    on_press:
      - switch.toggle: relay1
  - platform: gpio
    pin:
      number: GPIO16
      mode: INPUT_PULLUP
      inverted: true
    name: "Button 8"  # Blue LED in Button 1 (dimmable)
    on_press:
      - switch.toggle: relay1
  - platform: gpio
    pin:
      number: GPIO14
      mode: INPUT_PULLUP
      inverted: true
    name: "Button 9"  # Blue LED in Button 2 (dimmable)
    on_press:
      - switch.toggle: relay1
  - platform: gpio
    pin:
      number: GPIO1
      mode: INPUT_PULLUP
      inverted: true
    name: "Button 10"  # Blue LED in Button 3 (dimmable)
    on_press:
      - switch.toggle: relay1

status_led:
  pin:
    number: GPIO0
    inverted: true  # Status LED

# Other pins from the pinout:
#   GPIO0: Status LED

Как прошить

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

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

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

Идея?