Поиск по базе знаний

Локальная интеграция Tuya в Home Assistant с пробросом в Яндекс

Умные устройства, работающие в экосистеме Tuya (или Smart Life), составляют значительную часть рынка домашней автоматизации. Розетки, выключатели, реле и датчики привлекают пользователей низкой стоимостью и простотой первоначальной настройки. Однако стандартная интеграция Tuya с внешними системами базируется на облачных вебхуках. Это означает, что любая команда на включение света отправляется сначала на серверы в Китае или Европе, и лишь затем возвращается к вам домой. Такая схема приводит к задержкам управления до 1-3 секунд и полностью теряет работоспособность при отключении интернета.

Решить эту проблему позволяет переход на локальный протокол управления с помощью кастомной интеграции LocalTuya (или Tuya Local) в Home Assistant. Это позволяет взаимодействовать с приборами напрямую по локальной сети Wi-Fi. При этом проброс локализованных устройств в Яндекс позволяет сохранить удобство голосового управления через Алису при минимальном пинге.

Шаг 1. Регистрация на платформе Tuya IoT и получение Local Key

Для локального управления устройствами Tuya шифрует трафик с помощью уникального ключа безопасности — Local Key (локальный ключ). Получить его можно только через портал для разработчиков Tuya.

  1. Перейдите на сайт Tuya IoT Platform и создайте бесплатную учетную запись разработчика.
  2. Откройте раздел Cloud -> Development и создайте новый проект (Create Cloud Project). При создании проекта обязательно выберите правильный дата-центр (Data Center), соответствующий региону вашего приложения Smart Life (например, для России и стран СНГ необходимо указывать Central Europe Data Center). Несовпадение дата-центра — самая частая причина, по которой список устройств после связывания аккаунтов остается пустым.
  3. Перейдите во вкладку Link Tuya App и отсканируйте QR-код с помощью мобильного приложения Smart Life (или Tuya Smart) на вашем смартфоне. Все ваши домашние устройства импортируются в проект разработчика.
  4. Откройте вкладку All Devices, найдите нужное устройство (например, розетку) и скопируйте его параметры: Device ID и Local Key. Обратите внимание, что Local Key представляет собой 16-значную строку из букв и цифр.

Шаг 2. Установка интеграции LocalTuya в Home Assistant

Для работы с локальным API устройств Tuya нам понадобится кастомная интеграция LocalTuya, которую проще всего установить через альтернативный каталог HACS.

  1. Откройте Home Assistant и перейдите в магазин дополнений HACS.
  2. В строке поиска введите LocalTuya и нажмите Установить.
  3. После завершения скачивания файлов интеграции перейдите в меню Настройки -> Система и выполните перезапуск Home Assistant.
  4. После перезагрузки перейдите в Настройки -> Устройства и службы -> Добавить интеграцию и выберите из списка появившийся компонент LocalTuya.

Шаг 3. Добавление прибора и конфигурирование DP-точек (Data Points)

При добавлении нового прибора интеграция автоматически сканирует локальную сеть. Если устройство не найдено, введите его параметры вручную.

  1. Укажите IP-адрес устройства (обязательно зарезервируйте его на роутере), его Device ID и скопированный ранее Local Key.
  2. На следующем шаге программа попросит настроить DP-точки (Data Points). Устройства Tuya используют числовые идентификаторы (DP ID) для управления различными функциями.
  3. Для стандартной умной розетки выберите тип сущности switch (переключатель).
  4. Укажите DP ID, отвечающий за включение и выключение питания (обычно это DP 1).
  5. Если розетка поддерживает мониторинг энергопотребления, вы можете дополнительно добавить сенсоры для считывания текущего напряжения (DP 20), мощности (DP 19) и тока (DP 18).

TIP

Точные значения DP-точек для конкретных моделей устройств можно посмотреть в свойствах устройства на портале Tuya IoT в разделе Device Debugging.

Шаг 4. Настройка проброса в Алису

После того как локальный переключатель switch.tuya_local_socket успешно создан и проверен на работоспособность, его можно транслировать в экосистему Яндекса. Сравнить облачный и локальный способы управления устройствами Tuya можно в статье о подключении устройств Tuya к Алисе.

Добавьте локальную сущность в конфигурационный блок yandex_smart_home:

yandex_smart_home:
  filter:
    include_entities:
      - switch.tuya_local_socket
  entity_config:
    switch.tuya_local_socket:
      name: "Умная розетка"
      room: "Кухня"
      type: devices.types.socket

Сохраните файл configuration.yaml, проверьте настройки YAML на синтаксические ошибки и перезапустите Home Assistant. Откройте приложение «Дом с Алисой» на телефоне, обновите список устройств, после чего протестируйте скорость выполнения команд голосовым помощником Яндекс Станции. Локальный опрос позволяет снизить время реакции устройства до 0.05-0.1 секунды.

IMPORTANT

Для полной независимости от серверов Tuya вы можете заблокировать доступ в интернет для IP-адресов умных розеток на вашем роутере с помощью правил брандмауэра. Это предотвратит отправку телеметрии в облако и гарантирует локальную безопасность, при этом управление через Home Assistant и Алису (которая общается с вашим сервером через OAuth) продолжит работать без перебоев.

Траблшутинг локальной интеграции

Если устройство Tuya перестало отвечать на запросы в Home Assistant, проверьте, не запущено ли в этот момент мобильное приложение Smart Life на вашем телефоне. Локальный чипсет Tuya поддерживает только одно активное TCP-соединение по порту 6668 одновременно. Если приложение на смартфоне открыто, оно монополизирует подключение, и Home Assistant потеряет связь. Для решения этой проблемы просто принудительно закройте приложение Smart Life на телефоне.

Для других беспроводных стандартов настройте локальную интеграцию реле Shelly по протоколу CoAP и локальное управление устройствами Sonoff LAN.

Инструкция по настройке

1

Получение локальных ключей (Local Key)

Создайте учетную запись на платформе Tuya IoT Cloud, свяжите ее со своим приложением Smart Life и извлеките уникальный Local Key для вашего устройства.

2

Установка интеграции LocalTuya

Установите кастомный компонент LocalTuya через магазин HACS в Home Assistant. Выполните перезагрузку сервера для применения изменений.

3

Добавление устройства и настройка DP-точек

Добавьте устройство в интеграции, указав его локальный IP-адрес, Device ID и Local Key. Настройте соответствие точек данных (DP ID) для управления питанием.

4

Проброс сущности в Умный Дом Яндекса

Внесите созданные локальные сущности в фильтр конфигурации Yandex Smart Home. Синхронизируйте устройства в приложении Дом с Алисой.