Upgrade tasmota 8.5.1 nie działa

Dzień dobry wszystkim, pierwszy post, dotąd tylko czytałem.
Kupiłem parę przełączników puszkowych MK601. Dopiero potem doczytałem, że Tuya to ble i lepiej wgrać tasmotę, do tych się nie da więc wymieniłem na ESP8285, wgrałem do pierwszego Tasmota 8.5.1 i chwilę się pobawiłem, ale jest jakiś problem i po losowym czasie przestaje działać. Do dwóch kolejnych wgrałem najnowszą wersję Tasmota 12 i ta działa stabilnie.
Próbowałem wgrywać z pliku bin wersje 9.1, 12, z proponowane serwera online i ciągle lipa, resetuje się, zawiesza, nie wgrywa. Flasz ma 2MB, a niby komunikat sugeruje braku miejsca, wersja minimum też się nie wgrywa.
Nie spodziewałem się problemów jak ruszyło, a wgrywałem do ESP różne softy przez OTA w Arduino i nie sądziłem, że może być z tym taki ból. W 8.5.1 nie zadziałał też typowy szablon na podmianę, konfigurację wyklikałem sobie dla generic18 tak by klikał przełacznik, z szablonu wrzucał mi go na zły pin IO.
Macie jakieś pomysły jak to zrobić bez rozbierania, bo go zdążyłem już zakleić cyjanopanem i nie chcę znowu rozrywać, wylutowywać.
Pisząc maila wpadłem jeszcze na jeden pomysł i częściowo jest sukces, 8.5.1->minimal 9.1->minimal12.1->12.4 light. Przy 12 minimal już był jasny komunikat przy próbie wgrania 12 PL, że ‘not enough space’.
W sumie działa, szablon zadziałał, teraz potestuję stabilność, ale może coś się jeszcze da z tym zrobić, bo rozumiem, że nowszej wersji pełnej nie wgram, 2MB flash to za mało? Tasmota widzi te 2MB, ale podzieliła sobie to na 1MB dla programu i tak jakby nie używa reszty?
image

Bo musi mieć partycję roboczą i partycję OTA

W dużym skrócie to może wyglądać tak (nie wiem jak jest obecnie, ale kiedyś się tak to mniej więcej robiło) - flash można podzielić na 2 równe połowy (uproszczenie) i system (tu nazwany “program”) przez OTA raz wgrywać na jedną partycję, a raz na drugą, po udanym flashowaniu zmieniając wpis w bootloaderze by wskazywał na najnowszą.

Jak zasoby są sporo za małe w stosunku do potrzeb, to czasem się robi figury z nierównymi rozmiarami partycji (wtedy partycja OTA może być mniejsza jesli wysyłamy tam skompreresowany obraz partycji roboczej, ale wtedy trzeba zapewnić niewywracalność bootowania choćby do trybu recovery również po wgraniu nieprawidłowego obrazu do partycji roboczej, a nie wiem czy to wykonalne na ESP82xx), ale wydaje mi się, że w przypadku Tasmota ze względu na totalną uniwersalność obrazów nikt tak kombinować nie będzie. Szczególnie, że tam w obszarze roboczym masz przechowywane dane użytkownika, które przy OTA mają pozostać nie nadpisane.

1 polubienie

Spróbuj z tasmota.lite.bin.gz
Nie potrzebujesz raszej wodotrysków w tym sprzęcie, a to chyba najmniejsza, funkcjonalna wersja.

1 polubienie

A tymczasem

Przepływ aktualizacji~

v1.0.11 :twisted_rightwards_arrows: v3.9.22 :twisted_rightwards_arrows: v4.2.0 :twisted_rightwards_arrows: v5.14.0 :twisted_rightwards_arrows: v6.7.1 :twisted_rightwards_arrows: v7.2.0 :twisted_rightwards_arrows: v8.5.1 :twisted_rightwards_arrows: v9.1 :twisted_rightwards_arrows: Bieżąca wersja

Podążaj ściśle ścieżką, aby zapewnić sukces. Nie instaluj tylko pliku tasmota-minimal.bin, ale zaktualizuj do pełnego, działającego oprogramowania układowego.

1 polubienie

Lite 12.4 mam właśnie już wgraną w najnowszej wersji. Ale jednak po zmianie softu też się wywala na plecy po kwadransie lub dwóch, znika z sieci, jedyne co można zrobić to odłączyć od zasilania i potem na jakiś czas ożywa. Nawet jak go wyzerowałem i stał się AP gotowym do konfiguracji to zniknął po chwili, zaświecił led i przestał reagować. Więc pewnie wróci pod palnik tak czy inaczej.
Można mu coś poprawić, to może być wina modułu WIFI, czy na tej płytce coś zasilaniem jest nie tak?
Druga sprawa to on był podłączony do HA przy wersji 8.5.1 przez MQTT broker i w nim go wykrywałem, dodawałem. Po to była ta wersja 8, bo robiłem zgodnie z tutorialem na Youtube, a MQTT nie widział modułu z wersją 12. Po zmianie wersji na 12 lite nie jest wykrywany ani przez MQTT ani przez Tasmotę. Potem dodałem Tasmota do HA i te dwa pozostałe już zostały wykryte tą drogą.

Aktualizujesz plikami ? U mnie zawsze działa jeżeli mam problem:

  1. tasmota-minimal.bin.gz przez OTA
    Screenshot - 21.02.2023 , 06_44_46

2.tasmota.bin.gz przez Upgrade by file upload

Screenshot - 21.02.2023 , 06_46_16

http://ota.tasmota.com/tasmota/release/tasmota-minimal.bin.gz

|ESP Chip Id|14951861 (ESP8285N08)|
| — | — |
|Flash Chip Id|0x144051 (DOUT)|
|Flash Size|1024 KB|
|Program Flash Size|1024 KB|
|Program Size|632 KB|
|Free Program Space|368 KB|
|Free Memory|24.8 KB|

2 polubienia

Dzięki, w pierwszym poście napisałem, że znalazłem tę drogę, choć nie rozumiem ograniczenia do 1MB na flash i OTA, skoro jest 2MB, a jakieś konfiguracje zajmują może z parę kb. W Arduino dało się ustawić partycję na pliki (configi) nawet 64kb i reszta była dla OTA, dla 2MB było to dokładnie 996kB.
Wielkość już rozgryzłem, 9.1 się tu mieści na styk mając 601kb, z 12 wchodzi lite.
To już nie ważne, lite wystarczy, albo 9, byle to się nie wieszało.
Postanowiłem wgrać 12 minimal z powrotem i chodził nieco dłużej niż lite, potem wróciłem do 9.1 i teraz działa już ponad 1.5h. 9 mieści się w normalnej wersji PL. Ale jednak w końcu zawisł.
Może zostało mu coś z poprzednich wersji i dlatego nowsze wersje i tak się wieszają? Czy jak robię pełny reset ustawień cofający mnie do AP to wszystko się kasuje z tych plików konfiguracyjnych?
9.1 chodziło dość długo, ale jak dzisiaj wróciłem do tematu to znowu rano wisiało, led się świeci, choć nie był skonfigurowany w ogóle, tym razem wybrałem znowu wersję generic 18 i ustawiłem tylko pin io5 dla relay, pojawił się też znowu w HA.
Nie wiem czy to pozostałości wersji 8 mi go wieszają, czy coś z tą płytką jest nie halo, czy może moduł WIFI jest wadliwy. Może ktoś rozwiązał podobny dylemat?

Z plików konfiguracyjnych teoretycznie się kasuje, ale czy to zgodne między “dużymi” wersjami to chyba tylko autorzy wiedzą (prawdopodobnie nie, bo skoro są konkretne ścieżki aktualizacji i nie można przeskakiwać między dowolnymi “dużymi” wersjami, to moim zdaniem pliki konfiguracyjne nie są zgodne).

Niestety całości flasha nie da się skasować przez OTA… (jedynie kabelek), ale skoro masz tak nietypowe problemy w jednym egzemplarzu z kilku identycznych, to ja stawiam na wadę sprzętową akurat tego egzemplarza…

W załączniku zestaw wsadów do kasowania najpopularniejszych rozmiarów flasha (niestety do wgrania jedynie przez kabelek, czyszczą one cały flash, więc trzeba w kolejnym kroku wgrać jakieś firmware, bo nie zostaje nic)
ESP_erase.zip (9,6 KB)

1 polubienie

Rozłupałem jednak, klej właściwie nie trzymał, może ciepło mu szkodzi, 5 minut i zlutowany nowy zestaw, ESP wisi na kablu, do środka modułu przekaźnika z powrotem wrzuciłem moduł WIFI z Tuya. W między czasie dodałem Tuya do HA, wcześniej robiłem to wg starych tutoriali, trzeba założyć drugie konto na Tuya IOT, zrobić nowy projekt, dodać konto z telefonu, zdobyć dodatkowe dwa kody do HA i po wpisaniu do HA działa.
No i właśnie działa, od wczoraj moduł oryginalny chodzi bez zastrzeżeń. Wyciągnięty ESP i podłączony do PC z Tasmota też działa na wersji 9.1. Ki diabeł?

Podziwiam upór w dążeniu do rozwiązania.

Zrób OTA i wtedy sprawdź (może kość flash jest częściowo uszkodzona) jeśli nadal będzie działać doskonale, to jeszcze raz, jeśli problem dotyczy wadliwego flasha, to się w końcu ujawni (może w innej wersji, bo psim swędem może akurat błąd sprzętowy jest tego rodzaju, że akurat maskuje się w danym układzie bitów w wadliwym obszarze).

Druga kwestia, to być może zasilacz jest zaprojektowany “na styk”, a wręcz trochę bardziej oszczędnie i ze względu na zwykły produkcyjny rozrzut parametrów masz problem w tej konkretnej kombinacji?

Skoro przelutowanie MCU zajmuje Ci 5 min. to nie wątpię, że masz duże doświadczenie z elektroniką, więc pewnie masz też masz odpowiedni sprzęt by pomierzyć np. pobór prądu w różnych warunkach pracy czy stabilność napięcia.

PS tak zupełnie z innej beczki - ESPHome w zdecydowanej większości przypadków jest bardziej elastyczne na MCU z małym rozmiarem flasha (bo wkompilowujesz w firmware TYLKO to, co jest faktycznie potrzebne, a nie absolutnie wszystko co się dało wepchnąć - jak to jest w Tasmocie, więc nawet jeśli kompilator byłby gorzej zoptymalizowany, to i tak finalny firmware jest “chudszy”).

Dzięki wszystkim za dotychczasowe wskazówki.
Wnioski końcowe są takie, że to nie wina wersji softu, wiesza się na każdym gdy jest w module przekaźnika z zamkniętą obudową, a wgrać soft >600k do modułu z flash 2MB się nie da przez OTA. Jedna z wersji Tasmota pokazywała napięcie Vcc w konsoli i było to ponad 3.4V, wersja 12, wgrałem po wylutowaniu drutami z PC, tego nie ma. Ten moduł ESP nie ma żadnych szczególnych wymagań prądowych, po wylutowaniu wisiał przez kilka dni na kablu podłączonym do czerwonego modułu FTDI, zasilanym ze słabego portu USB o napięciu 4.7V, a sam FTDI nie ma na żadnego scalaka dedykowanego dla 3.3V, chip oferuje ponoć max 50mA, a WIFI przez te parę dni chodziło stabilnie.
Tak samo oryginalny moduł WIFI wlutowany z powrotem cały czas działał na Tuya w przekaźniku.
Wczoraj wlutowałem z powrotem ESP do modułu, zwis po kilkudziesięciu minutach, bez obudowy działa już 10h.
Wątpię więc by chodziło o napięcie czy prąd, wg mnie chodzi o ciepło.
Mam jeszcze dwa inne przerobione, pochodziły parę godzin i robiłem kolejny, teraz je gdzieś podłączę na dłużej i zobaczę co z tego wyniknie, ciekawe jak to się skończy gdy je wsadzę gdzie do lampy albo puszki.

Zastanawiam się nad sensem konwersji do Tasmota, rozumiem, że wymaga to Internetu do działania, ale teraz obejrzałem jakiś tutorial o Tuya local i chyba chodzi o to samo, że przekaźnik będzie można sterować nawet bez serwera Tuya? Przekaźnik to jeszcze pół biedy, po rozpruciu schowam go do puszki, ale mam jeszcze 4 gniazdka Tuya (obecnie w aplikacji DGM SMART, ale przypisywałem je do obu aplikacji zamiennie), jest sens je rozpruwać i naruszać ich integralność gdy i tak można je używać w HA?

Nie wiem czy to szczególne wymagania, ale zasilacz musi dostarczać minimum 150mA przy stabilnym napięciu wyjściowym, 50mA to tylko w idealnych warunkach (może więcej, bo tyle to potrzebuje sam MCU, a nie wiem czy inne obwody nie potrzebują łącznie sporo więcej).

Natomiast

  • sam fakt zamknięcia obudowy nawet przy pracy “na stole” może świadczyć o problemie natury mechaniczno-elektrycznej (zimny lut +naprężenia go ujawniające)
  • jeśli problem nie występuje “na stole”, ale jedynie w miejscu montaży to problemu szukałbym w zasięgu WiFi lub zakłóceniach (możliwe, ze akurat ten egzemplarz ESP8285 jest bardziej podatny, niż fabryczny inny MCU, tak się akłąda, że dla tych innych MCU stosowanych przez Tuya jest też alternatywny projekt - openbeken, więc możesz poeksperymentować czy się da wykorzystać.

Skoro programowałeś “po kabelku” to, czy wykorzystałeś plik czyszczący flasha? (załączyłem wyżej do posta cały zestaw).

Alternatywne posunięcie to przygotowanie wsadu w ESPHome (sądzę, że finalny plik będzie wystarczająco mały, by nie było problemów z OTA w ESPHome, proste projekty ESPHome mam na modułach z 1MB flasha i to nie stanowi problemu, przy wkompilowanej obsłudze OTA).

To kwestia twojej decyzji, z tego co wiem nawet “lokalne” nieoficjalne integracje Tuya w pewnych przypadkach nie radzą sobie z pracą urządzeń przy odcięciu ich od dostępu do chmury.

Jeśli o mnie chodzi to całkowicie pozbyłem się Tuya, bo to przykład na “samo zło” w IoT.

1 polubienie

Dzięki za sugestie, flash był wyczyszczony.
Ten moduł się niestety grzeje bardziej niż inne niezależnie czy jest włożony do środka moduł WIFI oryginalny czy ESP, ale tylko ESP spada z rowerka.
Wiem że ESP potrzebują szarpnąć prądu, bawię się nimi od lat, wcześniej w Arduino. Dlatego byłem zdziwiony, że 8285 działa stabilnie z WIFI zasilany z FTDI. Zwykle można było go zaprogramować, bez WIFI pobiera do 20mA, a potem musiał być przeniesiony na adapter z porządnym prądem, średni pobór był na poziomie 80mA, ale czasami szarpie do 300, dlatego by działał ze stabilizatorem super hiper lodrop 150mA musiał być duży kondensator elektrolityczny. Tak że gołym okiem widać, że to nie ten przypadek.
Może i nie dostaje dobrego zasilania po zamknięciu w obudowie, ale znowu przez ciepło.
Tego już nie sprawdzę, nie będę z tego robił doktoratu.
Zimnych lutów nie ma, piny/pady są szerokie, lutowanie jest łatwe, trudniej było to wylutować jednocześnie wyciskając moduł, każdy kolejny raz robi się to łatwiej.
Pogodziłem się już z brakiem OTA. Nie będę przecież aktualizował softu w przekaźniku, a zauważyłem też, że pin przełącznika S jest zwarty z N części wykonawczej 230V, tzn. że to nie jest odizolowane galwanicznie, nie można do tego modułu dodać jakiegoś czujnika wyprowadzonego z obudowy.
Mam inne pytania, ale to już do innego tematu. Myślę że temat upgradu został wyczerpany - kabel albo zabawa przez OTA z softami tak by suma obu nie przekraczała 1MB.
Poza tym zostawię sobie ten jeden przekaźnik z Tuya na razie, będę miał coś do testowania jak to działa w porównaniu do Tasmoty.
Dziękuję.

Mam również problem z upgrade firmware. Próbowałem już chyba wszystkie wersje (wyższe i niższe) i zawsze:
Upload Failed
Not enough space
W informacjach mam zapis ze miejsca dla programu mam więcej niż pojemność chipu:

ESP Chip Id 9211464
Flash Chip Id 0x144051
Flash Size 1024kB
Program Flash Size 4096kB
Program Size 449kB
Free Program Space 552kB
Free Memory 31kB

Aktualnie zainstalowana wersja: Tasmota 7.1.2.2 by Theo Arends
Jest ktoś w stanie wytłumaczyć o co tu chodzi?

A jak to aktualizujesz ? od razu chcesz najnowszą wgrać ?

Przy wgrywaniu przez OTA nie wyświetla żadnego błędu tylko się restartuje, w konsoli też nic nie ma. Jak wgrywam plik bin to wyskakuje że Upload FailedNot enough space. Próbowałem przez podniesienie o jedną wersję i o kilka- zawsze ta sama reakcja. Obniżyć wersji też nie mogę. Udało mi się podnieść wersję 15 urządzeń, tylko z jednym jest taki problem.

Może spróbuj z wersją minimal.bin.gz przez OTA

1 polubienie

Próbowałem z wersją minimal oraz lite i też to samo.

ESP Chip Id 9211464
Flash Chip Id 0x144051
Flash Size 1024kB
>>>Program Flash Size<<< 4096kB
Program Size 449kB
Free Program Space 552kB
Free Memory 31kB

Ten wpis jest trochę dziwny.

No ja tu nie widzę niczego dziwnego - zapewne masz tam partycję UFS 3MB oraz partycje OTA i roboczą po 0.5MB

Tasmota używa standaryzowanych obrazów flasha w przeciwieństwie do np. ESPHome gdzie obrazy nawet te prekompilowane są dostosowywane do danej konstrukcji modułu.

Tak z innej beczki - aktualna wersja Tasmoty nie jest odpowiednia jeśli chcesz zrobić upgrade z 7.1.2.2

pomijając ten fakt, powinieneś użyć do OTA firmware w pliku *.bin.gz (a nie *.bin bo od jakiegoś czasu właśnie nieskompresowane obrazy OTA czasem powodują takie problemy jak opisujesz, no nie jestem fanem Tasmoty więc nie do końca jestem na bieżąco, ale zazwyczaj z notek do wydania można sporo wyczytać, chociaż lektura dokumentacji raczej zawsze jest obowiązkowa).

Ponieważ nie ma jasno określonej ścieżki migracji, to najpierw bym podniósł soft do ostatniej wersji 7.x a potem podnosił kolejno przechodząc przez ostatnie 8.x 9.x itd.

edit: skoki po ostatnich wydaniach dużych wersji to nie jest właściwa droga, ale notatki do wydań zawierają drogę migracji, wystarczy się cofnąć w wydaniach do aktualnie wgranego i czytać wszystkie nowsze notatki do wydań

PS tu są 3 słowa o UFS, niestety nie ma konkretów o ESP8266@4MB

2 polubienia

Skorzystaj z *.bin.gz jak napisał @szopen

Screenshot - 27.04.2023 , 21_06_19
Screenshot - 27.04.2023 , 21_06_27

1 polubienie