Arduino IDE 2.x

ESP32-c2

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. :

Librerie Espessif  

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

Blink

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.

Inizio delle operazioni di riscrittura del firmware

Tre consigli:

WiFi

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:

ping

Pagina creata nel maggio 2026
Ultima modifica: 7 maggio 2026


Pagina principaleAccessibilitàNote legaliPosta elettronicaXHTML 1.0 StrictCSS 3

Vai in cima