Home Assistant #3: Instalamos el sistema y primer arranque

Tutoriales

Ahora que tenemos la Raspberry Pi preparada para poder empezar con la instalación, es hora de empezar nuestro primer contacto con Home Assistant, algo que, como veréis, es bastante sencillo, aunque nos llevará un rato de comandos y, dependiendo de la Raspberry que usemos, mas o menos tiempo de instalación.

Para aquellos que no sabéis exactamente lo que vamos a hacer, os comentaré que en el post anterior, lo que hicisteis fue instalar Linux en una Raspberry Pi, en concreto la variante Raspbian, totalmente preparada para funcionar tal cual en nuestras Raspberrys, y, una vez tenemos instalado el sistema, instalaremos un programa llamado Home Assistant, que es el que os he comentado desde el principio y que se será el encargado de poder coordinar todos los aparatos que conectemos, sean o no de la misma marca.

Instalación de Home Assistant en Raspbian

  • Lo primero que tenemos que saber es la ip que nuestro router le ha asignado a la Raspberry, eso lo podemos hacer, una vez que la hemos ejecutado, o bien mirando en el router o bien en la propia Raspberry con un cable hdmi y un teclado entrado con el usuario “pi” y la contraseña “raspberry” y lanzamos el comando:
    ifconfig
  • Si hemos sacado la ip para conectarnos de manera remota, tendremos que conectar por ssh, ya sea usando el putty en windows o bien desde Linux como es mi caso, si lo hacéis desde linux, el comando es:
    ssh ip_de_la_raspberry -l piDonde cambiamos ip_de_la_raspberry por la ip de nuestra Raspberry, la cual, tendrá la forma de 192.168… en la mayoría de casos
  • Una vez dentro, comienza la instalación, yo he seguido el tutorial de Home Assistant que hay aqui, aunque, os lo pongo aquí:
sudo apt-get update

sudo apt-get upgrade -y

De esta forma tenemos el sistema actualizado

sudo apt-get install python3 python3-venv python3-pip

Instalamos las dependencias iniciales de python. Ahora vamos a crear un usuario en el sistema llamado homeassistant

ACTUALIZACIÓN: En algunos sistemas, es recomendable instalar también si os da problemas la instalación de Home Assistant:

sudo apt-get install build-essential libssl-dev libffi-dev python-dev

Después de estas dependencias, seguimos:

sudo useradd -rm homeassistant

Ahora vamos a crear el directorio donde se instalará el Home Assistant

cd /srv

sudo mkdir homeassistant

sudo chown homeassistant:homeassistant homeassistant

Ahora vamos a crear un entorno virtual con el usuario homeassistant donde se ejecutará el software. ACTUALIZACIÓN: Me han comentado que en algunos casos ha habido gente a la que le ha dado error al ir a instalar sin reiniciar, si os da un error u os queréis curar en salud, podéis reiniciar ahora para seguir el tutorial. (Gracias Unai)

sudo su -s /bin/bash homeassistant

cd /srv/homeassistant

python3 -m venv .

source bin/activate
Veremos que donde escribimos, ha aparecido delante (homeassistant), por lo que ahora podemos lanzar la instalación:
pip3 install homeassistant

Con esto, ya estaría instalado, para poder lanzarlo por primera vez lanzamos el comando:

hass

Veremos como empiezan a salir numerosos mensajes, no os precupeis, es información para que si algo falla, veáis donde ocurre. Para ver nuestro nuevo Home Assistant, esperando unos segundos o minutos, dependiendo de la Raspberry Pi que estemos usando, podemos poner en un navegador la ip de nuestra Raspberry (la misma que hemos visto con ifconfig y que hemos usado para entrar por ssh) con :8123 detrás, es decir, si vuestra Raspberry estuviera en la 192.168.1.105, tendríais que poner en el navegador de vuestro movil o PC 192.168.1.105:8123 y debería salir algo como esto:

Antes de terminar, supongo que querréis que se ejecute siempre que la Raspberry se encienda, de manera automática, por lo que os voy a explicar como hacer para poder hacer un servicio que arranque solo. Si habéis seguido la guía usando Raspbian, tendreis que crear el fichero de arranque de esta forma:

sudo nano -w /etc/systemd/system/home-assistant@homeassistant.service

Os aparecerá una ventana de un editor en la que tendréis que pegar el texto siguiente sin cambiar nada:


[Unit]
Description=Home Assistant
After=network-online.target

[Service]
Type=simple
User=%i
ExecStart=/srv/homeassistant/bin/hass -c "https://cdn.domoticaencasa.es/home/homeassistant/.homeassistant"

[Install]
WantedBy=multi-user.target

Debería quedar algo así:

Una vez terminado, pulsamos CONTROL y la X, nos pedirá salvar, le damos a la Y y ya estaría salvado. Ahora toca ponerlo en el arranque, para ello lanzamos:

sudo systemctl --system daemon-reload
sudo systemctl enable home-assistant@homeassistant

Ya estaría, ahora si quisieramos arrancarlo habría que lanzar:

sudo systemctl start home-assistant@homeassistant

De esta manera ya tendríamos nuestro Home Assistant, listo para empezar a ver lo que podemos hacer con él. Ahora empieza lo divertido.

¿Habéis podido instalarlo?

IMPORTANTE: Con el fin de ayudaros de una forma más directa, he creado un grupo en Telegram donde podemos ayudarnos todos así como evitar que os quedéis atascados, si tenéis telegram podéis pulsar aquí para uniros y si no lo tenéis, os recomiendo que os lo instaléis ya que lo usaremos en el tutorial para notificarnos.

¿Quieres montarte tu propio sistema Smart Home?

¿Te gustaría empezar poco a poco teniendo Google Home, Alexa o Home Assistant para controlar las luces, calefacción y otros electrodomésticos de la casa? ¡Te ayudamos! Entra en nuestro Grupo de Telégram de Domótica y también puedes entrar a nuestro Foro de Domótica donde podrás empezar a leer y preguntar tus dudas. Además, si quieres estar al tanto de las ofertas de domótica que salen a diario para poder hacerte un sistema de domótica low cost, entra a nuestro Canal de ofertas de domótica y no te perderás ni una o si lo prefieres y no tienes Telegram, puedes entrar a nuestra página de ofertas de domótica o Smart Home en Facebook. ¡Síguenos también en nuestro Facebook, Twitter o Instagram! ¡Te esperamos!

26 Comentarios

  1. Loudmicro

    importante cambiar
    ExecStart=/srv/homeassistant/bin/hass -c “/home/homeassistant/.homeassistant”
    por
    ExecStart=/srv/homeassistant/bin/hass -c “/home/homeassistant/.homeassistant”
    (comillas dobles normales)

    Reply
  2. evitax

    segui los pasos hasta “hass” pero al ponerlo me sale que no se encontro la orden a pesar de haber seguido los pasos

    Reply
  3. fabi

    Yo tambien llego hasta “hass” y empieza a carga y lo deje todo un dia y sigue igual. ALguna ayuda?

    Reply
    • eduardo

      cuando sale la carga de cosas, ¿has probado a acceder a la web?

      Reply
    • Guille

      A partir del siguiente mensaje del log puedes acceder via web:

      [homeassistant.core] Starting Home Assistant

      Al acceder por primera vez al panel te pedirá que registres un usuario.

      Reply
  4. Pepe

    Con PUTTY:
    A partir de “hass” ¿donde se colocan los siguientes comandos, por qué no para de salir lineas y no permite mas comandos.
    Cuando cierro PUTTY dejo de ver la web de Home Assistant. ¿tengo que tener el pc encendido siempre para que funcione?

    Reply
    • eduardo

      Cierra hass con CONTROL + C, así matas el proceso y sigue el tutorial para poder crear el servicio y que se arranque solo. Así no necesitarás tener tu PC encendido.

      Reply
  5. juanjo vizcaino

    Hola:
    Seria posible instalar esta instalación que estas explicando sobre una Raspbian Stretch with desktop para poder tener en la Raspberry home assistant en modo Kiosko ?

    Reply
    • eduardo

      En principio, no deberías tener problemas para hacerlo

      Reply
  6. Sergi

    Buenas.

    Tengo muchas ganas de tocar el home assistant pero me quedo estancado en un sitio.

    al llegar a hass. se acaba parando en (syncWorker_14) [homeassistant.components.zeroconf] starting Zeroconf Broadcast.

    si entro a la ip:8123 me sale error 404 not found.

    que puedo hacer?

    gracias

    Reply
    • eduardo

      No se cuanto tiempo has esperado, pero a veces tarda…

      Reply
      • Sergi

        he esperado muchas horas.
        he vuelto a grabar otra sd con menor capacidad. la primera era de 128gb

        se queda igualmente por esos parametros, puede que tenga que esperar mas? ahora esta en zeroconf.badTypeInNameException
        y en la web error 404 not found

        Reply
      • Sergi

        Lo que me doy cuenta que cuando está parado y enciendo el Chromecast de la casa, me sale un aviso sobre algún paquete de chromecast i creo que con una luz tb pasa alguna cosa.
        Pero no puedo entrar a ma página de home assistant.

        Gracias.

        Reply
      • Sergi

        Solucionado!

        Sabían que era algo de frontend

        Antes de instalar home assistant
        pip3 install homeassistant

        He instalado esto.
        python3 -m pip install home-assistant-frontend==20190626.0

        Después de instalar home assistant lo he vuelto a instalar el frontend. Por si las moscas.

        Hass y funcionando!

        Reply
  7. Luis

    Al lanzar hass me da el siguiente error:

    “2019-11-19 14:29:15 ERROR (MainThread) [homeassistant.components.http] Failed to create HTTP server at port 8123: [Errno 98] error while attempting to bind on address (‘0.0.0.0’, 8123): address already in use”

    ¿Alguien me puede ayudar a solucionarlos?

    Un saludo y gracias,

    Reply
    • eduardo

      Tienes otra instancia de Home Assistant u otro servidor corriendo en ese puerto.

      Reply
  8. Angel

    Intento instalar homeassistant siguiendo los pasos pero al ejecutar “hass” nunca termina de hacerlo y tengo que “matar” el servicio con CTRL + C. Sí que me deja acceder a la web de homeassinstant, me configuro la cuenta, pero al rato me echa de la web y ya no puedo acceder. En la raspberry intento reinstalar o desinstalar homeassistant pero me pide usuario y contraseña y, aunque le pongo los datos con los que he configurado la cuenta anteriormente, me dice que no son correctos, ¿alguien conoce una solución a esto?

    Muchas gracias.

    Reply

Contestar

Tu e-mail no será publicadoRequired fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

*

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.

Lost Password

Registro