Jak przesłać dane między dwoma esp

jak wysłać np. temp z jednego esphome na drugi przy HA offline.
mam web serwer na obydwu, podgląd przez przeglądarkę.
Jak je skomunikować bez udziału HA i wysłać z jednego na np. oled drugiego?
Jeszcze nie ogarniam tych metod GET, POST…
Log jednego na oled drugiego? UDP?
Od tygodnia staram się coś wyrzeźbić.
Przesiadłem się z espeasy tam to akurat było proste…
Pozatym przekonałem się do esphome.

Możesz wykorzystać Tasmota i KNX:

wolałbym pogodzić dwa esphome bo dobrze grają z HA
inaczej wróciłbym na jednym do espeasy tam jest send to http… send to udp…
chodzi mi o rozwiązanie w sieci lokalnej gdy Assistant jest offline.

Tasmota również świetnie działa z HA i równie dobrze bez niego.

Dziękuję za odpowiedź angler.
Jednak znając espeasy…
poznaję esphome…
teraz Tasmota,wolałbym to mieć jednak bardziej ujednolicone.
tymbardziej że przypuszczam chodzi o 2…3… linijki kodu w esphome.
Dziwi mnie że mimo przeszukania anglojęzycznych stron jeszcze nie wybrnąłem z tego .
Prosta recepta jak przesłać “value” z jednego esphome do drugiego daje wiele możliwości…
termometr wifii bez HA…
bez stałego ip na kilkaset metrów modyfikując antenę esp…
nie ma prądu home assistant nie działa a my mamy podstawowe odczyty bo esp w odpowiedniej konfiguracji pochodzi długo na “akumulatorku lion”

To może spróbuję odpowiedzieć dość dobitnie (w kontekście ESPHome) na tytułowe pytanie:“Jak przesłać dane między dwoma esp?”
Jeśli nie zamierzasz korzystać z architektury klient-serwer, gdzie urządzenia ESPxx są klientami, a serwerem jest albo HA (z wykorzystaniem API), albo broker MQTT, to z całą pewnością nie powinieneś do tego próbować użyć generatora firmware ESPHome do tego celu.

ESPHome nie jest przewidziane do pracy w architekturze rozproszonej, bo od samego początku ten projekt powstawał jako uzupełnienie dla Home Assistant’a (więc to nie HA jest uzupełnieniem dla ESPHome).

Teoretycznie w ESPHome możesz sobie sam napisać obsługę czegokolwiek
https://esphome.io/custom/custom_component.html
ale gwarantuję, że to nie będą 2 linijki kodu, o czym pewnie już wiesz, jeśli tylko zrozumiałeś jak działa ESPHome - kluczowym jego składnikiem jest interpreter YAML sterujący generatorem prawdziwego kodu C++ (który ostatecznie jest kompilowany i linkowany do ELF stanowiącego użytkową część firmware dla ESPxx), więc przykładowa konfiguracja ultra-prostego wyświetlacza 7-segmentowego, gdzie YAML to 40 linijek netto (bez komentarzy) generuje 10 kilobajtów kodu C++.


A w kwestii spodziewanej utraty zasilania - HA powinien pracować podpięty do UPSa (wraz z integracją która “ładnie” zamknie system przy krytycznym stanie baterii akumulatorów), to zdecydowanie pomaga chronić bazę danych przed jej krytycznym uszkodzeniem.

Przecież w esphome mamy web serwer.
jest funkcja http_request.get:…
chce tylko pobrać określone dane ze strony
w tym przypadku akurat drugiego esp.
w yaml mam - http_request.get:
url: http://192.168.43.204/sensor/temp1/state
terminalu otrzymuję [http_request:089]: HTTP Request completed; URL: http://192.168.43.204/sensor/temp1/state; Code: 200
wyświetlacz też jest obsługiwany ,na chwilę obecną mam na nim datę i czas nawet gdy rpi jest wyłączone

Edit:
mam takie coś…

 - id: page4
        lambda: |-
         it.printf(0, 0, id(font3),"STATUS:");
         it.printf(0, 15, id(font3),"HOMEASSISTANT");
         it.printf(0, 30, id(font1),"%s",id(HOMEASSISTANT).state ? "ONLINE" : "OFFLINE");

i na wyświetlaczu info czy HA jest online czy offline.
Pytanie ja wysłać log z esp na wyświetlacz lub dane z czujnika ze strony web serwera

@endrju76 edytuj Swoje posty

Moim zdaniem sporo stracisz, jeśli nie poznasz Tasmota. Projekt jest o wiele lepiej dokumentowany i bliższy ESPEasy.

BDW
Obecnie trwają prace nad Tasmota Mesh (TasMesh). Węzły parowane podobnie jak Zigbee. Komunikacja w oparciu o ESP-NOW z centralną bramką (np ESP32 z Ethernet). Wszystko w oparciu o MQTT.

1 polubienie

Angler chyba mnie przekonałeś,ale znalazłem esp_now dla home esp…

jednak nie wiem gdzie to skopiować
dodać include ?
stworzyć katalog w esphome …“components” ?
moja ścieżka wygląda tak /config/esphome/.esphome
więc niewiem czy w pierszszym esp czy w drugim.
a może na nowo całe esp z repozytorium zainstalować?

jest też fajny opis

1 polubienie

Tworzysz podkatalog o nazwie custom_components (jeśli nie istnieje) wewnątrz twojego katalogu esphome i tam wpierdzielasz rozpakowaną zawartość archiwum wifii_now.for_custom_components_alpha.zip (de facto są to podkatalogi zawierające sporo plików z kodem źródłowym).

twoja ścieżka to /config/esphome/custom_components (lub \config\esphome\custom_components zależy jaki system)

Jeśli przeinstalujesz/zupdateujesz ESPHome to nie powinno to mieć wpływu na te dodatkowe katalogi (no chyba, że usuniesz całkowicie instalację).

Jak widzisz twoje przysłowiowe 2 linijki kosztowały kogoś (zapewne autorami było wiele osób) naklepanie koło 80kB realnego kodu.


edit: Jeszcze 3 słowa o katalogach czy plikach z kropką na początku nazwy - to są pliki ukryte (w/g unixowej konwencji), jeśli je widzisz np. w udziale samby spod windowsa (z włączoną widzialnością plików ukrytych) to powinny być też stosownie “wyszarzone” (czy raczej “wybledzone” :stuck_out_tongue: ) - to jest taki znak by w nich nie grzebać za bardzo (często zawierają pliki generowane automatycznie, cache itp. ) oczywiście ciekawość zawsze jest wskazana, więc nie będę odradzał zaglądania by np. poczytać ich zawartość, ale przeważnie użytkownik nie powinien ich modyfikować.


PS to jest wersja alfa, więc psów nie wieszaj na ESPHome, gdy coś nie będzie działać idealnie.


Nie żebym się czepiał, ale nie “home esp” tylko “ESPHome”
od biedy można użyć ich nazw używanych technicznie (czyli np. małymi literami), ale nie tak poprzekręcanych jak nam serwujesz - nazwy projektów muszą być jednoznaczne, by się dało z kimś normalnie porozumieć - jeśli pójdziesz do sklepu i poprosisz o pola-koka to jak myślisz co sprzedadzą - coca-colę, pepsi czy polokoktę (a może coś z grubsza innego :stuck_out_tongue_winking_eye: )?

1 polubienie

wielkie dzięki Szopen za info o katalogu z “kropką”.
z polo-koką to nie dokładnie tak bo ty przestawiłeś literki z ja wyrazy powinno być cola-coca,ale faktycznie mój błąd.
po wgraniu do /config/esphome/custom_components nie woła już o brak “wifi_now”
tylko masa błędów z sta_wifi i inne .Pewnie brak jakiś include w pliku config.
na githubie piszą tylko żeby tylko skopiować katalog i tyle, jednak to nie wystarczy.
Wspominasz że napisali 80kb kodu.Tak ale to jest cała wymiana danych serwer klient.
Ja pytałem jak odczytać dane z websewera który już jest w esphome .
Po coś jest http_request z wieloma opcjami…
jakiś payload w Lambda?