ale-jr / rinnai_br_homeassistant

Integração entre módulo wifi dos aquecedores rinnai com o home assistant
MIT License
19 stars 3 forks source link

Sugestões #1

Open gamajunior opened 1 year ago

gamajunior commented 1 year ago

Ale, primeiramente parabéns pelo trabalho, descobri sem querer esse add-on que estava procurando a algum tempo. Gostaria de fazer algumas sugestões e me colocar a disposição para poder ajudar a melhorar esse add-on.

1 - Entidade Temperatura Definida: Ao instalar o add-on o nome dessa entidade está grafado incorretamente. 2 - Corrente: O aquecedor informa a corrente e seria legal ter essa entidade. 3 - Voltagem e consumo elétrico: Na aba de ajustes seria interessante ter o campo para informar a voltagem que o equipamento com isso pode criar automaticamente o consumo em Watts utilizando a corrente da sugestão numero 2. 4 - Sinal Wi-Fi: O aquecedor informa a corrente e seria legal ter essa entidade. 5 - Prioridade: Incluir a opção para informar o IP do HA ter prioridade e com isso poder mudar a temperatura pelo HA/Alexa mesmo com o aquecedor em uso.

Segue abaixo o dashboard que montei usando o node-red para capturar algumas informações, usava esses dados pelo node-red antes de achar o seu add-on.

image

Acho que é isso por hora e mais uma vez parabéns pelo trabalho.

**Olá Ale, pode desconsiderar sobre a prioridade, entendi o funcionamento e dessa forma atende perfeitamente. Aproveitando notei mais uma melhoria, incluir um logo no add-on, pois quando instalei ele não aparece nenhum personalizado.

Valeu....

image

**

ale-jr commented 1 year ago

Opa, tudo bem? Achei que ninguém ia usar esse addon mas fico feliz em saber que o pessoal tá usando 🙌, sobre os itens:

  1. Subi uma nova versão com o a correção
  2. e 3. Vc sabe qual o endpoint e posição dessas informações? Não cheguei a achar por aqui :sweat_smile:
  3. Criei um PR para isso, assim que eu souber como obter a tensão e a corrente eu subo essas novas entidades no mesmo :D
gamajunior commented 1 year ago

Olá Ale, fico feliz por responder. acho que o uso do desse addon é pequeno pois está escondidinho, mas com o tempo a galera vai achar. eu peguei as informações baseadas nessa tabela de códigos quando usamos o /bus.

"Status ligado/desligado/stand-by: $col0" "Erros do sistma: $col01" "Número de acionamentos: $col03" "Horas de combustão: $col04" "Horas de stand-by: $col05" "Rotação da ventoinha: $col07" "Corrente: $col08" "Potência máxima (kcal/min): $col09" "Temperatura de entrata: $col10" "Temperatura de saída: $col11" "Fluxo real: $col12" "Vazão mínima p/ acionamento: $col13" "Vazão mínima p/ desligamento: $col14" "Temperatura setada: $col15" "Endereço IP: $col16" "Número de série: $col19" "Data Firmware: $col22" "MAC Address: $col25" "Sinal wi-fi: $col37"

// Tratamento do status if (msg.payload[0] == 11){ msg.payload[0] = "desligado" } if (msg.payload[0] == 41 && msg.payload[2] == 0) { msg.payload[0] = "stand-by" } if (msg.payload[0] == 41 && msg.payload[2] == 1) { msg.payload[0] = "em uso" } if (msg.payload[0] == 21 && msg.payload[2] == 1) { msg.payload[0] = "em uso" } if (msg.payload[0] == 42 && msg.payload[2] == 1) { msg.payload[0] = "em uso" } if (msg.payload[0] == 43 && msg.payload[2] == 1) { msg.payload[0] = "em uso" } //Tratamento dos erros if (msg.payload[1] == 12) { msg.payload[1] = "Código: 12 - Falta de gás em uso" } else {

if (msg.payload[1] == 10) { msg.payload[1] = "Código: 10 - Ventoinha Obstruída" } else { msg.payload[1] = "OK" }

// Sensor geral msg.entity_id = 'sensor.cozinha_aquecedor_a_gas'

msg.payload = { data: { state: msg.payload[0], attributes: { funcionamento: msg.payload[1], vazao_minima_para_acionamento: parseFloat(msg.payload[13] 0.01).toFixed(2), vazao_minima_para_desligamento: parseFloat(msg.payload[14] 0.01).toFixed(2), data_firmware: msg.payload[22], horas_de_combustao: msg.payload[4], potencia_maxima_kcal_min: msg.payload[9], rotacao_da_ventoinha: msg.payload[7], corrente: msg.payload[8], horas_de_stand_by: msg.payload[5], numero_de_serie: msg.payload[19], icon: "mdi:information", friendly_name: "COZINHA Aquecedor à Gás", } } };

return msg

gamajunior commented 1 year ago

Não sei o quão trabalhoso é, mas o ideal seria disponibilizar todas as entidades para que o usuário defina qual usar :)

aantonelloborges commented 1 year ago

@ale-jr ,

Estou tentando descobrir em qual campo consigo a informação sobre o tempo atual de uso, para criar uma automação que reduza a temperatura da água após 12 minutos de banho até chegar aos 36 (semelhante ao que é possível configurar no app da Rinnai em perfil do usuário) - e depois desligue.

No entanto, rodando o código localmente, reparei que alguns dos meus campos de retorno são diferentes dos presumidos por você.

/bus.data: '41,0,0,3400,227,7200,10000,0,0,0,2008,2505,0,278,208,3700,0.0.0.0,null:pri,5,22193138,16244,0,Sep 16 2022,0,Software/System restart,xx:xx:xx:xx:xx:xx,0,0,45,0,0,0,0,0,0,0,0,-84,[0],0'

Enfim, vou tentar decompilar o apk do app da Rinnai para veriguar se consigo alguma informação útil.

davidalben commented 1 year ago

@aantonelloborges, você consegue mudar a temperatura do aquecedor com ele em uso? Aqui, pelo app da Rinnai, fica bloqueado.

aantonelloborges commented 1 year ago

@davidalben, pelo app da Rinnai precisa clicar no cadeado para pedir prioridade, e depois desclicar. O add-on em questão aqui faz isso!

aantonelloborges commented 1 year ago

@ale-jr seguem novos campos que eram desconhecidos e são relativos as opções encontradas no menu "Perfil"do app:

29 - duração máxima (em minutos) do tempo de banho antes da redução da temperatura 30 e 31 são um OR - apenas um pode estar ativado com um número "1" e corresponde na sequencia a "monitorar todos os banhos" ou "monitorar apenas o próximo banho" 32 - intervalo em segundos para a redução de 1 grau 33 - preço do m3 da água (últimos 2 digitos são casas decimais) 34 - preço do m3 do gás (últimos 2 digitos são casas decimais)

Amanhã durante o dia vou configurar com valores corretos e testar em qual campo é retornado o custo do banho.

No entendo ainda precisamos descobrir como realizar o update dessas informações ou obter por get o tempo decorrido do banho.

Atc,

davidalben commented 1 year ago

Ótimo, @aantonelloborges! Não tinha percebido que o cadeado permitia liberar essa alteração mesmo quando alguém estivesse usando o aquecedor. Pena que meu Home Assistant é sem supervisor, então não consigo instalar o add-on...

davidalben commented 1 year ago

Ok, @aantonelloborges. Vou considerar a sugestão. Hoje rodo em um mini-pc DELL com Debian e instalação via container, junto com outras coisas. Valeu!

rpr1972 commented 1 year ago

@davidalben Tenta essa integração aqui: https://hub.docker.com/r/robrosa/rinnai2mqtt 😄

davidalben commented 1 year ago

@davidalben Tenta essa integração aqui: https://hub.docker.com/r/robrosa/rinnai2mqtt 😄

Parei tudo assim que vi sua mensagem! Funcionou! Obrigado pela dica!