Brak odpowiedzi przy wgrywaniu programu nie oznacza od razu uszkodzonej płytki. Najpierw warto ustalić, na którym etapie urywa się komunikacja: USB, port szeregowy czy bootloader. Ten poradnik prowadzi przez kontrolę połączenia, a dopiero potem przez przygotowanie właściwego wsadu.

Zacznij od samej płytki

Odłącz czujniki i dodatkowe moduły, które mogą obciążać zasilanie lub wymuszać stan pinów startowych. Podłącz płytkę przewodem USB obsługującym dane. Sprawdź drugi przewód i port komputera. Świecąca dioda potwierdza tylko pewną aktywność urządzenia; dioda oznaczona L nie musi być wskaźnikiem zasilania.

Porównaj listę portów przed podłączeniem i po nim. W Windows zajrzyj do Menedżera urządzeń; w Linux port może mieć nazwę /dev/ttyUSB0 albo /dev/ttyACM0. Nazwa zależy od interfejsu. Zamknij monitor szeregowy i inne programy korzystające z tego portu.

Jeśli system nie rozpoznaje urządzenia, skorzystaj z poradnika USB-UART i sterowniki. W przypadku płytki z natywnym USB przeczytaj też różnice pomiędzy USB, UART i BOOT.

Odczytaj informacje przez esptool

Zainstaluj narzędzie w osobnym środowisku Pythona. W Linux/macOS przykładowo:

python3 -m venv .venv-esptool
.venv-esptool/bin/python -m pip install esptool
.venv-esptool/bin/python -m esptool --port /dev/ttyUSB0 flash-id
.venv-esptool/bin/python -m esptool --port /dev/ttyUSB0 read-mac

W Windows utwórz środowisko poleceniem py -m venv .venv-esptool, a następnie używaj .venv-esptool\Scripts\python.exe i właściwego portu, np. COM3. Polecenia instalacji i odczytu mają dalej tę samą strukturę.

flash-id odczytuje identyfikację pamięci, a read-mac adres MAC układu. Nie kasują programu, ale otwarcie portu i komunikacja z bootloaderem mogą zresetować urządzenie. Współczesna składnia używa myślników; stare instrukcje z flash_id dotyczą wcześniejszych wydań. Szczegóły podaje dokumentacja esptool.

Odczyt ID pamięci nie jest pełnym testem wszystkich jej komórek, a odpowiedź układu nie sprawdza WiFi ani wszystkich GPIO. To potwierdzenie, że działa podstawowa droga komunikacji.

Gdy program zatrzymuje się na łączeniu

Na płytkach z przyciskami BOOT i RESET/EN zwykle pomaga przytrzymanie BOOT, krótkie naciśnięcie RESET, a następnie zwolnienie BOOT. Stosuj sekwencję podaną dla swojego modelu. Port natywnego USB może po tej operacji zmienić numer. Ponownie wybierz port i powtórz odczyt.

Jeżeli widzisz odmowę dostępu do portu, sprawdź uprawnienia systemowe oraz proces, który zajmuje port. Instalowanie losowych sterowników lub uruchamianie całego IDE jako administrator nie rozwiązuje przyczyny takiego problemu.

Plik BIN potrzebuje właściwego adresu

Przed zapisem ustal rodzinę układu, wariant płytki, rozmiar flash, sposób podłączenia PSRAM oraz rodzaj pliku. Oddzielny program, bootloader i połączony obraz całej pamięci nie są wymienne. Adres 0x1000 albo 0x0 ze znalezionej instrukcji nie jest uniwersalnym ustawieniem dla każdego firmware.bin.

Korzystaj z polecenia wygenerowanego przez narzędzie budujące konkretny projekt lub z instrukcji autora wsadu. Zachowaj dotychczasowy projekt i konfigurację. Dopiero wtedy wykonuj zapis. Jeśli potrzebujesz pomocy, przygotuj model płytki, nazwę interfejsu USB, wersję esptool i pełny komunikat błędu; usuń z logów dane dostępowe.