Iniciei o projeto de automação de minha casa. As principais soluções livres hoje para este fim são o OpenHAB (Open Home Automation Bus) e o Home Assistant. Ambos encotram-se maduros e atualizados, com objetivos semelhantes e diferenças sutis entregam o que precisarei para controlar meu projeto.Optei em usar o Home Assistant devido ao mesmo ser escrito em python, diferente do OpenHAB que é escrito em java (“I hate java”, parafraseando John Maddog em uma palestra que participei) possui mais integrações nativas com dispositivos em geral (o que não configura um problema para o OpenHAB visto que qualquer integração é possível a partir do desenvolvimento da mesma na plataforma de forma não nativa), de forma resumida ele é mais simples para meu uso por questões de familiaridade com a liguagem e integrações.

Para conhecer melhor a ferramenta que utilizarei recomendo que se leia a documentação da mesma. Abaixo um passo a passo para a instalação do Home Assistant em um Raspberry Pi 2 rodando Raspbian Strech.

Meu setup é composto por:

  • Uma Raspberry Pi 2B+ com um cartão de memória de 16Gb classe 10 (use o que você possuir)
  • Imagem do Raspbian Stretch lite para instalação na Raspberry. (Donwload aqui)
  • Um adaptador WiFi USB (Pois minha rasp não possui WiFi nativamente), artigo não necessário afinal a placa possui conectividade ethernet;
  • Etcher para gravar a iso no cartão de memória;

O primeiro passo é instalar o Raspbian em sua Raspberry PI, para isso siga um dos seguintes tutorias conforme seu sistema operacional:

Tendo instalado o Raspbian ligue sua placa na tomada, encontre o IP da mesma na rede e a acesse via SSH. Se você usa Windows recomendo o MobaXTerm para esta tarefa. Se usa linux como eu, acesse via terminal com o comando ssh [email protected] seguido da senha raspberry. Lembro que as credenciais padrão são:

  • User: pi
  • Pass: raspberry

Altere a senha padrão de sua placa com o comando passwd seguido da senha antiga, e da nova senha com sua confirmação.

Atualize seu sistema operacional com o comando sudo apt-get update && sudo apt-get upgrade -y

Com o sistema atualizado expanda o uso do sistema de arquivos para seu cartão de memória todo obtendo melhor aproveitamento do mesmo, com o comando sudo raspi-config escolhendo a opção expand the file system. Logo após escolha seu fuso horário com a opção set the timezone. Para finalizar reinicie sua raspberry pi selecionando finish and reboot.

Agora seguiremos o tutorial de instalação contido na documentação do Home Assistant, caso deseje acessar o artigo original ele se encontra aqui.

Conectado em sua placa via SSH execute os seguintes comandos:

  • Instale as dependências:
    • $ sudo apt-get install python3 python3-venv python3-pip
  • Adicione a conta de serviço homeassistant com as permissões necessárias
    • $ sudo useradd -rm homeassistant -G dialout,gpio
  • Crie o diretório para instalação do software com as permissões devidas:
    • $ cd /srv
      $ sudo mkdir homeassistant
      $ sudo chown homeassistant:homeassistant homeassistant
  • Agora você irá criar o ambiente virtual que o homeassistant irá utilizar para rodar, e também irá acessá-lo, com os comandos:
    • $ sudo -u homeassistant -H -s
      $ cd /srv/homeassistant
      $ python3 -m venv .
      $ source bin/activate
  • Se no início da linha em seu terminal houver (homeassistant) quer dizer que está tudo certo, e você pode partir para o comando abaixo que instalará os pacotes python requeridos:
    • (homeassistant) homeassistant@raspberrypi:/srv/homeassistant $ python3 -m pip install wheel
  • E finalmente, a instalação do homeassistant:
    • (homeassistant) homeassistant@raspberrypi:/srv/homeassistant $ pip3 install homeassistant
  • Finalize a configuração com o comando:
    • (homeassistant) $ hass

Este último comando poderá demorar alguns minutos pois irá atualizar sua instalação e finalizar a mesma e de seus componentes, neste ponto faça uma pausa para o café. Após finalizado acesse seu HUB de automação pelo endereço http://ip.de.sua.raspberry:8123 e verá a carinha padrão do Home Assistant.

A configuração base está pronta, porém precisamos configurar o autostart de nossa central automatizada. Se você seguiu o tutorial exatamente como descrevi até aqui, execute:

Este comando criará um novo arquivo. Insira o seguinte conteúdo neste arquivo:

[Unit]
Description=Home Assistant
After=network-online.target
[Service]
Type=simple
User=%i
ExecStart=/srv/homeassistant/bin/hass -c "/home/homeassistant/.homeassistant"
[Install]
WantedBy=multi-user.target

Salve o arquivo, e atualize o systemd com o comando:

  • $ sudo systemctl –system daemon-reload

Ative a inicialização automática do serviço ao executar:

  • $ sudo systemctl enable home-assistant@homeassistant

Inicie o serviço, com o comando:

  • $ sudo systemctl start home-assistant@homeassistant

Veja o status executando:

  • $ sudo systemctl status home-assistant@homeassistant

Pare o serviço ao executar:

  • $ sudo systemctl stop home-assistant@homeassistant

Caso seja necessário você pode desabilitar o início automático do serviço, com o comando:

  • $ sudo systemctl diasble home-assistant@homeassistant

Bom, o setup inicial configura-se desta forma. Até aqui temos nossa Raspberry Pi configurada para a utilização do HomeAssistant com início automático. Estamos prontos para os próximos passos. Trabalharemos mais a fundo cada detalhe do HomeAssistant nos próximos posts. Abraço!

Deixe um comentário