kvvhost

Перепрошивка SP501E на ESPHome

Процесс перепрошивки и конфиг для ESPHome.

Скоро новогодние праздники, поэтому самое время заняться перепрошивкой контроллера SP501E для моей небольшой гирлянды, о которой я писал в прошлом году:

Новогодняя гирлянда с контроллером SP501E и адресной лентой WS2811

Для начала нужно вскрыть контроллер, чтобы подобраться к плате:

На плате есть много контактных площадок, но нужные контакты uart не подписаны.

Судя по содержимому и контактной площадке эта плата создавалась универсальной — и для адресной ленты и для обычной rgb с поддержкой теплого и холодного белого.

На мой взгляд это очень интересный контроллер в довольно компактном исполнении, который можно использовать как и в родном корпусе, так и в каких-либо проектах. Но сейчас не об этом, сейчас о перепрошивке на esphome. Для этого понадобится паяльник и несколько минут свободного времени. С обратной стороны платы расположена контактная площадка, которая не подписана. Вот она нам и нужна:

В прошлый раз я нашел нужный gpio, ведущий на data пин адресной ленты, но не догадался что нужно использовать платформу neopixelbus. Случайно наткнулся на вот этот пост и подумал, как я вообще мог это упустить. Зато появился повод интегрировать sp501e в HomeAssistant.

Теперь нужно припаять провода uart адаптера согласно распиновке на фото выше и можно заливать свою прошивку.

Перед этим обязательно делаем бэкап, чтобы была возможность откатиться. На всякий случай.

И дальше можно экспериментировать. Базовый конфиг для ESPHome следующий:

esphome:
  name: sp501e
  platform: ESP8266
  board: esp01_1m

wifi:
  ssid: 'WRLS'
  password: 'pass'

api:
  password: "sp501e"

ota:
  password: "sp501e"

logger:

# кнопка
binary_sensor:
  - platform: gpio
    pin:
      number: 1
      inverted: True
    id: button
    on_click:
      min_length: 50ms
      max_length: 350ms
      then:
        - light.toggle: sp501e_light

light:
  - platform: neopixelbus
    type: RGB
    pin: GPIO3
    num_leds: 50
    name: "sp501e_light"
    id: sp501e_light
    effects:
      - addressable_rainbow:

Настраиваем через Настройки > Интеграции и радуемся возможности управления из Home Assistant:

Что касается кнопки, то ее наличие делает управление гирляндой еще проще. На нажатие я повесил включение/выключение:

Можно заморочиться и повесить переключение цветов или эффектов при удерживании или двойном клике. Ну а тема addressable_lambda эффектов ESPHome достойна отдельной записи в блоге.

Exit mobile version