Ajuda na adaptação de Solução de controlo de estores SONOFF para uma solução RF

Não sou perito em HA, mas se calhar a solução não é assim tão complicada, e creio que já vai ser mais facil chegares a uma solução.
O motor já tem já memorizado o tempo de descida e o tempo de subida ?
O codigo abaixo é usado no meu AC, e acho que com umas ligeiras adaptações e testes consegues chegar á solução para usares o RF no HA.

homeassistant:

  customize:
    switch.ac_power:
        friendly_name: "Ar Condicionado"
        icon: mdi:power
        assumed_state: false            
    script.ac_temp_up:
      friendly_name: "Temp up"
      icon: mdi:thermometer-lines
    script.ac_temp_down:
      friendly_name: "Temp down"
      icon: mdi:snowflake
    script.ac_fan_speed:
      friendly_name: "Fan speed"
      icon: mdi:fan
    script.ac_mode:
      friendly_name: "Mode"
      icon: mdi:settings-box      


    #Hidden items
    switch.ac_temp_up:
      icon: mdi:thermometer-lines
      assumed_state: false
      hidden: true
    switch.ac_temp_down:
      icon: mdi:snowflake
      assumed_state: false
      hidden: true
    switch.ac_fan_speed:
      icon: mdi:fan
      assumed_state: false
      hidden: true
    switch.ac_mode:
      icon: mdi:settings-box
      assumed_state: false
      hidden: true
     



switch:
  #Broadlink "RM mini 3" IR Transciever
  - platform: broadlink
    name: "Ar Condicionado"
    icon: mdi:power
    host: 192.168.1.77
    mac: "34:EA:34:D0:A7:79"
    timeout: 15
    type:  rm2_pro_plus2
    switches:
      ac_power:
        friendly_name: "Ar Condicionado"
        command_on: 'JgDKAJKUEDgRFBA4EDgQFBAUETcRExETETcRExETETcSNxAUEDgQFBETEBQROBA4EDgQOBA4ETcROBA4ERMRExAUEBQRExETERMSEhETERMRNxITERISNxE3ETcQORE3EBQRNxA4ErGQlBE4EBQQOBA4EBQRExI2EhIRExI3ERQQExE4DzkQFBA4EBQQFBAUETcRNxI2ETgQOBA4ETcRNxISERMRExETEhISExETEBQRExAUEDkQFA8VEDgQOBA4ETcRNxETEjYROBMADQUAAAAAAAAAAAAAAAAAAA=='
        command_off: 'JgDKAJGUEDkQFBA4EDgRExETEDYUEhETETcRExETEjYROBETEDgRExE3EDkRNxA4ERMROBA4EDgQFBAUEBQQFBA4ERMSEhE3ETcROBAUEBQQFBETERMQFBETERMQORE3ETcROBA3ErGQlBI3EBQQOBE3EhIRExI2ERQQFBE3EBUQExA5DzkQFBA4ERMRNxE3EjYRNxEUEDgQOBE3ERMQFBISERMROBAUERMQOBA5EDgPFRAUEBQQFBAUERMRExETETcSNhE4ETYSNxMADQUAAAAAAAAAAAAAAAAAAA=='
      ac_temp_up:
        friendly_name: "AC Temp Up"
        command_on: 'JgDKAJGUETgQFBA4ETcRExAUETgQExEUEDgQFBAUEDgSNhETETcRExITEBMROBA4EDgQOQ85EDgRNxA4ERQQFBATERQQFBAUEDgQOBA4EhIRNxETERMRNxEUEBQQFBA4EBQQOBA5Eq+RlBI3EhIROBA3ERQQFBA4EBQQFBA4EhIRExE3EjcRExA5DxUPFBAVDzkQOBA4ETcRNxE3ETcROBAUEBQQFBAUEBQQFBA4EjYSNxETETcQFBAVDzkPFRAUEBQQOBAUETcRNxMADQUAAAAAAAAAAAAAAAAAAA=='
      ac_temp_down:
        friendly_name: "AC Temp Down"
        command_on: 'JgDKAJGUETgRExA4EDgQFBETETgQExEUEDgQFBAUEDgSNhISEjYRExEUEBMSNxA4EDgQOQ85ETcRNxE3EBUQFBATERQQFBAUEDgQOBAUERMRNxISERMRNxISERQQOBA4EBQQOBA5Eq+RlBI3EhISNxA3EhMQFBA4EBQQFBA4EhISEhE4EDgQFBA5DxUPFBAVEDgQOBA4ETcRNxI2EjYROBAUEBQQFBAUEBQQFBA4ETcSExAUETcRFA8UEDkPFQ8VEDgQOBETETcRNxQADQUAAAAAAAAAAAAAAAAAAA=='
      ac_fan_speed:
        #Cycles through three available fan speeds when pressed repeatedly
        friendly_name: "AC Fan Speed"
        command_on: 'JgDKAJCUEjcSEhE3EjYSEhISETgQExEUEDgQFBAVDzkRNxETEDgRExE3ERMROBA4EDgQOBI2EjYSEhE3ERQQFBATERQQFBAUEBQQFBAVDxUPFRETEBQRNxE3ETcROBA4EDgQOBA4E6+RlBE4ERMQOQ84ERQPFQ85EBQQFBA4ERMRExE3EjYSEhE4EBQQOBAUEDgQOBA4EjYSNxE3ERMQOQ8VEBQQFBAUEBQQFBAUERMRExETERMRExETETcSNhI3EDgQOBA4ETgQOBMADQUAAAAAAAAAAAAAAAAAAA=='
      ac_mode:
        friendly_name: "AC Mode"
        command_on: 'JgDKAJGTETgSEhE3EjYSEhISETgQExEUEDgQFBAVDzkRNxAUEDgRExEUEBMROBA4EDgQOBA4ETcRNxI2EhMQFBATEhMQFBAUEBQQFQ8VDxUPORETEBQQOBE3ETgQOBA4EBQQOBA4E66SlBE4ERMQOQ84ERQPFRA2EhQQFBA4ERMRExE3ETcRExE4EBQQExEUEDgQOBA4EjcRNxA4EDgQORAUEBQQFBAUEBQQFBAUERMRExETETcSEhETETgQOBA4EDgQOBAUEjcQOBQADQUAAAAAAAAAAAAAAAAAAA=='





script:
  #These IR scripts are written so that HASS dashboard will display a one-shot "activate" button for these 'dumbfire' IR blasts (instead of a displaying a toggle for a smartdevice, which would falsely imply a known state of on/off for each action)
  ac_temp_up:
    sequence:
      - service: switch.turn_on
        entity_id: switch.ac_temp_up
  ac_temp_down:
    sequence:
      - service: switch.turn_on
        entity_id: switch.ac_temp_down
  ac_fan_speed:
    sequence:
      - service: switch.turn_on
        entity_id: switch.ac_fan_speed
  ac_mode:
    sequence:
      - service: switch.turn_on
        entity_id: switch.ac_mode


group:

  AC:
    view: yes
    name: AC
    entities:
      - group.acgroup

  acgroup:
    control: hidden
    name: AC
    entities:
      - switch.ac_power

Obrigado pela dica, mas nesse caso o slide não iria funcionar certo?

Relativamente ao AC, tens este tutorial criado pelo Rodolfo que está 5* :slight_smile: E aqui já consegues escolher a temperatura e assim :slight_smile:

Neste caso o slider não vai funcionar, mas podes ter as funções subir, parar e descer.
Eu conheço o tutorial, mas não o usei porque o meu AC é de uma marca que não é conhecida e por isso tive de adaptar os comandos.
Mas vai dando, feedback em relação aos avanços, creio que a solução é interesante.

UPDATE:

Entretanto, devido ao código do @Schneider e com a ajuda deste tópico já consegui integrar os blackouts/estores no HA e no HomeKit :slight_smile:

O problema é que ainda não consigo controlar a posição :confused:
Vamos ver se mais tarde o @Maddoctor dá uma ajuda nesse ponto :smiley:

Entretanto deixo então aqui um video e o código do que consegui fazer (para os interessados).

Vídeo - Aqui podemos ver que no Homekit, não é possível controlar a % Aberta ou Fechada, só consigo mesmo abrir ou fechar por completo ! (Nem consigo utilizar o comando Stop)

No Home Assistant, já consigo usar o comando Stop, mas mesmo assim ainda não consigo ter o slider para escolher a %aberta ou fechada.

https://streamable.com/3vudu

O código que utilizei é o seguinte:

configuration.yaml

switch:
 - platform: broadlink
   host: 192.168.1.112
   mac: '26:3f:57:19:18:h9'

cover: !include includes/cover.yaml
script: !include includes/script.yaml

Para o pessoal que quer integrar no HomeKit, adicionem também este código:

homekit:
  filter:
    include_domains:
      - cover

PS: Não se esqueçam de alterar o mac do vosso broadlink e o ip

Depois dentro da pasta config, criem outra pasta com o nome “includes”, e coloquem lá dentro o cover.yaml e o script.yaml .

Código do cover.yaml

- platform: template
  covers:
    blackout_bedroom:
      friendly_name: "Blackout Bed Room"
      open_cover:
        service: script.blackout_bedroom_open
      close_cover:
        service: script.blackout_bedroom_close
      stop_cover:
        service: script.blackout_bedroom_stop

- platform: template
  covers:
    blackout_livingroom:
      friendly_name: "Blackout Living Room"
      open_cover:
        service: script.blackout_livingroom_open
      close_cover:
        service: script.blackout_livingroom_close
      stop_cover:
        service: script.blackout_livingroom_stop

Código do script.yaml

# QUARTO

blackout_bedroom_open:
  sequence:
  - service: switch.broadlink_send_packet_192_168_1_103
    data:
      packet:
      - sgc0AAkMEwsTDBMWChUJDBMLExUKCxMVChUKDBMMExUKCxQLFBUKFQoVCRUJFQoVChUJFQoAAvkAAAAA==
  - delay: 00:00:03
  alias: "Blackout Open"

blackout_bedroom_close:
  sequence:
  - service: switch.broadlink_send_packet_192_168_1_103
    data:
      packet:
      - sgs0AAkNEwsTDBMVChUKCxMLExUKDBMVChUKDBMLExUKCxMLFBUKFQkVChUJFQoVCgsTFQoAAvoAAAAA==
  - delay: 00:00:03
  alias: "Blackout Close"

blackout_bedroom_stop:
  sequence:
  - service: switch.broadlink_send_packet_192_168_1_103
    data:
      packet:
      - sgc0AAkNEwwTDBMVCRUKDBMMExULCxMVCRUJDBMMExYJDBMMExYJFQkVCRYJFgkVChUJDBQAAvoAAAAA==
  - delay: 00:00:03
  alias: "Blackout Stop"
  
# SALA

blackout_livingroom_open:
  sequence:
  - service: switch.broadlink_send_packet_192_168_1_103
    data:
      packet:
      - sgc0AAsLFQoVFAwTDAoVFAsUCwoWChUKFQoVChUTCwoVChUKFhQMChUUCwoVFAsTCxQLFAwAArgAAAAA==
  - delay: 00:00:03
  alias: "Blackout Open"

blackout_livingroom_close:
  sequence:
  - service: switch.broadlink_send_packet_192_168_1_103
    data:
      packet:
      - sgc0AAsLFQoVFAsUDAoVEwsUCwoWChUKFQoVChUUCwoVChUKFhMMChUUCwoVEwsUCwoVFAsAArcAAAAA==
  - delay: 00:00:03
  alias: "Blackout Close"

blackout_livingroom_stop:
  sequence:
  - service: switch.broadlink_send_packet_192_168_1_103
    data:
      packet:
      - sgc0AAsLFQoVEwsUCwoVFAsUCwoVChUKFQoVChUUCwoVChUKFRQLChUUCwoVFAsUCxQLChUAArcAAAAA==
  - delay: 00:00:03
  alias: "Blackout Stop"

PS: Não se esqueçam de alterar os códigos RF para os vossos códigos RF !!!

Segundo o @Schneider foi adicionado um delay de 00:00:03 devido ao HomeKit.

1 Curtiu

se entretanto alguem me conseguir dar uma ajuda no código fico bastante agradecido :slight_smile:

Este tópico foi automaticamente fechado 90 dias após a última resposta. Novas respostas não são permitidas.


Copyright © 2017-2021. Todos os direitos reservados
CPHA.pt - info@cpha.pt


FAQ | Termos de Serviço/Regras | Política de Privacidade