Integración domótica Tuya, gratuita y de código abierto

Tuya / Smart Life: enchufes, medidores, A/A, calefactores, cámaras, aspiradores (nube + LAN).
Controle sus dispositivos Tuya / Smart Life desde Gladys, a través de la nube y, cuando es posible, directamente por su red local (LAN), para una experiencia más rápida e independiente de internet.
Dispositivos compatibles
- Enchufes inteligentes (incluido el LSC Power Plug FR con medición de energía): encendido/apagado, bloqueo infantil, potencia, tensión, corriente, energía.
- Medidores de energía (incluidos los trifásicos): potencia, tensión, corriente, energía importada/exportada.
- Aires acondicionados: encendido/apagado, modo (auto / frío / calor / deshumidificación / ventilación), temperatura objetivo, temperatura ambiente, velocidad del ventilador y ambos ejes de oscilación. También se admiten los modelos con su propio vocabulario (p. ej. el aire acondicionado de camping MEDION P502: modos en mayúsculas, ventilador de dos velocidades, oscilación encendida/apagada).
- Termostatos de hilo piloto (fil pilote francés, familia RP5, Konyks eCosy): modo de calefacción, temperatura objetivo, temperatura ambiente, bloqueo infantil, energía.
- Cámaras (incluidas las LSC): modo privacidad, detección de movimiento, sirena, seguimiento de movimiento, filtro de personas, grabación, volteo de imagen y un sensor de movimiento utilizable en sus escenas. Cámaras motorizadas (PTZ): giro e inclinación desde el panel (Gladys 4.86.1 o posterior). Ajustes en listas: visión nocturna, sensibilidad de movimiento y de sonido, detección de sonido, modo de grabación, antiparpadeo, marca de tiempo en la imagen. Imagen en directo: la imagen de la cámara es un fotograma del vídeo en directo, actualizado cada 5 minutos y bajo demanda (panel, «muéstrame la cámara», escenas); requiere el servicio de API IoT Video Live Stream en su proyecto cloud de Tuya; si no, la imagen solo se actualiza con un movimiento / un timbrazo. Vídeo en directo (WebRTC): con un Gladys que lo admita (GladysAssistant/Gladys#3215), el botón de reproducción del widget de cámara abre el vídeo en directo, desde la nube Tuya directamente a su navegador (cámaras H264; los modelos solo HEVC no se pueden reproducir en un navegador).
- Videoporteros: timbre (una función de timbre dedicada), captura del visitante, detección de movimiento, grabación, LED de estado.
- Comederos para mascotas: dispensar a demanda, última cantidad servida, dispensado lento, luz, batería (porcentaje o tensión bruta más el indicador de batería baja, según el modelo), comidas programadas.
- Ventiladores y unidades de ventilación (categoría
fs, p. ej. el recuperador de calor AV-TTW5-W): encendido/apagado, velocidad (los niveles propios del dispositivo, p. ej. 1 a 3), luz, bloqueo infantil, dirección del flujo de aire, oscilación horizontal/vertical, temperatura ambiente cuando el dispositivo la mide. - Deshumidificadores (categoría
cs, p. ej. Qlima D825A): encendido/apagado, humedad actual, temperatura, velocidad del ventilador, temporizador y tiempo restante, modo, humedad objetivo (cuando se ofrece por pasos), bloqueo infantil. Las velocidades, duraciones del temporizador y modos muestran exactamente los valores que declara su modelo. - Sensores de temperatura y humedad (categoría
wsdcg, p. ej. Konyks Termo): temperatura, humedad, indicador de batería baja (y porcentaje de batería en los modelos que lo miden). Los dispositivos a batería duermen entre dos informes: se sirven por la nube, no por la LAN. - Purificadores de agua / ósmosis inversa (categoría
js, p. ej. The Box): TDS de entrada y de salida (ppm), vida restante de cada etapa de filtro (PP, CTO, RO) en porcentaje y en días, estado de funcionamiento. Los reinicios de "filtro sustituido" se quedan en la app Tuya (un clic por error borraría el desgaste real del filtro). - Válvulas de agua / controladores de riego (categoría
sfkzq, p. ej. R2601): abrir/cerrar, estado de la válvula (el agua fluye o no), caudal instantáneo, batería, bloqueo infantil, modo de riego (auto/manual), duración del riego manual. Dispositivos a batería: servidos por la nube. Los programas de riego se quedan en la app Tuya. - Medidores trifásicos / pinzas amperimétricas (categoría
zndb, p. ej. Power Clamp): potencia, corriente, tensión y energía consumida de cada fase, potencia, corriente y energía totales, temperatura interna de la pinza. Nube o local. - Detectores de movimiento (categoría
pir, p. ej. «Luminance Motion sensor» Zigbee tras una pasarela Tuya): movimiento (utilizable en escenas), luminosidad, batería, sensibilidad y tiempo de retención como listas. Servidos por la nube (los dispositivos Zigbee pasan por su pasarela). La pasarela Zigbee en sí no tiene nada que controlar: queda sin funciones. - Robots aspiradores (Honiture Q6 Pro): inicio/parada, pausa, volver a la base, estado de limpieza, batería, potencia de aspiración, nivel de agua, refuerzo en alfombras, modo personalizado (por habitación), fregado en Y, frecuencia de vaciado del polvo, vida restante del cepillo principal/lateral. Nota: en este producto, desactivar Pausa con el robot completamente parado también inicia un nuevo ciclo de limpieza: no es un simple interruptor de pausa.
- Interruptores, luces y persianas mediante los mapeos genéricos.
Las cámaras y los videoporteros exponen sus capturas, no un flujo de vídeo en directo: Tuya no publica ningún punto de acceso RTSP/ONVIF local estable.
El timbre del videoportero y la velocidad del ventilador / oscilaciones del aire acondicionado requieren Gladys 4.84.2 o posterior. La potencia de aspiración / nivel de agua / frecuencia de vaciado del robot requieren Gladys 4.86.1 o posterior. En un Gladys más antiguo la integración sigue funcionando, sin esas funciones.
Las nuevas instalaciones desde la tienda requieren Gladys 4.86.1 o posterior; una integración ya instalada sigue actualizándose en cualquier versión de Gladys.
Cada dispositivo muestra una insignia Local o Nube para que siempre sepa cómo se comunica.
1. Crear un proyecto Tuya IoT Cloud
La integración necesita un proyecto Tuya IoT Cloud (gratuito) para llegar a sus dispositivos.
- Vaya a la Tuya IoT Platform e inicie sesión (cree una cuenta si es necesario).
- Abra Cloud → Development y haga clic en Create Cloud Project.
- Póngale cualquier nombre.
- Industry / Development method: mantenga los valores por defecto (Smart Home).
- Data Center: elija la región más cercana (p. ej. Central Europe o Western Europe para España). Recuerde esta elección: seleccionará la misma región en Gladys.
- Una vez creado, abra el proyecto. En la pestaña Overview, anote el Access ID / Client ID y el Access Secret / Client Secret.
- Abra la pestaña Service API y compruebe que IoT Core está autorizado (suscríbase si no lo está: es gratuito). Cámaras: autorice también IoT Video Live Stream (imágenes en directo).
⚠️ La prueba de IoT Core caduca. Tuya ofrece este servicio como prueba gratuita (un mes, renovable después por seis meses más sin coste). Cuando caduca, Tuya rechaza todas las llamadas API de su proyecto y todos sus dispositivos quedan desconectados en Gladys, con el mensaje "IoT Core service subscription has expired".
Para renovarla: Cloud → Development → su proyecto → Service API (o Cloud → Cloud Services → IoT Core) y después Extend Trial Period. Es gratuito y surte efecto de inmediato. Póngase un recordatorio: hay que renovarla cada seis meses.
2. Vincular su cuenta de la app Smart Life / Tuya
Sus dispositivos deben pertenecer a una cuenta de la app Tuya que el proyecto pueda ver.
- En el proyecto, abra Devices → Link Tuya App Account → Add App Account.
- Escanee el código QR con su app Smart Life o Tuya Smart (Yo → icono de escaneo arriba a la derecha).
- De vuelta en la plataforma, abra Devices → Link Tuya App Account: sus dispositivos aparecen ahora.
- Anote el App account UID (mostrado junto a la cuenta vinculada).
3. Rellenar la configuración en Gladys
En la pantalla de configuración de la integración, rellene:
| Campo | Dónde encontrarlo |
|---|---|
| Endpoint | La región de Data Center elegida en el paso 1 |
| Client ID | Overview del proyecto → Access ID / Client ID |
| Client Secret | Overview del proyecto → Access Secret / Client Secret |
| UID de la cuenta de la app | Devices → Link Tuya App Account → UID de la cuenta vinculada |
Guarde. El estado Conexión en la parte inferior de la pantalla debería pasar a Conectado. Si muestra un error, el mensaje le indica qué corregir (credenciales incorrectas, región equivocada…).
4. Descubrir sus dispositivos
Abra la pestaña Descubrir, deje que Gladys liste sus dispositivos Tuya y cree los que desee. Cada dispositivo aparece con sus funciones y una insignia Local/Nube.
Modo local (LAN)
El control local es más rápido y sigue funcionando sin internet. Se activa con el interruptor «Preferir la conexión local (LAN) cuando esté disponible» (activado por defecto).
- Cuando está activado, Gladys intenta llegar a cada dispositivo en su red; si lo consigue, el dispositivo muestra una insignia Local y su estado se actualiza al instante. Si no, el dispositivo pasa automáticamente a la Nube.
- El control local requiere que Gladys conozca la dirección IP y el protocolo de cada dispositivo. La mayoría de los dispositivos los encuentra automáticamente el escaneo de red durante el descubrimiento.
- Un dispositivo que podría funcionar en local (su IP es conocida y la preferencia está activada) pero que funciona ahora por la nube mantiene una insignia Nube con un punto naranja: pase el ratón por encima para ver por qué (dispositivo aparcado tras fallos, datos LAN incompletos…). Un dispositivo solo-nube sigue con una insignia Nube azul normal.
- Un dispositivo local se lee cada 10 s por la LAN; lo que solo informa por la nube (funciones sin correspondencia local, o todo mientras la LAN falla) se actualiza como máximo cada 30 s, para ahorrar la cuota de la nube Tuya.
Los dispositivos Zigbee detrás de una pasarela Tuya funcionan en local a través de su pasarela: la integración abre una única sesión de red con la pasarela (su IP, su protocolo y su clave local) y se dirige a cada dispositivo Zigbee en ella, de modo que sus avisos (movimiento, temperatura…) llegan al instante. La pasarela la encuentra el escaneo de red; si no, ejecute Detectar el protocolo local en la pasarela (o en uno de sus dispositivos) con la IP de la pasarela: todos sus dispositivos se actualizan a la vez. Después lance una búsqueda y pulse Actualizar en los dispositivos Zigbee ya creados.
Un dispositivo sigue en la Nube aunque esté en su LAN
Algunos dispositivos no los encuentra el escaneo automático (otra subred, dormidos durante el escaneo…). Mientras un dispositivo creado que puede funcionar en local no tenga IP, la integración repite sola un escaneo de la LAN cada 15 minutos y lo pasa a local en cuanto responde: un dispositivo que solo estaba dormido no necesita nada más. Para un dispositivo en otra subred (nunca alcanzable por el escaneo), añádalo a mano:
- Abra la pantalla Configuración → acción Detectar el protocolo local (IP manual).
- Elija el dispositivo en la lista (o, si aún no está creado en Gladys, escriba su nombre o su ID de Tuya) e introduzca su dirección IP.
- Ejecútela. Si tiene éxito, el dispositivo pasa a local en el siguiente ciclo.
Consejo: asigne a sus dispositivos Tuya una IP fija (reserva DHCP) en su router para que sigan siendo accesibles.
Eventos cloud en tiempo real (Pulsar) — opcional
Para los dispositivos usados a través de la nube, Gladys puede recibir sus cambios de estado al instante (en ~1–2 s) en lugar de esperar al siguiente sondeo. Para ello usa el Message Service de Tuya (también llamado Pulsar). Los dispositivos ya controlados en local ya tienen respuesta instantánea y no lo necesitan.
Dos pasos para activarlo:
- En la Tuya IoT Platform: abra su proyecto → Service API → suscríbase a Message Service (gratuito). Sin él, la conexión se rechaza y Gladys registra un mensaje explícito.
- En Gladys: active el interruptor «Eventos cloud en tiempo real (Pulsar)» en la configuración y guarde.
Un dispositivo solo informa por Pulsar de lo que realmente envía a la nube Tuya: algunos su estado completo, otros solo una parte (p. ej. encendido/apagado), otros nada; estos simplemente mantienen la actualización cloud habitual. Es un comportamiento del dispositivo/firmware, no una limitación de Gladys.
Informar de un dispositivo no compatible
Un dispositivo creado sin ninguna función (o con una sola) expone códigos Tuya que la integración aún no conoce, algo habitual entre variantes de un mismo modelo.
En la configuración de la integración, ejecute la acción Diagnóstico de un dispositivo, elija el dispositivo en la lista (o escriba su nombre o su ID de Tuya si no está creado en Gladys) y copie el resultado en una issue de GitHub. El informe enumera cada código que envía el dispositivo, su valor y lo que la integración hace con él. No contiene ni clave local, ni dirección IP, ni ID de dispositivo Tuya: puede pegarse públicamente tal cual.
Nombres de las funciones (idioma) — opcional
Los nombres de funciones generados automáticamente por esta integración (p. ej. "Dock", "Suction power") y las etiquetas de opciones están en inglés por defecto, conforme a la convención de todos los tipos de dispositivos que soporta; un nombre realmente leído del propio dispositivo (poco frecuente) se mantiene tal cual sea cual sea este ajuste. La opción de configuración «Nombres de las funciones» permite pasar los dispositivos recién descubiertos a francés, alemán o español, traducidos mediante un pequeño diccionario integrado.
Los nombres de funciones solo cambian para los dispositivos recién descubiertos. Cambiar esta opción no renombra las funciones ya creadas en Gladys: renómbrelas a mano si lo desea, o elimine el dispositivo y vuelva a añadirlo desde la pestaña Descubrir para aplicar el nuevo idioma. Las etiquetas de opciones son la excepción: en un dispositivo existente, las etiquetas de las listas (p. ej. la potencia de aspiración del robot) siguen el nuevo idioma en el siguiente descubrimiento, porque Gladys vuelve a sincronizar entonces las opciones de cada dispositivo. Un nombre/etiqueta que la integración todavía no sabe traducir se queda en inglés en todos los casos, nunca se adivina.
Widgets del panel
Con Gladys 5.1 o posterior: en un panel, Editar → Añadir una caja → Widgets de integraciones, la integración Tuya ofrece cinco widgets (elija el dispositivo en los ajustes del widget):
- Cámara Tuya: la imagen en directo de una cámara (actualizada cada minuto mientras el panel está abierto), su modo privado, la detección de movimiento y la grabación, las cuatro flechas PTZ en una cámara motorizada (la imagen se actualiza tras el movimiento), o un botón de modo privado y otro de actualizar en una cámara fija.
- Medidor Tuya: para un medidor trifásico, un medidor o un enchufe que mida la potencia — un indicador de potencia (su máximo es un ajuste del widget), la potencia de cada fase en tiempo real, la corriente, la energía, la curva de potencia de las últimas 24 horas, la tensión y la corriente de cada fase.
- Dispositivos Tuya: cuántos dispositivos están en línea, en local o en la nube, los que requieren atención (sin conexión, local inaccesible), la conexión a la nube, el modo local y los eventos en tiempo real, y un botón de búsqueda.
- Robot aspirador Tuya: estado, batería, desgaste de los cepillos, potencia de succión y nivel de agua, botones iniciar / pausa / base.
- Purificador Tuya: la vida restante de cada etapa de filtro, el TDS de entrada y salida, los días restantes (en naranja por debajo de 15 días).
Acciones útiles
- Detectar el protocolo local (IP manual): activa el modo local para un dispositivo que el escaneo no encontró (ver arriba).
- Diagnóstico de un dispositivo: genera el informe de lo que expone un dispositivo (ver arriba).
- Desconectarse de la nube Tuya: deja de comunicarse con la nube hasta que vuelva a guardar la configuración.
Solución de problemas
- La conexión muestra un error → compruebe las cuatro credenciales y que el Endpoint corresponde al Data Center de su proyecto.
- Un dispositivo no tiene estado / control → compruebe su insignia. En la Nube sin respuesta, el dispositivo puede estar desconectado en la app Tuya.
- Los eventos cloud en tiempo real no arrancan → asegúrese de que Message Service está suscrito en su proyecto Tuya (un 401 en los registros significa que no lo está).
- Los registros están disponibles en la pestaña Registros de la integración.
Parámetros de configuración
Estos son los parámetros que Tuya te pide en su pantalla de configuración en Gladys.
| Parámetro | Tipo | Obligatorio | Descripción |
|---|---|---|---|
| Primeros pasos | section | No | Esta integración se comunica con sus dispositivos a través de un proyecto Tuya IoT Cloud. Cree uno (gratis) en la Tuya IoT Platform, suscríbase al servicio "IoT Core", vincule su cuenta de la app Smart Life / Tuya y copie los cuatro valores de abajo. El paso a paso completo está en el enlace Documentación de arriba. |
| Endpoint | select | Sí | Región del centro de datos Tuya de su proyecto cloud. |
| Client ID | string | Sí | Access ID / Client ID de su proyecto cloud Tuya IoT. |
| Client Secret | secret | Sí | Access Secret / Client Secret de su proyecto cloud Tuya IoT. |
| UID de la cuenta de la app | string | Sí | UID de la cuenta de la app Smart Life / Tuya vinculada a su proyecto cloud. |
| Eventos cloud en tiempo real (opcional) | section | No | Para los dispositivos usados a través de la nube, Gladys puede recibir sus cambios de estado al instante en lugar de esperar al siguiente sondeo. Para ello hay que suscribirse al "Message Service" en su proyecto Tuya IoT y activar la opción de abajo. Los dispositivos ya controlados en local ya tienen respuesta instantánea y no lo necesitan. |
| Eventos cloud en tiempo real (Pulsar) | boolean | No | Respuesta de estado cloud instantánea mediante el Tuya Message Service. Requiere tener 'Message Service' activado en su proyecto Tuya IoT. |
| Nombres de las funciones | select | No | Se aplica a los nombres de los dispositivos recién descubiertos. Los nombres de funciones de esta integración se generan en inglés por defecto (convención del repositorio): traduzca los que la integración conoce al francés, alemán o español, o mantenga el inglés. En un dispositivo ya creado, las etiquetas de opciones siguen el nuevo idioma en el siguiente descubrimiento, pero los nombres no. Una función que no está en el diccionario conserva su nombre inglés en todos los casos; siempre puede renombrar cualquier función después en Gladys. |
Cómo instalar Tuya en Gladys
- En Gladys, abre Integraciones: Tuya aparece en el catálogo junto a las integraciones nativas, con una insignia de comunidad.
- Haz clic en Instalar. Gladys descarga la imagen Docker (
ghcr.io/terdious/gladys-tuya:1.31.2), la ejecuta en un entorno aislado del núcleo y genera la interfaz de la integración (dispositivos, descubrimiento y configuración). - Abre la pantalla de Configuración de la integración, rellena los parámetros y guarda.
- También puedes instalarla directamente desde la URL de su repositorio: https://github.com/Terdious/gladys-tuya.
Tuya requiere Gladys >=5.1.0. El catálogo de Gladys se actualiza cada hora, así que una nueva versión está disponible como máximo una hora después de publicarse.
¿Todavía no usas Gladys? Es gratuito y de código abierto: sigue la guía de instalación para empezar.
Guías relacionadas
- Tuya Zigbee sin la app de Tuya: control local de los dispositivos Tuya Zigbee mediante Zigbee2MQTT.
Sobre las integraciones externas
Tuya es una integración externa: una integración comunitaria empaquetada como contenedor Docker y publicada en GitHub. Gladys la instala con un clic y la ejecuta en un entorno aislado del núcleo. La publica y mantiene Terdious, no el equipo principal de Gladys.
- Explorar todas las integraciones, nativas y de la comunidad
- Crear y publicar tu propia integración externa
- Código fuente en GitHub — fuente de esta documentación