zigbee2MQTT - Múltiplas instâncias sendo executadas em sua infraestrutura

Acredito que este post possa ajudar muitos que têm dúvidas sobre como ter multiplas malhas zigbee, buscando atender questões de quantidades de disposivitos ou localização deles.

Não vou entrar no detalhes de como configurar as soluções zigbee2mqtt e zha. Esse não é propósito. A intenção é pontuar sobre as etapas necessárias em cada método de possibilidades para ter múltiplas redes zigbee.

Outro ponto importante, que para muitos pode parecer básico mas que para outras tantos pode parecer esclarecedor, é que, para cada rede/malha zigbee é necessário um rádio zigbee (coordenador) próprio. Um coordenador não pode ser compartilhado por várias redes zigbee.

  1. Começando do mais fácil, zigbee2MQTT + ZHA:
    Para esta configuração o único ponto de atenção é selecionar canais de rádio diferentes antes de iniciar o processo de pareamento dos dispositivos.

Este processo simplifica alguns pontos que exigem atenção nas opções seguintes, visto que seguem configurações padrão do Z2M e do ZHA. Mas, como ponto negativo, limita o número de dispositivos reconhecidos já que o ZHA não possui a mesma compatibilidade de dispositivos que o Z2M.

  1. Múltiplas instâncias do zigbee2MQTT sendo executadas como addon no HASSIO:
    Para permitir que instâncias diferentes sejam executadas como addon no HASSIO, é necessário que repositórios diferetes sejam adicionados na loja de addons em sua instância do Home Assistant. Para isso, sugerimos as URLs abaixo adicionadas como repositórios:
https://github.com/zigbee2mqtt/hassio-zigbee2mqtt/
http://github.com/zigbee2mqtt/hassio-zigbee2mqtt/
https://github.com/zigbee2mqtt/hassio-zigbee2mqtt
http://github.com/zigbee2mqtt/hassio-zigbee2mqtt

Observe que temos pequenas e sutis diferentes (https e http, zigbee2mqtt/ e zigbee2mqtt). Isso permite que o repositório entenda como instâncias diferentes para download, e você poderá instalar um addon para cada um deles.

Para que cada addon seja executado corretamente, além de um canal de rádio diferente para cada instância, nos mesmo moldes que a opção 1, temos outros pontos que devem ser seguidos antes de iniciar o serviço.

a) Indicar um caminho diferente para os dados (data_path). Utilizando Samba, VSCode ou outra ferramenta, crie uma pasta específica para cada instância e ajuste o campo data_path.

/config/zigbee2mqtt

/config/zigbee2mqtt1

b) Indicar um tópico diferente para cada instância nas configurações mqtt. inclua o parâmetro base_topic

server: mqtt://localhost:1883
user: SEU_MQTT_USER
password: SUA_SENHA_MQTT
base_topic: zigbee2mqtt

e

server: mqtt://localhost:1883
user: SEU_MQTT_USER
password: SUA_SENHA_MQTT
base_topic: zigbee2mqtt1

c) Indicar uma porta diferente nos ajustes de rede para cada instância adicionada como Addon. Verifique uma porta que não causará conflito com outro addon.

d) Lembre-se de alterar o canal do rádio após iniciar o Addon e antes de adicionar os dispositivos.

  1. Executar múltiplas instâncias do zigbee2MQTT via docker ou lxc proxmox;

Para quem executa o zigbee2mqtt em docker, é possível executar múltiplos dockers seguindo basicamente os mesmo pontos da possibilidade 2) apenas criando uma identificação diferente para cada container que deseja executar.

Após estas opções colocadas, deixando claro as premissas básicas para executar múltiplas instâncias do zigbee2MQTT, pode se perceber que as possibilidades são grandes. Para quem usa proxmox, por exemplo, é possível utilizar um misto com mais de uma ou todas as alternativas acima.

Abaixo, uma lista de modelos de rádio zigbee amplamente testados e elogiados pela comunidades:

Sonoff Dongle-e
SLZB-06
SLZB-06M
SLZB-07

Aproveito para indicar um LINK de referência para análise de concorrência entre redes wifi 2.4g e rede zigbee.

2 curtidas