Controlar Homematic con Amazon Echo (Dot / Alexa)

Lamentablemente, no hay ninguna habilidad de Homematic para el servicio de voz Amazon Alexa (Amazon Echo). No obstante, el [amazon_textlink asin='B00BZ6XLJ0′ text='Homematic' template='ProductLink' store='rpininja-21′ marketplace='DE' link_id='5c019a96-ed0f-11e6-88c1-6f4f9540b732′] puede ser controlado muy fácilmente con el Echo, o, el Echo Dot. Puede trabajar con estas instrucciones en unos 20 minutos. Dado que estamos simulando las lámparas Hue al Echo (Alexa ya puede dirigirse a ellas sin necesidad de una Skill), lamentablemente sólo podemos encender y atenuar las luces. Otras funciones, como las persianas, también serían concebibles, pero tienen que controlarse con el comando de voz "encender la luz", "apagar la luz", "atenuar la luz", por lo que aún no ofrece una solución perfecta para ello. Sin embargo, si sólo quieres cambiar las luces, es una solución que funciona muy bien y de la que no querría prescindir.

Situación inicial: Tengo un Homematic (no Homematic IP) con una CCU1 y actuadores de luz conectados a ella. También necesitamos una [amazon_textlink asin='B01CEFWQFA' text='Raspberry Pi' template='ProductLink' store='rpininja-21′ marketplace='DE' link_id='7d861404-ed0f-11e6-9605-d1552f921464′]. Ya tengo esto en uso para otras cosas y puedo ampliarlo fácilmente para esto. Además, es necesario, por supuesto, un Amazon Echo o Amazon Echo Dot.

El procedimiento en resumen:

  1. En la Raspberry instalamos el habridge, un software Java de código abierto que simula las lámparas Hue.
  2. Estas lámparas Hue simuladas son reconocidas por Alexa
  3. habridge asegura que una acción libremente seleccionada se lleva a cabo cuando las lámparas simuladas se conmutan, en nuestro caso dejamos que la interfaz XML de la CCU sea dirigida.
  4. Listo 🙂 .

Empecemos por instalar el habridge en la Raspberry Pi:

habridge es un software Java, por lo que debemos asegurarnos de que Java está instalado en nuestra Pi. Esto puede hacerse con

sudo apt-get update && sudo apt-get install oracle-java8-jdk

Ahora creamos una nueva subcarpeta en nuestro directorio principal y la descargamos

cd /home/pi/
mkdir habridge
cd habridge
wget https://github.com/bwssytems/ha-bridge/releases/download/v4.1.2/ha-bridge-4.1.2.jar

A continuación, creamos un archivo de inicio para habridge. En este archivo también especificamos el puerto en el que la interfaz web debe ser accesible. Tuve que cambiar este puerto porque el puerto por defecto 8080 ya se utilizaba en mi Raspberry Pi:

vi starthabridge.sh

Y entra:

cd /home/pi/habridge
rm /home/pi/habridge/habridge-log.txt
nohup java -jar -Dserver.port=8080 /home/pi/habridge/ha-bridge-4.1.2.jar > /home/pi/habridge/habridge-log.txt 2>&1 & chmod 777 /home/pi/habridge/habridge-log.txt

A continuación, hacemos que el script de inicio sea ejecutable

chmod u+x starthabridge.sh

Y empezar a habridge

./starthabridge.sh 

Ahora comprobamos el archivo de registro para ver si hay errores

tail -f habridge-log.txt

Si no se ha producido ningún error, habridge ya está instalado y es accesible a través del puerto configurado anteriormente en el navegador web.

Ahora llamamos a la interfaz web. En la página de inicio vemos todos los dispositivos que Alexa reconocería como lámparas Hue. Por supuesto, ninguno de ellos ha sido creado todavía, pero podemos cambiar esto haciendo clic en "añadir/editar".

Sólo necesitamos unos pocos campos para la instalación:

  • Nombre (Alexa reconocerá el dispositivo con este nombre, por lo que el nombre "Luz del salón" conduce al siguiente comando de voz "Alexa, enciende la luz del salón")
  • Tipo de dispositivo "Personalizado
  • Tipo de mapa "Dispositivo HTTP
  • En Artículos -> Artículo de destino
    • http://[CCU_IP]/config/xmlapi/statechange.cgi?ise_id=[ise_id]&new_value=1
  • Elementos de fuera -> Elemento de destino
    • http://[CCU_IP]/config/xmlapi/statechange.cgi?ise_id=[ise_id]&new_value=0
ajustes de habridge

Nota: Para ello es necesario el complemento XML API de la CCU, que puede encontrarse aquí. El ise_id se puede encontrar llamando a la siguiente URL en el navegador y buscando allí el dispositivo correspondiente

http://[CCU_IP]/config/xmlapi/devicelist.cgi

Ahora guardamos la configuración. Este dispositivo ya está configurado. Hacemos lo mismo con el resto de dispositivos / luces que queramos conmutar.

Por último, lo emparejamos todo con Alexa:

Vamos a la app Alexa, luego a Smart Home y nos desplazamos hasta abajo. Ahí dejamos que Alexa busque nuevos dispositivos. Esto lleva poco tiempo y luego la configuración está completa. Ahora se pueden encender las luces.

7 comentarios

  1. Gracias, ahora me funciona, eres un héroe. ¿Sabe por casualidad cómo configurar/utilizar el elemento de atenuación por idioma? La llamada de la lámpara regulable es "http://ip/config/xmlapi/statechange.cgi?ise_id=243xy&new_value=0.5" para el 50%.

    • Ich habe keine dimmbare Lampe, aber da wir Alexa vorspielen eine Hue Lampe zu sein, müsste sich das ganze so einrichten lassen. Laut habridge Dokumentation wird beim Dimmen der an Alexa genannte Dimmwert im Feld ${intensity.percent} mitgegeben. d.h. dieses Feld musst du in deine URL einbauen. Da du aber nicht 50%, sondern 0.5 brauchst, musst du tatsächlich folgendes einbauen: ${intensity.math(X/100)}
      Deine DimmUrl würde also aussehen: http://ip/config/xmlapi/statechange.cgi?ise_id=243xy&new_value=${intensity.math(X/100)}

      Alexa debe escuchar los siguientes comandos:
      - Alexa, pon la luminosidad del comedor al 60%.
      - Alexa, baja la luz del salón

      Como he dicho, lamentablemente no puedo probarlo, pero es lo que dicen los docs.

1 Trackback / Pingback

  1. Controlar Homematic a través de ioBroker usando Alexa - raspberry-pi.ninja

Deja un comentario

La dirección de correo electrónico no se publicará.


*