Domande frequenti su ESP32

Librerie ESP32: installare, usare, riparare

// librerie · faq

Categoria: ESP32 · Librerie · Aggiornato ad agosto 2026

Installare una libreria è la metà facile; la difficile è il mismatch di versione che rompe il build dopo. Dove vivono, come sceglierne una funzionante e cosa fare se l’esempio non compila.

Come installare una libreria ESP32 in Arduino?

Gestore librerie (Sketch → Includi libreria → Gestisci librerie), cerca, installa — la maggior parte delle librerie ESP32 è lì. La via manuale: scarica lo ZIP, Sketch → Includi libreria → Aggiungi libreria .ZIP. Un tranello: il Gestore librerie elenca tutto per ogni scheda, quindi filtra per tag ESP32 o controlla che il repo dica arduino-esp32. La FAQ sull’Arduino IDE copre il layout delle cartelle.

Come usare la libreria per GIF animate su ESP32?

AnimatedGIF di Larry Bank è quella giusta — abbinala a TFT_eSPI e riproduce GIF sugli schermi SPI comuni. Le GIF si decodificano in fotogrammi grezzi, quindi la RAM conta: un fotogramma 320×240 è circa 150KB, ed è per questo che l’animazione fatica sui chip da 2MB e canta sulle schede con PSRAM. Sul mio ILI9341 240×320 girava a circa 15 FPS, abbastanza fluido per un’animazione in loop. La pagina dei progetti di esempio ha un setup funzionante.

La libreria Hardware Serial è nell’ESP32?

Sì — HardwareSerial è integrata nel core, nessuna installazione necessaria. Serial, Serial1 e Serial2 esistono sull’ESP32 classico; su C3 e S3 la disponibilità di Serial1 e Serial2 dipende dal numero di UART del chip. ‘Harware serial’ è un refuso di ricerca; la stessa libreria integrata in ogni caso.

Perché la mia libreria compila su una scheda ma non su un’altra?

Config specifica della scheda — pin nei #define, presenza di PSRAM, dimensione della flash. Molte librerie ESP32 danno per scontato un WROOM-32 con 4MB di flash e hardcodano pin che le schede S3 instradano diversamente. Leggi il README della libreria per la tabella delle schede; se elenca schede, la tua deve esserci.

Libreria installata ma non trovata?

Riavvia l’IDE, poi controlla la cartella sketchbook: File → Preferenze la mostra, e le librerie utente stanno in <sketchbook>/libraries. Due fallimenti comuni: lo ZIP estratto in una cartella annidata (Arduino vuole il .h un livello sotto), oppure l’IDE ha in cache una copia corrotta — cancella e reinstalla. La knowledge base ha il percorso con gli screenshot.

L’aggiornamento del core ha rotto la mia libreria — e adesso?

Il salto da arduino-esp32 2.x a 3.x ha rinominato le API; le librerie fissate sui nomi vecchi falliscono con errori confusi. Soluzioni, in ordine: aggiorna la libreria, leggi il suo changelog, oppure blocca nel Gestore Schede la versione del core che la libreria nomina.

Librerie integrate vs di terze parti — qual è la differenza?

Integrata significa che la spedisce il core — WiFi.h, HardwareSerial, SPI, Wire. Di terze parti significa un repo esterno — sensori, display, servizi. Le integrate si aggiornano col core; le di terze parti col loro calendario, ed è esattamente per questo che bloccare le versioni conta.

Due librerie definiscono la stessa funzione — conflitto?

Sì, e il linker ne sceglie una in silenzio oppure dà errore. Il C++ non ti ferma; il risultato è un lancio di moneta su quale viene chiamata. Trova il duplicato dal messaggio di errore, poi disinstalla una delle due librerie o usa il suo namespace se ce l’ha. Ci sono incappato una volta con due librerie DHT; la soluzione è stata cancellare quella che non usavo mai.

Come capire di quale libreria ha bisogno uno sketch?

Leggi le righe #include, poi cerca ogni nome nel Gestore librerie — Adafruit BMP280, U8g2, quel che è. Il README o l’header dell’esempio di solito nomina il fork preferito dall’autore, e conta per le librerie rinominate. La libreria con problemi che vengono davvero chiusi è quella che funziona.

Posso scrivere la mia libreria ESP32?

Sì — una cartella con .h, .cpp e library.properties dentro <sketchbook>/libraries è una libreria. Esponi l’API che usi, tieni le specificità hardware nella config dell’header, e una libreria ESP32 è solo una libreria Arduino che fa #ifdef sugli header ESP32.

I progetti di questo argomento girano direttamente nel simulatore gratuito di sensbench: circuito pre-cablato, firmware incluso, senza account né installazione.

Leave a Reply

Your email address will not be published. Required fields are marked *