O NasBlogKontakt
Zaawansowane i Poradniki

Zmiana Typu Encji (Światło / Przełącznik)

Naucz się, jak zmienić wyjście boneIO z encji typu 'light' na 'switch' i odwrotnie w konfiguracji ESPHome.

Zmiana Typu Encji (Światło / Przełącznik)

Czasami domyślna konfiguracja wyjścia jako light (światło) nie pasuje do jego zastosowania. Na przykład, gdy podłączasz do niego gniazdko, wentylator lub pompę. W takich sytuacjach warto zmienić typ encji na switch (przełącznik), aby Home Assistant lepiej ją kategoryzował.

  • Light (Światło): Encja pojawia się w domenie light, jest kontrolowana przez komendy głosowe typu "włącz wszystkie światła" i jest przeznaczona do źródeł światła.
  • Switch (Przełącznik): To bardziej generyczna encja typu włącz/wyłącz. Idealna do gniazdek, wentylatorów, elektrozaworów i innych urządzeń, które nie są oświetleniem.

Uwaga: W plikach YAML wcięcia (indentacja) są kluczowe. Zawsze używaj spacji, nie tabulatorów, i dbaj o poprawne wyrównanie.


Wymagania Wstępne

  • Zainstalowany i działający dodatek ESPHome.
  • Urządzenie boneIO dodane ("adoptowane") w panelu ESPHome.
  • Umiejętność edycji pliku konfiguracyjnego YAML.

Zmiana z light na switch

W tym przykładzie zmienimy light_02 na switch_02. Proces składa się z dwóch prostych kroków.

Krok 1: Zmiana definicji wyjścia

Musimy przenieść definicję wyjścia z sekcji light do sekcji switch i lekko ją zmodyfikować.

PRZED:

light:
  - platform: binary
    name: 'Light 01'
    output: out_01
    id: light_01
  - platform: binary
    name: 'Light 02'
    output: out_02
    id: light_02

PO:

light:
  - platform: binary
    name: 'Light 01'
    output: out_01
    id: light_01

# Nowa sekcja dla przełączników
switch:
  - platform: output # Zmiana z 'binary' na 'output'
    name: 'Gniazdko w Salonie' # Nowa, bardziej pasująca nazwa
    output: out_02
    id: switch_02 # Nowe ID

Krok 2: Aktualizacja akcji dla przycisku

Teraz musimy powiedzieć przyciskowi, że ma sterować nowym przełącznikiem (switch_02), a nie starym światłem (light_02), inaczej konfiguracja będzie niepoprawna.

PRZED:

binary_sensor:
  - platform: gpio
    name: 'IN_02'
    # ... reszta konfiguracji pinu
    on_press:
      then:
        - light.toggle: light_02 # Ta linia odwołuje się do starego ID

PO:

binary_sensor:
  - platform: gpio
    name: 'IN_02'
    # ... reszta konfiguracji pinu
    on_press:
      then:
        - switch.toggle: switch_02 # Zaktualizowana domena (switch) i ID (switch_02)

Po tych zmianach zapisz plik i wgraj nową konfigurację. Gotowe!


Zmiana z switch na light

Proces jest niemal identyczny, tylko w drugą stronę. W tym przykładzie zmienimy switch_02 na light_02.

Krok 1: Zmiana definicji wyjścia

PRZED:

switch:
  - platform: output
    name: 'Switch 01'
    output: out_01
    id: switch_01
  - platform: output
    name: 'Gniazdko w Salonie'
    output: out_02
    id: switch_02\

PO:

switch:
  - platform: output
    name: 'Switch 01'
    output: out_01
    id: switch_01

# Przeniesiony element do sekcji light
light:
  - platform: binary # Zmiana z 'output' na 'binary'
    name: 'Kinkiet w Salonie' # Nowa nazwa
    output: out_02
    id: light_02 # Nowe ID

Krok 2: Aktualizacja akcji dla przycisku

PRZED:

binary_sensor:
  - platform: gpio
    name: 'IN_02'
    # ... reszta konfiguracji pinu
    on_press:
      then:
        - switch.toggle: switch_02

PO:

binary_sensor:
  - platform: gpio
    name: 'IN_02'
    # ... reszta konfiguracji pinu
    on_press:
      then:
        - light.toggle: light_02

Zapisz plik i wgraj konfigurację. Wyjście OUT02 będzie teraz widoczne w Home Assistant jako światło.