La ESP32-C3 SuperMini è una delle ESP32 più piccole in commercio 22,5x18mm. Rappresenta una soluzione compatta e completa per progetti IoT o embedded. Dotata di connettività wireless integrata, basso consumo energetico e processore single-core, offre prestazioni elevate e versatilità.
Per l’utilizzo della ESP32-C3 Super Mini è disponibile anche una piccola Expansion Board progettata appositamente per la scheda a cui è possibile collegare una batteria al litio esterna da 3,7 V.
La ESP32 è la dev-board più apprezzata per i progetti DIY, soprattutto per la Smart Home. Spesso diventa però difficile ridurre le dimensioni dei proprio progetti, anche per le dimensioni di alcune schede molto diffuse. La ESP32-C3 Super Mini è una soluzione eccellente per chi ha poco spazio e vuole realizzare progetti DIY di ridotte dimensioni, senza rinunciare alle features offerte dalla ESP32.
Indice
Descrizione scheda ESP32-C3 SuperMini
La scheda di sviluppo ESP32-C3 SuperMini misura solamente 18 mm x 22,52 mm è una soluzione completa e compatta per progetti IoT e embedded, che unisce potenza e versatilità in un unico dispositivo.
Dotata di connettività wireless integrata, questa scheda facilita le comunicazioni e le connessioni senza fili grazie ai moduli WiFi e Bluetooth incorporati.
Uno dei punti di forza di questa piccola scheda ESP32-C3 SuperMini è il suo basso consumo energetico (87 mA in ricezione), garantito da un’efficiente gestione dell’alimentazione.
Questo la rende ideale per applicazioni che richiedono un funzionamento continuo su batteria.
Alcune caratteristiche della scheda
Connettività wireless integrata
La scheda ESP32-C3 SuperMini è dotata di connettività Wi-Fi da 2,4GHz IEEE 802.11 b/g/n ed una connettività Bluetooth 5 integrati.
Questo consente comunicazioni e connessioni wireless senza l’aggiunta di componenti esterni.
Basso consumo energetico
Il chip ESP32-C3 possiede una tecnologia avanzata di gestione dell’alimentazione, può funzionare in modalità a basso consumo energetico, estendendo la durata della batteria. Questo rende la scheda adatta per applicazioni che richiedono un funzionamento prolungato.
Interfacce e periferiche versatili
La scheda ESP32-C3 SuperMini offre una vasta gamma di interfacce, tra cui pin GPIO, UART, SPI, I2C, che consentono una facile connessione a una varietà di sensori, display e altri dispositivi esterni.
Sono disponibili 16 pin, di cui ben 13 sono GPIO tra cui 3 sono analogici.
Troviamo poi un Led blu, collegato al pin 8.
La programmazione viene effettata tramite un connettore USB Type-C, sulla scheda, troviamo anche un pulsante di Boot, necessario per il caricamento dello sketch, e uno di Reset.
Ciò offre una grande flessibilità nello sviluppo di progetti e permette di integrare facilmente componenti aggiuntivi.
Processore single-core
La scheda ESP32-C3 SuperMini utilizza un processore single-core, il chip ESP32-C3 a 32bit da 160MHz (SoC ESP32-C3FH4 o SoC ESP32-C3FN4) con 4MB di memoria flash e 400KB di RAM, e ROM di 384KB.
Può gestire più attività contemporaneamente, migliorando le prestazioni complessive del sistema e la velocità di risposta.
Questo può essere particolarmente utile per applicazioni che richiedono elaborazioni complesse o multitasking.
Ambiente di sviluppo user-friendly
Come sopradetto la scheda supporta la programmazione tramite l’IDE Arduino e anche MicroPython, insieme ad altri ambienti di sviluppo. Questo rende il processo di sviluppo semplice e intuitivo, consentendo agli sviluppatori di utilizzare gli strumenti con cui sono più familiari per creare le proprie applicazioni.
Alimentazione della scheda
La tensione di lavoro di questa dev-board è di 3,3V, tuttavia possiamo alimentare la scheda con i 5V direttamente dal connettore USB Type-C o da pin 5V presente sulla ESP32-C3 Super Mini.
Un Led rosso indicherà che la scheda riceve alimentazione.
Tipo | Parametro |
---|---|
Connettività wireless: | WiFi 802.11 b/g/n |
Bluetooth Low Energy (BLE) 5.0 | |
Core | RISC-V |
Frequenza operativa | 2.4 GHz |
Velocità dati massima | 150 Mbps |
Potenza in uscita | 18 dBm |
Sensibilità | - 105 dBm |
Tensione di alimentazione | 3V÷ 3.6V |
Corrente di alimentazione in ricezione | 87 mA |
Corrente di alimentazione in trasmissione | 325 mA |
Dimensioni memoria programma | 4 MB |
Temperatura di esercizio | 40°C÷85°C (TA) |
Risoluzione ADC | 12 bit |
Larghezza bus dati | 32 bit |
Dimensioni RAM dati | 400 kB |
Tipo RAM dati | SRAM |
Tipo interfaccia | GPIO (pin di Input/Output) |
SPI (Serial Peripheral Interface) | |
I2C (Inter-Integrated Circuit) | |
UART (Universal Asynchronous Receiver-Transmitter) | |
Frequenza di clock massima | 160 MHz |
Numero di canali ADC | 6 canali |
Package / Case | QFN-32 |
Expansion Board per ESP32-C3 SuperMini
La Expansion Board è progettata appositamente per la scheda di sviluppo ESP32-C3-SuperMini.
Utilizzando l’ Expansion Board è possibile collegare per esempio una batteria al litio esterna da 3,7 V e supportare la sua ricarica tramite USB. A tal proposito è presente un indicatore rappresentato da un led verde che si accende durante la ricarica. Quando la spia verde si spegne, la batteria al litio è completamente carica.
Questa Expansion Board rende accessibili tutte le 10 porte, consentendo agli utenti di installare facilmente vari sensori.
E’ inoltre possibile collegare una batteria ai polimeri di litio 3,7 V dotata di un connettore tipo PH2.0 ( passo 2mm) come quello visibile nella seguente immagine.
Principali componenti presenti sul PCB
Lo schema elettrico della Expansion Board per ESP32-C3 SuperMini non è disponibile, ma è formato principalmente da:.
- Un chip per caricare la batteria;
- un chip regolatore LDO, in grado di ridurre la tensione della batteria da 3,7V a quello dei 3,3V di alimentazione della scheda.
- S2WD (package SOT23-5 – datasheet) potrebbe essere un S2rc_ME6211C33M5G-N un regolatori LDO ad alta velocità, PSRR elevato, basso rumore, VIN=4,3 V, VOUT=3,3 .
- LTH7R (package SOT23-5 – datasheet) Si tratta di un chip per la gestione della carica a corrente/tensione costante, utilizzato per caricare batterie al litio a cella singola. Il circuito applicativo non richiede un resistore di rilevamento esterno. La sua struttura interna è un MOSFET, quindi non è necessario un diodo inverso esterno. Il chip gestisce direttamente il led per mostrare lo stato di carica.
- W5 (package SOD-323 – datasheet ) diodo Schottky
- A19T (package SOT23-3 – datasheet) – MOSFET canale P
Una particolarità della Expansion Board per ESP32-C3 SuperMini e che permette di fornire due tipo di tensione: VCC1 o VCC2.
La tensione di uscita predefinita per VCC1 e VCC2 è 3,3 V. Quando è necessaria una tensione più alta, è possibile agire sul PCB (come mostrato di seguito).
La resistenza 0R predefinita utilizzata in fabbrica è collegata a 3,3 V. Se è necessario emettere 3,7 V, rimuovere direttamente la resistenza 0R e cortocircuitare i tre pad con stagno. VCC1 e VCC2 controllano rispettivamente la tensione di uscita.
Dove trovare la ESP32-C3 SuperMini la sua Expansion Board
La scheda ESP32-C3 SuperMini e la sua Expansion Board può essere acquistata su vari siti online
- Scheda ESP32-C3 SuperMini, presso il sito Futura Elettronica – codice prodotto 1606-HESP32C3
- Doppia scheda ESP32-C3 SuperMini, presso il sito Amazon
- Doppia scheda ESP32-C3 SuperMini completa di Expansion Board presso il sito Amazon
- Scheda ESP32-C3 SuperMini e Expansion Board presso , presso il sito Aliexpress
Gestione del modulo da parte dell’IDE
Installazione del pacchetto EPS32
Se non abbiamo mai utilizzato un modulo ESP32, per prima cosa abbiamo bisogno del pacchetto ESP32 nell’IDE di Arduino.
Quindi si dovrà aprire l’IDE di Arduino e andare su File -> Preferenze.
E immettere il seguente indirizzo nelle impostazioni predefinite:
https://espressif.github.io/arduino-esp32/package_esp32_index.json
Quindi confermare poi con OK .
Ora si vai su Strumenti -> GESTORE SCHEDE e si cercherà “ESP32”
Una volta installato il pacchetto, i modelli ESP32 saranno disponibili nell’IDE di Arduino.
Impostazione corretta della scheda
Per caricare il proprio sketch occorre selezionare la nostra scheda.
Per cui si andrà sotto “Gestore Schede“, “esp32” e si sceglierà “ESP32C3 Dev Module”
si dovrà anche verificare la sua impostazione. Il mio consiglio è di modificare due impostazioni
- “USB CDC On Boot” ponendola su “Enabled“
- “Erase All Flash Before Sketch Upload” ponendola su “Enabled“
A questo punto si potrà collegare la scheda e quando il SO riconoscerà la scheda si verificherà su quale porta è stata collegata, nel nostro caso su “COM4“.
Ora la scheda è pronta per essere utilizzata.
Primo test della scheda
Come primo test potremo utilizzare il famoso Sketch “Blink”, che farà lampeggiare il led integrato nella scheda, connesso al pin 8.
Per cui cerchiamo lo Sketch nel percorso File -> Esempi -> Basic e inseriamo una linea che definisca il pin LED_BUILTIN a 8
1 |
# define LED_BUILTIN 8 |
Sotto lo Sketch “Blink
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
# define LED_BUILTIN 8 // the setup function runs once when you press reset or power the board void setup() { // initialize digital pin LED_BUILTIN as an output. pinMode(LED_BUILTIN, OUTPUT); } // the loop function runs over and over again forever void loop() { digitalWrite(LED_BUILTIN, HIGH); // turn the LED on (HIGH is the voltage level) delay(1000); // wait for a second digitalWrite(LED_BUILTIN, LOW); // turn the LED off by making the voltage LOW delay(1000); // wait for a second } |
Per la programmazione, premiamo il pulsante BOOT, in questo modo la dev-board entrerà in modalità di programmazione. Lanciamo il trasferimento del programma sull’IDE.
Poiché questa scheda non supporta il reset con il pin RTS, dobbiamo farlo manualmente.
Per cui occorrerà a conclusione del download, premere il tasto Reset sulla scheda.
A questo punto il led BLU inizierà a lampeggiare.
Test di prova per riconoscimento Reti Wi-Fi
Per verificare che la scheda ESP32-C3 SuperMini riconosca le reti Wi-Fi presenti si potrà ricorrere al programma disponibile nell’IDE e che si trova File -> Esempi -> ESP32 -> WiFiScan
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 |
#include "WiFi.h" void setup() { Serial.begin(115200); // Set WiFi to station mode and disconnect from an AP if it was previously connected. WiFi.mode(WIFI_STA); WiFi.disconnect(); delay(100); Serial.println("Setup done"); } void loop() { Serial.println("Scan start"); // WiFi.scanNetworks will return the number of networks found. int n = WiFi.scanNetworks(); Serial.println("Scan done"); if (n == 0) { Serial.println("no networks found"); } else { Serial.print(n); Serial.println(" networks found"); Serial.println("Nr | SSID | RSSI | CH | Encryption"); for (int i = 0; i < n; ++i) { // Print SSID and RSSI for each network found Serial.printf("%2d",i + 1); Serial.print(" | "); Serial.printf("%-32.32s", WiFi.SSID(i).c_str()); Serial.print(" | "); Serial.printf("%4d", WiFi.RSSI(i)); Serial.print(" | "); Serial.printf("%2d", WiFi.channel(i)); Serial.print(" | "); switch (WiFi.encryptionType(i)) { case WIFI_AUTH_OPEN: Serial.print("open"); break; case WIFI_AUTH_WEP: Serial.print("WEP"); break; case WIFI_AUTH_WPA_PSK: Serial.print("WPA"); break; case WIFI_AUTH_WPA2_PSK: Serial.print("WPA2"); break; case WIFI_AUTH_WPA_WPA2_PSK: Serial.print("WPA+WPA2"); break; case WIFI_AUTH_WPA2_ENTERPRISE: Serial.print("WPA2-EAP"); break; case WIFI_AUTH_WPA3_PSK: Serial.print("WPA3"); break; case WIFI_AUTH_WPA2_WPA3_PSK: Serial.print("WPA2+WPA3"); break; case WIFI_AUTH_WAPI_PSK: Serial.print("WAPI"); break; default: Serial.print("unknown"); } Serial.println(); delay(10); } } Serial.println(""); // Delete the scan result to free memory for code below. WiFi.scanDelete(); // Wait a bit before scanning again. delay(5000); } |
Se tutto andrà a buon fine attivando il monitor seriale, verificare che sia impostato su “115200” appariranno le reti che la scheda riceve.
Nuova versione della scheda V 2.0
Attualmente si può trovare in vendita la versione 2.0 della scheda ESP32-C3 SuperMini, questa presenta i seguenti miglioramenti
- LED RGB integrato, sempre connesso al pin GPIO8;
- Antenna con connettore antenna EXT. L’antenna integrata è quella predefinita;
- Firmware e design dell’antenna migliorati;
- Migliori prestazioni e minor consumo energetico, ±43μA (deep sleep).
Per il resto le caratteristiche sono quelle della versione precedente.
Altra scheda basata su ESP32-C3
La scheda Wemos LOLIN C3 Pico è una piccola scheda, misura solo 25,4 × 25,4 mm, pari ad un 1″ quadrato. Basata sull’ESP32-C3 RISC-V, dispone di connettività WiFi a 2,4 GHz e Bluetooth Low Energy, alcuni I/O.
E’ dotata on-board del supporto per batteria Li-Po, inclusi i circuiti di ricarica.
Sul PCB sono inoltre presenti un LED RGB e un connettore I2C per collegare display o sensori.
La LOLIN C3 Pico con ESP-32-C3 offre 4MByte di memoria Flash, 11 pin digitali di I/O che supportano PWM, I2C e One-Wire (tranne D0) tutti funzionanti con una tensione massima di 3,3Vcc e 1 ingresso analogico (max 3,2Vcc).