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 compatíveis!

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.

Reinicie o Home Assistant.

9

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.

Com a integração configurada, vai carregar a tela de opções, repare que o MAC address do Bluetooth do seu hardware e a opção de Descobrir dispositivos e sensores automaticamente já vão estar marcados. 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.

14

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.

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.

32

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 muitos minutos.

Bom, é isso. Um abraço!

Outras informações:

Sobre o termostato, fiz alguns testes 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.

O termostato 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.

Integrei também um sensor de vazamento de água BLE da Xiaomi e foi integrado com sucesso!

6 Curtiram

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.

Qual é o alcance do BLE? Esta solução só funciona na proximidade do dispositivo, não é verdade? Supondo o caso de um habitação com vários pisos, e necessário instalar repetidores (ESP32), para cobertura total do sinal bluetooth, certo?

O alcance vai variar muito, conforme o receptor e a construção da casa.
Eu tenho um RPI4, que não é conhecido pelas seu grande alcance do BT e mesmo assim apanha no mesmo piso um sensor com duas paredes pelo meio e com muito pouco sinal ainda apanha outro no andar superior.
Com um receptor externo, talvez ainda melhore bem mais.

É possível colocar ESP32 para interligar outros dispositivos BT, mas na prática não é repetidor, pois já não irá usar este componente.

Eu acabei por remover este componente e não usar o BT do Raspberry Pi 4 e tenho um ESP32 (com EspHome) no 1º piso onde “apanho” 3 sensores (dois em divisões no mesmo andar e outro no piso inferior), com muito melhor sinal. Por vezes com o PI deixava de ver o sensor…

1 Curtiu

O alcance do BLE varia muito do tipo de bluetooth e o local como o @Peixeiro comentou.
Moro em um apartamento de 65 m2, pega bem em todo o apartamento pq tenho sensores em todos os cômodos, uso o BT do meu mini pc.

Pela tua explicação, julgo ser melhor usar o ESP32. Tenho sensores de temperatura Dallas e LM35 em cabo, mas estes flutuam mto e estou a pensar substituir pelos Mi, por isso irei necessitar do BLE, com a agravante do HA estar numa ponta (garagem).

Para quem quer centralizar tudo no Passive BLE →

BLE Gateway component will allow you to forward BLE Advertising data packets for external processing to Home Assistant or other systems.

É também o meu caso, tenho o RPI na garagem. Com um D1 Mini ESP-WROOM-32 no 1º andar, consegui melhor cobertura para os sensores, tenho ainda lá ligado um sensor BMP280 e um led RGB, assim tenho a temperatura, humidade e pressão atmosférica nessa divisão, o LED RGB serve de luz de presença nocturna que é o quarto de um dos miúdos, e ainda apanha os 3 sensores BLE xiaomi.

Eu usei este componente no EspHome: https://esphome.io/components/sensor/xiaomi_ble.html

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

8becede2fed305329dc5d53cb62652824428c9a0

Comprei um Fingerbot. Não consigo que seja integrado por BLE. Alguém com similar experiência? Tenho um sensor de humidade/temperatura, foi reconhecido na hora.

Olá, verificou na lista de dispositivos compatíveis se ele é compatível com essa integração? Se não estiver na lista é porque não é compatível.

É, companheiro, não está.

Mas quando o comprei não tinha em mente que seria mesmo mecessária a integração no HA. Infelizmente é. Paciência.

Obigado!

Com o HA numa maquina virtual proxmox como consigo detetar o bluetoth do hardware. Já instalei o BLE mas não consigo detetar o bluetoth.
Alguem sabe como isto se faz?

Tens de passar o hardware para dentro da VM antes de puder usar no HA.

E como se faz isso? Podes ajudar.

Antes de mais, muitos parabéns @LeandroIssa pelo tutorial que está espectacular! Obrigado!

Já cheguei a ter esta integração a funcionar perfeitamente com vários equipamentos. Julgo que foi após uma reinstalação de backup que deixaram de funcionar.
Agora, estou a reativar todos. Segui todos os passos, inseri a key respetiva e não consigo visualizar os dados. Continua como “desconhecido”.

Alguma dica?

O homeassistant tem bluetooth nativo agora

@nikito7 , já experimentei, mas não mostra toda a informação…só se fiz algo mal…

Ainda nem tudo é suportado.

E podes ter de usar o Bluetooth_proxy no esphome

Olá malta!

Num dos sensores de temperatura Xiaomi, não me estão a devolver o valor da bateria. Um deles inclusive, não me dá o valor da temperatura. Apenas da humidade.
Alguma dica?

abc


Copyright © 2017-2021. Todos os direitos reservados
CPHA.pt - info@cpha.pt


FAQ | Termos de Serviço/Regras | Política de Privacidade