Dúvida sobre switch


(Diogo Miranda) #1

Olá Malta,

Desculpem a ignorância, mas eu queria fazer que um switch da Xiaomi controlasse uma fita de LED no home assistant.


(Diogo Miranda) #2


(Rodolfo) #3

@DiogoMiranda a imagem que representas com um retângulo preto, já é um switch , o que queres fazer exactamente?


(Diogo Miranda) #4

Queria por o switch da xiaomi a controlar o retângulo preto.


(Rodolfo) #5

Tens um botão fisico é isso? e queres carregar uma vez e ligar a fita de leds certo?

Se for isso que queres , tens que criar duas automações:

      - alias: Ligar fita de leds quando clicas uma vez no botão.
        trigger:
          - platform: event
            event_type: click
            event_data:
              entity_id: binary_sensor.switch_158d0001b86d3e //tens que alterar isto para o teu switch, ve nos entities.
              click_type: single
        action:
          - service: homeassistant.turn_on
            data:
              entity_id: switch.bla_bla_bla  //tens que alterar isto para o nome da tua fita de leds , ve nos entities.
		  
		  
  - alias: Desligar fita de leds quando clicas duas vezes no botão
    trigger:
      - platform: event
        event_type: click
        event_data:
          entity_id: binary_sensor.switch_158d0001b86d3e //tens que alterar isto para o teu switch, ve nos entities.
          click_type: double
    action:
      - service: homeassistant.turn_off
        data:
          entity_id: switch.bla_bla_bla  //tens que alterar isto para o nome da tua fita de leds , ve nos entities.

(Nuno Neves) #6

@RodolfoVieira, não são necessárias duas automações.

Uma chega:

- alias: Alternar fita de leds quando clicas uma vez no botão.
    trigger:
      - platform: event
        event_type: click
        event_data:
          entity_id: binary_sensor.switch_xxxxxxxxxxxxx //tens que alterar isto para o teu switch, ve nos entities.
          click_type: single
    action:
      - service: switch.toggle
        data:
          entity_id: switch.bla_bla_bla  //tens que alterar isto para o nome da tua fita de leds , ve nos entities.

Já agora, uma vez que são luzes, em vez de switch, como tens, deverias configurar como light (depois alteras na automação switch.toggle por light.toggle)


(Rodolfo) #7

@Maddoctor boa, não conhecia essa solução. @DiogoMiranda ficamos à espera dos resultados.


(Diogo Miranda) #8

Está me a der um erro, não percebo do que é.

`Error loading /config/configuration.yaml: while parsing a block mapping

in “/config/configuration.yaml”, line 1, column 1
expected , but found ‘-’
in “/config/configuration.yaml”, line 96, column 1`


(Jorge Assunção) #11

Podes publicar o teu configuration.yaml, retirando primeiro os teus dados pessoais?


(Diogo Miranda) #12
  homeassistant:
    # Name of the location where Home Assistant is running
    name: Casa
    # Location required to calculate the time the sun rises and sets
    latitude: 
    longitude: 
    # Impacts weather/sunrise data (altitude above sea level in meters)
    elevation: 
    # metric for Metric, imperial for Imperial
    unit_system: metric
    # Pick yours from here: http://en.wikipedia.org/wiki/List_of_tz_database_time_zones
    time_zone: Europe/Lisbon
    # Customization file
    customize: !include customize.yaml

  # Show links to resources in log and frontend
  #introduction:

  # Enables the frontend
  frontend:

  # Enables configuration UI
  config:

  http:
    # Secrets are defined in the file secrets.yaml
    api_password: 
    # Uncomment this if you are using SSL/TLS, running in Docker container, etc.
    # base_url: example.duckdns.org:8123

  # Checks for available updates
  # Note: This component will send some information about your system to
  # the developers to assist with development of Home Assistant.
  # For more information, please see:
  # https://home-assistant.io/blog/2016/10/25/explaining-the-updater/
  updater:
    # Optional, allows Home Assistant developers to focus on popular components.
    # include_used_components: true

  # Discover some devices automatically
  discovery:

  # Allows you to issue voice commands from the frontend in enabled browsers
  conversation:

  # Enables support for tracking state changes over time
  history:

  # View all events in a logbook
  logbook:

  # Enables a map showing the location of tracked devices
  map:

  # Track the sun
  sun:

  # Weather prediction
  sensor:
    - platform: yr

  # Text to speech
  tts:
    - platform: google

  # Cloud
  cloud:

  group: !include groups.yaml
  automation: !include automations.yaml
  script: !include scripts.yaml

  xiaomi_aqara:
    discovery_retry: 5
    gateways:
  - key: 

  light:
    - platform: flux_led
  automatic_add: True
    - platform: yeelight
  devices:
    192.168.1.66:
      name: teste
      transition: 1000
      use_music_mode: True #(defaults to False)
      save_on_change: False #(defaults to True)

  homekit:
    filter:
  include_domains:
    - light
    - media_player
    - switch

  - alias: Ligar fita de leds quando clicas uma vez no botão.
  trigger:
    - platform: event
      event_type: click
      event_data:
        entity_id: binary_sensor.switch_158d000213303c
        click_type: single
  action:
    - service: homeassistant.turn_on
      data:
        entity_id: switch.DC4F22C2888F 192.168.1.75
    
    
  - alias: Desligar fita de leds quando clicas duas vezes no botão
  trigger:
    - platform: event
      event_type: click
      event_data:
        entity_id: binary_sensor.switch_158d000213303c
        click_type: double
  action:
    - service: homeassistant.turn_off
      data:
        entity_id: switch.DC4F22C2888F 192.168.1.75

(Nuno Neves) #13

Tomei a liberdade de editar o teu post para formatar correctamente e conseguir ler a config…

Estás a tentar pôr uma automation dentro do configuration.yaml… Sem as pores dentro de um item chamado automation:
Mandaste o configuration.yaml completo? Ele, de base, referencia as automações todas a outro ficheiro chamado automations.yaml, onde as deves pôr…


(Diogo Miranda) #15
- alias: Ligar fita de leds quando clicas uma vez no botão.
trigger:
  - platform: event
    event_type: click
    event_data:
      entity_id: binary_sensor.switch_158d000213303c
      click_type: single
action:
  - service: homeassistant.turn_on
    data:
      entity_id: switch.DC4F22C2888F 192.168.1.75
  
  
- alias: Desligar fita de leds quando clicas duas vezes no botão
    trigger:
      - platform: event
        event_type: click
        event_data:
          entity_id: binary_sensor.switch_158d000213303c
          click_type: double
    action:
      - service: homeassistant.turn_off
        data:
          entity_id: switch.DC4F22C2888F 192.168.1.75

(Diogo Miranda) #16

Error loading /config/configuration.yaml: mapping values are not allowed here
in “/config/automations.yaml”, line 2, column 12


(Nuno Neves) #17

As indentações da 1ª automation estão erradas


(Rodolfo) #18

@DiogoMiranda conforme o MadDoctor disse, as indentações (“espaços”) estão errados, terás que copiar como coloquei acima no meu exemplo.


(Diogo Miranda) #20
- alias: Alternar fita de leds quando clicas uma vez no botão.
  trigger:
    - platform: event
      event_type: click
      event_data:
        entity_id: binary_sensor.switch_158d000213303c 
        lick_type: single
  action:
    - service: switch.toggle
      data:
        entity_id: light.fitaled

(Diogo Miranda) #21

A fita led não muda de estado.


(Diogo Miranda) #22
- id: '152874555629'        
  alias: Botão Fita LED
  trigger:
      platform: event
      event_type: click
      event_data:
        event_id: "binary_sensor.switch_158d000213303c" #Já testei com " e sem as "
        click_type: single
  action:
      service: light.toggle
      entity_id: light.teste

(Diogo Miranda) #23

Já consegui.
Obrigado a todos que ajudaram.


(Jorge Assunção) #24

E podes publicar a solução para todos saberem?