Passive BLE Monitor - Integre dispositivos Bluetooth Low Energy no Home Assistant!

Já pensou em integrar localmente dispositivos BLE (Bluetooth Low Energy) no Home Assistant? Então, é possível! Com o componente Passive BLE Monitor é possível integrar localmente dispositivos Xiaomi, Aqara, Viomi, Yeelight dentre outros!

Veja clicando aqui a lista de dispositivos!

37e0cc243be17964d3037c993a05255d0ffdc484

Para integrar dispositivos BLE ao Home Assistant não é necessário nenhum hub ou gateway, se o hardware que está usando o Home Assistant já tem Bluetooth integrado como um Raspberry Pi, Mini PC ou Notebook podemos utilizar o bluetooth deles! Caso não tenha Bluetooth no seu hardware então um pequeno dongle usb já basta.

Github do componente: clique aqui!

No meu caso uso o Home Assistant em um Mini PC e adquiri esse pequeno termostato da Xiaomi, vou usa-lo como exemplo no tutorial.

Vamos ao tutorial, o primeiro passo é adicionar o componente Passive BLE Monitor.

Adicionado o componente!

No HACS vá em Integrações.

Clique em Explore e Download Repositories no canto direito inferior e procure Passive BLE Monitor.

Clique em “Download This Repository With HACS”.

Clique em Download.

3

Reinicie o Home Assistant.

4

Com ele reiniciado vá em Configurações, Dispositivos e Serviços.

No canto direito em baixo clique em Adicionar Integração e procure na lista Passive BLE Monitor.

Caso não abra a integração na hora deve aparecer essa mensagem para aguardar. Aguarde que depois de alguns minutos a integração é configurada. Realmente demora um tempo, aguarde com paciência.

6

Com a integração configurada, vai carregar a tela de opções. Verifique se o MAC address do Bluetooth do seu hardware e a opção de Descobrir dispositivos e sensores automaticamente estão marcados. Se estiver tudo certo então é só clicar para Enviar. O seu hardware vai procurar seu dispositivo BLE.

Pegue seu dispositivo BLE e deixe perto do seu hardware que irá aparecer no seu Home Assistant automaticamente. Caso o seu Home Assistant não ache o dispositivo mais a frente no tutorial vai aprender a integrar ele de outra forma.

8

Com ele integrado ao Home Assistant irá perceber que as informações do dispositivo vão ficar como Desconhecido.

Na documentação do componente Passive BLE Monitor temos a informação que para sensores é obrigatório que tenhamos uma chave de encriptação para termos as informações do dispositivo. Verifique se seu dispositivo necessita.

Então vamos buscar essa chave de encriptação!

Existem duas formas de conseguirmos essa chave.

Primeira forma:

A primeira forma é adicionando o dispositivo ao aplicativo Mi Home e por ele conseguindo a chave!

Baixe o Mi Home, selecione região China. Já com o aplicativo aberto clique no “+” no canto superior direito.

Clique em Adicionar Dispositivo e ligue o Bluetooth do seu celular.

Adicione o seu dispositivo a sua conta e siga o passo a passo!

Agora temos ele adicionado.

Essa parte do tutorial é para quem o Home Assistant não achou o dispositivo. Para integra-lo vamos precisar do MAC Address do seu dispositivo e no Mi Home vamos ter essa informação.

Clique no dispositivo e vá no Menu na direito em cima. Clique em About.

E agora vai ter o seu MAC Address, guarde ele.

Com seu dispositivo adicionado ao Mi Home agora vamos conseguir a chave de encriptação!

Vamos precisar usar um programa para Windows chamdo Token Extractor.

3

Pode baixar o programa clicando aqui.

O windows deve indicar que é um programa malicioso, ignore e baixe mesmo assim.
Abra e clique em Executar assim mesmo.

Com ele baixado, abra, coloque seu e-mail e senha do Mi Home.
Depois coloque a região em que a conta do Mi Home está seu dispositivo, para China coloque “cn” e pronto!

Vão aparecer todos os dispositivos, token e no caso do dispositivo BLE da Xiaomi vai aparecer também a chave de encriptação (BLE KEY). Copie a chave que vamos usar.

Segunda forma:

Pareie o seu dispositivo BLE em um computador que tenha bluetooth, entre no site clicando aqui para obter a chave encriptada.

Já no site clique no botão Connect e aguarde até que ele mostre conectado.
Com ele conectado, clique no botão Do Activation e aguarde até que a chave de encriptação apareça na opção Mi Bind Key.

Telink_flasher_website

Seguindo com o tutorial!

Pronto, agora temos a chave encriptada e com ela em mãos vamos adicionar ao Home Assistant!

Vá em Configurações, Integrações e na integração do Passive BLE Monitor clique em Configurar.

10.5

Vá em Devices e clique no seu dispositivo se ele foi descoberto pelo Home Assistant, caso não tenha sido clique em Add device.

Preencha com a chave encriptada e clique em Enviar.
Se o seu dispositivo não tiver sido descoberto pelo Home Assistat preencha com o MAC Address e a chave encriptada, clique em Enviar.

Vai voltar para a tela anterior, clique em Enviar nela. Vai aparecer uma mensagem de sucesso.

Captura de tela 2021-12-25 222226

Agora é só aguardar que as informações vão aparecer. Pode demorar até 2 horas.

Bom, é isso. Um abraço!

2 Likes

Parabéns @LeandroIssa por mais um excelente tutorial! Tenho interesse em adquirir este dispositivo para colocar nos quartos da minha residência, mas tenho dúvidas em relação a comunicação entre os dispositivos e o Bluetooth integrado no hardware do NUC que está rodando o HA. Sabe me dizer qual é a distância máxima admissível entre eles? O manual trás alguma orientação a esse respeito?

1 Like

Olá @marciosvieira , então não sei precisar a distância mas acredito que seja grande, já tive relatos de colegas que usam em vários cômodos com paredes de distância e continuam pegando o sinal. Meu apartamento é pequeno então nem tenho como testar isso.

2 Likes

Parabéns @LeandroIssa pelo tutorial! Muito fácil de seguir.
Olá @marciosvieira, eu tenho dois módulos deste tipo integrados ao HA via ESPHome com ESP32. O ESP32 fica posicionado entre os dois módulos a cerca de dois metros de cada um. Um módulo fica em outro cômodo. Funciona bem.
Fiz esta integração do Passive BLE Monitor ao HA com Raspberry Pi 4, que fica a três metros de um módulo no mesmo cômodo e a cerca de cinco metros do segundo que está em outro cômodo. O módulo do segundo cômodo não funciona muito bem, ele por vezes leva horas para atualizar.

1 Like

Oi Marcio, tudo bom? Chegaram + 3 dele pra mim!

Fiz alguns testes aqui e funciona super bem em alguns cômodos + afastados! Coisa de 2 paredes de distância e uns 15 metros!
O Bluetooth 4.0 do mini pc tem suporte para até 61 metros.
Um dongle usb ou um hardware com Bluetooth 5.0 pode chegar a 240 metros.

Pelo depoimento do colega @Renato no grupo do telegram, na casa dele funciona bem dentro do banheiro (uns 10m) com 2 paredes (1 sendo azulejada).

Mas isso tudo varia muito de situação para situação!

1 Like

Excelente! Obrigado pelo feedback.

1 Like

Só + 1 feedback, ele atualiza + ou - a cada 10 minutos a temperatura. No momento que liguei o ar condicionado podemos ver a temperatura caindo e quando desliguei a temperatura subindo…

1 Like

Sensor de vazamento de água BLE da Xiaomi integrado com sucesso!

1 Like

Adquiri escovas de dentes da Xiaomi, são BLE e integram perfeitamente pelo Passive BLE Monitor, estou gostando da escovação, é excelente!

Aparecem 3 entidades, a escova com status de ligado e desligado, a bateria e o rssi (sinal).

Na entidade da escova aparece a contagem de vezes (Counter) que a escova foi ligada e uma nota (Score) de 0 a 100 para a última escovada.

Sobre quantidade de dispositivos, já tenho 9 dispositivos e funcionam super bem, zero problemas!

9

1 Like

Saudações @LeandroIssa (e demais integrantes do fórum).

Assim como você eu tenho o meu Home Assistant rodando no Mini PC GK Mini da Beelinik e recentemente adquiri dois desses sensores de temperatura e humidade da Xiaomi. Mas ao tentar integrar me deparei com um problema estranho. O Mac address do bluetooth foi reconhecido pela integração Passive BLE Monitor, mas o sensor não pareava de forma alguma. Após algumas tentativas (entre reboots do sistema e reinstalações da integração) descobri que o problema estava no meu sistema operacional (Debian 11). Quando fiz a instalação do Debian 11 como servidor para o Home Assistant fiz da forma mais limpa possível, deixando apenas os softwares e serviços essenciais para rodar o SO. Na etapa de escolha de drivers, por exemplo, optei por instalar apenas os direcionados (necessários para aquele hardware específico) e na etapa de escolha de softwares deixei apenas o Servidor SSH, deixando inclusive a opção Utilitários de sistema padrão desmarcada. A consequência disso é que alguns serviços ficam indisponíveis, tendo que instalar na unha. Ao verificar se o bluetooth estava ativo na máquina com o comando <sudo systemctl status bluetooth> obtive o erro <Failed to start bluetooth.service: Unit bluetooth.service not found.>, o que significa que o serviço do bluetooth não estava ativo.

Depois de identificar o erro foi fácil corrigir, bastando apenas rodar os comandos <sudo apt install bluez> e <sudo systemctl enable bluetooth>. Depois disso reiniciei o host (Mini PC) com o comando <sudo reboot> e o dispositivo foi reconhecido. Depois bastou colocar a chave de encriptação conforme explicado no tutorial para os dados aparecerem. E apareceram rápido, em menos de 5 minutos.

Bom, é isso. Essa dica é para quem fez o mesmo tipo de instalação do Debian 11 que eu e que não conseguiu integrar o sensor de temperatura e humidade.

Se mesmo assim não funcionar, pode tentar instalar o firmware-atheros <sudo apt install firmware-atheros> e reinicia o Host.

2 Likes