Integracja z Midea AC

Myślę, że ten obrazek będzie wytłumaczeniem dlaczego raz działa i nie uszkadza się przy logice 5V, a raz nie działa. Wszystko zależy… i każdy przypadek trzeba rozpatrzyć indywidualnie.


Przy TTL pasuje 1:1 , dla CMOS już nie bardzo. Za pomocą diod można co prawda te okna do siebie dopasować :wink:

Ad 1. nie potrzeba, chyba, że mostek, który używasz nie daje rady, baterie raczej wykluczone (chyba nikt tak nie próbował, ale 1,5V ogniwa alkaliczne mają tylko na papierze, tak naprawdę to nie ESP potrzebuje stabilnego zasilania tylko pamięć flash)

Ad 2. Tutorial: zewrzyj GPIO0 do masy, podłącz zasilanie do ESP, flaszuj :stuck_out_tongue: po robocie odepnij GPIO0 zrestartuj przez odpięcie i ponowne podłączenie zasilania.

Ad 3. nie wiem o jakim skrypcie mówisz (może masz na myśli YAML dla ESPHome? ale jeśli tak, to oczywiście musi być kompletny, to nie jest skrypt, ale to już inna sprawa). Poczytaj o ESPHome - metod jest naprawdę dużo (łącznie z użyciem prekompilowanego obrazu i adopcją do dashboardu ESPHome co dla mnie jest wywróceniem wszystkiego co znalem wcześniej “do góry nogami”, ale to też działa i nie trezba zaczynać zabawy od poprawnego YAMLa, tylko go się modyfikuje mając już uruchomione firmware ESPHome).

Ad 4. To zależy (pewnie wystarczy poczytać ten wątek od początku, nie używam tego rozwiązania, więc nie znam go na pamięć).

Przecież możesz. :stuck_out_tongue: lutownica do ręki i jedziesz (tzn. to w drugim kroku, najpierw sobie sflaszuj płytkę, D1 jest jeszcze łatwiej programować, bo mostek UART jest w nim podpięty do układu automatycznego resetu i programowania - nie mam czasu teraz opisywać jak to działa, ale oprogramowanie do flashowania zwykle wie co ma zrobić by wykorzystać ten konstrukcyjny bajer, który sam “wciska” przyciski RST i BOOT w odpowiedniej kolejności, w D1 BOOT nawet nie jest zamontowany, jakkolwiek zawsze GPIO0 do masy zadziała - zgodnie z procedurą w “nano-tutorialu” powyżej).

Tu masz opis jak przerobić płytkę D1 (ktoś to robił w innym celu, ale właśnie by móc skorzystać bezproblemowo z UARTa w D1 do innych celów niż ograniczył to konstruktor)

Jeżeli dobrze zrozumiałem tak mam to podłączyć? 5V do 3V?

Flashować Wemosa właśnie potrafię przy użyciu ESPhome. Więc jest to dla mnie łatwiejsza droga.

Tak BTW, zgodnie z tą przeróbką WEMOSA tutaj jest rezystor przesunięty dzięki czemu można to też klasycznie użytkować. Jednak jak bym po chłopsku po prostu usunął ten rezystor. Przecież i tak nie będę używał go do czegokolwiek innego. Ogólnie Wemos miał być tylko na czujniki temp więc i tak bym był bardzo pozytywnie zaskoczony że jeszcze to mi jednocześnie ogarnie.

ESP 2
Chociaż wydaje mi się że jescze coś takiego potrzebuje aby to mogło zadziałać

A gdzie to wyczytałeś?
Masz płytkę ze stabilizatorem, ale chesz to robić wbrew logice i intuicji?

Może jest potrzebny jakiś bardziej radykalny przykład - załóżmy, że masz żarówkę 12V to gdzie ją podepniesz?
Do zasilacza 12V czy do gniazda 230V?


W drugiej kwestii mozna użyć takiego konwerterq poziomów, ale trzeba go zqsilac z obu stron. Z prwktyki - dzielnik z 2 rezystorow wystarczy do RX w ESP, a TX podpinasz bezposrednio, konwerter jeskonieczny tylkw wypadku, gdy się kiepsko modliłeś i nie działa (no OK stosujac mniej voodoo po prostu popatrz na ten rysunek, który wrzucił @RobinI30).

“ESP8266 jest przeznaczony do pracy w logice 3,3V i połączenie bez odpowiedniej konwersji z logiką 5V (TTL) może doprowadzić po krótszym lub dłuższym czasie do uszkodzenia wejściowego GPIO w ESP.”

Ten wers mnie trochę na tą myśl naprowadził. Nie byłem pewien dlatego zapytałem. Zapytałem bo było to właśnie sprzeczne z logiką.

No ale konwersję poziomów logicznych robisz na wejściach / wyjściach (GPIO), a nie przez zasilanie układu dedykowanego do zasilania napięciem 3,3V przy uzyciu dowolnie innego napiecia. Swoją drogą o konwersji pisalem (rezystory tam gdzie konieczne, a modlitwa tam gdzie nie zaszkodzi).

Mozesz użyć tego konwertera (powinien zadziałać o ile wiesz co jeszcze w nim masz podłączyć i gdzie, bo na rysunku te kluczowe połączenia są pominięte).

PS Zupełnie nie ogarniam twojego toku myslenia skoro wysnuleś wnioski sprzeczne z tym co napisalem…

Wygląda na to, że samo wrzucenie rysunku niewiele wnosi i wymaga komentarza.
Nie ma kanonicznego obowiązku stosowania konwertera jeśli wie co się robi.
Logika 5V to nie tylko TTL, gdzie jak widać jest to błędnie utożsamiane.
Z rysunku można wyczytać, że dla TTL na wyjściu w stanie H może być napięcie 2,7V<>Uzas.
W większości przypadków jest to ok 3,6V - stąd bezpośrednie połączenie nie czyni szkody ESP.
O konieczności stosowania konwerter (dzielnika) może przesądzić zwykły pomiar napięcia na wyjściu w stanie H.
Inaczej ma się sprawa z 5V CMOS. Patrząc na rysunek widać (lub nie), że wystarczy środkowy wykres przesunąć do góry aby środkowy i prawy zaczęły do siebie pasować.
W przypadku układów ESP zasilanych z 5V (posiadających stabilizator do 3,3V) wystarczy przesunąć potencjał GND (CMOS3,3V) wglądem GND (CMOS 5V) poprzez spięcie tych dwóch “mas” przez diodę (diody) z katodą podłączoną do GND 5V. Taka próba nic nie kosztuje bo ostatecznie zawsze pozostaje konwerter.
Trochę już różnych układów zrobiłem i jeszcze nigdy nie stosowałem konwertera :slight_smile:

1 polubienie

Dzisiaj przyjechały mi graty z Ali będę walczył z ESP-01. Na Wemosa nie miałem czasu, jednak znalazłem potwierdzenie tego że to wykonalne (screen z forum). Więc plan awaryjny jest.

Jeżeli chodzi o flashowanie ESP-01 to mostek CP2102 jest ok? W necie tak raczej wszyscy z tego co widzę robią to za pomocą CH340G.

Nie ma znaczenia, mostek to mostek (byleby był w logice 3,3V a ten jest), jeśli masz sterowniki to działa.

“Wszyscy” używają CH340, bo on już jest wlutowany na większości płytek prototypowych starszej generacji. (tak swoją drogą to stanowi to problem gdybyś chciał używać jakiejkolwiek płytki ESP82xx z wbyudowanym mostkiem i równocześnie chciał wykorzystać jej hardware’owy UART do czegokolwiek - znacznie łatwiej jest akurat wyjątkowo na ESP-01/ESP-01S)

Hej,

Mam problem z połączeniem WLAN do ESP-01. Na WEMOSIE uruchomiłem w tym samym czasie czujniki temperatury sytuacja identyczna. Z tym że był moment że komunikacja z czujnikami temperatury nastąpiła ale po zwykłym restarcie HA znów to samo. Obstawiam że mam skopane coś z ustawieniami. Bynajmniej wcześniej przy tej samej konfiguracji sensorów temperatury nie miałem tego problemu.

Kiedy komunikacja z sensorami temperatury nastąpiła, podejrzałem też logi klimy i wtedy był ten komunikat “no route”. Chciałem przemienić kabelki TX na RX, ale najpierw zresetowałem HA i nie mogłem już sprawdzić przy innej konfiguracji.

Dodam że urządzania mają pracować przez reapeter WIFI. Wcześniej WEMOS tak działał bez problemów.

image

esphome:
  name: klimatyzacja

esp8266:
  board: esp01_1m


# Enable Home Assistant API
api:
  password: ""

ota:
  password: ""

wifi:
  networks:
  - ssid: HUAWEI-B315-4352
    password: DHQF0EFYFGJ
  - ssid: HUAWEI-B315-4352_EXT
    password: DHQF0EFYFGJ

  # Enable fallback hotspot (captive portal) in case wifi connection fails
  ap:
    ssid: "KlimatyzacjaHotspot"
    password: "haslodohotspot"

captive_portal:


# Disable logging over UART (required)
logger:
  baud_rate: 0

# Enable Web server.
web_server:
  port: 80

# Sync time with Home Assistant.
time:
  - platform: homeassistant
    id: homeassistant_time

# Text sensors with general information.
text_sensor:
  # Expose ESPHome version as sensor.
  - platform: version
    name: klimatyzacja ESPHome Version
  # Expose WiFi information as sensors.
  - platform: wifi_info
    ip_address:
      name: klimatyzacja IP
    ssid:
      name: klimatyzacja SSID
    bssid:
      name: klimatyzacja BSSID

# Sensors with general information.
sensor:
  # Uptime sensor.
  - platform: uptime
    name: klimatyzacja Uptime

  # WiFi Signal sensor.
  - platform: wifi_signal
    name: klimatyzacja WiFi Signal
    update_interval: 60s

# UART settings for Midea dongle (required)
uart:
  tx_pin: 1   # hardware dependant
  rx_pin: 3   # hardware dependant
  baud_rate: 9600

# Main settings
climate:
  - platform: midea
    name: "Midea AC"    # Use a unique name.
    period:  2s                 # Optional
    timeout: 4s                # Optional
    num_attempts: 3       # Optional
    autoconf: true            # Autoconfigure most options.
    beeper: true              # Beep on commands.
    visual:             # Optional. Example of visual settings override.
      min_temperature: 17 °C    # min: 17
      max_temperature: 30 °C    # max: 30
      temperature_step: 1 °C  # min: 0.5

# All capabilities in the section below are detected when autoconf = true:
    supported_modes:    
      - FAN_ONLY
      - HEAT_COOL
      - COOL
      - HEAT
      - DRY
    custom_fan_modes:
      - SILENT
      - TURBO
    supported_presets:  # All capabilities in this section detected by autoconf.
      - ECO
      - BOOST
      - SLEEP
    custom_presets:     # All capabilities in this section detected by autoconf.
      - FREEZE_PROTECTION
    supported_swing_modes:
      - VERTICAL
      - HORIZONTAL
      - BOTH
    #outdoor_temperature:  # Optional. Create outdoor unit temperature sensor (may display incorrect values after long inactivity).
    #  name: "Temp"
    #power_usage:          # Optional. Create power usage sensor (only for devices that support this feature).
    #  name: "Power"
    #humidity_setpoint:    # Optional. Create indoor humidity sensor.
    #  name: "Humidity"

To nie jest problem bezpośrednio związany z urządzeniami ESPHome (więc zamiana TX z RX nie ma nic wspólnego ze wspomnianym problemem).

Tabela routingu wygląda na taką wewnątrz kontenera, ale ruch z kontenera wychodzi do hosta 172.20.32.1, a co dalej nie wiadomo. Musisz zweryfikować konfigurację swojej sieci.

Jak twardo zresetuje router to potrafi się połączyć z ESP klimy a po chwili dziwne rzeczy się dzieją. Router się resetuje albo działa ale traci jak by część funkcjonalności, tej odpowiadającej za komunikację z ESP. Nie mogłem też swojego telefonu używać jako pilota.

Po resecie routera wszystko wraca do normy, chyba że włączę ESP klimy. Czujniki temperatury osobno działają w miarę stabilnie.

Jedynie co też jest dziwne. W ESPhome tylko przez chwilę urządzenia są “online”, a tak to cały czas “offline” albo się zawiesza router.

Ogólnie to wszystko zaczęło się podczas flashowania ESP-01. Tak jak by ESP-01 przeciążał router??

Może stałe IP dla HA i ESP spróbować zrobić? Chociaż wątpię że o to chodzi. Mam raptem 8 urządzeń podpiętych do routera.

Może router padł?

Za dużo niewiadomych, za mało wiadomych…

  1. Jaki router?
  2. czy na fabrycznym sofcie?
  3. czy alternatywnym?
  4. jeśli 1. to czy to najnowszy soft, jeśli 2. to czy stabilny?
    edit, dobra, po SSID widzę że to Huawei LTE… a masz jakiś router, który jest bardziej elastyczny w konfiguracji i mógłbyś ma nim oprzeć LAN i WiFi?
    Właściwie z jakiej paki masz 2 SSID skoro ten sprzęt ma jedno radio 2,4GHz?
  5. ile masz sprzętu WIFI w tej sieci?
  6. ile z tego to ESP8266?
  7. a ile na ESPHome?
  8. czy jak dorzucasz kolejne moduły na ESPHome do sieci to masz podobne objawy?
  9. czy moduł nie podpięty do klimy powoduje te same problemy (poza oczywistym faktem, że integracja nie zadziała)?
  10. co to znaczy, że:

tej wstawki nie rozumiem (nie mam takiej klimy, ale jeśli wywalasz oryginalny moduł, a wstawiasz własny DIY, to chyba oczywiste?)

To się zdarza, ale nie ma wpływu na działanie - GUI (IDE) ESPHome czasem nie odświeża poprawnie urządzeń online.

próbowałeś pobrać logi z ESP po WIFI (z IDE ESPHome), to zwykle ożywia niby-martwa komunikację

A propos logów, jeśli używasz UARTa w ESP to oczywiście w YAML wyłączyłeś logger po UART? (prędkość na zero 0) - tak jest w YAMLu post wyżej (ale czy nadal tak masz?)

  1. HUAWEI B315

  2. Fabryczny nic z tym nie robiłem

  3. SOFT aktualny. Poszukam chyba mam jeszcze drugi router. Są dwa SSID ponieważ klima docelowo jest innym budynku i korzystam z reapetera wifi. Jednak wcześniej czujniki temp działały przez reapeter bez problemu.

  4. 8 szt

  5. ESP 8266 1 szt. (5 sensorów) ESP-01 1 szt. Tuya lokalnie 1 szt.

  6. 2 szt.

  7. Jak ESP-01 nie jest podłączone to mogę połączyć się z ESP 8266 w sposób stabilny. Objawy braku stabilności są tylko od momentu flashowania ESP-01.

  8. Masz na myśli że tylko jak ma zasilanie? Raczej tak. Ogólnie to jak podloczone esp z mostkiem uart podłączałem do terminala to router padał. Dopiero udało mi się to zrobić jak najpierw wpielem mostek a dopiero później podpisałem zasilanie z niego do ESP.

  9. Router też potrafi zrobić taki crash tylko częściowy. Wifi rozdaje dalej urządzeniom np TV działa komputer też. Jednak komunikacja z sensorami się zawiesza, (ESP8266) tak samo nie mogę przy pomocy telefonu sterować TV. Pomaga na to tylko twardy reset routera i nie podłączanie ESP-01.

  10. Z logami cały czas próbowałem. Logi stabilnie działają w sensorach temp. Natomiast jak ten ESP-01 odpalam i sprawdzam logi to co chwila inny error ale raz zanim router padł to pokazał że łączność nawiązana i chyba wysłał pierwszą paczkę danych.

  11. Yaml jest taki jak podałem nic nie zmieniałem…

  12. Sam doszedłem do kilku teorii a) może dalej esp jest w trybie Boot. (zrobię flash ponownie i prześlę screeny. b) router uszkodzony / albo za słaby na tego typu operacje. c) niestabilne łączę

Edit:



Podłączyłem teraz inna klimę też działa w na tym samym module wifi i takie mam logi. Tutaj połączył się bezpośrednio z wifi routera. Połączenie zerwało, siła sygnału słaba. Co ciekawe jak dałem repeter obok to nie połączył się z nim tylko z routerem. Spróbuję usunąć jeden adres SSID

Ad 1. zauważyłem, ale z racji zepsutej klawiatury w laptopie szkoda mi wszystkiego co napisałem (żart, po prostu przerobienie już napisanego tekstu jest upierdliwe w tych warunkach bardziej niż pisanie nowego).

Ad 2. bez dużego znaczenia (wersje brandowane dla niektórych operatorów są wybitnie okrojone, ale nie będziemy walczyć z tym, bo to nie jest łatwe, dużo prościej i bezpieczniej wyłączyć w nim WiFi i podpiąć do niego inny router, który jest elastyczniejszy w konfiguracji)

Ad 3. Kwestie softu Huawei’a pomijamy, bo tu w grę wchodzi brandowanie (i w ogóle jest gorzej niż można sobie wyobrazić).
Natomiast inny router jest jak najbardziej do rozważenia (szczególnie jeśli daje się konfigurować i jest współcześniejszy).

Ad 4-6 nic nie dało to nie są ilości, które mogą być znaczące nawet dla najbardziej paździerzowego routera, w dodatku raczej wykluczają niekompatybilność chipsetu WiFi routera akurat z ESP

Ad 7-9. ESP-01 to jest “w czystej postaci ESP8266”, więc się chyba nie do końca rozumiemy… masz inne luźne moduły na ESP8266? mógłbyś je przeflaszować podobnym wsadem (nie musi mieć integracji UART) i zastąpić ten egzemplarz ESP-01 w tym samym miejscu instalacji (nie mówię o zastosowaniu użytkowym, chodzi mi o zdiagnozowanie WiFi/routera/repeatera).
Nie rozumiem powiązania sterowaniem tv z telefonu (one pracują na 2.4GHz czy na 5GHz?), jesteś w stanie przeprowadzić jakąkolwiek podstawową diagnostykę? (ping wewnątrz LAN do tych urządzeń, czy IP nie ulega zmianie itp.) niestety sterowanie tv z aplikacji może wykorzystywać np. protokoły autowykrywania w sieci (ssdp/zeroconf/bonjour itp.) a nie mam pomysłu na prostą i skuteczną diagnostykę…

Ad 10.

sorry, logi jako obrazki to jest dramat, wrzucaj też tekst (naprawdę to się daje kopiować jako tekst nawet z telefonu…) a jeśli walka z komórki jest zbyt upierdliwa to użyj komputera…

PS wspomniałeś o drugim AP, więc ja tu w ciemno diagnozuję problem - jest nim repeater. (tzn. jest bardzo podejrzany, inne ESP też pracują w jego sieci? ma w ogóle jakieś opcje upnp?)

PPS -74dB jest kiepskim poziomem sygnału, ale raczej nie krytycznie niskim (jako bezpieczną granicę można uznać okolice -80dB, przypominam, że to skala logarytmiczna), z drugiego obrazka wynika, że ESP zrywa połączenie w sposób aktywny (błąd 104).

tak poza wszystkim, to w ramach diagnostyki najpierw bym wywalił od tej linii do końca i umieść moduł z tak okrojonym softem w tym miejscu gdzie poprzednio

a jeśli nie pomoże, to w ogóle wywal całą integrację Midea, czyli stąd do końca i umieść moduł z tak okrojonym softem w tym miejscu gdzie poprzednio

i dopiero na tym etapie będzie to ostateczna diagnoza działania WiFi (bo nie wiem czy integracja nie wywraca modułu).
Jeśli nie będzie się aktywnie rozłączał to po dokładasz po kawałeczku (w odwrotnej kolejności, tj. najpierw auto-detekcja, a potem ewentualnie nadpisywanie tego z ręki).

Ok, prawie się udało. Poznałem tysiąc sposób jak tego nie robić ^^. No ale udało się. Przy okazji spaliłem 2 z 3 regulatory napięcia. Więc jeszcze muszę poczekać trochę aby zaczęło wszystko finalnie działać.

No więc tak, @szopen AP był główną przyczyna problemów. Jednak nie od razu się zorientowałem gdyż międzyczasie uszkodziłem jeden regulator. Pewnie szybciej bym się zorientował gdyby nie fakt że uszkodzony regulator wcale nie oznaczał całkowity zanik jego pracy. Coś się tam łączył z HA później zrywało itd.

Wracając do AP zmienilem pulę przyznawanych IP i zaczęło działać. Okazuje się że mimo iż wszystkie cyfry IP poza ostatnimi trzema były identyczne to nie wystarczało. AP przyznawał od 200-250 natomiast router 100-150. Wystarczyło zmienić aby AP też przyznawał od 100-150.

Czy dobrze zrozumiałem, że w sieci masz więcej niż jeden serwer DHCP?

1 polubienie

Nie widziałem żeby ktoś to poruszał wcześniej dlatego się zapytam - klimatyzacje od Rotenso mają na pilocie możliwość włączenia jonizatora przyciskiem Fresh. Z poziomu aplikacji mobilnej NetHome Plus nie można tego wysterować.
Jak rozumiem, po stronie serwera nie jest to obsługiwane i HA tak samo nie może tego wysterować?

Cześć, mam szybkie pytanie - stoję przed wyborem klimatyzatorów, i między innymi zaofertowane mam urządzenia Midea. Czy jest możliwość zintegrowania ich z HA na oryginalnych donglach USB/Wifi czy też konieczne jest posiłkowanie się ESP?

O ile temat ESP / mikrokontrolerów nie jest mi obcy to chciałbym utrzymać setup tak prosty jak to tylko możliwe :slight_smile:

Działa bez problemu na oryginalnych donglach. Ja mam OSK103 w dwóch klimatyzatorach Comfee i hula aż miło, używam tej integracji: https://github.com/georgezhao2010/midea_ac_lan

Problem jest tylko w tym że nie działa jak nie ma neta (sterowanie przez chmurę) ale to nie jest jakiś wielki problem, zawsze można sterować pilotem. W przyszłości planuję przejść na ESP ale obecnie mam trochę innych spraw do ogarnięcia.