O NasBlogKontakt
ProduktyESP 8x10A gen2Konfiguracja Oprogramowania

Edycja pliku konfiguracyjnego

Wszystko co powinieneś wiedzieć o pliku konfiguracyjnym

Plik konfiguracyjny

Plik konfiguracyjny wygląda na bardzo duży i skomplikowany, ale w rzeczywistości taki nie jest. Sam plik jest podzielony na sekcje. Za nasz przykład posłuży plik boneio-8x10A_v0_1.yaml

A więc zaczynajmy, oto cały plik konfiguracyjny:

substitutions:
  name: boneio-8-s-01
  friendly_name: 'BoneIO ESP 8x10A Switches'
  serial_prefix: 'espm' #Don't change it.

esphome:
  name: '${name}'
  friendly_name: '${friendly_name}'
  name_add_mac_suffix: true
  project:
    name: boneio.8_10-switches
    version: '0.1'

esp32:
  board: esp32dev
  framework:                                                                            
    type: esp-idf

ethernet:
  id: eth
  type: LAN8720
  mdc_pin: GPIO23
  mdio_pin: GPIO18
  clk:
    pin: GPIO0
    mode: CLK_EXT_IN
  phy_addr: 1
  power_pin: GPIO16

dashboard_import:
  package_import_url: github://boneIO-eu/esphome/boneio-8x10A_v0_1.yaml@latest
  import_full_config: true

packages:
  internals_packages:
    url: https://github.com/boneIO-eu/esphome
    ref: v1.7.1
    files:
      [
        'devices/buzzer.yaml',
        'devices/serial_no.yaml',
        'devices/dimmer_i2c.yaml',
        'devices_v0_7-v0_9/lm75b.yaml',
      ]

logger:
api:
  reboot_timeout: 0s
ota:
  - platform: esphome
  - platform: web_server

web_server:
  port: 80
  local: true

time:
  - platform: homeassistant
    timezone: Europe/Warsaw
    id: homeassistant_time

mcp23017:
  - id: 'mcp1'
    address: 0x20

# Individual outputs
switch:
  - platform: gpio
    name: 'OUT 1'
    id: out_01
    pin:
      mcp23xxx: mcp1
      number: 8
      mode:
        output: true
      inverted: false
  - platform: gpio
    name: 'OUT 2'
    id: out_02
    pin:
      mcp23xxx: mcp1
      number: 9
      mode:
        output: true
      inverted: false
  - platform: gpio
    name: 'OUT 3'
    id: out_03
    pin:
      mcp23xxx: mcp1
      number: 10
      mode:
        output: true
      inverted: false
  - platform: gpio
    name: 'OUT 4'
    id: out_04
    pin:
      mcp23xxx: mcp1
      number: 11
      mode:
        output: true
      inverted: false
  - platform: gpio
    name: 'OUT 5'
    id: out_05
    pin:
      mcp23xxx: mcp1
      number: 12
      mode:
        output: true
      inverted: false
  - platform: gpio
    name: 'OUT 6'
    id: out_06
    pin:
      mcp23xxx: mcp1
      number: 13
      mode:
        output: true
      inverted: false
  - platform: gpio
    name: 'OUT 7'
    id: out_07
    pin:
      mcp23xxx: mcp1
      number: 14
      mode:
        output: true
      inverted: false
  - platform: gpio
    name: 'OUT 8'
    id: out_08
    pin:
      mcp23xxx: mcp1
      number: 15
      mode:
        output: true
      inverted: false

binary_sensor:
  - platform: gpio
    name: 'IN 01'
    id: in_01
    pin:
      mcp23xxx: mcp1
      number: 0
      mode:
        input: true
      inverted: false
  - platform: gpio
    name: 'IN 02'
    id: in_02
    pin:
      mcp23xxx: mcp1
      number: 1
      mode:
        input: true
      inverted: false
  - platform: gpio
    name: 'IN 03'
    id: in_03
    pin:
      mcp23xxx: mcp1
      number: 2
      mode:
        input: true
      inverted: false
  - platform: gpio
    name: 'IN 04'
    id: in_04
    pin:
      mcp23xxx: mcp1
      number: 3
      mode:
        input: true
      inverted: false
  - platform: gpio
    name: 'IN 05'
    id: in_05
    pin:
      mcp23xxx: mcp1
      number: 4
      mode:
        input: true
      inverted: false
  - platform: gpio
    name: 'IN 06'
    id: in_06
    pin:
      mcp23xxx: mcp1
      number: 5
      mode:
        input: true
      inverted: false
  - platform: gpio
    name: 'IN 07'
    id: in_07
    pin:
      mcp23xxx: mcp1
      number: 6
      mode:
        input: true
      inverted: false
  - platform: gpio
    name: 'IN 08'
    id: in_08
    pin:
      mcp23xxx: mcp1
      number: 7
      mode:
        input: true
      inverted: false

substitutions

ssubstitutions:
  name: boneio-8-s-01
  friendly_name: 'BoneIO ESP 8x10A Switches'
  serial_prefix: 'espm' #Nie zmieniaj tego.

Ta część jest głównie odpowiedzialna za nazwę Twojego sterownika.
Powinieneś skupić się na friendly_name:. Wpisz tam nazwę swojego boneIO.
Sposób w jaki nazwiesz sterownik zależy tylko od Ciebie, może to być boneIO ESP, jeśli masz jeden sterownik, lub na przykład boneIO ESP Parter.

esphome

esphome:
  name: '${name}'
  friendly_name: '${friendly_name}'
  name_add_mac_suffix: true
  project:
    name: boneio.8_10-switches
    version: '0.1'

Tutaj znajdują się definicje Twojego sterownika. Nie powinieneś zmieniać name: ani friendly_name.
Linia name_add_mac_suffix: doda do nazwy sterownika jego adres MAC, co jest przydatne do identyfikacji urządzenia.
project: to miejsce, w którym definiujesz typ i wersję swojego sterownika.

esp32

esp32:
  board: esp32dev
  framework:                                                                            
    type: esp-idf

Definicja mikrokontrolera ESP32.

Ethernet

ethernet:
  id: eth
  type: LAN8720
  mdc_pin: GPIO23
  mdio_pin: GPIO18
  clk:
    pin: GPIO0
    mode: CLK_EXT_IN
  phy_addr: 1
  power_pin: GPIO16

Część odpowiedzialna za opis portu Ethernet Twojego sterownika - nie powinieneś niczego tutaj zmieniać.

dashboard_import

dashboard_import:
  package_import_url: github://boneIO-eu/esphome/boneio-8x10A_v0_1.yaml@latest
  import_full_config: true

To jest miejsce, w którym zdefiniowany jest adres do naszego repozytorium na GitHub. Stąd pobierana jest konfiguracja i wszystkie dodatkowe pakiety. Niczego tutaj nie zmieniaj.

packages

packages:
  internals_packages:
    url: https://github.com/boneIO-eu/esphome
    ref: v1.7.1
    files:
      [
        'devices/buzzer.yaml',
        'devices/serial_no.yaml',
        'devices/dimmer_i2c.yaml',
        'devices_v0_7-v0_9/lm75b.yaml',
      ]

Tutaj znajdują się definicje wszystkich pakietów używanych przez boneIO, wraz z adresem do naszego GitHuba.

logger

logger:

W przypadku rozwiązywania problemów możesz zwiększyć poziom logowania do INFO lub WARNING lub DEBUG. W niektórych przypadkach może to być bardzo przydatne.

api

api:
  reboot_timeout: 0s

Użyj tego ustawienia, aby określić, jak długo sterownik powinien czekać przed ponownym uruchomieniem po utracie połączenia z Home Assistant. Wprowadź wartość odpowiednią dla Twojej konfiguracji.

W przypadku użytkowników WiFi odradzamy ustawianie wartości zero. Dla połączeń przewodowych (LAN) wyłączenie restartu (ustawienie go na 0) zazwyczaj nie wpływa na stabilność.

ota

ota:
  - platform: esphome
  - platform: web_server

Część odpowiedzialna za aktualizacje Over The Air.

web_server

web_server:
  port: 80
  local: true

Część odpowiedzialna za włączenie serwera www sterownika.

time

time:
  - platform: homeassistant
    timezone: Europe/Warsaw
    id: homeassistant_time

Sekcja odpowiedzialna za wybór strefy czasowej Twojego sterownika, dostosuj ją do swojej lokalizacji.

Sekcja Modbus

######################
### SEKCJA MODBUS  ###
######################
# ODKOMENTUJ PONIŻEJ, ABY UŻYĆ MODBUS
# uart:
#   id: uart_pin14_15
#   rx_pin: GPIO14
#   tx_pin: GPIO15
#   baud_rate: 9600
#   stop_bits: 1
# modbus:
#   send_wait_time: 200ms
#   uart_id: uart_pin14_15
#   id: boneio_modbus

Sekcja odpowiedzialna za Modbus. Jeśli planujesz jej używać, powinieneś najpierw ją odkomentować.

######################
### MODBUS SECTION ###
######################
# UNCOMMENT BELOW TO USE MODBUS
 uart:
   id: uart_pin14_15
   rx_pin: GPIO14
   tx_pin: GPIO15
   baud_rate: 9600
   stop_bits: 1
 modbus:
   send_wait_time: 200ms
   uart_id: uart_pin14_15
   id: boneio_modbus

Następnie zapoznaj się z naszym poradnikiem dotyczącym Modbus.