Deconz-rest-plugin: Adicionar suporte para Danalock v3

Criado em 4 abr. 2018  ·  146Comentários  ·  Fonte: dresden-elektronik/deconz-rest-plugin

Os bloqueios inteligentes são o futuro, então vamos oferecer suporte à versão Zigbee do Danalock v3.

https://danalock.com/danalock-v3.html

Device Request

Comentários muito úteis

Adicione suporte para este bloqueio. Isso seria muito apreciado.

Todos 146 comentários

Concordo!

Ei,

tentei integrar meu Danalock V3-Zigbee.

Mas o problema é que o cluster para alterar o estado de bloqueio é mostrado como "cluster desconhecido". Em anexo, você pode ver as informações que posso ver.

Também anexei a documentação oficial do zigbee para o danalock.

Informações adicionais: Danalock usa o novo ZHA V3 e atualmente é compatível apenas com amazon echo plus (com zigbee)

Alguém pode ajudar?

Cumprimentos
TD003 Zigbee manual.pdf

danalock_1
danalock_2

Você precisará adicionar o cluster 0x0101 (atributos e comandos) a general.xml para que ele apareça na GUI deCONZ. Normalmente, isso envolve a tradução manual do texto da especificação ZCL ou ZHA para XML.

A próxima etapa seria descobrir como o bloqueio responde aos vários comandos, como seu estado é refletido nos atributos e se ele suporta relatórios de atributos.

Então, precisamos descobrir quais /lights e / ou /sensors recursos criar para a fechadura. Isso será feio: não podemos COLOCAR /sensors state , então controlar o bloqueio provavelmente será por meio de um recurso /lights (cf. o que fizemos para a sirene, cobertura da janela e ventilação). Além disso, não há config.battery para um recurso /lights , então precisaríamos de um recurso adicional de /sensors para expor o nível da bateria.

Eu sou muito novo no zigbee "codificação". Que alguém esteja disposto a me ajudar :) Acho que também ajudaria os outros E! Acho que quando o raspbee suporta smartlocks em geral será uma grande vantagem para o produto.

Então, agora adicionei o seguinte cluster:

<cluster id="0x0101" name="Door Lock">
    <description>Provides a mechanism for the controlling a Smart Lock.</description>
    <client>
    </client>
    <server>
        <attribute id="0x00" name="Lock state" type="u32" access="rw" required="o"></attribute>
        <attribute id="0x01" name="Lock type" type="u32" default="0x00" access="rw" required="o"></attribute>
        <attribute id="0x02" name="Actuator enabled" type="u32" default="0x00" access="rw" required="o"></attribute>
        <attribute id="0x10" name="Num lock records supported" type="u32" default="17918" access="rw" required="o"></attribute>
        <attribute id="0x11" name="Num total users Supported" type="u32" default="0" access="rw" required="o"></attribute>
        <attribute id="0x12" name="Num PIN users supported" type="u32" default="0" access="rw" required="o"></attribute>
        <attribute id="0x13" name="Num FRID users supported" type="u32" default="0" access="rw" required="o"></attribute>
        <attribute id="0x14" name="Num weekday schedules supported" type="u32" default="0" access="rw" required="o"></attribute>
        <attribute id="0x15" name="Num yearday schedules supported" type="u32" default="0" access="rw" required="o"></attribute>
        <attribute id="0x16" name="Num holiday schedules supported" type="u32" default="0" access="rw" required="o"></attribute>
        <attribute id="0x20" name="Enable logging" type="u32" default="1" access="rw" required="o"></attribute>
        <attribute id="0x34" name="Zigbee security level" type="u32" default="0" access="rw" required="o"></attribute>
        <attribute id="0x40" name="Alarm mask" type="u32" default="0xFFFF" access="rw" required="o"></attribute>
        <attribute id="0x42" name="RF operation event mask" type="u32" default="0xFFFF" access="rw" required="o"></attribute>
        <attribute id="0x43" name="Manual operation event mask" type="u32" default="0xFFFF" access="rw" required="o"></attribute>
        <attribute id="0xFFFD" name="Cluster revision" type="u32" default="0x01" access="rw" required="o"></attribute>
        <command id="0x00" dir="send" name="LockDoorResponse" required="o">
            <description></description>
            <payload></payload>
        </command>
        <command id="0x01" dir="send" name="UnlockDoorResponse" required="o">
            <description></description>
            <payload></payload>
        </command>
        <command id="0x00" dir="recv" name="LockDoor" required="o">
            <description></description>
            <payload></payload>
        </command>
        <command id="0x00" dir="recv" name="UnlockDoor" required="o">
            <description></description>
            <payload></payload>
        </command>
        <command id="0x01" dir="recv" name="GetLogRecord" required="o">
            <description></description>
            <payload></payload>
        </command>
        <command id="0x04" dir="send" name="GetLogRecordResponse" required="o">
            <description></description>
            <payload></payload>
        </command>
        <command id="0x20" dir="send" name="Operationg Event Notification" required="o">
            <description></description>
            <payload></payload>
        </command>
    </server>
</cluster>

É adotado da documentação do Danalocks Zigbee (mencionada acima).

Mas com este código, cada cluster em deconz agora é mostrado como "desconhecido". Não consigo ver nenhum erro de sintaxe.

Alguém pode saber mais do que eu? :)

Cumprimentos

Se todos os clusters forem desconhecidos, há algo errado com o general.xml. Normalmente um erro de sintaxe, mas também pode ser um erro lógico. Os IDs de comando parecem ter duplicatas. Você colocou isso no domínio _Closures_, logo antes do cluster _Windows cobrindo_? Se você pudesse anexar o general.xml compactado, darei uma olhada.

EDITAR O manual do Danalock Zigbee é muito breve. Olhando para a especificação ZCL, os atributos não são todos uint32 nem de leitura / gravação. Além disso, os comandos de resposta têm uma carga útil obrigatória e os comandos set usam o PIN como carga útil opcional. Não tenho certeza se o Danalock oferece suporte a um PIN.

Mais informações não são enviadas por danalock ...

Em anexo, você pode encontrar o arquivo zip solicitado contendo general.xml

deconz.zip

Cumprimentos

Alguém já revisou meu caso?

Muito obrigado 😘

OK. Acabei de tentar ...
Como vejo, mesmo se eu remover meu cluster de bloqueio inteligente do general.xml, o desconhecido de cada cluster permanece.

Eu comparei meu general.xml com o "original", aqui do github.

O problema ainda aparece. Cada cluster agora é desconhecido. Thefuck is errado?

Parece que você colocou as novas entradas no domínio errado.

Você colocou isso no domínio _Closures_, logo antes do cluster de cobertura do _Windows_?

Oi

Sim eu fiz. mas, como mencionei, também removi o cluster e o comparei com o original. E ainda tudo é desconhecido. Eu também deixei deconz reler a configuração

Eu também deixei deconz reler a configuração

Eu nunca fiz isso funcionar. Melhor sair e reiniciar deCONZ para recarregar general.xml.

Você poderia tentar o general.xml do meu commit mencionado acima?

Droga! Isso funciona fora da caixa!

Agora vamos apenas tornar os looks "apiáveis".

Por que não o disfarçamos como um switch? Como 1 está bloqueado e 0 está desbloqueado.

Você poderia postar uma captura de tela do cluster _Door Lock_ (depois de ler todos os atributos)?

Você poderia verificar se pode configurar relatórios de atributos para o atributo _Lock State_? Eu espero / espero que este atributo reflita o estado atual da fechadura automaticamente quando você emitir um comando _Trancar Porta_ ou _Desbloquear Porta_ e quando você controlar a fechadura manualmente.

bildschirmfoto von 2018-08-10 20-09-05
bildschirmfoto von 2018-08-10 20-09-12
Anexado as imagens.

Eu não tenho que configurar nada. O estado é atualizado imediatamente após a atualização.

Atualmente, tento modificar o código-fonte do plug-in API restante, apenas "copiando" as partes que cobrem a janela.

EDIT: Hmm, o bloqueio não aparecerá. : /

Atualmente, tento modificar o código-fonte do plug-in API restante, apenas "copiando" as partes que cobrem a janela.

Na verdade, é melhor expor como uma luz, com state.on mapeado para o estado de bloqueio. No entanto, há um pouco mais do que isso. Altere addLightNode() em de_web_plugin.cpp:

  • O ID do fornecedor (0x115c) precisa ser definido e colocado na lista de permissões, pois é operado por bateria ( if (node->nodeDescriptor().manufacturerCode() == VENDOR _...) `;
  • O cluster precisa ser definido e colocado na lista de permissões configurando hasServerOnOff ( if (i->inClusters()[c].id() == DOOR_LOCK_CLUSTER_ID) ;
  • O id do dispositivo (0x000a) precisa ser definido e colocado na lista de permissões ( case DEV_ID_DOOR_LOCK em case DEV_ID_HA_WINDOW_COVERING_DEVICE ).

Em light_node.cpp:

  • Adicione o fornecedor a setManufacturerCode() ;
  • Adicione o ID do dispositivo a setHAEndPoint() para definir o tipo como "Door lock" .

Isso deve ser suficiente para que o recurso seja criado (espero). É melhor pesquisar DEV_ID_HA_WINDOW_COVERING_DEVICE e WINDOW_COVERING_CLUSTER_ID para ter certeza de que não estão na lista de permissões em outro lugar.

Nota para mim mesmo: o id do dispositivo 0x000a para _Door Lock_ ainda está faltando no general.xml.

Em seguida, você precisa mapear state.on para o atributo _Lock State_ (para que as mudanças no estado de bloqueio sejam refletidas em state.on ). Em nodeEvent() em de_web_plugin.cpp, coloque DOOR_LOCK_CLUSTER_ID na lista de permissões para chamar updateLightNode() . Em updateLightNode() , coloque o mesmo cluster na lista de permissões e adicione um manipulador para ic->id() == DOOR_LOCK_CLUSTER_ID , semelhante a _ONOFF_CLUSTER_ID_, mas obviamente verificando o atributo 0x0101 / 0x0000.

Para controlar o bloqueio da API REST, você precisa criar uma nova rotina addTaskDoorLock() em zcl_tasks.cpp, cf. o addTaskWarning() que criei para controlar a Sirene. Com base em um parâmetro de estado de bloqueio, adicione uma tarefa com um comando _Bloquear porta_ ou _Desbloquear porta_. Em rest_lights.cpp, você precisa chamar esta rotina de setLightState() em if (hasOn) . Você precisa verificar se há taskRef.lightNode->type() == QLatin1String("Door lock") , semelhante ao que fiz em hasAlert para a Sirene.

Atualmente, tento modificar o código-fonte do plug-in API restante, apenas "copiando" as partes que cobrem a janela.

Como funciona? Onde posso fazer isso?

Siga as etapas no README para obter uma cópia local do código-fonte do plug-in da API REST e compilar e instalá-lo. Em seguida, edite sua fonte local e recompile o plugin.

Em seguida, edite sua fonte local

Eu sou um iniciante nessas coisas. É possível que você carregue os arquivos alterados?
Suas instruções acima são certamente boas, mas infelizmente não posso fazer isso sem ajuda.

Desde já, obrigado!!!

Então galera. Publiquei minhas alterações de plug-in aqui: https://github.com/pascal1337/deconz-rest-plugin/

Fiz muitas modificações de acordo com window_covering e Warnings.

Agora estou em um ponto em que não consigo ir mais longe. A compilação ainda mostra um erro "não declarado" e a API não abre meu bloqueio.

Talvez alguém possa ter um mais próximo lo (o / c) k: P

VENDOR_DANALOCK deve ser o _Código do fabricante_ do painel _Informações do nó_.

Qual é o erro de compilação?

O seguinte erro aparece:

g++ -c -pipe -Wno-attributes -Wall -Wno-attributes -O2 -std=gnu++11 -Wall -W -D_REENTRANT -fPIC -DDECONZ_DLLSPEC=Q_DECL_IMPORT -DARCH_ARM -DARCH_ARMV7 -DUSE_WEBSOCKETS -DHAS_SQLITE3 -DGW_SW_VERSION=\"2.05.34\" -DGW_API_VERSION=\"1.0.9\" -DGIT_COMMMIT=\"0e7156dc2109aabd38d10146d6e0d3393b48574a\" -DGW_AUTO_UPDATE_FW_VERSION=0x260b0500 -DGW_MIN_RPI_FW_VERSION=0x261f0500 -DGW_MIN_DERFUSB23E0X_FW_VERSION=0x22030300 -DGW_DEFAULT_NAME=\"Phoscon-GW\" -DQT_NO_DEBUG -DQT_PLUGIN -DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_SERIALPORT_LIB -DQT_WEBSOCKETS_LIB -DQT_NETWORK_LIB -DQT_CORE_LIB -I. -I../.. -I../../common -isystem /usr/include/arm-linux-gnueabihf/qt5 -isystem /usr/include/arm-linux-gnueabihf/qt5/QtWidgets -isystem /usr/include/arm-linux-gnueabihf/qt5/QtGui -isystem /usr/include/arm-linux-gnueabihf/qt5/QtSerialPort -isystem /usr/include/arm-linux-gnueabihf/qt5/QtWebSockets -isystem /usr/include/arm-linux-gnueabihf/qt5/QtNetwork -isystem /usr/include/arm-linux-gnueabihf/qt5/QtCore -Irelease -I. -I/usr/lib/arm-linux-gnueabihf/qt5/mkspecs/linux-g++ -o release/websocket_server.o websocket_server.cpp zcl_tasks.cpp: In member function ‘bool DeRestPluginPrivate::addTaskDoorLock(TaskItem&)’: zcl_tasks.cpp:922:21: error: ‘TaskDoorLock’ was not declared in this scope task.taskType = TaskDoorLock; ^~~~~~~~~~~~ zcl_tasks.cpp: In member function ‘bool DeRestPluginPrivate::addTaskDoorUnlock(TaskItem&)’: zcl_tasks.cpp:957:21: error: ‘TaskDoorUnlock’ was not declared in this scope task.taskType = TaskDoorUnlock; ^~~~~~~~~~~~~~ Makefile.Release:1037: recipe for target 'release/zcl_tasks.o' failed make[1]: *** [release/zcl_tasks.o] Error 1 make[1]: *** Waiting for unfinished jobs.... make[1]: Leaving directory '/home/pi/deconz/test/deconz-rest-plugin' Makefile:38: recipe for target 'release' failed make: *** [release] Error 2

Sim. Este é o ponto em que estou atualmente.

Você declarou as funções de bloqueio e desbloqueio em de_web_plugin_private.h?

Sim eu fiz. Linha 1072, 1073

Então eu fiz algumas mudanças e compilei o plugin, copiei para / usr / share / deCONZ / plugins, reiniciei e:
img_2049

Quando estiver em casa, testarei a funcionalidade.

Tão pessoal. Quando faço uma solicitação de API

Mostra a luz corretamente com todos os seus detalhes:

{
 "etag": "010881e2e4974327caa7b3eb871a1e34",
 "hascolor": false,
 "manufacturername": "Danalock",
 "modelid": "V3-BTZB",
 "name": "Danalock",
  "state": {
   "alert": "none",
   "on": true,
   "reachable": true
  },
"swversion": "0000000E",
"type": "Door Lock",
"uniqueid": "00:0b:57:ff:fe:59:e0:4b-01"
}

Quando tento mudar este estado

PUT http://192.168.178.100/api/CD5466EA30/lights/7/state
{"on": verdadeiro}

A resposta é

{
"error":{
 "address":"/lights/7",
 "description":"resource, /lights/7, not available",
 "type":3
 }
}

@ pascal1337 : Por favor, você pode atualizar seu repositório? Eu avisa para testar suas alterações. THX!

EDITAR:
Talvez também seja possível em alemão ;-)
Eu recarreguei o diretório de você e agora o compilador (sem erros). Então eu "copiei" o novo plugin e reiniciei. Então comecei uma pesquisa no Phoscon. Infelizmente, o Danalock não aparece lá. Estou fazendo algo errado?

Desde já, obrigado!

saudações

@ tomac01 Olá :) O repo está atualizado agora. Não tenho certeza se a pesquisa do Phoscon será bem-sucedida. Gravei o Danalock diretamente no meu Raspberry usando o deCONZ Gui. Você tem que fazer isso com um clipe de papel, palito ou similar. Pressione brevemente o orifício no Danalock uma vez. O Danalock então começa a acender / piscar em verde. Durante este período, a rede deve ser aberta para novos dispositivos.

Muito Obrigado!
Vou experimentar imediatamente depois.

@ pascal1337 :

Eu reintegrei o Danalock (que era antes). Também posso operar o bloqueio corretamente via ZigBee via interface deConz (rede). Em seguida, reinicie o Raspi realizado.

Infelizmente, o Phoscon não mostra a fechadura como uma lâmpada. Nem mesmo se eu estiver procurando.

Você tem outra idéia? Como eu disse: posso controlar o bloqueio na rede via desktop Raspi (via VNC). Ele está integrado a ele. Apenas Phoscon não mostra nada.

Desde já, obrigado!

@ pascal1337 Eu novamente comparei meu anúncio no DeCONZ com suas fotos acima. O general.xml do ebaauw mostra "Door Lock" em vez de "000a". Mas essa deve ser apenas a tradução para a 000a, certo?

2b703cea-87a4-4e22-a4f2-20eda9fc8d00

Na verdade, afaik o tipo de dispositivo é usado apenas no display GUI.

Dispositivos operados por bateria são uma cadela para emparelhar. Se o bloqueio já é exibido na GUI, mas os recursos REST não foram criados:

  • Abra a rede a partir do aplicativo da web antigo ou pesquise luzes no aplicativo Phoscon;
  • Leia os atributos do cluster _Basic_ da GUI.
  • Faça algo com a fechadura, para ter certeza de que está ativada (pressione rapidamente o botão de reinicialização ou controle a fechadura manualmente).
  • O plug-in da API REST deve criar o recurso ao receber os atributos _Basic_ do bloqueio.

Se isso não funcionar, verifique se o seu bloqueio tem o mesmo:

  • Prefixo de endereço Mac,
  • ID do fabricante (no painel _Node info_),
  • ID do modelo e _Nome do fabricante_ (no cluster _Basic_)

eu chequei

  • Prefixo do endereço Mac: 000b57 -> ok
  • Código do fabricante: 0x115c -> ok
  • ID do modelo: V3-BTZB (é o mesmo ID de pascal1337) -> acho que está ok
  • Nome do fabricante: Danalock -> ok

Eu segui exatamente as suas instruções. Mas o bloqueio só é reconhecido na GUI deCONZ. Nem o antigo aplicativo da web nem o phoscon reconhecerão o bloqueio.

Aqui está uma foto das informações do nó da fechadura:
unbenannt

Você tem outra idéia?
É possível procurar erros em algum lugar?

Muito obrigado!

@ pascal1337 Você poderia disponibilizar seu libde_rest_plugin.so compilado para teste? Se isso não funcionar, pode ser devido a outra coisa ... agradecemos antecipadamente!

Alguns planos gerais:

  • Tem certeza de que instalou o plugin corretamente? Você precisa sobrescrever a biblioteca de estoque ou movê-la para fora do diretório / usr / share / deCONZ / plugins; simplesmente renomeá-lo (para .old ou algo assim) não é suficiente.
  • Você está executando a versão mais recente do programa central deCONZ?
  • Execute deCONZ com --debug-info=2 e verifique se o RaspBee recebe mensagens da fechadura. Se, após reiniciar o deCONZ, os atributos do cluster _Basic_ forem lidos e preenchidos na GUI, você está bem.
  • Verifique novamente a bateria da fechadura.

@ebaauw :

  • O plugin é instalado (sobrescrito) conforme descrito no arquivo leia-me.
  • Baixei o pacote deb novamente e reinstalei. Deve ser a última versão (veja a imagem abaixo).
    e9ab6eca-902d-4b20-aa87-986483cf7e5c
  • De acordo com o aplicativo, os melhores estão ok.
  • os atributos do cluster básico são lidos e preenchidos no deCONZ-GUI. Também posso controlar o bloqueio por meio da GUI (abrir / fechar).

Esta tarde vou iniciar o deCONZ com as configurações de depuração e dar uma olhada ....

Oi,

meu plugin compilado: http://dinge.xyz/libde_rest_plugin.so

@ebaauw você tem outra dica para mim em relação à minha api, que não está fazendo nada?

@ pascal1337 Ótimo! Depois de copiar seu arquivo para o diretório e reiniciar o Phoscon, o Danalock foi imediatamente reconhecido como leve.
unbenannt

Não sei o que fiz de errado ao compilar. Mas deve haver o problema. Não houve erro de compilação e o arquivo foi criado. Na verdade, foi um bom sinal para mim, mas não me parece ... ;-(

Muitos Thx!

você tem outra dica para mim em relação à minha api, que não está fazendo nada?

Eu não necessariamente confiaria na mensagem de erro (que o recurso não pode ser encontrado), mas leio para significar que algo falhou ao lidar com o PUT, como nenhum cluster _OnOff_. Você ainda pode atualizar outros estados de luz? Olhando para o seu repo, você ainda não alterou rest_lights.cpp?

Olá, nenhuma outra luz ainda é atualizável via phoscon.

Então você não pode mudar o bloqueio do phoscon? o mesmo para mim

Não, infelizmente não. Embora o Phoscon mostre que a "lâmpada" está acesa, a fechadura não reage. Na GUI deConz, também não vejo atividades. Como eu disse, posso abrir e fechar a fechadura por meio da GUI. Não com Phoscon.

@ pascal1337 : Há algo novo? Infelizmente não posso ajudar aqui. Não consigo nem compilar :-(. Você já verificou a atribuição do cluster 101? Na verdade, só pode ser algo pequeno ...
Muitos cumprimentos

Oi, não tenho muito tempo agora ...

Infelizmente, não tenho outra solução.

@ pascal1337 , em rest_lights.cpp você precisa alterar setLightState() . Ao manipular a chave on no corpo json ( if (hasOn) ), você precisa verificar se o dispositivo é uma fechadura e, se for o caso, emitir um comando _Block Door_ ou _Desbloquear porta_, em vez de um Comando _On_ ou _Off_. Você precisa criar as taks correspondentes em zcl_task, cpp ou criar um novo arquivo, como foi feito para os dispositivos de cobertura da janela. Consulte PR https://github.com/dresden-elektronik/deconz-rest-plugin/pull/746.

Eu não entendo a porra da lógica de rest_lights.cpp. Ele chama hasOn () e, em seguida, addTaskSetOnOff (). Mas em lugar nenhum é dito se deve ligar ou desligar a luz. Eu não sei, onde colocar meu addTaskDoorLock respectivamente addTaskDoorUnlock. Eu também não quero mexer com a API, por que não podemos integrar um dispositivo de bloqueio correto na API?

Cumprimentos,
Pascal

addTaskSetOnOff leva ON / OFF como parâmetro:
addTaskSetOnOff(task, isOn ? ONOFF_COMMAND_ON : ONOFF_COMMAND_OFF, 0))
Portanto, depende de isOn , que foi definido anteriormente.

Sou totalmente novo nesse tópico e ainda não posso ajudar. Tenho um Danalock V3 novo com Zigbee em minha casa.
O que eu tenho aqui também é um Raspberry 3B e um Raspberry Zero W e alguma experiência de programação. O que eu preciso além disso para chegar tão longe quanto você no controle do Danalock? Presumo que seja um Zigbee stick, raspBee ou conBee. Ou pode ser qualquer stick Zigbee, como Qivicon / Telekom / qualquer coisa?

Oi
Não sei se deconz suporta outros sticks além de raspbee / conbee. Além disso, você não precisa de mais nada.

Há alguma notícia sobre este assunto?
Recentemente mudei toda a minha automação para o protocolo zigbee e estou prestes a obter um bloqueio inteligente e realmente quero continuar com o zigbee.
Danalock é a melhor fechadura que suporta zigbee ...
Então ... Não há mais ninguém (com habilidades de programação ... :-)) olhando para isso? @manup? @ebaauw?

Olá, quero ver se tenho tempo suficiente.
Eu ganhei meu danalock ontem e trabalho com Home Assistant e Node-Red.
Então, eu uso uma correção rápida incorreta. Estou usando https://github.com/ma-ca/deconz-cli-plugin este plug-in e o nó Telnet do Node-Red e envio "zclcmd shortaddr 1 0x0101 1" para abrir o cadeado e "zclcmd shortaddr 1 0x0101 0" para fechá-lo. (onde shortadress é seu shortadress Locks em DeConz, ou seja, 0xab12) Em HomeAssistant eu uso um componente de bloqueio MQTT. Funciona como um encanto ... mas não é uma verdadeira solução para deconz.

Estou ansioso para corrigir o código nas próximas semanas.

@katanapod Ei, muito obrigado pela sua boa ideia. Eu reconstruí sua solução rápida e ela funciona, mas não tão confiável ...

Você tem alguma atualização no código?

sim, a solução do katanapod funciona muito bem!

Para minha automação residencial (iobroker), tenho o comando netcast embutido em um javascript.
Meu desejo agora se tornou realidade!

@katanapod : muito

Meu maior problema agora é obter o status da fechadura de forma rápida e confiável. Meu código atual para isso é:

#!/bin/bash

statusfile="/home/pi/workbench/mqtt-launcher/status.txt"

old_status=`cat $statusfile`

value=$(/bin/echo "zclattr 0x568e 1 0x0101 0x0000" | /bin/nc -w3 localhost 5008 2>&1 | /bin/grep "APS attr 0x000B57FFFE59E04B")

value=$(/bin/echo $value |/usr/bin/cut -d ' ' -f 8)

if [ "$value" == "02" ]; then
        /bin/echo "UNLOCK" > $statusfile
        new_status="UNLOCK"
elif [ "$value" == "01" ]; then
        /bin/echo "LOCK" > $statusfile
        new_status="LOCK"
fi

if [ "$old_status" != "$new_status" ]; then
        /usr/bin/mosquitto_pub -h 192.168.178.55 -t home/danalock/state -m "$new_status"
fi

Com um cronjob, executado a cada minuto
* * * * * root /home/pi/workbench/mqtt-launcher/check_state.sh

Que alguém queira importar uma função de bloqueio para a api deconz rest, ficarei feliz em ajudar ...

Eu tenho um Nuki Smart Lock 2.0 que será compatível com ZigBee _Door Lock Cluster_ em uma atualização de firmware no primeiro trimestre de 2019.

A discussão acima sugere adicionar o bloqueio a /lights mas acredito que @manup não está feliz com isso.

Na verdade, não comecei a implementar Door Lock na rest-api, então ainda há tempo para mudar isso para /sensors ou esperar por um novo /devices recurso.

Eu acho que antes de trabalhar com uma fechadura de porta tão leve, seria racional implementar um recurso / locks também tendo em vista que cada vez mais fechaduras inteligentes se tornam compatíveis com o zigbee (Danalock, Yale, Nuki, Aqara, ...)

@manup @ebaauw @katanapod

Muito obrigado pelo seu apoio.

Estou querendo comprar a versão Zigbee dessa fechadura. Eu tenho deConz / Conbee. Além do problema de ser visto como uma luz, isso funcionará fora da caixa ou preciso fazer alguns ajustes na configuração do Zigbee deConz / Conbee? Obrigado. Elliott

@ pascal1337 :

Com o comando "value = $ (/ bin / echo" I get zclattr 0xe05a 1 0x0101 0x0000 "| / bin / nc -w3 192.168.178.13 5008 2> & 1 | / bin / grep" APS attr 0x000B57FFFE46F1A1 ")" do seu shell -Script sem resultado ou o script não parece ter terminado. Se eu fizer tudo via Promt sem salvar variáveis, obtenho o resultado do grep, mas ele permanece no modo nc.

Entrando sem um comando grep me dá o resultado APS e os LQIs (loop infinito).

O que estou fazendo errado?
Desde já, obrigado!

@manup @ebaauw @katanapod

Existe um mecanismo para patrocinar \ apoiar o hardware, se isso ajudasse no seu desenvolvimento?

Este problema foi marcado automaticamente como obsoleto porque não teve atividades recentes. Ele será fechado se nenhuma outra atividade ocorrer. Obrigado por suas contribuições.

Não deveria ser uma questão ativa? Os bloqueios inteligentes são extremamente populares e vejo que isso é procurado com suporte a conbee / Deconz / phoscon em vários lugares online.

Está quase esgotado na Noruega. Eles ainda fornecem documentação zigbee completa para terceiros. Isso parece uma coisa boa e impressionante para deconz / phoscon e Homebridge-Hue apoiarem. Vou testar de tudo!

@ pascal1337 @ tomac01 @katanapod Will Phoscon (já que o general.xml atualizado foi mesclado) será capaz de apenas deixar o Danalock se conectar à minha rede e expô-lo como uma luz (não estou esperando nenhuma funcionalidade no Phoscon, mas apenas a maneira mais simples de experimente o plugin Deconz REST CLI). Você está apenas começando uma busca por novas luzes e clicando no furo de agulha Danalock uma vez? Ou você está de alguma forma abrindo a rede da GUI do Deconz e clicando no pinhole do Danalock? Não consigo colocá-lo na rede de forma alguma.

Eu também estava me perguntando se esse problema ainda está ativo, o suporte a bloqueios inteligentes (e Dana Lock em específico) me ajudaria muito e realmente parece uma boa direção a seguir com DeConz.

Adicione suporte para este bloqueio. Isso seria muito apreciado.

@manup Você poderia, por favor, considerar apoiar isso agora de acordo com as capturas de tela e o código fornecidos acima? Sei que a API REST v2 está em desenvolvimento, mas isso é solicitado há muito tempo e deixaria muitos usuários felizes. Se não no Phoscon web GUI, pelo menos na API REST.

TD003 Zigbee manualV0.0.15.pdf

@manup @ebaauw Depois de muita reclamação, não comprei dispositivos emprestados para vocês desenvolvedores, mas recebi a documentação do Zigbee 3.0 expandida mais recente para o bloqueio e uma promessa de "suporte adicional no segundo ou terceiro trimestre em 2020" de Danalock. Eu acho que seria possível fazê-lo funcionar com DeCONZ (como em Zigbee2MQTT) antes disso. Farei o teste físico com entusiasmo!

@ebaauw

Fiz alguns progressos com este bloqueio. Ele responde à solicitação da API Rest, ou seja, bloqueia e desbloqueia perfeitamente, mas não relata / atualiza seu estado. Você tem alguma sugestão do que pode estar errado?

Isso é tratado por handleWindowCoveringClusterIndication para tampas de janela, ou seja, preciso escrever um semelhante para fechadura de porta?

Você o expôs como um recurso /sensors ? Nesse caso, você precisa lidar com os valores dos atributos em updateSensorNode() em de_web_plugin.cpp . Já existe um branch para DOOR_LOCK_CLUSTER_ID que é usado pelo sensor lumi.vibration (não me pergunte por quê). Melhor adicionar um else ramo de if testar para esse sensor (o Danalock parece seguir o suficiente bem standard). Caso contrário, você precisa lidar com os atributos do cluster em updateLightNode() . Certifique-se de colocar o tipo de dispositivo na lista de permissões.

Você configurou ligações dos clusters da fechadura para o coordenador (consulte o capítulo 5 do manual)?

Obrigado!

Eu o exponho como uma luz. Eu tinha me esquecido da ligação. Agora funciona perfeitamente! Como tenho uma porta velha em que o interior também gira quando uso a chave de fora, também recebo uma mensagem de status confiável da fechadura.

Para fazer isso funcionar, me esforcei um pouco:
1) Substitua o general.xml pelo atualizado da postagem anterior por pascal1337
2) Substitua o link do plug-in rest api modificado (se for importante, eu uso deCONZ v. 2.05.67 e executando um Raspberry Pi3b + com Raspbian. Comecei minha modificação com o último plug-in deconz-rest a partir de ontem.)
3) Deixe o bloqueio entrar na rede, definindo o bloqueio no modo de emparelhamento
3) Para mim, o Phoscon só reconheceria a fechadura depois que eu tivesse pressionado o "Read Node Descriptor" na GUI deCONZ do nó da fechadura da porta.

Não uso luzes com a configuração deCONZ, então posso ter quebrado alguma funcionalidade.

Não tenho certeza se posso, ou mesmo se seria aceito, mas isso em uma solicitação de pull seria incrível.

@ebaauw Tentei ler o manual (cap. 9 Ligações), mas ainda não acho que entendi.

Segui a receita de @arnerek e agora posso controlar o bloqueio de forma confiável por meio da API REST Deconz, mas o status está sempre desbloqueado.

Tentei arrastar do cluster Door Luck da fechadura para a origem no Bind Dropbox e de ambos os endpoints da Ferramenta de Configuração e Controle de Nível do coordenador para o destino e clique em ligar, mas sem alteração.

Depois de criar a ligação, você precisa configurar o relatório para os atributos que deseja que sejam atualizados automaticamente. Abra o painel _Cluster Info_ na GUI, selecione o cluster, role para baixo e clique duas vezes no atributo. Na janela pop-up, insira as configurações (normalmente mín: 1, máx: 300) e pressione o botão _Write Config_.

Obrigado!! Eu recebo invalid_data_type, infelizmente, como na imagem. Alguma ideia do porquê?
Skjermbilde 2019-10-13 kl  12 50 04

EDIT: Desconsidere isso. Tive que esperar e ler os atributos uma vez primeiro. Funciona perfeitamente!

O único problema agora é que parei o serviço DeCONZ (mínimo) e iniciei a GUI com o mesmo usuário para fazer isso, e quando volto para o serviço mínimo, ele parece não se manter. O status não é relatado novamente.

(Exceto pelo erro não relacionado de home.app, aparentemente sempre mostrando o tipo de fechadura da porta como "destravado" sempre que o aplicativo é aberto, resultando na fechadura da porta permanecendo no status "Travando ..." quando está trancada no momento. Mas isso é outro problema.)

EDIT2: @ebaauw Será que o Deconz sem cabeça tem limitações a esse respeito? Algumas coisas feitas na GUI não são levadas em consideração? Como posso executar a GUI em vez do headless como um serviço quando o rpi não tem headless e ocasionalmente só interrompo o serviço Deconz mínimo e executo a GUI com o X-forwarding para o Mac?

Algumas coisas feitas na GUI não são levadas em consideração?

Bindings e relatórios de atributos são armazenados no dispositivo ZigBee, em memória não volátil.

O Deconz sem cabeça poderia ter limitações a esse respeito?

Não, há apenas um binário deCONZ com uma opção de linha de comando para suprimir a GUI. Ambos os serviços iniciam com o mesmo binário.

Eu executo meu Raspberries sem cabeça, mas ainda com o ambiente gráfico habilitado, usando o servidor VNC e o cliente de compartilhamento de tela MacOS para interagir com a GUI.

Estou ficando maluco! Quando a GUI está sendo executada a partir da linha de comando, o status agora é informado de forma precisa e imediata. Quando eu fecho isso e reinicio o deconz.service, ele é atualizado, mas o estado 'ligado' é sempre 'falso'. No entanto, ainda posso bloquear e desbloquear. Desculpe por incomodar você, @ebaauw

EDIT: Eu acho que reduzi. Quando eu paro o mínimo e inicio a GUI, eu sempre mexo com a fechadura da porta e verifico o cluster 0101 e clico em Ler nos atributos. É então que funcionou enquanto a GUI era executada! Quando eu reverter para o deconz.service mínimo, é claro que não posso / não posso ler atributos e isso não funciona. Nem mesmo depois de muito tempo ou manipulando manualmente a fechadura.

Além disso, a fechadura da porta estava piscando em vermelho na GUI antes de ler os atributos.

Você pode dizer por que o status não é atualizado a partir deste log, @ebaauw ? Eu uso o plugin do @arnerek que ele ainda está melhorando, mas estou me perguntando se eu baguncei alguma coisa no meu DeCONZ.

Aqui eu desbloqueio (enquanto o mínimo deconz.service está em execução):

okt. 14 21:30:06 LillePi deCONZ[22034]: 21:30:02:708 <-LQI 0x0B04   012 9 3 0x000B57FFFEC4FA38 0xE8A8 1 1 2 02 0F 36
okt. 14 21:30:06 LillePi deCONZ[22034]: 21:30:05:951 Endrer tilstand
okt. 14 21:30:06 LillePi deCONZ[22034]: 21:30:05:951 Er her!
okt. 14 21:30:06 LillePi deCONZ[22034]: 21:30:05:951 Er her2!
okt. 14 21:30:06 LillePi deCONZ[22034]: 21:30:05:951 Er her3!
okt. 14 21:30:06 LillePi deCONZ[22034]: 21:30:05:951 Er her4!
okt. 14 21:30:06 LillePi deCONZ[22034]: 21:30:05:951 Er her, 1!
okt. 14 21:30:06 LillePi deCONZ[22034]: 21:30:05:951 Has on!
okt. 14 21:30:06 LillePi deCONZ[22034]: 21:30:05:951 Er her5!
okt. 14 21:30:06 LillePi deCONZ[22034]: 21:30:06:054 profileid 0000, clusterid 8031, srcEndpoint 00, dstEndpoint 00, status 0x00, securityStatus FF
okt. 14 21:30:06 LillePi deCONZ[22034]: 21:30:06:054 APS Ind 71, 0xFD8A: 0C 00 0D 00 03 F6 2C 02 FF FF 2E 21 00 F6 2C 02 FF FF 2E 21 00 00 00 24 02 00 73 F6 2C 02 FF FF 2E 21 00 6D 64 C3 FE FF 57 0B 00 4F 03 25 02 0F D9 F6 2C 02 FF FF 2E 21 00 04 7A 77 FE FF 9F FD 90 04 0B 25 02 0F 29
okt. 14 21:30:06 LillePi deCONZ[22034]: 21:30:06:054 <-LQI 0xFD8A   013 0 3 0x00212EFFFF022CF6 0x0000 0 1 2 02 00 73
okt. 14 21:30:06 LillePi deCONZ[22034]: 21:30:06:519 profileid 0000, clusterid 8031, srcEndpoint 00, dstEndpoint 00, status 0x00, securityStatus FF
okt. 14 21:30:06 LillePi deCONZ[22034]: 21:30:06:519 APS Ind 71, 0xFD8A: 0D 00 0D 03 03 F6 2C 02 FF FF 2E 21 00 12 7C 70 FE FF 57 0B 00 E0 3D 25 02 0F 71 F6 2C 02 FF FF 2E 21 00 B7 BB D6 FE FF 57 0B 00 26 46 25 02 0F 3A F6 2C 02 FF FF 2E 21 00 6A 06 C2 FE FF 57 0B 00 48 4C 25 02 0F D6
okt. 14 21:30:13 LillePi deCONZ[22034]: 21:30:06:519 <-LQI 0xFD8A   013 3 3 0x000B57FFFE707C12 0x3DE0 1 1 2 02 0F 71
okt. 14 21:30:13 LillePi deCONZ[22034]: 21:30:07:015 profileid 0000, clusterid 8031, srcEndpoint 00, dstEndpoint 00, status 0x00, securityStatus FF
okt. 14 21:30:13 LillePi deCONZ[22034]: 21:30:07:015 APS Ind 71, 0xFD8A: 0E 00 0D 06 03 F6 2C 02 FF FF 2E 21 00 86 C4 C7 FE FF 6F 0D 00 18 5E 25 02 0F 81 F6 2C 02 FF FF 2E 21 00 0F ED EE FE FF 57 0B 00 A7 67 25 02 0F 35 F6 2C 02 FF FF 2E 21 00 5B 9B AF FE FF 6F 0D 00 C8 A8 25 02 0F 8A
okt. 14 21:30:13 LillePi deCONZ[22034]: 21:30:07:015 <-LQI 0xFD8A   013 6 3 0x000D6FFFFEC7C486 0x5E18 1 1 2 02 0F 81
okt. 14 21:30:13 LillePi deCONZ[22034]: 21:30:07:479 profileid 0000, clusterid 8031, srcEndpoint 00, dstEndpoint 00, status 0x00, securityStatus FF
okt. 14 21:30:13 LillePi deCONZ[22034]: 21:30:07:479 APS Ind 71, 0xFD8A: 10 00 0D 09 03 F6 2C 02 FF FF 2E 21 00 8E 9C 88 FE FF 9F FD 90 D3 BE 25 02 0F 69 F6 2C 02 FF FF 2E 21 00 88 DC C7 FE FF 6F 0D 00 93 CB 25 02 0F 70 F6 2C 02 FF FF 2E 21 00 38 FA C4 FE FF 57 0B 00 A8 E8 25 02 0F FF
okt. 14 21:30:13 LillePi deCONZ[22034]: 21:30:07:479 <-LQI 0xFD8A   013 9 3 0x90FD9FFFFE889C8E 0xBED3 1 1 2 02 0F 69
okt. 14 21:30:13 LillePi deCONZ[22034]: 21:30:07:944 profileid 0000, clusterid 8031, srcEndpoint 00, dstEndpoint 00, status 0x00, securityStatus FF
okt. 14 21:30:13 LillePi deCONZ[22034]: 21:30:07:944 APS Ind 27, 0xFD8A: 13 00 0D 0C 01 F6 2C 02 FF FF 2E 21 00 57 5F F3 FE FF 6F 0D 00 D1 F4 25 02 0F 5B
okt. 14 21:30:13 LillePi deCONZ[22034]: 21:30:07:944 <-LQI 0xFD8A   013 12 1 0x000D6FFFFEF35F57 0xF4D1 1 1 2 02 0F 5B
okt. 14 21:30:13 LillePi deCONZ[22034]: 21:30:09:369 profileid 0104, clusterid 0101, srcEndpoint 01, dstEndpoint 01, status 0x00, securityStatus FF
okt. 14 21:30:13 LillePi deCONZ[22034]: 21:30:09:369 APS Ind 4, 0xABF9: 19 76 01 00
okt. 14 21:30:13 LillePi deCONZ[22034]: 21:30:09:369 <-ZCL serverToClient 0xABF9 1 for cluster 0x0101 00
okt. 14 21:30:13 LillePi deCONZ[22034]: 21:30:09:416 profileid 0104, clusterid 0101, srcEndpoint 01, dstEndpoint 01, status 0x00, securityStatus FF
okt. 14 21:30:13 LillePi deCONZ[22034]: 21:30:09:416 APS Ind 4, 0xABF9: 19 76 01 00
okt. 14 21:30:13 LillePi deCONZ[22034]: 21:30:09:416 <-ZCL serverToClient 0xABF9 1 for cluster 0x0101 00
okt. 14 21:30:13 LillePi deCONZ[22034]: 21:30:09:817 profileid 0104, clusterid 0101, srcEndpoint 01, dstEndpoint 01, status 0x00, securityStatus FF
okt. 14 21:30:13 LillePi deCONZ[22034]: 21:30:09:817 APS Ind 13, 0xABF9: 09 5A 20 01 02 FF FF 00 FF FF FF FF 00
okt. 14 21:30:13 LillePi deCONZ[22034]: 21:30:09:817 <-ZCL serverToClient 0xABF9 1 for cluster 0x0101 01 02 FF FF 00 FF FF FF FF 00
okt. 14 21:30:13 LillePi deCONZ[22034]: 21:30:09:848 Node data 0x000b57fffe59e55a profileId: 0x0104, clusterId: 0x0101
okt. 14 21:30:13 LillePi deCONZ[22034]: 21:30:09:848 Start. UddateLight
okt. 14 21:30:13 LillePi deCONZ[22034]: 21:30:09:849 updateLights!
okt. 14 21:30:13 LillePi deCONZ[22034]: 21:30:09:849 Status dørlås: 0
okt. 14 21:30:13 LillePi deCONZ[22034]: 21:30:09:849 ZCL attribute report 0x000B57FFFE59E55A for cluster 0x0101, ep 0x01
okt. 14 21:30:13 LillePi deCONZ[22034]: 21:30:09:849 profileid 0104, clusterid 0101, srcEndpoint 01, dstEndpoint 01, status 0x00, securityStatus FF
okt. 14 21:30:13 LillePi deCONZ[22034]: 21:30:09:849 APS Ind 7, 0xABF9: 08 5B 0A 00 00 30 02
okt. 14 21:30:13 LillePi deCONZ[22034]: 21:30:09:849 <-ZCL attribute report 0xABF9 0x0101 1 00 00 30 02
okt. 14 21:30:13 LillePi deCONZ[22034]: 21:30:09:849 ->ZCL default response seq id 0x5B command id 0x0A, status 0x00
okt. 14 21:30:13 LillePi deCONZ[22034]: 21:30:09:944 APS-DATA.confirm status 0x00, id = 0x9F, srcEp = 0x01, dstcEp = 0x01, dstAddr = 0xABF9
okt. 14 21:30:13 LillePi deCONZ[22034]: 21:30:11:818 profileid 0000, clusterid 8031, srcEndpoint 00, dstEndpoint 00, status 0x00, securityStatus FF

Aqui, eu o bloqueio novamente (o que não altera o estado Ligado para verdadeiro):

okt. 14 21:33:38 LillePi deCONZ[22034]: 21:33:35:753 <-LQI 0x0000   014 13 1 0x000B57FFFEC4FA38 0xE8A8 1 1 3 01 00 B3
okt. 14 21:33:38 LillePi deCONZ[22034]: 21:33:37:313 Endrer tilstand
okt. 14 21:33:38 LillePi deCONZ[22034]: 21:33:37:313 Er her!
okt. 14 21:33:38 LillePi deCONZ[22034]: 21:33:37:313 Er her2!
okt. 14 21:33:38 LillePi deCONZ[22034]: 21:33:37:313 Er her3!
okt. 14 21:33:38 LillePi deCONZ[22034]: 21:33:37:313 Er her4!
okt. 14 21:33:38 LillePi deCONZ[22034]: 21:33:37:313 Er her, 1!
okt. 14 21:33:38 LillePi deCONZ[22034]: 21:33:37:313 Has on!
okt. 14 21:33:38 LillePi deCONZ[22034]: 21:33:37:313 Er her5!
okt. 14 21:33:38 LillePi deCONZ[22034]: 21:33:38:379 profileid 0104, clusterid 0101, srcEndpoint 01, dstEndpoint 01, status 0x00, securityStatus FF
okt. 14 21:33:38 LillePi deCONZ[22034]: 21:33:38:379 APS Ind 4, 0xABF9: 19 77 00 00
okt. 14 21:33:38 LillePi deCONZ[22034]: 21:33:38:379 <-ZCL serverToClient 0xABF9 1 for cluster 0x0101 00
okt. 14 21:33:38 LillePi deCONZ[22034]: 21:33:38:811 profileid 0104, clusterid 0101, srcEndpoint 01, dstEndpoint 01, status 0x00, securityStatus FF
okt. 14 21:33:38 LillePi deCONZ[22034]: 21:33:38:811 APS Ind 13, 0xABF9: 09 5D 20 01 01 FF FF 00 FF FF FF FF 00
okt. 14 21:33:38 LillePi deCONZ[22034]: 21:33:38:811 <-ZCL serverToClient 0xABF9 1 for cluster 0x0101 01 01 FF FF 00 FF FF FF FF 00
okt. 14 21:33:38 LillePi deCONZ[22034]: 21:33:38:842 Node data 0x000b57fffe59e55a profileId: 0x0104, clusterId: 0x0101
okt. 14 21:33:38 LillePi deCONZ[22034]: 21:33:38:842 Start. UddateLight
okt. 14 21:33:38 LillePi deCONZ[22034]: 21:33:38:843 updateLights!
okt. 14 21:33:38 LillePi deCONZ[22034]: 21:33:38:843 Status dørlås: 0
okt. 14 21:33:38 LillePi deCONZ[22034]: 21:33:38:843 ZCL attribute report 0x000B57FFFE59E55A for cluster 0x0101, ep 0x01
okt. 14 21:33:38 LillePi deCONZ[22034]: 21:33:38:843 profileid 0104, clusterid 0101, srcEndpoint 01, dstEndpoint 01, status 0x00, securityStatus FF
okt. 14 21:33:38 LillePi deCONZ[22034]: 21:33:38:843 APS Ind 7, 0xABF9: 08 5E 0A 00 00 30 01
okt. 14 21:33:38 LillePi deCONZ[22034]: 21:33:38:843 <-ZCL attribute report 0xABF9 0x0101 1 00 00 30 01
okt. 14 21:33:46 LillePi deCONZ[22034]: 21:33:38:843 ->ZCL default response seq id 0x5E command id 0x0A, status 0x00
okt. 14 21:33:46 LillePi deCONZ[22034]: 21:33:38:990 APS-DATA.confirm status 0x00, id = 0x09, srcEp = 0x01, dstcEp = 0x01, dstAddr = 0xABF9
okt. 14 21:33:46 LillePi deCONZ[22034]: 21:33:39:179 profileid 0000, clusterid 8031, srcEndpoint 00, dstEndpoint 00, status 0x00, securityStatus FF
okt. 14 21:33:46 LillePi deCONZ[22034]: 21:33:39:179 APS Ind 71, 0x67A7: 69 00 0D 00 03 F6 2C 02 FF FF 2E 21 00 F6 2C 02 FF FF 2E 21 00 00 00 24 02 00 63 F6 2C 02 FF FF 2E 21 00 6D 64 C3 FE FF 57 0B 00 4F 03 25 02 0F 28 F6 2C 02 FF FF 2E 21 00 04 7A 77 FE FF 9F FD 90 04 0B 25 02 0F 82
okt. 14 21:33:46 LillePi deCONZ[22034]: 21:33:39:179 <-LQI 0x67A7   013 0 3 0x00212EFFFF022CF6 0x0000 0 1 2 02 00 63
okt. 14 21:33:46 LillePi deCONZ[22034]: 21:33:39:660 profileid 0000, clusterid 8031, srcEndpoint 00, dstEndpoint 00, status 0x00, securityStatus FF
okt. 14 21:33:46 LillePi deCONZ[22034]: 21:33:39:660 APS Ind 71, 0x67A7: 6C 00 0D 03 03 F6 2C 02 FF FF 2E 21 00 12 7C 70 FE FF 57 0B 00 E0 3D 25 02 0F 2E F6 2C 02 FF FF 2E 21 00 B7 BB D6 FE FF 57 0B 00 26 46 25 02 0F 34 F6 2C 02 FF FF 2E 21 00 6A 06 C2 FE FF 57 0B 00 48 4C 25 02 0F 1A
okt. 14 21:33:46 LillePi deCONZ[22034]: 21:33:39:660 <-LQI 0x67A7   013 3 3 0x000B57FFFE707C12 0x3DE0 1 1 2 02 0F 2E
okt. 14 21:33:46 LillePi deCONZ[22034]: 21:33:40:125 profileid 0000, clusterid 8031, srcEndpoint 00, dstEndpoint 00, status 0x00, securityStatus FF
okt. 14 21:33:46 LillePi deCONZ[22034]: 21:33:40:125 APS Ind 71, 0x67A7: 6F 00 0D 06 03 F6 2C 02 FF FF 2E 21 00 86 C4 C7 FE FF 6F 0D 00 18 5E 25 02 0F 1E F6 2C 02 FF FF 2E 21 00 5B 9B AF FE FF 6F 0D 00 C8 A8 25 02 0F 2C F6 2C 02 FF FF 2E 21 00 8E 9C 88 FE FF 9F FD 90 D3 BE 25 02 0F 3E
okt. 14 21:33:46 LillePi deCONZ[22034]: 21:33:40:125 <-LQI 0x67A7   013 6 3 0x000D6FFFFEC7C486 0x5E18 1 1 2 02 0F 1E
okt. 14 21:33:46 LillePi deCONZ[22034]: 21:33:40:621 profileid 0000, clusterid 8031, srcEndpoint 00, dstEndpoint 00, status 0x00, securityStatus FF
okt. 14 21:33:46 LillePi deCONZ[22034]: 21:33:40:621 APS Ind 71, 0x67A7: 72 00 0D 09 03 F6 2C 02 FF FF 2E 21 00 88 DC C7 FE FF 6F 0D 00 93 CB 25 02 0F 41 F6 2C 02 FF FF 2E 21 00 38 FA C4 FE FF 57 0B 00 A8 E8 25 02 0F 36 F6 2C 02 FF FF 2E 21 00 57 5F F3 FE FF 6F 0D 00 D1 F4 25 02 0F 64
okt. 14 21:33:46 LillePi deCONZ[22034]: 21:33:40:621 <-LQI 0x67A7   013 9 3 0x000D6FFFFEC7DC88 0xCB93 1 1 2 02 0F 41
okt. 14 21:33:46 LillePi deCONZ[22034]: 21:33:41:086 profileid 0000, clusterid 8031, srcEndpoint 00, dstEndpoint 00, status 0x00, securityStatus FF
okt. 14 21:33:46 LillePi deCONZ[22034]: 21:33:41:086 APS Ind 27, 0x67A7: 74 00 0D 0C 01 F6 2C 02 FF FF 2E 21 00 41 11 8A FE FF 9F FD 90 8A FD 25 02 0F 37
okt. 14 21:33:46 LillePi deCONZ[22034]: 21:33:41:086 <-LQI 0x67A7   013 12 1 0x90FD9FFFFE8A1141 0xFD8A 1 1 2 02 0F 37
okt. 14 21:33:46 LillePi deCONZ[22034]: 21:33:44:464 profileid 0000, clusterid 8031, srcEndpoint 00, dstEndpoint 00, status 0x00, securityStatus FF
okt. 14 21:33:46 LillePi deCONZ[22034]: 21:33:44:464 APS Ind 71, 0x4626: 7A 00 0D 00 03 F6 2C 02 FF FF 2E 21 00 F6 2C 02 FF FF 2E 21 00 00 00 24 02 00 22 F6 2C 02 FF FF 2E 21 00 6D 64 C3 FE FF 57 0B 00 4F 03 25 02 0F 0E F6 2C 02 FF FF 2E 21 00 04 7A 77 FE FF 9F FD 90 04 0B 25 02 0F 52
okt. 14 21:33:46 LillePi deCONZ[22034]: 21:33:44:464 <-LQI 0x4626   013 0 3 0x00212EFFFF022CF6 0x0000 0 1 2 02 00 22
okt. 14 21:33:46 LillePi deCONZ[22034]: 21:33:44:944 profileid 0000, clusterid 8031, srcEndpoint 00, dstEndpoint 00, status 0x00, securityStatus FF
okt. 14 21:33:46 LillePi deCONZ[22034]: 21:33:44:944 APS Ind 71, 0x4626: 7B 00 0D 03 03 F6 2C 02 FF FF 2E 21 00 6A 06 C2 FE FF 57 0B 00 48 4C 25 02 0F 13 F6 2C 02 FF FF 2E 21 00 86 C4 C7 FE FF 6F 0D 00 18 5E 25 02 0F 14 F6 2C 02 FF FF 2E 21 00 0F ED EE FE FF 57 0B 00 A7 67 25 02 0F 30
okt. 14 21:33:46 LillePi deCONZ[22034]: 21:33:44:944 <-LQI 0x4626   013 3 3 0x000B57FFFEC2066A 0x4C48 1 1 2 02 0F 13
okt. 14 21:33:46 LillePi deCONZ[22034]: 21:33:45:425 profileid 0000, clusterid 8031, srcEndpoint 00, dstEndpoint 00, status 0x00, securityStatus FF
okt. 14 21:33:46 LillePi deCONZ[22034]: 21:33:45:425 APS Ind 71, 0x4626: 7E 00 0D 06 03 F6 2C 02 FF FF 2E 21 00 5B 9B AF FE FF 6F 0D 00 C8 A8 25 02 0F 14 F6 2C 02 FF FF 2E 21 00 88 DC C7 FE FF 6F 0D 00 93 CB 25 02 0F 1C F6 2C 02 FF FF 2E 21 00 57 5F F3 FE FF 6F 0D 00 D1 F4 25 02 0F 80
okt. 14 21:33:46 LillePi deCONZ[22034]: 21:33:45:426 <-LQI 0x4626   013 6 3 0x000D6FFFFEAF9B5B 0xA8C8 1 1 2 02 0F 14
okt. 14 21:33:46 LillePi deCONZ[22034]: 21:33:45:922 profileid 0000, clusterid 8031, srcEndpoint 00, dstEndpoint 00, status 0x00, securityStatus FF
okt. 14 21:33:46 LillePi deCONZ[22034]: 21:33:45:922 APS Ind 71, 0x4626: 81 00 0D 09 03 F6 2C 02 FF FF 2E 21 00 41 11 8A FE FF 9F FD 90 8A FD 25 02 0F 37 F6 2C 02 FF FF 2E 21 00 7D CE 93 FE FF 57 0B 00 EE E8 12 00 02 FF F6 2C 02 FF FF 2E 21 00 A0 EF 36 02 00 8D 15 00 44 C5 12 00 02 FF
okt. 14 21:33:46 LillePi deCONZ[22034]: 21:33:45:922 <-LQI 0x4626   013 9 3 0x90FD9FFFFE8A1141 0xFD8A 1 1 2 02 0F 37
okt. 14 21:33:46 LillePi deCONZ[22034]: 21:33:46:370 profileid 0000, clusterid 8031, srcEndpoint 00, dstEndpoint 00, status 0x00, securityStatus FF
okt. 14 21:33:46 LillePi deCONZ[22034]: 21:33:46:370 APS Ind 27, 0x4626: 84 00 0D 0C 01 F6 2C 02 FF FF 2E 21 00 5A E5 59 FE FF 57 0B 00 F9 AB 12 00 02 FF
okt. 14 21:33:47 LillePi homebridge[269]: [2019-10-14 21:33:47] [Hue] lumi.remote.b286acn01 Stue: set homekit status fault from 1 to 0
okt. 14 21:33:53 LillePi node-red[950]: 14 Oct 21:33:53 - [info] [sectoralarm-site:34ecc6dc.1194e2] Received 'check' command
okt. 14 21:33:55 LillePi deCONZ[22034]: 21:33:46:370 <-LQI 0x4626   013 12 1 0x000B57FFFE59E55A 0xABF9 2 0 1 00 02 FF
okt. 14 21:33:55 LillePi deCONZ[22034]: 21:33:47:491 Node data 0x00158d00027c069a profileId: 0x0104, clusterId: 0x0000
okt. 14 21:33:55 LillePi deCONZ[22034]: 21:33:47:491 Start. UddateLight
okt. 14 21:33:55 LillePi deCONZ[22034]: 21:33:47:491 no button map for: lumi.remote.b286acn01 ep: 0x01 cl: 0x0000 cmd: 0x0A pl[0]: 001
okt. 14 21:33:55 LillePi deCONZ[22034]: 21:33:47:491 ZCL attribute report 0x00158D00027C069A for cluster 0x0000, ep 0x01
okt. 14 21:33:55 LillePi deCONZ[22034]: 21:33:47:491 0x00158D00027C069A extract Xiaomi special attribute 0xFF01
okt. 14 21:33:55 LillePi deCONZ[22034]: 21:33:47:491         01 battery 3005 (0x0BBD)
okt. 14 21:33:55 LillePi deCONZ[22034]: 21:33:47:491         03 temperature 33 °C
okt. 14 21:33:55 LillePi deCONZ[22034]: 21:33:47:491         04 unknown 17320 (0x43A8)
okt. 14 21:33:55 LillePi deCONZ[22034]: 21:33:47:491         05 RSSI dB (?) 23 (0x0017)
okt. 14 21:33:55 LillePi deCONZ[22034]: 21:33:47:491         06 LQI (?) 4294967296 (0x0100000000)
okt. 14 21:33:55 LillePi deCONZ[22034]: 21:33:47:491         08 unknown 5129 (0x1409)
okt. 14 21:33:55 LillePi deCONZ[22034]: 21:33:47:491         0a unknown 62673 (0xF4D1)

Resolvi temporariamente enviando netcat "r 0xABF9 1 0x0101 0" (lendo o atributo 1 da Fechadura da Porta) para o plugin DeCONZ CLI uma vez (e a cada hora para ser seguro) após o início do meu deconz.service mínimo.

@ebaauw Agora tenho uma bateria terrível na fechadura. Eu esperaria alguns, mas 10-20% para baixo a cada dia é um pouco demais. Você acha que posso ter “amarrado” isso muitas vezes em Deconz? Então, os relatórios são muitas vezes duplicados? Existe uma tabela de todas as ligações em algum lugar?

Acho que existe um comando ZDP para ler a tabela de ligação; você pode enviá-lo usando o plug-in deconz-cli e farejar a resposta. Não acho que o número de ligações será o principal fator para reduzir a vida útil da bateria; mais provavelmente é o controle de votação e / ou configuração de relatório de atributo, fazendo com que o dispositivo acorde com muita frequência.

@ebaauw Você está (é claro) certo e o comando ZDP mostra a ligação 1.

Eu revisei minha lógica de automação e também encontrei um loop desnecessário nas mensagens do Zigbee (pesquisa).

Mas vejo que também relata seu status a cada 5 minutos ou mais depois que configurei o relatório do atributo em Cluster Info em Deconz (“máx: 300”). Eu sei que ainda não entendi tudo zigbee e Deconz, mas isso não é desnecessário, pois não é um sensor passivo e reportará o status quando o bloqueio for alterado de qualquer maneira ........?

EDITAR: Vejo que há um cluster de controle de votação que parece estar definido por padrão para 14400 como intervalo de check-in ...

Isso é compatível por padrão na nova versão do software ou preciso seguir todas as instruções acima?

Estou decidindo entre Danalock Zigbee ou Zwave.

Também estou interessado em fazê-lo funcionar. Você pode compartilhar um guia passo a passo? Eu também sou totalmente novo em deconz

Por que este problema está obsoleto / fechado?
O bloqueio é totalmente detectado por deConz:
Screenshot_20200115_160911

mas não exposto através do restAPI (e nunca detectado pelo Phoscon / sensores / adicionar novo sensor / outro)

curl --tcp-nodelay --max-time 59 -H 'Content-Type: application / json' -X OBTER http: // hassio : 40850 / api / mypass /
"devicename": "ConBee II",
"nome": "Zigbee",
"nome": "meu aplicativo"
"nome": "Foscon # B1066x452"
"nome": "Phoscon # B1290x655"
"nome": "pydeconz"
"nome": "meu aplicativo"
"nome": "Luzes da cama",
"nome do fabricante": "Philips",
"nome": "Luz de temperatura de cor 1",
"nome do fabricante": "Philips",
"nome": "Luz de temperatura de cor 2",
"nome do fabricante": "Philips",
"nome": "Luz do dia",
"manufacturername": "Eurotronic",
"nome": "SPZB0001",
"manufacturername": "Eurotronic",
"nome": "SPZB0001 (2)",

Precisamos abrir um novo problema?

Adicionei as alterações de https://github.com/fr34kyn01535/deconz-rest-plugin/commits/master , mas não consegui fazer o bloqueio aparecer na api restante. .

Hallo Sven,

Eu queria evitar a bifurcação e manter meu próprio código.
A Dresden Elektronik pediu para postar novos dispositivos aqui, e todas as informações são fornecidas.
Mas este pedido tem 2 anos, onde estão as pessoas da Dresden Elektronik?

Estou pesquisando zigbee2mqtt agora. A base de código deste plugin é honestamente uma bagunça, e uma arquitetura de sinalizadores codificados não nos levará a um ecossistema maior de dispositivos. Deve ser possível adicionar novos comportamentos e dispositivos sem reescrever muito do comportamento principal.

Tenho usado meu plug-in de API de descanso modificado desde outubro e está funcionando perfeitamente.

Eu expus a fechadura como uma luz, mas não tenho certeza se essa solução seria aceita. Não sou um programador e não tenho experiência com github. Se alguém estiver interessado, posso compartilhar o código. Seria ótimo ter esse bloqueio suportado no código oficial.

@arnerek compartilhar isso certamente poderia ajudar um ou outro aqui ..

@arnerek Eu acredito que isso será aceito muito bem, é a mesma maneira que foi feito para detectores de fumaça, etc. Você pode fazer uma solicitação de pull para o repositório principal?

@arnerek : Você leu o comentário acima? Não vi a solicitação de pull hoje .. e ainda espero ;-)

Vou tentar fazer um pedido de pull. Esperançosamente nos próximos dias

Vejo que @arnerek expõe o bloqueio como um recurso /lights . Não tenho certeza se isso vai funcionar, já que normalmente há algum atraso entre definir o estado de bloqueio de destino e o bloqueio alterar seu estado de bloqueio atual. Você pode querer atributos diferentes para o destino e o estado atual para refletir isso, cf. os termostatos. Eles são expostos como recursos /sensors , com o destino no estado config e o estado atual (somente leitura) em state .
É claro que o mesmo vale para dispositivos de cobertura de janela.

Parece que este bloqueio não suporta _Grupos_, então não há razão convincente para expô-lo como um recurso /lights . Não sei sobre outras fechaduras, no entanto.

@ebaauw Qual é a alternativa então?
Não são apenas os recursos de iluminação que podem ser ativados e desativados? Então, é necessário fazer alguns sensores refletindo os estados que você descreveu?
Desculpe, não conheço Deconz de dentro para fora ainda

Como mencionei acima, um recurso /sensors com o estado de destino mapeado para um atributo config e o estado atual mapeado para um atributo state .

Olá!

Acabei de comprar uma fechadura Zigbee Danalock V3. Estou tentando usar o código que Arnerek escreveu, porque seria bom colocá-lo no Deconz. Eu sou novo no github, mas eu entendi direito se eu deveria ser capaz de compilar uma versão do plugin com base no branch arnereks? Porque é isso que estou tentando fazer, a compilação continua por um bom tempo, mas termina com erros.

Eu gostei disso:
git clone -b Danalock https://github.com/arnerek/deconz-rest-plugin

cd deconz-rest-plugin

qmake && make -j2

Isso está correto ou eu tenho que ler mais sobre como o git funciona. :)

/ Erik

Acho que é correto e a maneira mais fácil (você não precisa usar git checkout com este método)
Mas você perde a linha de comando para substituir os arquivos

sudo cp ../libde_rest_plugin.so / usr / share / deCONZ / plugins

e não esqueça

sudo apt install deconz-dev

qual é o seu erro?

Na verdade funcionou agora. Escrevi make clean e tentei novamente.
Compilação concluída. Em seguida, executei a próxima etapa:

sudo cp ../libde_rest_plugin.so /usr/share/deCONZ/plugins

e sim, eu fiz sudo apt install deconz-dev antes.

Em seguida, reiniciei o serviço e tentei emparelhar o bloqueio no aplicativo Phoscon, mas sem sorte, estou com medo.

Realmente não sei o que mais fazer. Alguém mais conseguiu fazer isso funcionar?

@lillaeriika Só para verificar Você substituiu o general.xml como no meu post anterior? Isso deve tornar o bloqueio visível no deCONZ e você deve estar pronto para executar os comandos bloquear e desbloquear.

@arnerek Hmm, não encontrei nenhum post onde você estava falando sobre general.xml? Mas, para ficar claro, devo pegar o general.xml do seu branch e colocá-lo na pasta: /usr/share/deCONZ/zcl ?

Isso é o que eu fiz. Reinicializado. Ainda não funciona. :(

Esta postagem: https://github.com/dresden-elektronik/deconz-rest-plugin/issues/520#issuecomment -538741388

Acho que a localização está correta. Procure por uma nova luz e use um clipe de papel no orifício do pino do Danalock para emparelhar.

Também não está funcionando para mim, eu fiz tudo que você listou e não consigo fazer funcionar.

Você pode tentar permitir que o bloqueio se junte à rede de deCONZ? No deCONZ, você deve ser capaz de bloquear e desbloquear.

sim, eu consigo bloquear e desbloquear do cluster, mas não consigo encontrar nas luzes ou na API

Você tentou fazer isso: “Para mim, o Phoscon só reconheceria a fechadura depois que eu tivesse pressionado" Ler o descritor do nó "na GUI deCONZ do nó da fechadura da porta.”

Você também pode tentar girar a fechadura enquanto procura por uma nova luz em Foscon

Não consegui bloquear e desbloquear sem pressionar este botão, então sim, já fiz isso.
Tentei bloquear e desbloquear com uma busca, mas ainda nada.

Qual é a sua versão do gateway (encontrado no Phoscon)?

2.05.69 / 25.2.2020

até tentei ler todos os atributos no cluster básico etc.

Olá a todos,

Dispositivos:
Raspberry Pi 2 Modelo B
Conbee II (versão 2.05.69 / 14/02/2020)

Eu fiz o seguinte:

  1. sudo apr-obter atualização
  2. sudo apt install deconz-dev
  3. git clone -b Danalock https://github.com/arnerek/deconz-rest-plugin
  4. cd deconz-rest-plugin
  5. qmake && make -j2
  6. sudo mv /usr/share/deCONZ/plugins/libde_rest_plugin.so /usr/share/deCONZ/libde_rest_plugin.so.bak
  7. sudo mv libde_rest_plugin.so /usr/share/deCONZ/plugins/libde_rest_plugin.so
  8. reabra a GUI deCONZ

Posso operar o bloqueio a partir da GUI deCONZ
Posso usá-lo como uma lâmpada no HomeAssistant com plug-ins OOTB, mas não salva o estado da lâmpada.

O que devo fazer para salvar o estado da lâmpada?
Como posso ligar a lâmpada para alternar (como o Aqara Smart Plug) no deCONZ?

obrigado

Esquisito. O aplicativo Danalock fornece um status confiável de fechadura da porta?

Eu uso o modelo de bloqueio no Home Assistant: https://www.home-assistant.io/integrations/lock.template/

@arnerek você sabe por que meu cadeado não está aparecendo nas luzes?

Não, desculpe. Talvez verifique a permissão ou propriedade do arquivo libde_rest_plugin.so? Excluir o bloqueio em Deconz e adicionar novamente?

As permissões estão corretas. Como posso excluir esse item com a GUI? Pressionar a tecla del apenas o "reconectará" 5 segundos depois

Esquisito. O aplicativo Danalock fornece um status confiável de fechadura da porta?

Eu uso o modelo de bloqueio no Home Assistant: https://www.home-assistant.io/integrations/lock.template/

Obrigado.
Está perfeito agora.

Não sei por que, mas inicialmente o bloqueio não manteve o estado. Mas agora funciona bem.

também funcionou agora depois de excluir o bloqueio da GUI e redefinir e reconectar no aplicativo Danalock

Eu fui um pouco mais longe também. Nunca usei a GUI antes, mas quando consegui iniciá-la, o bloqueio estava realmente lá. Eu o apaguei da GUI do Deconz e depois o adicionei de volta por meio do Webapp. Em seguida, ele apareceu na GUI e no aplicativo Phoscon. Então agora está em todos os lugares.

Último problema: posso bloquear / desbloquear na GUI e Webapp, mas não no aplicativo Phoscon?

Na verdade, parece funcionar no Phoscon App também, mas um pouco lento. Eu consegui entrar no Openhab e parece funcionar muito bem a partir daí, então acho que estou feliz. Farei mais alguns testes amanhã. Obrigado por toda a ajuda. Finalmente uma boa noite de sono!

Obrigado por compartilhar seus pensamentos. Acho que também vou comprar um DanaLock e testá-lo.
A propósito: você sabia se o Dockerfile está disponível? Estou executando meu DECONZ no Docker em um OrangePi Zero Plus :)

Editar:
Seria bom mantê-lo em execução no Docker com suporte DanaLock.

E:
Você vê o formulário HTML para adicionar novos dispositivos ao Deconz ? Alguém enviou esta solução que será integrada às versões futuras?

Fiquei no mesmo estado que alguém acima. A fechadura não manteria o estado. E os comandos só chegavam às vezes. Retirei-o mais uma vez completamente de Deconz. Adicionado com phoscon. Funcionou imediatamente e agora funciona perfeitamente. Controlando a partir de Deconz funciona, phoscon, adicionando ao Openhab e também controlando a partir do Openhab Tão feliz. Obrigado a todos.

@ebaauw Qual é o status aqui, por que o problema foi encerrado? Os desenvolvedores precisam de mais informações?

Qual é o status aqui

Me desculpe, eu não sei. Eu não tenho nenhum smart lock e não escrevi nenhum código que o suporte. Conforme mencionado acima, ao contrário de 2018, agora temo expor o bloqueio como um recurso /lights pode ser uma má ideia. Isso pode levar a problemas insolúveis (como a necessidade de ler os atributos na GUI, antes de alterar o estado na API). As experiências recentes com dispositivos de alerta (sirenes) me fizeram mudar de opinião. O único argumento convincente para apoiar um dispositivo (função) como um recurso /lights é quando essa função oferece suporte a grupos (como é o caso com os dispositivos de cobertura de janela, e com a sirene Heiman (autônoma), mas não com o sirenes de detectores de fumaça).

por que o problema está fechado?

Para manter o bot obsoleto feliz?

Os desenvolvedores precisam de mais informações?

Acho que provavelmente há informações suficientes aqui, especialmente porque @bohtho conseguiu pontuar o manual técnico, consulte https://github.com/dresden-elektronik/deconz-rest-plugin/issues/520#issuecomment -537240173.

Conforme mencionado acima, a base de código atual para o plugin REST API é muito complexa, e adicionar suporte para um novo tipo de dispositivo envolve muitos ciclos de teste de desenvolvimento de acertos e erros. Por causa disso, não tento mais adicionar suporte para dispositivos que não tenho. Estou feliz em trabalhar no suporte da API REST (e Homebridge Hue) para o Danalock se eu conseguir um empréstimo, ou se as pessoas quiserem me patrocinar para obter o dispositivo sozinho. Observe que não posso adicionar suporte ao Phoscon, pois ele não é de código aberto.

Obrigado @ebaauw. Mudei para ZHA nativo em Homeassistant agora (usando Conbee 1), com grande sucesso. O Danalock funciona fora da caixa.

Olá pessoal.
Nos últimos dias, estou tentando fazer meu Danalock V3 funcionar com Conbee II (versão 2.05.69, Raspberry PI 4) e Home Assistant 0.109.6. Após o processo de conexão, vejo meu bloqueio como uma luz no aplicativo Phoscon e posso gerenciá-lo por meio da GUI deCONZ. Depois disso estou fazendo o processo de autenticação no Phoscon App para conectá-lo com HA (HA está instalado no meu servidor NUC e faço a conexão com o Conbee II usando integração em HA por IP do meu PI4). Funciona exceto o estado do Danalock. Após reiniciar meu Danalock, a integração não funcionou! Eu ainda posso gerenciá-lo através da GUI deCONZ, comandos exec para bloquear / desbloquear funcionam perfeitamente. Por favor ajude.

Alguma novidade se isso vai ser suportado no Deconz ?? Tentei fazer funcionar, mas não entendi este tópico e o que eu deveria fazer :) Alguém pode fazer uma coisa passo a passo?

@ helto4real , você pode usar minha lista de etapas:
https://github.com/dresden-elektronik/deconz-rest-plugin/issues/520#issuecomment -612411637
em seguida, use a sugestão de Arnerek se precisar bloquear o elemento da IU no Assistente de Casa
https://github.com/dresden-elektronik/deconz-rest-plugin/issues/520#issuecomment -612471028

Às vezes tenho os seguintes problemas:

  • a fechadura não mantém o estado. Nesse caso, vou para deCONZ GUI e leio o estado manualmente
  • estado desconhecido do bloqueio, neste caso, vou para deCONZ GUI e altero o estado manualmente

Existe agora um guia "simples" para iniciantes para conectar o Danalock ao Conbee2 / Deconz?

Talvez seja interessante para qualquer um, eu mesclei as mudanças para Danalock com deconz-rest-plugin-2_05_77_stable. Com a versão anterior, não consegui adicionar opple Aqara.
As fontes estão em meu github.

- Editar por Mimiix> Removendo URL até liberação posterior.

Talvez seja interessante para qualquer um, eu mesclei as mudanças para Danalock com deconz-rest-plugin-2_05_77_stable. Com a versão anterior, não consegui adicionar opple Aqara.
As fontes estão em meu github.

- Editar por Mimiix> Removendo URL até liberação posterior.

Está funcionando perfeitamente :-), mas há alguma maneira de obter o status da bateria por meio da API? :-)

Ninguém pode fazer um PR para esse repo, para torná-lo definitivo?

Atualizei meu plugin de descanso agora, mas o bloqueio foi removido do aplicativo Phoscon e também não consigo encontrá-lo na API. Alguma sugestão para este problema? Já tentei redefinir e reconectar.

@manup , mescle isso com o código :-)

Acho que pedimos a eles que incluíssem isso de maneiras e questões diferentes por 3 anos. Passei para o pastor ziguezague. Funciona instantaneamente.

Atualizei meu plugin de descanso agora, mas o bloqueio foi removido do aplicativo Phoscon e também não consigo encontrá-lo na API. Alguma sugestão para este problema? Já tentei redefinir e reconectar.

Então você tem que fazer o downgrade do plugin ou adicionar manualmente as mudanças para que funcione novamente :-)

@ smulle48 Está sendo mesclado antes do dia 15. É quando uma nova versão é lançada :)

Ele costuma se fundir na semana anterior :)

Btw. Sou só eu ou o estado da fechadura (lâmpada) não muda quando você a gira manualmente?

Meu bloqueio mantém o último estado iniciado pelo aplicativo da web

Meu bloqueio muda de estado quando eu giro o bloqueio manualmente.

Temos três opções?

  • Fechadura
  • Desbloquear
  • Puxando a trava

Meus casos de uso seriam:

  • Trancar a porta se não houver ninguém em casa.
  • Destrancar a porta se alguém estiver perto de casa.
  • Puxando a trava se eu estiver me conectando ao WiFi.

Temos três opções?

  • Fechadura
  • Desbloquear
  • Puxando a trava

Meus casos de uso seriam:

  • Trancar a porta se não houver ninguém em casa.
  • Destrancar a porta se alguém estiver perto de casa.
  • Puxando a trava se eu estiver me conectando ao WiFi.

Como é tratada como uma lâmpada, você liga / desliga (bloqueia / desbloqueia).

Esse desbloqueio automático, você já conseguiu no aplicativo Danalock, incluindo o "hold on unlock".

Como é tratada como uma lâmpada, você liga / desliga (bloqueia / desbloqueia).

Esse desbloqueio automático, você já conseguiu no aplicativo Danalock, incluindo o "hold on unlock".

@ smulle48
Isso significa que se você desbloquear através do zigbee, ele usa a opção configurada definida no aplicativo?
Portanto, não é possível desbloquear e manter o desbloqueio separadamente?

Como é tratada como uma lâmpada, você liga / desliga (bloqueia / desbloqueia).

Esse desbloqueio automático, você já conseguiu no aplicativo Danalock, incluindo o "hold on unlock".

@ smulle48
Isso significa que se você desbloquear através do zigbee, ele usa a opção configurada definida no aplicativo?
Portanto, não é possível desbloquear e manter o desbloqueio separadamente?

Até agora, só é possível bloquear e desbloquear através do zigbee. O resto você pode fazer no app oficial Danalock

Como é tratada como uma lâmpada, você liga / desliga (bloqueia / desbloqueia).

Esse desbloqueio automático, você já conseguiu no aplicativo Danalock, incluindo o "hold on unlock".

@ smulle48
Isso significa que se você desbloquear através do zigbee, ele usa a opção configurada definida no aplicativo?
Portanto, não é possível desbloquear e manter o desbloqueio separadamente?

Até agora, só é possível bloquear e desbloquear através do zigbee. O resto você pode fazer no app oficial Danalock

Ok, muito obrigado!

Fechar este como suporte foi fornecido com a versão .79.

Esta página foi útil?
0 / 5 - 0 avaliações