LocalTuya в Home Assistant: локальное управление и проброс в Алису

LocalTuya в Home Assistant: локальное управление и проброс в Алису
Главное из статьи:
  • Пошаговый разбор: шаг 1. получение local key через tuya iot platform или tinytuya wizard.
  • Пошаговый разбор: шаг 2. установка и выбор между localtuya и tuya local в home assistant.
  • Пошаговый разбор: шаг 3. конфигурирование dp-точек (data points) для реле и энергомониторинга.
  • Пошаговый разбор: шаг 4. трансляция локальных сущностей в умный дом яндекса через yandex_smart_home.

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

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


LocalTuya vs Tuya Local: какую интеграцию выбрать?

В каталоге HACS для Home Assistant существуют две популярные, но принципиально разные интеграции для локального контроля оборудования Tuya. Понимание их различий критически важно перед началом настройки:

  1. LocalTuya (автор rospogrigio):

    • Принцип работы: Предоставляет низкоуровневый ручной доступ к точкам данных прибора (Data Points, DP ID).
    • Преимущества: Максимальная гибкость. Позволяет вручную настроить абсолютно любое нестандартное китайское реле, диммер или датчик, даже если его нет ни в одной официальной базе данных.
    • Недостатки: Требует понимания структуры DP-точек устройства и ручного указания параметров масштабирования (например, деления показаний напряжения на 10 или мощности на 100).
  2. Tuya Local (автор make-all):

    • Принцип работы: Использует готовые профили устройств (Device Definitions).
    • Преимущества: Автоматическое определение большинства популярных моделей розеток, увлажнителей, обогревателей и кондиционеров без необходимости вручную маппить каждую DP-точку.
    • Недостатки: Если прошивка нового прибора изменила номера DP-точек, устройство не определится до тех пор, пока сообщество не добавит для него конфигурационный YAML-профиль.

TIP

Для стандартных 1-2-канальных умных розеток и выключателей рекомендуется использовать LocalTuya, так как она дает полный контроль над передачей параметров тока и мощности в систему аналитики.


Шаг 1. Получение Local Key и Device ID

Для защиты локального обмена данными чипы Tuya используют шифрование AES-128. Каждое устройство имеет уникальный 16-значный ключ безопасности — Local Key, который можно извлечь двумя надежными путями.

Способ А: Через облачный портал Tuya IoT Platform

  1. Перейдите на официальный портал Tuya IoT Platform (iot.tuya.com) и зарегистрируйте бесплатный аккаунт разработчика.
  2. Откройте раздел меню Cloud -> Development и нажмите кнопку Create Cloud Project.
  3. Заполните название проекта, в поле Industry выберите Smart Home, а в поле Data Center обязательно укажите дата-центр, к которому привязана ваша учетная запись Smart Life:
    • Для России, Беларуси и стран СНГ — Central Europe Data Center.
    • Выбор неверного региона — самая распространенная причина, по которой список приборов после авторизации оказывается пустым.
  4. В мастере создания проекта подключите сервисы авторизации по умолчанию (Smart Home Device System, Device Status Notification).
  5. Перейдите на вкладку Devices -> Link Tuya App Account -> Add App Account и отсканируйте сгенерированный QR-код через мобильное приложение Smart Life на вашем смартфоне (раздел Профиль -> значок сканера QR-кода в правом верхнем углу).
  6. После успешной привязки откройте вкладку Device List, выберите ваш регион и скопируйте два ключевых значения для каждого прибора:
    • Device ID (вида eb56a81234567890abcdef);
    • Local Key (16-значная буквенно-цифровая строка, например a1b2c3d4e5f6g7h8).
Имя прибора (Device Name)Идентификатор (Device ID)Локальный ключ (Local Key)
Smart Socket 16Aeb56a81234567890abca1b2c3d4e5f6g7h8
Wall Switch 2-CHeb99f12340987654deff8e7d6c5b4a32109

Способ Б: Автоматическое извлечение через TinyTuya Wizard

Если вы не хотите вручную копировать ключи для десятков приборов из веб-интерфейса, воспользуйтесь консольной утилитой TinyTuya:

  1. Установите модуль Python на вашем рабочем компьютере или сервере:
    pip install tinytuya
  2. Запустите интерактивный мастер сопряжения:
    python3 -m tinytuya wizard
  3. Введите API Key (Access ID) и API Secret из настроек вашего Cloud Project на портале Tuya IoT.
  4. Утилита автоматически подключится к API, опросит локальную сеть и сгенерирует готовый структурированный файл devices.json, содержащий IP-адреса, Device ID, Local Key и версии протоколов для всех приборов вашего дома.

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

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

IMPORTANT

Перед добавлением приборов в Home Assistant обязательно зайдите в веб-интерфейс вашего домашнего роутера и зафиксируйте статические IP-адреса (DHCP Reservation / Static Lease) для всех Wi-Fi устройств Tuya. Если роутер сменит динамический IP-адрес розетки, локальная интеграция потеряет связь с прибором.


Шаг 3. Добавление устройств и конфигурирование DP-точек

При вызове мастера добавления устройства в LocalTuya компонент выполнит сканирование подсети. Если розетка обнаружена, выберите ее из списка. Если нет — укажите ее статический IP-адрес вручную.

Поле настройки мастера LocalTuyaПример значенияПояснение
Device NameУмная розетка КухняПроизвольное понятное имя объекта в системе
Host (IP Address)192.168.1.145Статический локальный IP-адрес прибора
Device IDeb56a81234567890abcdefУникальный идентификатор устройства Tuya
Local Keya1b2c3d4e5f6g7h816-значный локальный ключ шифрования
Protocol Version3.3 (или 3.4 / 3.5)Версия локального протокола обмена пакетами

Выбор версии протокола Tuya (3.3 / 3.4 / 3.5)

  • Большинство стандартных устройств используют протокол версии 3.3.
  • Новые устройства выпуска конца 2024–2026 годов с обновленными чипами Realtek/Beken могут требовать протокол 3.4 или 3.5 с измененным форматом заголовков пакетов. Если после ввода ключа интеграция выдает ошибку Connection refused или Payload length error, переключите версию протокола на шаг выше.

Карта стандартных DP ID для розеток и выключателей

Устройства Tuya передают команды и телеметрию через именованные числовые регистры — Data Points (DP):

Регистр DP IDНазначениеТип сущности в HAКоэффициент масштабирования (Scale)
DP 1Состояние реле питания (Вкл/Выкл)switch1 (булево true/false)
DP 18Текущая сила тока (мА / mA)sensor (current)1 (миллиамперы) или 0.001 (Амперы)
DP 19Текущая активная мощность (Вт / W)sensor (power)0.1 (если розетка отдает значение 152 для 15.2 Вт)
DP 20Напряжение питающей сети (В / V)sensor (voltage)0.1 (значение 2285 преобразуется в 228.5 В)
DP 17Таймер обратного отсчета (секунды)number / sensor1

Для 2-канального настенного выключателя добавьте две отдельные сущности switch:

  • Первый канал привязывается к DP 1.
  • Второй канал привязывается к DP 2.

Шаг 4. Трансляция локальных сущностей в Умный Дом Яндекса

После создания локальных сущностей в Home Assistant (например, переключателя switch.kitchen_socket и сенсора мощности sensor.kitchen_socket_power) их необходимо передать голосовому помощнику Алисе через компонент Yandex Smart Home.

Отредактируйте файл configuration.yaml на сервере Home Assistant:

yandex_smart_home:
  filter:
    include_entities:
      - switch.kitchen_socket
      - switch.hall_light_channel_1
      - switch.hall_light_channel_2
  entity_config:
    switch.kitchen_socket:
      name: "Розетка на кухне"
      room: "Кухня"
      type: devices.types.socket
      properties:
        - type: devices.properties.float.power
          entity: sensor.kitchen_socket_power
        - type: devices.properties.float.voltage
          entity: sensor.kitchen_socket_voltage
    switch.hall_light_channel_1:
      name: "Основной свет"
      room: "Прихожая"
      type: devices.types.light
    switch.hall_light_channel_2:
      name: "Подсветка зеркала"
      room: "Прихожая"
      type: devices.types.light
  1. Сохраните конфигурацию и выполните быструю проверку YAML через меню Инструменты разработчика -> Проверить конфигурацию.
  2. Выполните перезапуск интеграции Yandex Smart Home.
  3. Откройте приложение Дом с Алисой на телефоне, перейдите в профиль интеграции и нажмите Обновить список устройств.
  4. Проверьте отклик: голосовые команды «Алиса, включи розетку на кухне» теперь исполняются локальным контроллером за доли секунды, а в карточке устройства отображаются реальные показания текущей мощности и напряжения сети.

IMPORTANT

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


Траблшутинг и частые ошибки

Ошибка 1: Устройство не отвечает при открытом приложении Smart Life

  • Причина: Чипсеты Wi-Fi модулей Tuya (ESP8266, BK7231N, RTL8710) поддерживают только одно активное TCP-соединение по порту 6668 одновременно.
  • Решение: Если мобильное приложение Smart Life или Tuya Smart открыто на экране вашего смартфона, оно монополизирует сетевой сокет, и Home Assistant теряет связь с устройством. Принудительно закройте приложение на телефоне (выгрузите из панели многозадачности).

Ошибка 2: Прибор перестал управляться после сброса Wi-Fi

  • Причина: При повторном сопряжении розетки в мобильном приложении сервер Tuya генерирует совершенно новый Local Key.
  • Решение: Повторно запустите tinytuya wizard или посмотрите новый ключ на портале Tuya IoT Platform, затем обновите Local Key в свойствах сущности в Home Assistant.

Ошибка 3: Показания мощности завышены или занижены в 10 раз

  • Причина: Разные производители используют разные множители для передачи чисел с плавающей точкой в DP-регистрах.
  • Решение: Измените параметр Scaling factor в настройках сенсора LocalTuya (установите значение 0.1 вместо 1.0 или наоборот).

Дополнительные материалы по смежным протоколам и сценариям:


Часто задаваемые вопросы (FAQ)

Можно ли управлять локальными устройствами Tuya без интернета?

Да. После настройки LocalTuya и Home Assistant все команды включения, выключения и автоматизации внутри локальной сети выполняются даже при полном физическом отключении интернет-кабеля от домашнего роутера.

Теряется ли возможность управления через Яндекс Станцию без интернета?

Если ваша Яндекс Станция подключена к Home Assistant через локальную интеграцию Yandex Station (с протоколом локального TTS/управления), базовые команды могут обрабатываться локально. Однако облачные навыки Алисы требуют активного интернет-соединения между сервером Яндекса и вашим сервером Home Assistant.

Нужно ли продлевать бесплатную подписку Tuya Developer Cloud через 6 месяцев?

Платформа Tuya IoT предоставляет бесплатный полугодовой пробный период для доступа к Cloud API. Однако для уже полученных Local Key продление подписки не требуется: ключ шифрования хранится в энергонезависимой памяти самого прибора и остается неизменным до тех пор, пока устройство не будет удалено и сопряжено заново.

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

1

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

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

2

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

Установите компонент LocalTuya или Tuya Local через каталог HACS в Home Assistant и перезагрузите сервер для применения конфигурации.

3

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

Добавьте устройство в интеграции, указав его локальный IP-адрес, Device ID, протокол 3.3/3.4/3.5 и Local Key. Настройте соответствие DP ID для каналов и энергомониторинга.

4

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

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

ПРЕМИУМ IPTV • ТЕСТ 24Ч 0 ₽ / тест ⚡️ СБП +20% бонус

Шаровоз: 2 300+ каналов и 4K кинозалы

Официальный премиум-пакет IPTV: 296 кинозалов BCU (новинки кино в 4K Ultra HD), Матч Премьер 50fps, 116 каналов РФ и архив передач за 6 дней на телевизорах Smart TV, Android TV и приставках.

Оплата:⚡️СБП QR (РФ)+20%💳МИР / Visa / MC💎USDT / BTC🌐FreeKassa
ВСЁ ВКЛЮЧЕНО
3$/ мес
Тест на 24ч →
Автор статьи Инженер по безопасности и загородным системам
8+ лет в инженерных сетях

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