Progetti
hardware
- Come installare la IDE di
Arduino
- Configurazione e
piedinatura
- Caricamento dei programmi
- Come caricare le librerie
necessarie
Programmi
vari
Temperatura
e umidità con DHT11
Controllo
di 1 relè
Controllo
di 2 relè
DHT11
+ 1 relè
Creare
un Web server
Ricevere
la data e l'ora esatta
Programmi
con Telegram
Controllo
apertura di una porta
Controllo
apertura di due vani
Controllo
di due relè
Programmi con ThingSpeak
Una
stazione meteorologica con BMP680
Una
stazione meteorologica con GSP30
Programmi con in Db Firebase
Gestire
led/relè
Programmi con Mosquitto
(MQTT)
Programmi con LittleFS
|
ESP32
è il modulo più potente e versatile della serie ESPxxx,
infatti ha un processore dual-core che funziona fino a 240
MHz; memoria ROM di 448KB, SRAM di 520 Kb; nativamente si
connette al WIFI fino a 150 Mbps con HT40 e si connette
anche al Bluetooth (funzione mancante sia su ESP01 che
ESP8266). Possiede molte porte di collegamento, analogiche e
digitali con uscita PWM. Permette collegamento con
periferiche che utilizzano i protocolli I2C, SPI,
VSPI, HSPI. ESP32 accetta sulla porta "VIN" un'alimentazione a 5v, ma nativamente funziona a 3,3v; quindi utilizzare solo periferiche che lavorano a 3,3v, pena il danneggiamento irreversibile del microcontroller. Ci sono versioni a 30 o 38 pin. Purtroppo la disposizione dei piedini è diversa, quindi necessitano du due basette sperimentali disegnate e costruite ad hoc. Si trova in commercio cui siti cinesi, come Ali Express a circa 5 euro la versione ESP32S (38 pin) e a circa 4 euro ESP32 (30 pin); mentre su Amazon ESP32 si trova a 8 euro e a circa 10 euro la versione ESP32S. Se si acquistano 2 o 3 pezzi insieme, il prezzo si riduce (Aprile 2024). Il prezzo, assai competitivo, lo rende molto più appetibile rispetto a un Arduino Nano 33 IoT, dal costo decisamente superiore. Clicca qui per avere una esaustiva panoramica iniziale delle funzioni di ESP32. N.b.: questo è un collegamento a un sito esterno rispetto a Ethicaldiy. |
ESP32S (38 piedini) |
Nota:
I programmi scritti per ESP8266 sono simili a quelli per
ESP32. Tuttavia spesso sono necessarie piccole modifiche
afffinchè siano compatibili, specialmente nell'uso delle
librerie. Naturalmente al momento di compilare e
caricare i programmi, sarà necessario configurare la IDE
di Arduino per questa scheda.
Clicca qui per una
esauriente spiegazione (in inglese)
e
clicca qui per un breve ma
chiaro video in italiano.
Entrambi questi documenti sono esterni al nostro sito. |
|
La
connessione e programmazione di ESP32/ESP32S
|
ESP32
(30 piedini) |
Ci
sono tantissime versioni di ESP32/32S, per cui all'inizio,
aprendo la IDE di Arduino e vedendo quanti modelli si
trovano, si può essere disorientati. Ma seguendo alcuni
semplici passi si dovrebbe riuscire a connettersi in tempi
abbastanza brevi. Come nel free software ed open source si
trova inutile riscrivere i programmi, così ritengo sia lo
stesso per i manuali, quando altri hanno già provveduto (e
quasi sicuramente meglio di me), rimando al link del breve
manuale che ho seguito per connettermi ai miei moduli, sia
ESP32 che ESP32S. Ecco il link alla pagina che ho usato per la connessione. N.b: questa pagina è esterna al sito Ethicaldiy. |
Nota
1: nel caso non si riesca a caricare il primo sketch,
è importante non abbattersi. La pagina che ho indicato nel
riquadro precedente, dice di usare la scheda "ESP32 Dev
module", che quasi sempre funziona. Nel caso si andasse in
timeout, dalla IDE di Arduino cliccare su "Tools" (o
"Strumenti"), e poi su "Get Board info" ("Ottieni
informazioni sulla scheda") si dovrebbero ottenere queste
utili informazioni. Nel caso non apparisse nulla,
controllare di essersi collegati sulla porta seriale
corretta per questi moduli. Come si vede, le due schede
forniscono informazioni diverse. La mia ESP32S presentava le
stesse informazioni di qualla indicata nel manuale e infatti
ha funzionato immediatamente. Mentre la scheda ESP32 non si connetteva. Ho provato a ricercare questi dati sui forum specializzati, e dopo aver modificato alcuni dati, (vedi nota 2), il modulo ha funzionato correttamente. |
Nota
2: dopo aver ricercato le informazioni su internet, ho
modificato alcuni dati nella configurazione della scheda, e
allora anche ESP32 ha funzionato correttamente. Infatti la mia versione di ESP32 non funzionava con la seriale alla massima velocità, così l'ho abbassato a 460800 bps e ho modificato il "flash mode" da "QIO" a "DIO". Dopo, tutto ha funzionato correttamente. |