Nastavení Arduino IDE pro ESP32-S2, S3 a C6
Nastavení Arduino IDE pro práci s ESP32
Podrobný průvodce instalací Arduino IDE, přidáním podpory desky ESP32 a nahráním prvního skiczu na ESP32-S2, ESP32-S3 nebo ESP32-C6.
Pokud jste nikdy nepoužívali Arduino IDE, proces vypadá složitěji, než ve skutečnosti je. Má tři části: instalace IDE, instalace balíčku podpory ESP32 a výběr správné desky a portu. Většina problémů, se kterými se lidé setkávají, se objevuje v poslední části, takže nastavení desky je podrobně pokryto níže.
Tato příručka předpokládá, že používáte Arduino IDE 2, což je aktuální verze a ta, kterou byste měli používat pro práci s ESP32. Starší IDE verze 1.8.x stále funguje, ale správce desek je pomalejší a editor je mnohem méně užitečný.
Co potřebujete dříve, než začnete
- Počítač se systémem Windows, macOS nebo Linux s několika gigabajty volného místa. Jádro ESP32 a jeho soupravy nástrojů jsou velkým stažením.
- USB kabel, který přenáší data. To neustále chytá lidi. Mnoho USB-C kabelů dodávaných s telefony a bateriemi jsou pouze nabíjecí a deska se nikdy neobjeví.
- Deska ESP32. Níže uvedené pokyny pokrývají varianty S2, S3 a C6.
- Rozumné připojení k internetu pro počáteční stahování.
Krok 1: Instalace Arduino IDE
Přejděte na arduino.cc/en/software a stáhněte si aktuální verzi pro váš operační systém. Web vám nejdřív nabídne stránku s proselbou o dar. Můžete ji přeskočit a jít přímo ke stažení.
- Windows: vezměte si instalátor místo ZIP souboru. Přijměte výzvy ovladačů, pokud se během instalace objeví.
- macOS: otevřete disk image a přetáhněte aplikaci do složky Aplikace. Při prvním spuštění možná budete muset schválit v Ochraně osobních údajů a bezpečnosti.
- Linux: AppImage je nejméně obtížná. Označte ji jako spustitelnou a spusťte ji. Budete také muset přidat sebe do skupiny dialout, která je pokryta pod Ovladači níže.

Obrázek 1: Stránka stažení na arduino.cc
Po dokončení instalace spusťte IDE. Vytvoří složku skiczu v oblasti vašich dokumentů a skrytou složku nastavení. Stojí za to vědět, kde je složka nastavení, protože pokud se podpora desky někdy zanese, nejrychlejší opravou je smazat její část a začít znovu:
- Windows:
%LOCALAPPDATA%\Arduino15 - macOS:
~/Library/Arduino15 - Linux:
~/.arduino15
Krok 2: Instalace jádra ESP32
Otevřete správce desek. Je to druhá ikona v levém panelu nástrojů, nebo Nástroje > Deska > Správce desek. Do vyhledávacího pole zadejte esp32 a počkejte na načtení seznamu.
Starší průvodci, včetně těch, které jsou stále blízko hornímu okraji výsledků vyhledávání, vám říkají, abyste vložili vlastní URL do Předvoleb dříve, než to budete moci udělat. Na aktuálních verzích IDE to často není nutné, takže nejdřív vyzkoušejte vyhledávání a podívejte se, co se vrátí. Pokud je balíček Espressif uveden, pokračujte dále. Pokud ne, níže je krátké odbočení, které to vyřeší.
Nejpravděpodobněji se zobrazí dva záznamy a záleží na tom, který si vyberete:
- Arduino ESP32 Boards, od Arduino. Tento balíček obsahuje pouze Arduino Nano ESP32. Nedá vám záznamy vývojového modulu S2, S3 nebo C6. Pokud nevlastníte Nano ESP32, toto není ten, který chcete.
- esp32, od Espressif Systems. Toto je ten, který potřebujete. Vyberte nejnovější verzi 3.x z rozbalovacího menu verzí a klikněte na Instalovat.
Stahování je několik stovek megabajtů, jakmile jsou zahrnuty soupravy nástrojů kompilátoru, takže tomu dejte čas. Indikátor průběhu se dlouho nezabývá rozbalováním. Během toho IDE nezavírejte. Pokud se to nezdaří v půli cesty, spusťte to znovu místo předpokládání, že to fungovalo.

Obrázek 2: Dva balíčky, podobné názvy. Chcete esp32 od Espressif Systems.
Pokud se balíček Espressif neobjeví
Nasměrujte IDE na Espressifův vlastní index balíčků ručně. Neuškodí to udělat, i když byl balíček už vidět, takže pokud byste raději nastavili jednou a nemuseli na to myslet, pokračujte.
Přejděte na Soubor > Předvolby, nebo na macOS Arduino IDE > Nastavení. Najděte pole označené Další adresy URL správce desek a přidejte toto:
https://espressif.github.io/arduino-esp32/package_esp32_index.json
Pokud v tom již máte další URL adresy, např. pro podporu ATtiny nebo ESP8266, klikněte na malou ikonu na konci pole a otevřete větší pole a každou URL vložte na svůj řádek. Klikněte na OK a restartujte IDE, protože nový index načítá pouze při spuštění. Vyhledejte esp32 ve správci desek znovu a záznam Espressif tam bude.

Obrázek 3: Pole s dodatečnými adresami URL správce desek v Předvolbách
Důležité pro uživatele C6: Podpora ESP32-C6 existuje pouze v jádru verze 3.0.0 a později. Pokud provozujete starší jádro verze 2.x, C6 se vůbec neobjeví v seznamu desek. S2 a S3 jsou podporovány v obou, ale není žádný dobrý důvod zůstat na 2.x nyní.
Krok 3: USB ovladače, nebo jejich nedostatek
To, zda potřebujete ovladač, závisí zcela na tom, jak se deska připojuje k počítači, ne na tom, který čip používá.
Desky s nativním USB
S2, S3 a C6 mají všechny periferní USB zabudované v křemíku. Pokud USB zásuvka na vaší desce vede přímo do čipu, není na Windows 10 nebo 11, macOS nebo jakékoli aktuální linuxové distribuci potřeba ovladač. Deska se objevuje jako standardní sériové zařízení samo o sobě.
Desky s mostem USB na sériové rozhraní
Mnoho vývojových desek má samostatný čip mostu, aby nahrávání fungovalo tradičním způsobem. Pokud má vaše deska jeden z nich, nainstalujte odpovídající ovladač:
- CP2102 nebo CP2102N: ovladač Silicon Labs CP210x VCP.
- CH340 nebo CH9102: ovladač WCH.
- FTDI: ovladač FTDI VCP, ačkoli ho Windows obvykle dodává sám.
Některé desky S3 mají dvě USB zásuvky, jednu připojenou k mostu a jednu připojenou k čipu. Chují se různě a produkují různé názvy portů. Zapamatujte si, do kterého soketu jste jej zapojili, protože to bude mít hodnotu, když se dostanete k nastavení desky.
Oprávnění v Linuxu
Na Linuxu bude port existovat, ale nebudete jej moci otevřít, dokud váš uživatel není ve skupině dialout:
sudo usermod -a -G dialout $USER
Odhlaste se a znovu se přihlaste, aby se to projevilo. Na některých distribucích je skupina zvána uucp místo toho.
Krok 4: Výběr vaší desky
Přejděte na Nástroje > Deska > esp32 a zobrazí se vám velmi dlouhý seznam. Pokud má vaše deska specifickou položku podle jména, používejte ji, protože výrobce již nastavil velikost flash, PSRAM a definice pinů za vás. Pokud ne, použijte generickou položku vývojového modulu:
- ESP32-S2: ESP32S2 Dev Module
- ESP32-S3: ESP32S3 Dev Module
- ESP32-C6: ESP32C6 Dev Module
Seznam je dostatečně dlouhý, aby byl posun bolestivý. V Arduino IDE 2 můžete místo toho použít rozbalovací nabídku voliče desky v horní části okna a zadat do něj, což je mnohem rychlejší.

Obrázek 4: Výběr správného vývojového modulu
Krok 5: Možnosti desky, které opravdu záleží
Jakmile je deska vybrána, nabídka Nástroje se naplní možnostmi. Většinu z nich lze nechat být. Toto jsou ty, které vám způsobí potíže, pokud jsou špatné.
| Nastavení | ESP32-S2 | ESP32-S3 | ESP32-C6 |
|---|---|---|---|
| USB CDC Při startu | Povoleno | Povoleno | Povoleno |
| Režim USB | Není nabízeno | Hardware CDC a JTAG | Není nabízeno |
| Velikost Flash | Odpovídá modulu | Odpovídá modulu | Odpovídá modulu |
| PSRAM | Povoleno pouze pokud je osazeno | QSPI nebo OPI, podle toho, co je osazeno | Není podporováno |
| Frekvence CPU | 240 MHz | 240 MHz | 160 MHz |
| Schéma oddílů | Výchozí pro začátek | Výchozí pro začátek | Výchozí pro začátek |
| Rychlost nahrávání | 921600, snížit je-li nespolehlivé | 921600, snížit je-li nespolehlivé | 921600, snížit je-li nespolehlivé |
| Úroveň ladění jádra | Žádná | Žádná | Žádná |
USB CDC Při startu
Toto je jediná nejčastější příčina „můj skic se nahrál, ale sériový monitor nic neukazuje". Na desce používající nativní USB je sériový port, se kterým mluvíte, vytvořen samotným skicem. Pokud je USB CDC Při startu zakázáno, Serial je směrován na hardwarové UART piny místo USB zásuvky a nic na obrazovce neuvidíte. Nastavte na Povoleno.
Pokud vaše deska používá samostatný čip mostu USB na sériové rozhraní, nechte je zakázáno, protože v tomto případě Serial jde na UART piny, což je přesně to, co chcete.
Velikost flash a schéma oddílů
Nastavte velikost flash tak, aby se shodovala s modulem, ne na největší hodnotu v seznamu. Pokud řeknete IDE, že máte 16MB a modul má pouze 4MB, nahrávání se může zdát úspěšné a poté se deska bude restartovat nebo ztratí uložená nastavení.
Výchozí schéma oddílů je v pořádku, dokud váš kompilovaný skic nepřekročí oddíl aplikace. Když IDE začne stěžovat si, že je skic příliš velký, přepněte na jedno z větších schémat aplikací. Pokud máte v úmyslu provádět aktualizace over-the-air, potřebujete schéma se dvěma oddíly aplikací, protože OTA zapisuje nový obraz do náhradního před přepnutím.
PSRAM
PSRAM povolte pouze pokud má modul fyzicky. Povolení na modulu bez něj bude produkovat chyby při startu nebo proud chyb na sériovém výstupu. Na S3 musíte také volit mezi QSPI a OPI a získání toho špatně způsobuje stejné příznaky. Zkontrolujte číslo součásti modulu, pokud si nejste jisti. C6 nemá vůbec žádnou podporu PSRAM, takže se tato možnost neobjeví.

Obrázek 5: Možnosti desky v nabídce Nástroje
Krok 6: Najděte port
Zapojte desku a podívejte se na Nástroje > Port. Na Windows se zobrazí číslo COM. Na macOS se zobrazí něco začínajícího na /dev/cu.usbmodem pro nativní USB nebo /dev/cu.usbserial pro čip mostu. Na Linuxu to bude /dev/ttyACM0 nebo /dev/ttyUSB0.
Pokud se nic neobjeví, projděte si to v tomto pořadí:
- Vyzkoušejte jiný kabel. To vyřeší problém více než cokoli jiného.
- Vyzkoušejte jinou USB zásuvku, de se jedná zásuvku přímo na počítač místo přes rozbočovač.
- Zkontrolujte, zda má deska čip mostu, který potřebuje ovladač.
- Na Windows otevřete Správce zařízení a hledejte neznámé zařízení, které se objevuje a mizí, když zapojujete desku.
Existuje jedno chování nativního USB, které všechny překvapí poprvé. Port patří spuštěnému skicu, takže se při resetu zmizí a znovu se objeví o sekundu nebo dvě později. Pokud nahrajete skic, který se selhá brzy, port se může trvale ztratit, dokud se desku do režimu stahování nenutíte.
Krok 7: Vynucení režimu stahování
Pokud nahrávání selhá se zprávou o chybě připojení, musíte čip ručně vložit do režimu zaváděcího programu. Pořadí je vždy stejné:
- Podržujte tlačítko BOOT (někdy označované IO0).
- Stiskněte a uvolněte tlačítko RESET (někdy označované EN nebo RST).
- Uvolněte BOOT.
Deska nyní sedí v zaváděcím programu ROM a čeká. Na desce nativního USB se v tomto okamžiku vyjmenuje jako jiný sériový port, takže se vraťte do Nástroje > Port a vyberte nový dříve než budete nahrávat. Jakmile nahrávání skončí, stiskněte RESET samo o sobě a spusťte skic, původní port se vrátí.
Poznámky podle čipu
S2: z těchto tří je nejpravděpodobnější, že bude potřebovat ruční posloupnost tlačítek. Přinejmenším to dejte do zvyku a ušetříte si spoustu nadávání.
S3: obvykle se přepíná do režimu stahování automaticky přes nativní USB, ale ne vždy, zvláště pokud předchozí skic zakázal USB nebo se selhál během nastavení.
C6: obecně se chová dobře. Pokud se vám odepře, stejná posloupnost tlačítek platí.

Obrázek 6: Tlačítka BOOT a RESET - Na rátuťi je tlačítko POWER tlačítko RESET a tlačítko je tlačítko BOOT, například.
Krok 8: První skic k prokázání soupravy nástrojů
Odolte nutkavému zaujetí začínat blikem. Na mnoha deskách S3 a C6 je integrovaná LED adresovatelného RGB typu místo prostého, takže standardní skic blikání nedělá nic a zbývá vám přemýšlet, zda se nahrávání podařilo. Místo toho vytiskněte něco přes sériové připojení, protože to vám říká, že čip opravdu spouští váš kód a potvrzuje nastavení desky zároveň.
void setup() {
Serial.begin(115200);
delay(2000); // lets the USB serial port enumerate before we print
Serial.println();
Serial.println("ESP32 je naživu");
Serial.print("Model čipu : ");
Serial.println(ESP.getChipModel());
Serial.print("Jádra : ");
Serial.println(ESP.getChipCores());
Serial.print("Bajty Flash : ");
Serial.println(ESP.getFlashChipSize());
Serial.print("Volná paměť : ");
Serial.println(ESP.getFreeHeap());
}
void loop() {
Serial.print("čas provozu ms: ");
Serial.println(millis());
delay(1000);
}
Klikněte na šipku pro nahrání, poté otevřete Sériový monitor pomocí ikony zvětšovacího skla v horním pravém rohu a nastavte přenosovou rychlost na 115200. Měl byste vidět hlášení čipu. Pokud řádek modelu říká ESP32-S3 a vybrali jste desku S3, vše z IDE dolů do křemíku se správně komunikuje.
Zpoždění dvou sekund na začátku je tam úmyslně. S nativním USB hostitel chvíli trvá otevřít port po resetu, a vše vytištěné dříve je ztraceno. Nenahrazujte jej holou while (!Serial); smyčkou, protože na desce bez připojení k počítači to bude viset navždy. Pokud chcete čekat správně, dejte na něj časový limit:
while (!Serial && millis() < 3000) {
delay(10);
}
Krok 9: Instalace knihoven
Většina senzorů a periferií potřebuje knihovnu. Použijte správce knihoven, což je ikona knih v levém panelu nástrojů, nebo Skic > Zahrnout knihovnu > Spravovat knihovny. Hledejte, vyberte, instalujte a IDE nabídne také přinesení závislostech. Řekněte ano těm.
Pro knihovnu dodanou jako soubor ZIP, použijte Skic > Zahrnout knihovnu > Přidat knihovnu .ZIP. Rozpakuje se do složky knihoven v bovém sketchbooku a můžete také jednoduše vložit složku tam rukou, pokud dáte přednost. Restartujte IDE poté, pokud se ručně přidaná knihovna nezobrazí.
Jedna věc za to, aby si člověk dával pozor: ne každá Arduino knihovna funguje na ESP32, a z těch, které fungují, ne všechny fungují na všech třech čipech. Cokoliv, co přímo pokládá AVR registry nebo předpokládá starší periferní sadu ESP32 classic, se může nepodařit kompilovat na C6 zejména proto, že se jedná o RISC-V součást místo Xtensa. Pokud se knihovna odmítne zkompilovat, zkontrolujte její sledovač problémů dříve, než předpokládáte, že je vaše nastavení rozbité.
Udržování verzí pod kontrolou
Tato část je téměř všichni vynechávají a poté způsobují potíže za šest měsíců. Verze jádra, které vytváříte, ovlivňuje načasování, chování periferie a občas i smysl volání rozhraní API. Projekt, který byl postaven a létá dokonale v poslední sezóně, se může chovat odlišně po aktualizaci.
Dva zvyky stojí za to zformovat:
- Zapište si verzi jádra a verze knihovny, které jste použili, spolu s kódem. Komentář v horní části hlavní skiczu je dost.
- Neaktualizujte jádro uprostřed projektu, pokud na to nemáte důvod. Skončete, ověřte, poté aktualizujte, poté znovu ověřte, než se na něj budete spoléhat znovu.
Správce desek vám umožňuje vybrat si jakoukoli publikovanou verzi z rozbalovacího menu, ne jen tu nejnovější, takže návrat je přímočarý, pokud aktualizace něco rozbije.
Odstraňování problémů
| Symptom | Pravděpodobná příčina a oprava |
|---|---|
| Port se vůbec neobjeví | Nabíjení - pouze kabel, chybějící ovladač mostu, nebo rozbočovač v cestě. Zkuste nejdřív známý dobrý kabel. |
| Selhání připojení, nebo vypršení času čekání na hlavičku paketu | Čip není v režimu stahování. Použijte posloupnost BOOT a RESET, poté znovu vyberte port, který se objeví. |
| Nahrávání je úspěšné, ale sériový monitor je prázdný | USB CDC Při startu je zakázáno, nebo je přenosová rychlost špatná, nebo jste vytiskli dříve, než se port otevřel. |
| Neustálé restartování s důvodem rst vytisknutým na 115200 | Obvykle PSRAM povoleno, když není namontován, špatný režim PSRAM na S3, nebo špatná velikost flash. |
| Detektor výpadku napětí byl spuštěn | Nedostatečný proud zdroje, často během vysílání Wi-Fi. Použijte lepší zdroj nebo kratší kabel. |
| Skic příliš velký | Přepněte na schéma oddílů s větší oblastí aplikace. |
| Port zmizí v okamžiku, kdy se skic spustí | Skic se selhává během nastavení. Vynuťte režim stahování a nahrajte něco s vědomím dobra. |
| V seznamu desek se zobrazuje pouze Nano ESP32 | Nainstaloval jsi Arduino ESP32 Boards místo esp32 od Espressif Systems. Také nainstalujte balíček Espressif. |
| Deska se v seznamu neobjeví | Jádro příliš staré, zvláště pro C6. Aktualizujte na 3.x nebo později. |
| Kompilační chyby hned po instalaci jádra | Přerušené stahování. Odeberte balíček esp32 ve správci desek a nainstalujte jej znovu. |
Kde jít dál
Jakmile budete mít sériový výstup fungující, budete mít těžkou část za sebou. Vše po tom je prostě kód. Příklady, které se dodávají se jádrem, jsou dobrým místem pro začátek, a všechny jsou pod Soubor > Příklady jakmile je vybrána deska ESP32. Budou zobrazeny pouze příklady relevantní k čipu, který jste zvolili, což je užitečné samo o sobě, když se pokoušíte zjistit, co může určitá část dělat.
Pokud se něco v tomto průvodci neshoduje s tím, co vidíte, nastavení desky je první místo, kde se podívat. Devět z deseti je to USB CDC Při startu, velikost flash, nebo nastavení PSRAM.


