Integración del controlador eedomus con HomeKit – Parte 3

    • Guía para integrar eedomus en HomeKit de Apple para visualizar y actuar a través de Siri en dispositivos registrados en eedomus usando una Raspberry Pi.

    Si llegáis aquí desde la anterior parte del tutorial, por fin ha llegado el momento de arrancar la aplicación y realizar las primeras pruebas contra nuestro controlador eedomus. He de confesar que la primera vez que le dije a Siri: «Enciende la televisión«, y la televisión se encendió, me produjo una enorme sensación de satisfacción. Me pasé un buen rato jugando a encender y apagar la tele aún siendo consciente de que esta práctica no es muy recomendable.

    Además de arrancar la aplicación, en esta tercera parte del tutorial, crearemos un script de arranque para que la aplicación se inicie automáticamente cuando la encendemos. También daremos un pequeño repaso a dos aplicaciones para iOS, y veremos algunas de las opciones de configuración que podemos aplicar para hacer que Siri nos entienda mejor.

    Al finalizar esta parte del tutorial ya tendréis a Siri a vuestra casi entera disposición.

     

    Orden domótica dirigida a eedomus a través de Apple Watch

     

    Arranque de la aplicación homebridge

    En el anterior capítulo ya habíamos creado el fichero de configuración config.json, pero antes de arrancar nuestra aplicación, vamos a automatizar el proceso de arranque para que cada vez que encendamos (o reiniciemos) nuestra Raspberry Pi se ejecute de forma automática homebridge. De esta forma será más autónomo y no tendremos que hacer nada ante un corte de luz o reinicio de nuestra Raspberry Pi. Para realizar estos pasos, es recomendable hacerlo como usuario root.

    Este es el script para arranque automático de homebridge:

    Debemos guardarlo en:

    Para guardarlo, podemos hacer uso de cualquier editor, como por ejemplo vi o pico, con el que más cómodos nos sintamos.

    Personalizamos el script con nuestros datos (usuario y home), si es el usuario pi no hay que cambiar nada:

    Asignamos permisos al script de arranque:

    Añadimos en defaults el script:

    Ahora debería arrancarse automáticamente cada vez que arranque la Raspberry Pi. También, a partir de ahora, podemos arrancar y parar la aplicación a nuestro gusto de la siguiente forma:

    Arrancar:

    Parar:

    Reiniciar:

    Comprobar estado:

    Ficheros de log:

    Para facilitar la lectura de la salidas de todos los log de homebridge:

    Ahora ya sí que por fin vamos a arrancar homebridge. Para esta primera vez conviene consultar los logs que registra la aplicación, por si surge algún problema. Si tenéis algo de soltura con linux y ssh conviene tener dos consolas (sesiones o ventanas) abiertas en nuestra raspberry, una para ver los logs que nos muestre homebridge y otra para ejecutar los comandos. Si no os sentís muy cómodos con esto, podréis ver los logs que se generan después, una vez arrancado, por tanto si elegís esta segunda opción, os podéis saltar el paso de la «Sesión 1»

    – Sesión 1:
    Visualizar por pantalla en tiempo real los logs que genere homebridge:

    – Sesión 2:
    Arrancamos homebrige:

    Si ya lo teníamos arrancado de antes, debemos pararlo y arrancarlo nuevamente:

    Una vez que lo hayamos arrancado, vamos a la primera sesión para comprobar lo que nos esté mostrando homebridge, sería algo así:

    Si la salida es similar a ésta, entonces todo parece ir bien. Como podéis ver, la primera parte son los WARNING que comentábamos anteriormente, y que podemos ignorar. Después nos carga nuestro plugin de homebridge-eedomus y lo registra como accesorio. Dependiendo del desarrollo del plugin puede ser accesorio o plataforma, en nuestro caso esta primera versión la he creado como accesorio, pero más adelante me gustaría intentar registrarlo como plataforma y que automáticamente descubra nuestros dispositivos de eedomus. A continuación, carga los accesorios (nuestros módulos de eedomus) que hemos añadido a nuestro fichero de configuración.

    En el recuadro lo que tenemos es el código PIN que deberemos utilizar un poco más abajo para registrar nuestro homebridge dentro de la plataforma HomeKit de Apple.

    Lo siguiente son logs internos del propio homebridge, que básicamente indican el puerto que ha levantado en nuestra Raspberry Pi.

    Ahora ya podemos continuar con el siguiente paso para registar nuestro homebridge dentro de HomeKit.

    Si sólo teníais una sesión o ventana abierta, podéis ejecutar lo siguiente para ver el log:

     

     

    Aplicación Elgato Eve para control de HomeKit

    Instalación de las aplicaciones en iOS

    Una vez que ya tenemos homebridge instalado y arrancado con el plugin para eedomus, es hora de instalar un par de aplicaciones en el dispositivo iOS, y así poder registrar homebridge dentro de HomeKit.

    Personalmente, la que más utilizo es Elgato Eve. Se trata de una aplicación muy funcional y que permite crear estancias, escenas, zonas y grupos de servicio. Podéis probar otras aplicaciones, pero recomendamos utilizar ésta para la primera integración, y después probar el resto.

    Tras haber instalado la aplicación desde la App Store, procedemos a abrirla y vamos al apartado de configuración.

    La aplicación nos pedirá el código PIN que configuramos y vimos en el log de homebridge para asociarlo a HomeKit.

    Lo siguiente que vamos a hacer es ponerle un nombre a nuestro hogar, podemos símplemente llamarlo «Casa».

    Dejaremos de lado el apartado de «Aspecto«, cada uno lo puede personalizar con las fotos o colores que desee.

    El siguiente apartado es «Estancias«, donde crearemos las habitaciones o salas donde vayamos a tener algún dispositivo (garaje, salón, despacho…) y que será útil para cuando tengamos que interactuar con Siri (Siri, enciende las luces del Salón).

    Ahora vamos a configurar el apartado «Accesorios», que será donde nos aparezcan los dispositivos que tengamos asociados a HomeKit.

    Después pulsaremos en «Añadir accesorio a Casa«, tras lo cual se pondrá a buscar accesorios compatibles.

    Es importante hacer este paso desde la red local, es decir, desde la misma red en la que tengamos homebridge. Si todo ha ido bien, veremos como nos aparece «HOMEBRIDGE«, que es el nombre que le habíamos puesto en la configuración.

    A partir de ahora, ya podréis controlar ese módulo que pusisteis en la configuración de homebridge-eedomus a través de Siri. Ahora queda acostumbrarse a la forma de interactuar con Siri, que como veréis, algunas veces es un poco peculiar, pero de eso, hablaremos en el próximo episodio.

     

    Aplicación Discovery para iOS

     

    Además de esa aplicación, arriba comentábamos que es recomendable instalar «Discovery – Bonjour Browser» también desde la App Store.
    Esta aplicación es un buscador de Bonjour. Bonjour es un método para descubrir servicios en una red de área local. En nuestro caso nos interesa para descubrir HAP: HomeKit Accessory Protocol

    Lo que queremos ver con esta aplicación es si desde nuestro dispositivo somos capaces de «ver» en local, HAP. Y dentro de HAP: homebridge.

    Me he encontrado con que en algunas ocasiones, no se me actualizaban estados o no me respondía homebridge desde el dispositivo. Al probar la aplicación «Discovery – Bonjour Browser» comprobaba que no estaba viendo a homebridge.

    En casi todas las ocasiones, bastó con desactivar wifi y volver a activarla para que apareciese nuevamente HAP > homebridge dentro de la aplicación.

    Con esto damos por finalizada esta tercera parte del tutorial. Si todo ha ido bien ya podréis pedir a Siri que ejecute comandos en vuestro controlador eedomus. Siri, ¡nos vemos en la siguiente entrega!

    Carlos Fernández

    Informático en el mundo de las telecomunicaciones y gran apasionado de las tecnologías, el mundo Apple y la domótica.


    3 Respuestas

    1. Iván dice:

      Hola Carlos,

      He leído que esta funcionalidad se puede con rasp o bien con apple tv, vas a explicar en una nueva entrega dichos pasos o son muy similares a estos, evidentemente saltando varios apartados.

      Muchas gracias, un saludo.

      • Carlos Fernández dice:

        Hola Iván,
        esta serie de tutoriales está orientado a la instalación y funcionamiento en una Raspberry.
        También sería posible hacerlo funcionar en otra distribución de linux, incluso es posible hacerlo en un windows instalando los paquetes adecuados. Pero siempre debería ser un servidor o equipo que esté siempre encendido.
        Cuando hacemos referencia al AppleTV, no es por la instalación del software, sino porque es requisito imprescindible para que HomeKit de Apple funcione desde fuera de tu red wifi.

    2. Muy buen tutorial, lo que no me queda perfectamente claro es si el homebridge funciona en español y si esto es por la compatibilidad de eedomus o tú lograste hacerlo así, pregunto porque yo estoy queriendo hacer lo mismo para el smarthost de http://www.savant.com pero solo funciona en inglés.

    Deja un comentario

    Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *