Edycja pliku konfiguracyjnego
Wszystko co powinieneś wiedzieć o pliku konfiguracyjnym
Plik konfiguracyjny
Plik konfiguracyjny dla ESP Cover Mix może wydawać się duży, ale jest logicznym połączeniem modułów ESP Cover i ESP 32x10A. Ten przewodnik przeprowadzi Cię przez każdą sekcję.
Jako przykładu użyjemy standardowej konfiguracji boneio-cover-mix.yaml.
Pełny przykład konfiguracji
substitutions:
name: boneio-cm-07
friendly_name: 'BoneIO ESP Cover Mix'
esphome:
name: '${name}'
friendly_name: '${friendly_name}'
name_add_mac_suffix: true
project:
name: boneio.cover-mix
version: '0.7'
# ... (Standardowe sekcje jak esp32, ethernet, logger, api, ota, itp.)
packages:
internals_packages:
url: https://github.com/boneIO-eu/esphome
ref: v1.7.1 # Lub najnowsza wersja
files:
# Wspólne pliki urządzenia
- 'devices/buzzer.yaml'
- 'devices/serial_no.yaml'
# ... inne wspólne pliki
# Wyjścia roletowe (Górna część - 8 rolet = 16 przekaźników)
- 'boards/cover/out01_02.yaml'
- 'boards/cover/out03_04.yaml'
- 'boards/cover/out05_06.yaml'
- 'boards/cover/out07_08.yaml'
- 'boards/cover/out09_10.yaml'
- 'boards/cover/out11_12.yaml'
- 'boards/cover/out13_14.yaml'
- 'boards/cover/out15_16.yaml'
# Wyjścia przekaźnikowe (Dolna część - 16 przekaźników)
- 'boards/output/out17_18.yaml'
- 'boards/output/out19_20.yaml'
- 'boards/output/out21_22.yaml'
- 'boards/output/out23_24.yaml'
- 'boards/output/out25_26.yaml'
- 'boards/output/out27_28.yaml'
- 'boards/output/out29_30.yaml'
- 'boards/output/out31_32.yaml'
# Sekcja `cover` dla rolet/żaluzji
cover:
- platform: time_based
name: 'Roleta 01'
id: cover_01
open_action:
- switch.turn_on: cover_open_01_out01
open_duration: 10s
close_action:
- switch.turn_on: cover_close_01_out02
close_duration: 10s
stop_action:
- switch.turn_off: cover_open_01_out01
- switch.turn_off: cover_close_01_out02
# ... (konfiguracje dla rolet od 02 do 08)
# Sekcja `light` dla przekaźników
light:
- platform: binary
name: 'Światło 17'
output: out_17
id: light_17
# ... (konfiguracje dla świateł od 18 do 32)
# Sekcja `binary_sensor` dla wejść
binary_sensor:
- platform: gpio
name: 'IN_01'
id: in_01
pin:
pcf8574: pcf_inputs_1to14
number: 0
on_press:
then:
- cover.open: cover_01
on_release:
then:
- cover.stop: cover_01
- platform: gpio
name: 'IN_17'
id: in_17
pin:
pcf8574: pcf_inputs_15to32 # Zakładając inny PCF dla tych wejść
number: 2
on_press:
then:
- light.toggle: light_17Wyjaśnienie sekcji
substitutions & esphome
Te sekcje służą do nazwania Twojego sterownika. Ustaw friendly_name, które będzie miało sens w Twojej instalacji, np. "boneIO Cover Mix Parter". Pozostałe parametry służą do wewnętrznej identyfikacji i wersjonowania projektu.
packages
To kluczowa sekcja. Ładuje ona definicje sprzętowe z naszego repozytorium na GitHub. Dla Cover Mix ładuje dwa zestawy plików:
boards/cover/: Definiują pierwsze 16 przekaźników jako 8 par do sterowania roletami.boards/output/: Definiują przekaźniki od 17 do 32 jako indywidualne wyjścia dla świateł, przełączników itp.
Sekcja cover
Ta sekcja służy do konfiguracji rolet i żaluzji weneckich (wyjścia 1-16).
platform: time_based: Użyj tego dla standardowych rolet.name: Ustaw przyjazną nazwę dla Home Assistant.open_duration/close_duration: Kluczowe dla kalibracji! Musisz zmierzyć czas potrzebny na pełne otwarcie i zamknięcie rolety.
Dla żaluzji weneckich z kontrolą pochyłu, możesz użyć niestandardowej platformy venetian_blinds. Wymaga to dodania bloku external_components na górze pliku i skalibrowania tilt_duration. Szczegółowy przewodnik znajdziesz na stronie Nazywanie Wyjść.
Sekcja light / switch
Ta sekcja służy do konfiguracji przekaźników ogólnego przeznaczenia (wyjścia 17-32).
platform: binary: Tworzy prostą encję światła (włącz/wyłącz).platform: output: Tworzy prostą encję przełącznika (włącz/wyłącz).name: Ustaw przyjazną nazwę, np. 'Światło w ogrodzie' lub 'Zasilanie garażu'.output: Łączy encję z fizycznym przekaźnikiem, np.out_17.
Sekcja binary_sensor
Definiuje Twoje fizyczne wejścia (przełączniki ścienne). Możesz połączyć dowolne wejście z dowolną akcją rolety lub światła. Na przykład, IN_01 może sterować cover_01, podczas gdy IN_17 może przełączać light_17.