Homebridge en una Raspberry Pi

Hoy vamos a ver como descargar y configurar Homebridge en una Raspberry Pi, para poder conectar accesorios, en principio, incompatibles con Homekit.

¿Que és Homebridge?homebridge-logo

Hombridge es un proyecto de código realizado con Node JS. Su principal funcionalidad es hacer de puente entre dispositivos no compatibles con Homekit y nuestra casa. Existen cientos de plugins de terceros desarrollados específicamente para cada dispositivo. Desde control remoto por infrarrojos, bombillas de IKEA, productos de Xiaomi, y un sinfín de ellos que nos permiten conectar casi cualquier cosa.

Configuraciones previas

Llegados a este punto voy a dar por hecho que tenemos instalado los paquetes básicos como GIT, u otros, y que por supuesto hemos ejecutado los siguientes comandos:


apt-get update
apt-get upgrade

Instalar Node

Cómo he comentado anteriormente, todo esto funciona a través de NODE que no viene instalado por defecto en nuestra Raspberry Pi. Hay que instalarlo

Necesitamos saber que chip tiene la Raspberry Pi, por lo que ejecutamos:


uname -a

Deberá de mostrar algo como esto:


Linux raspi3 4.14.79-v7+ #1159 SMP Sun Nov 

Descargamos la versión de node que corresponde con el fragmento 4.14.79-v7+ :


curl -sL https://deb.nodesource.com/setup_7.x | sudo -E bash -
sudo apt-get install -y nodejs

Por último instalamos unas librerias más que hacen falta para ejecutar el HAP-NodeJS:


sudo apt-get install libavahi-compat-libdnssd-dev

Instalación de Homebridge

Una vez realizados todos los pasos previos, nuestra Raspberry Pi debería de estar preparada para poder instalar el Homebridge. Si durante la instalación os sale algún error, no dudéis en escribirme un correo y estaré encantado de responderos. Sigamos, para instalar cualquier paquete de node, hacemos uso del comando npm, por lo que ejecutamos:


sudo npm install -g --unsafe-perm homebridge

La etiqueta –unsafe-perm la utilizamos para que no nos de problemas de permisos, ya que intenta acceder a algunas carpetas protegidas por el sistema. Con este comando, la instalación debería realizarse de forma limpia.

Si no os ha dado un error, el siguiente paso es realizar la primera ejecución tecleando


homebridge

Se cargará un código QR en la pantalla que deberemos utilizar posteriormente para conectarlo con nuestra aplicación casa. Sin embargo, tener un puente donde no tengamos dispositivos para puentear no tiene ningún sentido. y es por ello por lo que al comienzo de la ejecución, homebridge nos ha informado de que no existe ningún archivo de configuración config.json. El archivo config.json es el que utilizaremos para poner las configuraciones de cada uno de los dispositivos que queramos conectar. Al no haber ninguno, no carga la configuración y por lo tanto, sale la advertencia.

Añadir un dispositivo nuevo a Homebridge

En mi caso voy a añadir un sensor de temperatura DHT22. Para ello, lo primero que tenemos que hacer es descargar el plugin de Homebridge que gestione el sensor, siguiendo las instrucciones que pone en la web.

Una vez instalado, tenemos que añadir el sensor a nuestro archivo de configuración, que en mi caso se encuentra en la ruta /var/homebridge/config.json. La ruta de este fichero variará dependiendo de la instalación de homebridge, podría estar también en la ruta ~/.homebridge/config.json

Es un fichero json, por lo que deberemos de añadir o sustituir los siguientes elementos:


{


 "platforms": [],

   "accessories": [
    { "accessory":        "Dht",
          "name":             "dht22",
    	  "name_temperature": "Temperature",
          "name_humidity":    "Humdity",
          "service":          "dht22" }
    ]
}

Por último, hay que reiniciar Homebridge y escanear el código QR con nuestro iPhone. Debería de aparecernos el sensor de temperatura y humedad dentro de nuestra casa.

Aunque mantiene la estructura, la configuración de los dispositivos varía entre ellos. Si tenéis alguna duda, podéis utilizar los métodos de contacto para preguntar.