niedziela, 3 grudnia 2017

Flash firmware ESP-12 / D1 MINI - jak wgrać nowe oprogramowanie AT

Chińskie kości z ESP8266 docierają do nas z różnym oprogramowaniem - najczęściej mocno nieaktualnym. Np. zakupione w tym roku moduły D1 MINI mają wsad z 2013 r. co objawiło się przy okazji mocno nieprzyjemnych samoistnych  resetów (poprzedni post). W takich przypadkach znalezienie przyczyny resetów należy rozpocząć od aktualizacji firmware. Dawno temu (jakiś rok z kawałkiem 😁 ) opisywałem sposób zmiany oprogramowania dla ESP-01. D1 MINI to tak naprawdę ESP-12F z dodatkami i wymaga nieco innego podejścia. Uaktualniły się też narzędzia do programowania nie mówiąc oczywiście o "wsadzie".  A więc powtórka z rozrywki - czyli jak przywrócić oryginalne oprogramowanie do ESP-12F zamontowane w sympatycznym D1 MINI.
Będę się mocno wspierał opisem zawartym tu>>>>   uaktualniając nieco wersje programów. Najpierw sięgniemy po nową wersję Flash Download Tools (ESP8266 & ESP32) na stronie producenta. W tym momencie najnowsza wersja to V3.6.2.2. Jak widać możemy nią obsłużyć i ESP8266 i ESP32. Nieźle..
  • Rozpakowujemy ( RAR) i uruchamiamy 
Pojawia się okienko wyboru procesora a potem już znany ekran ustawień. D1 MINI normalnie pracuje z Arduino IDE na prędkości 921600. Dla pewności w IDE przestawiam mu prędkość na 115200 i odczytuję nr COM. Takie wartości wpisuję do programu Tools i naciskam START.
UWAGA Wszystkie okienka MUSZĄ być odznaczone a Arduino IDE wyłaczone.
Teoretycznie moduł ESP należy wcześniej ustawić w mod programowania (GPIO 0 do zera i nacisnąć RST) ale o dziwo program sam wprowadza moduł D1 MINI w odpowiedni stan i bez problemu czyta co tam nasz procesor ma w środku:

Jak widać częstotliwość kwarcu i wielkość pamięci trzeba zmienić w stosunku do ustawień domyślnych.  Otwiera się nam również okno terminalowe ale w nim nic ciekawego na razie nie ma


Dostępne są dwie wersje oprogramowania podstawowego dla ESP - Ai-Thinker Firmware i Flash Espressif AT-Firmware. Łatwiejszy do wgrania jest firmware Ai-Thinker więc od niego zaczniemy

Plik najłatwiej pobrać na tej stronie. Aktualna wersja na dziś to bin1.54.zip
W środku mamy dwa pliki
AiThinker_ESP8266_DIO_8M_8M_20160615_V1.5.4.bin - dla ESP z pamięcią 1 MB
AiThinker_ESP8266_DIO_32M_32M_20160615_V1.5.4.bin - dla ESP z pamięcią 4 MB

Do ESP-12 ładujemy drugi plik od adresu 0x00000. Pamiętać należy tylko o ustawieniach
  • CrystalFreq  26M, SPI Speed at 40MHz
  • SPI MODE: DIO
  • Flash Size: 32Mbit

  • Naciskamy START i na dole okna powinien się pojawić ładny pasek postępu zapisu. 



    I znowu D1 MINI pięknie samo wskakuje w mod programowania i bez bólu łyka nowy firmware.
    I to by było na tyle. Oj lubię ten moduł coraz bardziej ...

    Teraz pozostaje tylko sprawdzić efekt powyższych manipulacji w działaniu programu router433.


    Program działa stabilnie odbierając od czasu do czasu fruwające w powietrzu kody 433 MHz.
    Na tym zakończę zabawy z naprawianiem kiepsko działającego D1 MINI

    WNIOSEK
    W przypadkach zagadkowych, powtarzających się samoistnych resetów jakiegokolwiek modułu z ESP8266 proponuję rozpoczęcie naprawy przyczyn takiego zachowania od wgrania nowszej wersji firmware. U mnie sprawdza się to w 100% przypadków.

    Router433 wraca do gry - zapraszam na ciąg dalszy. Niebawem
    104

    Brak komentarzy:

    Publikowanie komentarza