ESPHome Instalacja Podstawowy Konfiguracja

Spis Treści

Świetne i co najważniejsze, tanie narzędzie do budowy własnych urządzeń IoT. Bez problemu zbudujemy własny multisensor, czyli urządzenie z wieloma czujnikami-komponentami. Co najważniejsze bez problemu dodamy go do naszego Home Assistant. ESPHome wymaga od nas trochę wiedzy z elektroniki, sprawności manualnej a przede wszystkim chęci. Jak to mówią, dla chcącego nic trudnego. Za moment dowiesz się jak zainstalować dodatek ESPHome oraz zaprogramować Twój własny czujnik.

Do zabawy w elektronika i programistę będziemy potrzebować jedną z płytek ESP. Mogą to być płytki: Wemos D1 Mini, ESP8266, ESP32. Wszystko zależy od potrzeb, ale na sam początek wystarczy, że zaopatrzysz się w najmniejszą płytkę Wemos D1 Mini.

ESPHome instalacja dodatku.

W pierwszej kolejności musimy zainstalować sam dodatek ESPHome. Dodatek dostępny jest w Ustawienia – Dodatki.

Następnie przechodzimy do Sklepu z dodatkami.

Kolejnym krokiem jest wyszukanie ESPHome na liście dodatków.

Teraz pozostało zainstalować dodatek. Kliknij Zainstaluj.

Po instalacji czas na uruchomienie ESPHome. Kliknij Uruchom, opcjonalnie dla wygody można zaznaczyć opcję „Pokaż na pasku bocznym„(2).

 

 

Tworzenie kodu.

Gdy dodatek już wystartuje, możemy przejść do dodania naszego pierwszego urządzenia opartego na ESPHome. W tym kroku warto już podłączyć płytkę opartą na ESP. W moim przypadku będzie to Wemos D1 Mini. Podłączamy płytkę za pomocą przewodu USB do naszego serwera z zainstalowanym Home Assistant. Ważne aby przewód USB miał transmisje danych, często bywa tak (w tych tanich kablach) że dany przewód posiada tylko obsadę zasilania. Do prawidłowego działania zaleca się korzystanie z przeglądarki Chrome lub Edge.  Przechodzimy do naszego ESPHome wybierając go z panelu bocznego w naszym Home Assistant. Klikamy na New Device.
Ta metoda wgrywania zadziała Wam tylko w przypadku czystej instalacji Home Assistant. Jeśli macie HA postawiony w wirtualnej maszynie (Proxmox, Synolog Virtul Machine itd.) ta metoda może Wam nie zadziałać. Będziecie musieli wybrać inną opcję którą opiszę poniżej.

Po kliknięciu w New Device w okienku klikamy na Continue.
W kolejnym okienku podajemy nazwę naszego urządzenia (wymyśloną przez nas), oraz dane naszej sieci WiFi. Dane WiFi podajemy tylko za pierwszym razem, kolejne dodawane urządzenia oparte na ESP już tego kroku nie będą wymagały.
Następny krok to wybór naszej płytki. W moim przypadku z listy wybrałem Wemos D1 Mini, Wemos D1.
W następnym kroku klikamy na Skip.
Teraz przechodzimy do edycji naszego kodu. W tym celu kliknij na Edytuj.
Jeśli korzystasz tak z płytki Wemos D1 Mini to sprawa jest prosta, kopiujesz cały poniższy kod i wklejasz go do swojego ESP. Natomiast gdy używasz innej płytki skopiuj poniższy kod od linii (27) substitutions: w dół i wklej go poniżej istniejącego kodu Twojej płytki ESP. Po wklejeniu kodu zapisz swoją konfigurację.

esphome:
  name: "espd1-mini-1"

esp8266:
  board: d1_mini

# Enable logging
logger:

# Enable Home Assistant API
api:

ota:


wifi:
  ssid: !secret wifi_ssid
  password: !secret wifi_password

  # Enable fallback hotspot (captive portal) in case wifi connection fails
  ap:
    ssid: "Esphome-Web-Dde3C9"
    password: !secret wifi_password

captive_portal:

substitutions:
  device_name: "Wemos D1 mini" #Nazwa Twojego urządzenia wyświetlana w Home Assistant
  
# Pobieranie czasu z HA
time:
  - platform: homeassistant
    id: homeassistant_time

# Dioda LED Informacyjna o stanie połącznia.
status_led:
  pin: 
    number: GPIO2 #PIN D4
    inverted: yes # "yes" - Dioda mruga gdy nie można nawiązać połączenie.
                  # "no"  - Dioda świeci gdy połączenie jest nawiązane.

# Przyscisk Restartu Urządzenia  
switch:
  - platform: restart
    name: "${device_name} Reset"

binary_sensor:
# Status Urządzenia
  - platform: status
    name: "${device_name} Status"

sensor:
# Poziom Sygnału WiFi
  - platform: wifi_signal
    name: "${device_name} WiFi Sygnał"
    update_interval: 160s

# Czas Pracy Urządzenia
  - platform: uptime
    name: "${device_name} Czas Pracy"
    update_interval: 300s
    device_class: "timestamp"
    entity_category: "diagnostic"
    unit_of_measurement: ""
    filters:
      - lambda: |-
          auto time = id(homeassistant_time).now();
          if (time.is_valid()) {
            return time.timestamp - x;
          } else {
            return {};
          }                 

text_sensor:
  - platform: wifi_info
    ip_address:
      name: "${device_name} IP Adres"
    ssid:
      name: "${device_name} Połączony z siecią"
    mac_address:
      name: "${device_name} Mac Adres WiFi"         

 

Wgrywanie kodu do płytki.

Przechodzimy do wgrywania stworzonego przez nas oprogramowania. W tym celu kliknij na trzy kropeczki i przejdź do Install.
Tym razem musimy wybrać metodę wgrywania oprogramowania do naszego ESP. Pokazuje tu najprostszą metodę, która nie wymaga od Was instalacji nawet sterowników. Ale wymaga czystej instalacji na naszym serwerze Home Assistant. W innym przypadku wymierz metodę (2) Plug in this computer, ta metoda może od Was wymagać instalacji sterowników. Kreator wgrywania poprowadzi Was krok po kroku.
Jak już mamy podpiętą płytkę pod serwer HA może rozpocząć wgrywanie naszego programu. Kliknij na (1) Plug into the computer running ESPHome Dashboard.
Wybieramy port USB pod który jest podpięta płytka ESP.
Wgrywanie oprogramowanie powinno się rozpocząć, jeśli wszystko poszło zgodnie z planem.
Czekamy aż oprogramowanie się skompiluje i wgra. Jeśli wszystko się wgra prawidłowo, zobaczycie coś mniej więcej jak na screenie poniżej. Klikamy Stop, i przechodzimy do powiadomień (2).
Powinna się pojawić informacja że nasz Home Assistant wykrył nowe urządzenie. Sprawdzamy to (1).
Zatwierdzamy nowe urządzenie.
Oraz możemy dodać obszar gdzie będzie znajdować się dane urządzenie.

Gratuluję! Jeśli doszedłeś do tego etapu to znak że Ci się udało. Jest podstawowa konfiguracja oraz kod który możesz wykorzystać w każdym Twoim projekcie. Są to podstawowe dane diagnostyczne.
Należy też pamiętać że już od teraz nie musisz wgrywać oprogramowania przez przewód USB, wystarczy że urządzenie jest podłączone do Twojej sieci WiFi.

W niedalekiej przyszłości pojawi się kilka ciekawych projektów z wykorzystaniem ESPHome.

Tematy które mogą Cię zainteresować:

Subscribe
Powiadom o
guest
6 komentarzy
najstarszy
najnowszy oceniany
Inline Feedbacks
Zobacz wszystkie komentarze
pawel
pawel
2 lat temu

banga

Last edited 2 lat temu by pawel
Łukasz
Łukasz
2 lat temu

Czy jest gdzieś opisany drugi sposób?

Łukasz
Łukasz
2 lat temu
Reply to  smartinhome.pl

Niestety dostaje taki komunikat:

Connecting………………………………..
ERROR Running command failed: Failed to connect to ESP8266: No serial data received.
For troubleshooting steps visit: https://docs.espressif.com/projects/esptool/en/latest/troubleshooting.html
ERROR Please try running esptool.py –before default_reset –after hard_reset –baud 460800 –port /dev/ttyACM0 –chip esp8266 write_flash -z –flash_size detect 0x0 /data/build/test02/.pioenvs/test02/firmware.bin locally.
INFO Upload with baud rate 460800 failed. Trying again with baud rate 115200.
esptool.py v4.6.2
Serial port /dev/ttyACM0
Connecting………………………………..
ERROR Running command failed: Failed to connect to ESP8266: No serial data received.
For troubleshooting steps visit: https://docs.espressif.com/projects/esptool/en/latest/troubleshooting.html
ERROR Please try running esptool.py –before default_reset –after hard_reset –baud 115200 –port /dev/ttyACM0 –chip esp8266 write_flash -z –flash_size detect 0x0 /data/build/test02/.pioenvs/test02/firmware.bin locally.

obraz_2023-12-24_121343866
Łukasz
Łukasz
1 rok temu
Reply to  smartinhome.pl

Mam identyczny problem, poradziłeś sobie? Identyczny komunikat

Najnowsze Wpisy

Reklama

Najnowsze Recenzje