
Per utilizzare ESP32 con l'IDE 2.x di Arduino è necessario installare, oltre all'ambiente di sviluppo standard, il compilare e le librerie specifiche per questo processore. Esse sono distribuite direttamente da Espressif, produttore del chip ESP32 e disponibili su GitHub.
Quanto descritto è stato fatto con la scheda ESP32-C3 Supermini che vedete nella fotografia di apertura, ampiamente disponibile al costo di pochi euro, ma non dovrebbero esserci modifiche significative usando altre schede che utilizzano ESP32, sia single-core (come questa) che dual-core.
La procedura è stata testata su Debian trixie, la stable al momento della prima stesura di questa pagina, ma dovrebbe funzionare senza particolari modifiche anche con sistemi operativi più esotici. La versione dell'IDE à la 2.3.8, l'ultima alla data della prima stesura di questa pagina.
Innanzitutto è necessario scaricare l'ultima versione delle librerie Espessif (in questa pagina la 3.3.8), direttamente dalla Board Manager dell'IDE. :
Prima di procedere potrebbe essere necessario effettuare alcune configurazioni manuali:
Occorre quindi selezionare la scheda, dopo averla collegata al PC: Tools → Board → ESP32 → ESP32C3 Dev Module. Infine selezionare la porta: Tools → Port
Il codice seguente è comprensibile anche per il principiante assoluto di Arduino:
const byte LED = 8;
void setup() {
pinMode(LED, OUTPUT);
}
void loop() {
digitalWrite(LED, HIGH);
delay(500);
digitalWrite(LED, LOW);
delay(500);
}
Compilazione e programmazione si fanno con le medesime procedure di Arduino.

Tre consigli:
Uno degli aspetti più interessanti di ESP32 è la disponibilità di WiFi. Il seguente piccolo esempio mostra come connettersi ad una rete WiFi e stampare sul monitor seriale l'IP acquisito:
#include <WiFi.h>
const char* ssid = "MY_SSID";
const char* password = "MY_PASSWORD";
void setup() {
Serial.begin(115200);
Serial.print("Starting... ");
WiFi.begin(ssid, password);
int i = 0;
while (WiFi.status() != WL_CONNECTED) {
delay(1000);
Serial.print(++i); Serial.print(' ');
}
Serial.println("Connection established!");
Serial.print("IP address: ");
Serial.println(WiFi.localIP());
}
void loop() {
}
Da PC, ovviamente:

Pagina creata nel maggio 2026
Ultima modifica: 7 maggio 2026