Starsza wersja ESP32 Arduino Core (1.0.6) ma znane problemy z obsługą automatycznego resetu podczas wgrywania programu przez port USB/UART. Objawia się to tym, że:
- podczas uploadu płytka nie przechodzi samoczynnie w tryb bootloadera,
- narzędzie
esptoolzgłasza błąd typuFailed to connect to ESP32: Timed out waiting for packet header, - konieczne jest ręczne przytrzymanie przycisku RESET, aby w ogóle rozpocząć wgrywanie.
Jeżeli upload działa tylko po ręcznym wciśnięciu BOOT, to nie jest to wina płytki — to ograniczenie starego core'a 1.0.6. Aktualizacja do ESP32 Core 2.0.14 lub nowszego przywraca automatyczny reset i eliminuje problem z wgrywaniem programu.
Aby zainstalować nowy core w Arduino IDE, wykonaj następujące kroki:
-
Otwórz Arduino IDE i przejdź do
Plik → Preferencje(ang. File → Preferences). -
W polu Dodatkowe adresy URL do menedżera płytek (Additional Boards Manager URLs) wklej:
https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_index.jsonJeżeli jest już tam inny adres, oddziel nowy przecinkiem lub dodaj w nowej linii.
-
Zatwierdź przyciskiem OK.
-
Przejdź do
Narzędzia → Płytka → Menedżer płytek...(Tools → Board → Boards Manager...). -
W wyszukiwarce wpisz esp32.
-
Znajdź pozycję esp32 by Espressif Systems i z listy rozwijanej wersji wybierz 2.0.14.
-
Kliknij Zainstaluj i poczekaj na pobranie .
-
Po zakończeniu instalacji wybierz swoją płytkę w
Narzędzia → Płytka → esp32 → ESP32 Dev Module.
Po zainstalowaniu nowego core'a wystarczy podłączyć ESP32, wybrać właściwy port COM i kliknąć Wgraj — płytka powinna sama wejść w tryb bootloadera bez konieczności trzymania przycisku RESET.