Integração customizada ZHA (Quirk)

Pessoal, eu tenho um medidor de energia zigbee (Zemismart SPM01) que é suportado pelo Z2M mas tem apresentado algumas instabilidades, daí optei por tentar migrar para o ZHA mas descobri que ele não é compatível.
Até aí tudo bem, daí descobri que alguma alma abençoada criou uma espécie de integração customizada (Quirk) para ele, só que não estou sabendo usar, alguém tem alguma dica de como isso funciona?

Quirks:
https://github.com/zigpy/zha-device-handlers/commit/719490a2fda71ca790252e952224583cb090aa6e
https://github.com/agocsdaniel/zha-device-handlers/blob/dev/zhaquirks/tuya/ts0601_din_power.py

O modelo do meu dispositivo pelo fabricante é

image

O tipo e classe vieram vazias

image

image

Logo criei o arquivo seguindo o padrão recomendado

image

O Home Assistant até reconheceu os arquivo custom mas a integração continua sem nada

Alguém saberia me orientar como funciona isso?

Boa noite.

Primeiramente, se vc estav tendo instabilidade com z2m, também terá com o ZHA, porque provavelmente o problema é sinal e não o software.

Mas se mesmo assim quiser tentar o ZHA, faça:

  1. criar um diretório no config e gravar o arquivo quirk dentro dele;
  2. definir no configuration.yaml a definição do caminho do diretório quirt para o zha

zha:
custom_quirks_path: /config/custom_zha_quirks/

  1. reinicie o HA.

Uma dica, além do nome do dispositivo a assinatura do fabricante precisam estar dentro do arquivo quirtkpara o ZHA reconhecer o dispositivo.

O problema não é sinal neste caso, é no Z2M.
É o seguinte: ele funciona muito bem por horas ou dias. Fazendo as leituras (um pouco exageradas, 1 a cada 2 ou 3 segundos, algo que quero descobrir como mudar inclusive).
Depois de algumas horas ou dias (não tem um padrão) o Z2M surta e começa a fazer leituras de forma descontrolada (10 ou mais leituras por segundo) e trava toda a rede zigbee. Daí eu tenho que reiniciar o serviço do Z2M e tudo volta ao normal de novo.

Alguns dispositivos não seguem alguns padrões e por isso o HA não os coloca como padrão no zha. Tenho dois dispositivos tuya de pinça de leitura de energia e alguns sensores de presença mmwave tuya. Eles possuem esse mesmo comportamento de inundar a malha com mensagens. No site de referencia de dispositivos mmwave inclusive alerta para isso.

Não é o z2m. É o dispositivo.

Sobre o quirk eu criei várias variações de nomes:

image

Tentando me achar um que funcionasse com ele

image

E sim, dentro do arquivo a assinatura está lá (eu acho)

Esse nomes não estão batendo.

Adiciona uma linha com esses códigos.

Zemismart usa chip Tuya tb…
Mas neste caso de causar esse overflow (mais de 10 leituras por segundo) se fosse o dispositivo não iria parar ao reiniciar o Z2M. Assim que o serviço subisse de novo iria começar tudo de novo tb.
Sobre essas leituras excessivas (1 a cada 2 segundos) deve ter algum lugar pra alterar o parâmetro dele… Só não achei aonde. Por acaso saberia onde poderia ser?
E o duro de não usar Tuya seria achar o que por no lugar… A grande vantagem dessas tranqueiras da Tuya são justamente os produtos flexíveis que eles criam, os concorrentes não Tuya geralmente são ridiculamente caros e grandes demais.
To beeeem tendencioso a fazer esse cara funcionar, achei o preço dele aceitável, um tamanho muito bacana e a funcionalidade é exatamente o que precisava.

Depois que fizer isso, precisa apagar os arquivos que o zha gera dentro da pasta antes de reiniciar o ha

Eu achei um outro arquivo aqui e deu certo…
Mas achei uma coisa curiosa que fiquei refletindo, quando as leituras bugam no Z2M eu reparei que todos os meus SPM01 (tenho 4) bugam exatamente ao mesmo tempo, os outros sensores ficam funcionando tranquilamente. Isso não sai da minha cabeça…
Olha aí os SPM01, são todos Medidor - Ar Condicionado…:

Esse é um momento onde minha rede está funcionando “bem” ou pelo menos não tá com overflow.

É isso mesmo… o modelo e fabricante precisam bater exatamente com os valores reportados no dispositivo.
São por esses dados que ZHA faz a ligação entre o dispositivo e o código.

1 Like

@felipebraz estou com o mesmo problema com o Z2M e resolvi mudar tudo para ZHA, aparentemente melhorou, mas não consegui integrar todos meus equipamentos. Uns deles tb são medidores SPM-01. Avancei um pouco e consegui achar um quirk que, alterando a assinatura para conincidir com a do meu medidor, leu algumas variáveis. Qual quirk vc usou e qual assinatura do seu medidor? O meu é (“_TZE200_qhlxve78”, “TS0601”)