← cała baza wiedzy
ubuntowany@home:~$ cat pinout.md za każdym razem szukam tego samego rysunku. teraz mam go pod ręką.
ESP32-S3-Zero i ESP8266 NodeMCU — pinout i wymiary

Ściąga z numerami GPIO, funkcjami pinów i wymiarami fizycznymi dwóch płytek, których używam najczęściej. Dane dla ESP32-S3-Zero przepisane z oficjalnego diagramu Waveshare, dla NodeMCU — ze standardowego mapowania D0–D8 stosowanego przez większość producentów klonów.

Waveshare ESP32-S3-Zero ESP8266 NodeMCU V3 poziom: podstawowy
płytka 1

ESP32-S3-Zero (Waveshare)

Mikroskopijna płytka z USB-C, wbudowaną diodą RGB WS2812 i dwoma zestawami wyprowadzeń: głównymi (2,54 mm) i dodatkowymi wyprowadzeniami krawędziowymi (2,00 mm).

Wymiary

USB-C ESP32-S3 18.00 mm 23.50 mm 2,54 mm rozstaw pinów

18,00 × 23,50 mm (24,8 mm licząc wystający złącz USB-C), promień naroży R1,00 mm, rozstaw pinów w rzędzie 2,54 mm.

Oficjalny rysunek techniczny wymiarów ESP32-S3-Zero z dokumentacji Waveshare

Oficjalny rysunek techniczny. Źródło: Waveshare Wiki — ESP32-S3-Zero.

Piny główne (nagłówki 2,54 mm)

Oficjalny diagram pinout ESP32-S3-Zero z dokumentacji Waveshare, pokazujący numery GPIO i obsługiwane funkcje na obu nagłówkach oraz padach krawędziowych

Oficjalny diagram pinout. Źródło: Waveshare Wiki — ESP32-S3-Zero. Tabela niżej to ten sam pinout w formie tekstowej, do szybkiego wyszukiwania.

lewa stronafunkcja
5Vzasilanie
GNDmasa
3V3 (OUT)zasilanie
GP1UARTSPII2C
GP2UARTSPII2C
GP3UARTSPII2C
GP4UARTSPII2C
GP5UARTSPII2C
GP6UARTSPII2C
prawa stronafunkcja
TX (GP43)UART0 TX
RX (GP44)UART0 RX
GP13SPII2C
GP12SPII2C
GP11SPII2C
GP10SPII2C
GP9SPII2C
GP8 / GP7SPII2C
GP16 / GP15 / GP14SPII2CPWM

Każdy GPIO (GP1–GP16) jest multipleksowany — może pełnić funkcję UART, SPI, I2C, I2S, ADC lub PWM zależnie od konfiguracji w oprogramowaniu. Kolorowe etykiety w tabeli pokazują możliwości, nie sztywne przypisanie.

Wyprowadzenia krawędziowe (pady 2,00 mm)

Dodatkowy zestaw 8 pinów po każdej stronie, dostępny jako pady na krawędzi płytki (przydatne przy montażu SMD lub gdy zabraknie głównych pinów): GP17, GP18, GP38, GP39, GP40, GP41, GP42, GP45 — każdy z obsługą UART/PWM/I2S/I2C/SPI, GP17/GP18 dodatkowo ADC.

Dioda RGB

Wbudowana dioda WS2812 (adresowalna) jest sterowana przez GP21 (linia DIN) — nie jest wyprowadzona na główny nagłówek, to osobny, dedykowany pin.

płytka 2

ESP8266 NodeMCU V3

Klasyczna płytka rozwojowa z ESP8266 — piny na obudowie oznaczone są etykietami D0–D10 i A0, które nie odpowiadają numerom GPIO wprost. To najczęstsza pułapka dla początkujących.

Wymiary

Tu trzeba być ostrożnym: różni producenci klonów NodeMCU V3 sprzedają płytki o różnych rozmiarach. Najpopularniejsze warianty: ok. 58 × 32 mm (szersza wersja, np. LoLin) oraz ok. 49 × 24,5 mm (węższe klony typu Amica). Różnica bywa istotna przy projektowaniu obudowy pod druk 3D — zawsze zmierz swój egzemplarz suwmiarką przed projektowaniem, zamiast ufać jednej uniwersalnej wartości.

Mapowanie D0–D10 na GPIO

Diagram pinout ESP8266 NodeMCU V3 pokazujący etykiety D0-D8, RX/TX, piny SD (SDD0-SDD3, SDCMD, SDCLK) oraz odpowiadające im numery GPIO

Diagram pinout NodeMCU V3. Źródło: The Engineering Projects — Introduction to NodeMCU V3. Tabela niżej to ten sam pinout w formie tekstowej, do szybkiego wyszukiwania.

etykieta na płytceGPIOuwagi
D0GPIO16bez obsługi przerwań, PWM i I2C
D1GPIO5bezpieczny do ogólnego użytku
D2GPIO4bezpieczny do ogólnego użytku
D3GPIO0boot musi być HIGH przy starcie
D4GPIO2boot musi być HIGH przy starcie; podłączona wbudowana LED
D5GPIO14SPI SCLK — bezpieczny do ogólnego użytku
D6GPIO12SPI MISO — bezpieczny do ogólnego użytku
D7GPIO13SPI MOSI — bezpieczny do ogólnego użytku
D8GPIO15boot musi być LOW przy starcie
D9 / RXGPIO3UART RX — kolizja z wgrywaniem firmware
D10 / TXGPIO1UART TX — kolizja z wgrywaniem firmware
A0ADC0wejście analogowe, zakres 0–3,3 V (dzielnik na płytce)

Do ogólnego użytku najbezpieczniejsze są: D1, D2, D5, D6, D7 — nie mają żadnych ograniczeń przy starcie systemu i nie kolidują z wgrywaniem firmware.

wiedza wyniesiona z bólu

Częste pułapki

  • 01

    D3/D4/D8 na NodeMCU to piny bootstrapujące. Podłączenie do nich urządzenia, które trzyma linię w złym stanie przy starcie (np. przycisk podciągnięty do masy na D3), może uniemożliwić bootowanie płytki. Jeśli ESP8266 nie startuje po dodaniu peryferiów — sprawdź najpierw te trzy piny.

  • 02

    Etykiety „D0"–„D8" to wynalazek producentów płytek, nie ESP8266. W kodzie Arduino/MicroPython zwykle i tak odwołujesz się do stałych D0...D8 zdefiniowanych w rdzeniu Arduino dla ESP8266 — ale jeśli piszesz surowe numery GPIO (np. w ESPHome czy konfiguracji niskopoziomowej), pomyłka między etykietą a GPIO to najczęstszy błąd początkujących.

  • 03

    Etykiety „GP1"–„GP16" na ESP32-S3-Zero to bezpośrednio numery GPIO (inaczej niż w NodeMCU) — Waveshare nie stosuje tu żadnego przemapowania, co bardzo ułatwia pracę z tą płytką.

  • źródła

    Źródła