Mensagem duplicada ou triplicada de sensores xiaomi


(Pedro) #1

Tenho sensores xiaomi de contacto e de movimento a trabalhar com o HA através de uma pen zigbee, quando fiz uma rotina na Alexa com o iput destes sensores através do HA, comecei a reparar que a rotina era ativada pela abertura e pelo fecho dos sensores, embora tivesse programado o trigger apenas para “open” fui ver o log do zigbee e de facto sempre que abro a janela recebo uma mensagem triplicada: aberto, fechado, aberto… e quando fecho ao contrario…
No caso dos sensores de movimento passados +/-dois minutos de serem ativados, quando voltam ao estado “occupancy false” a Alexa reporta outra vez movimento. (Ai o problema é mesmo da Alexa por que o sensor reporta certinho, so que ela interpreta “occupancy false” como movimento…
Alguém com estes sensores que tenha tido experiência semelhante?

Exemplo:
zigbee2mqtt:info 7/29/2019, 4:15:21 PM MQTT publish: topic 'zigbee2mqtt/0x00158d00034d8385', payload '{"contact":false,"linkquality":47,"battery":100,"voltage":3005}' zigbee2mqtt:info 7/29/2019, 4:15:21 PM MQTT publish: topic 'zigbee2mqtt/0x00158d00034d8385', payload '{"contact":true,"linkquality":44,"battery":100,"voltage":3005}' zigbee2mqtt:info 7/29/2019, 4:15:21 PM MQTT publish: topic 'zigbee2mqtt/0x00158d00034d8385', payload '{"contact":false,"linkquality":31,"battery":100,"voltage":3005}'


(Jorge Assunção) #2

Presumo que estejas a utilizar Hassio com o Zigbee2MQTT… Se sim faz o upgrade para a ultima versão e depois nas configurações dos sensores (Z2M) usa o seguinte em todos os sensores:

'0x00111d00022b0777':
  friendly_name: 'sensor_xiaomi'
  retain: false
  qos: 1

Depois diz se resultou.


(Pedro) #3

Sim Hassio e Zigbee2MQTT. Vou experimentar e depois dou noticias…


(Hugo Encarnacao) #4

os meus sensores de movimento reportam on ou off mesma coisa para os de contacto e funcionam perfeitamente…
o setup disso esta como binary_sensor:?


(Pedro) #5

Quanto ao setup esta como o HA criou o sensor, não mexi em nada… e supostamente sim, esta como binary sensor. De facto nas automações ponho o estado on ou off e funciona, na mensagem que aprece no log do zigbee esta “contact true” ou “false” e na entidade do HA closed ou open, grande confusão lol Como sou novato depreendi que é mesmo assim…
Ja actualizei o “Z2M” para o 1.5.1.1, mas ainda não experimentei o código recomendado pelo Jorge, assim que souber o resultado digo alguma coisa.


(Pedro) #6

Desculpem a minha ignorância, este código para regular as mensagens dos sensores é para por onde? Já existe uma configuração criada por defeito para cada sensor, mesmo que não tenha feito nada, e tenho de a alterar? Ou vou acrescentar esta configuração para cada sensor no configurations.yaml?


(Jorge Assunção) #7

Dentro da pasta share/zigbee2mqtt vais ter um ficheiro (cujo nome depende da versão do Z2M que estiveres a utilizar) onde são criadas automaticamente entradas para cada dispositivo emparelhado.

Dentro desse ficheiro adicionas o código que deixei acima. As linhas importantes são o retain e qos. A linha friendly_name é opcional mas muito util para alterar o nome que o HA dá ao sensor.


(Pedro) #8

Será o state.jsow? é que dentro deste tudo o que acrescento, ao que já la estava, desaparece mesmo depois de gravado, assim que reinicio o HA

{
    "0x00158d0002c76ead": {
        "temperature": 25.26,
        "linkquality": 89,
        "humidity": 48.85,
        "battery": 91,
        "voltage": 2985
    },
    "0x00178801067363bf": {
        "battery": 100,
        "linkquality": 21,
        "counter": 1,
        "brightness": 0
    },
    "0x001788010381451e": {
        "state": "OFF",
        "linkquality": 31,
        "brightness": 254,
        "color_temp": 366,
        "color_mode": 2,
        "color": {
            "x": 0.457,
            "y": 0.41
        }
    },
    "0x00158d00034d8385": {
        "contact": false,
        "linkquality": 49,
        "battery": 100,
        "voltage": 3015
    },
    "0x00158d00035bffbc": {
        "contact": true,
        "linkquality": 47,
        "battery": 100,
        "voltage": 3065
    },
    "0x00158d0001644401": {
        "linkquality": 39,
        "battery": 100,
        "voltage": 3042
    },
    "0x00158d000314834a": {
        "illuminance": 488,
        "linkquality": 34,
        "occupancy": false,
        "battery": 100,
        "voltage": 3045
    }
}

Alem deste, em share/zigbee2mqtt tenho: groups.yaml ; configuration.yaml ; e dois executaveis: [] e database.db.


(Jorge Assunção) #9

É dentro do [] que tens de fazer as alterações.


(Pedro) #10

Ja fiz a alteração, o retain já estava lá, acrescentei qos: 1, mas infelizmente o comportamento do sensor ficou na mesma, sempre que fecha reporta aberto também…
ficou assim:

'0x00158d00034d8385':
  friendly_name: '0x00158d00034d8385'
  retain: false
  qos: 1
'0x00158d0001644401':
  friendly_name: '0x00158d0001644401'
  retain: false
  qos: 1
'0x00158d0002c76ead':
  friendly_name: '0x00158d0002c76ead'
  retain: false
  qos: 1
'0x00158d000314834a':
  friendly_name: '0x00158d000314834a'
  retain: false
  qos: 1
'0x00178801067363bf':
  friendly_name: '0x00178801067363bf'
  retain: false
  qos: 1
'0x00158d00035bffbc':
  friendly_name: '0x00158d00035bffbc'
  retain: false
  qos: 1
'0x001788010381451e':
  friendly_name: '0x001788010381451e'
  retain: false
  qos: 1


(Jorge Assunção) #11

Nesse caso o problema poderá estar na configuração do broker de MQTT e/ou na configuração de ligação do HA ao broker.

Coloca aqui ambas as configurações, tendo o cuidado de não mostrar dados pessoais (não apagues os dados, substitui por xxxxx).


(Carlos Almeida) #12

Não poderá ser um problema de contacto? Tens o iman muito longe do sensor?


(Pedro) #13

Também pensei que podia ser isso, por ser janela de correr, ja experimentei a atuar com outro íman, juntinho… perto… longe… e faz sempre o mesmo, mas ainda vou experimentar a descolar da janela para ter mesmo a certeza… Seja como for, para o alarme funciona bem a única desvantagem e que volta a sinalizar abertura quando se fecha a janela…
Tenho uns outro sensores zigbee da Silvania que estão ligados diretamente á echo plus e funcionam na perfeição, sei sempre quando a porta abre e fecha, sem demora! (que o meu filho 2 anos é um fujão de primeira, lol) Vou experimentar a emparelha-los com o HA para ver a diferença…


(Carlos Almeida) #14

Eu tenho uns aqara, conectados com zigbee2mqtt, que instalei por essa mesma razão. Quando certas portas são abertas, recebo notificação no telegram e uma mensagem de voz nos google home mini.
Funcionam na perfeição, dai achar estranho esse comportamento.


(Jorge Assunção) #15

Eu também uso esses sensores com o Z2M e funcionam perfeitamente. Quando a porta abre tenho uma notificação na Ariela e é gravada uma imagem de quem entra, sempre sem problemas.

Verifica se o posicionamento do íman em relação ao receptor está correcta. esse funcionamento que tens pode ser derivado de uma má colocação e o íman faz varias activações.