Fingerbot y CubeTouch con Home Assistant

A partir de la instalación del servidor de Home Assistant en ArchLinux, vamos a continuar añadiendo dispositivos para su integración en esta plataforma.

En esta ocasión integraremos un interesante invento que permite pulsar interruptores y pulsadores a distancia. Fingerbot y CubeTouch consisten básicamente en un servomotor que acciona una varilla que puede apretar prácticamente cualquier botón.

La comunicación con este dispositivo es vía bluetooth, integrado en la plataforma Tuya Smart. Nuestro objetivo en este artículo es la integración en local de estos dispositivos pero, como las comunicaciones vienen codificadas, primero tendremos que pasar por la aplicación y el API de Tuya para poder acceder a las credenciales de este dispositivo.

Aplicación móvil

Lo primero es agregar el dispositivo a la aplicación móvil Tuya Smart (o Smart Life) que previamente habremos instalado.

Se recomienda la agregación directa y no desde gateway bluetooth, pues parece dar menos problema a la hora de integrarlo en Home Assistant.

Configuración de proyecto en Tuya IoT

Necesitaremos crear una cuenta en Tuya IoT. Esta no tiene nada que ver con nuestra cuenta asociada a la aplicación móvil Tuya Smart (o Smart Life).

Una vez creada, accedemos a [Cloud] -> [Development] -> [Create Cloud Project]. La idea es crear un proyecto en la nube que hará uso de nuestros dispositivos. Este proyecto generará unos identificadores que usaremos en Home Assistant para acceder a estos.

Es importante seleccionar en los campos Industry y Development Method «Smart Home». Seleccionamos el centro de datos que corresponde a nuestro servidor Tuya (normalmente Central Europe Data Center para España o China Data Center) y pulsamos [Create].

En el siguiente menú, añadimos «Smart Home Content Manage» y «Device Status Notification». Pulsamos [Authorize].

En este punto es importante señalar que algunos de estos servicios de API son por tiempo limitado y, algunos, no renovables, por lo que, para repetir esta operación en un futuro, tendremos que hacerlo en una nueva cuenta de Tuya IoT.

A continuación, seleccionamos el proyecto que acabamos de crear y pulsamos en [Devices] -> [Link Tuya App Account] -> [Add App Account]. Aparecerá un código QR en pantalla que escanearemos desde nuestra aplicación Tuya. Pulsamos el botón [Confirm] en esta última.

En la pestaña «All Devices» de Tuya IoT podremos ver el listado de dispositivos Tuya encontrados, donde podremos ver nuestro FingerBot.

En [Overview] podremos acceder a las credenciales de nuestro proyecto y los dispositivos asociados.

Integración en Home Assistant

Nos vamos al directorio de configuración de Home Assistant y descargamos el plugin Home Assistant support for Tuya BLE devices, disponible en GitHub.

$ git clone https://github.com/PlusPlus-ua/ha_tuya_ble.git

Por tanto, tendremos este plugin instalado en custom_components/tuya_ble.

Solo resta reiniciar Home Assistant y podremos añadir la integración para el componente Home Assistant support for Tuya BLE devices.

Lo siguiente es introducir los valores antes obtenidos en la plataforma web de Tuya IoT. La cuenta y la correspondiente clave son las de la aplicación Android. Pulsamos [ENVIAR].

Si hay dispositivos detectables por el bluetooth del servidor de Home Assistant, nos aparecerán listados para que los integremos. Seleccionamos el dispositivo CubeTouch o Fingengot reconocido y pulsamos [ENVIAR].

Identificamos el área donde estará ubicado y pulsamos [TERMINAR].

En el panel de configuración de nuestro Home Assistant podremos ver el control de nuestro dispositivo, donde podemos ajustar el recorrido de la palanca, el modo de funcionamiento, etc.

Pruebas y resultados

Se ha probado este plugin tanto con un Fingetbot como con un CubeTouch. La detección del primero fue inmediata, mientras que para conectar con el segundo hubo que realizar varios reintentos.

El control de ambos dispositivos ha resultado indistinguible de usarlo con la aplicación Android.

Asimismo, se realizaron las siguientes pruebas:

Eliminar el dispositivo de la aplicación

Previamente se apagaron los dispositivos para evitar acciones de la nube Tuya con los mismos. El control de los dispositivos se mantuvo de manera adecuada.

Reinicio de Home Assistant

En este caso, al reiniciarse Home Assistant, el plugin intenta la conexión con la nube de Tuya, por lo que, al haber desconectado los dispositivos de la aplicación, estos no son reconocidos por el plugin, apareciendo un error en el log que dice «Waiting on integrations to complete setup: tuya_ble». Asimismo, para cada dispositivo, aparece otro error que indica que no puede conectar con este.

[custom_components.tuya_ble.tuya_ble.tuya_ble] 00:00:00:00:00:00: Sending device info request failed

Conclusiones

Por una parte, es importante señalar que, si bien con esto hemos independizado durante la sesión de Home Assistant nuestro dispositivos de la nube Tuya, en cuanto hagamos reset al mismo, habrá que volver a repetir la operación. Esto es debido a que las claves locales con las que se encriptan los mensajes del dispositivos han de generarse de nuevo.

Por otra parte, como hemos comprobado, en cada arranque de Home Assistant, el plugin usado intenta conectar con el servidor Tuya IoT, por lo que la independencia hacia este es relativa.

Un comentario

Deja un comentario