ESP32S2 mini

ESP32S2 mini o ESP32 S2 mini è una board relativamente recente e che solo da pochi giorni ho avuto a disposizione per un test.

ESP32S2 mini blink off_II

La cosa che mi ha colpito, da subito, è che appena connessa, mediante un cavo USB-C, al computer non si è acceso alcun led e non è comparsa la porta USB tra quelle disponibili nell’IDE Arduino.

La prima cosa che ho pensato è che fosse danneggiato, almeno un led per segnalare che si fosse accesso me lo sarei aspettato.

Ad una attenta analisi un led è presente sulla scheda ma, ho scoperto in seguito, essere connesso ad un pin ( il 15 ) e non all’alimentazione.

Dopo qualche ricerca in internet ho trovato ciò che stavo cercando, ma andiamo con ordine.

ESP32S2 mini

Il packaging non è particolarmente curato, tuttavia, sappiamo che a noi interessa la sostanza delle cose e non l’apparenza 😀

ESP32S2 mini box

per cui una volta aperta la bustina antistatica in cui ti arriva vedrai che al suo interno ci sono tutte le parti necessarie, ossia:

  • la board esp32 s2 min;
  • 4 header maschi da 8 pin ciascuno;

lo so, non è molto, ma è davvero tutto quello di cui hai bisogno in questo primo test della scheda:

ESP32S2 mini unboxing

inoltre ho trovato tutta la documentazione di cui puoi aver bisogno online, sul sito ufficiale wemos.

Caratteristiche della ESP32S2 mini

Le caratteristiche della ESP32S2 mini, come hai letto, le puoi trovare sul sito ufficiale, anche se te ne propongo alcune di seguito per poterle analizzare insieme:

Operating Voltage 3.3V
Digital I/O Pins 27
Clock Speed 240MHz
Flash 4M Bytes
PSRAM 2M Bytes
Size 34.3*25.4mm
Weight 2.4g

come la maggior parte delle schede della serie ESP32, o meglio quelle che utilizzano questo microcontrollore, funziona a 3,3v e 240 MHz di clock speed.

ma la caratteristica che ho trovato più interessante è la disponibilità di 27 pin I/O, che nella documentazione ufficiale definisce come pin Digitali, tuttavia indagando meglio ho trovato che il pinout è davvero molto interesante:

ESP32 S2 mini pinout

come noti dalla figura del pinout, presa dal sito oprosthetics.org la funzione dei pin è tutt’altro che solo di Digital I/O.

L’ ESP32S2 mini infatti ti mette a disposizione:

Pin analogici 18
Digital I/O Pins 27
Pwm Pins 27
SPI 4
DAC ( Digital to Analog Converter ) 2
Touch Pins 14
UART / I2C 27

Inoltre dispone di un led ( builtin ) connesso al pin 15, che userai nel prossimo test, e sue pulsanti:

  • uno di reset ( RST )
  • uno denominato “Button 0”

oltre ai pin VBUS ( +5v ), al 3,3v e Gnd.

Sono numeri molto interessanti in termini di disponibilità di pin e segnali a disposizione.

Primo sketch

Il primo sketch che puoi usare per testare la comunicazione con l’IDE Arduino è, come sempre il Blink a cui dovrai applicare solo qualche piccola modifica relativa al pin:

 

in quanto sull’ESP32S2 definisto nell’IDE Arduino il valore della costante LED_BUILIN non corrisponde a 15.

Ecco la modifica, semplicissima che puoi eseguire:

void setup() {
  // initialize digital pin LED_BUILTIN as an output.
  pinMode(15, OUTPUT);
}

// the loop function runs over and over again forever
void loop() {
  digitalWrite(15, HIGH);  // turn the LED on (HIGH is the voltage level)
  delay(1000);                      // wait for a second
  digitalWrite(15, LOW);   // turn the LED off by making the voltage LOW
  delay(1000);                      // wait for a second
}

ossia al posto di LED_BUILTIN ho sostituito il valore 15 corrispondente al pin a cui è connesso il led montato sulla board.

Caricare lo sketch Blink

Come hai letto già nel primo paragrafo appena connessa la scheda al computer non si è attivata, almeno nel mio caso, alcuna porta USB nell’IDE Arduino per poter trasferire il codice del Blink sulla scheda.

Dopo qualche ricerca ho trovato un utile video, che ti riporto sotto, in cui l’autore ha descritto come procedere per rendere la porta visibile sull’IDE Arduino.

Ecco come puoi procedere:

ESP32S2 mini reset DFU mode

  • collega la porta USB;
  • premi contemporaneamente premuti i tasti “Button 0” e “RST” per 10 secondi circa;
  • rilascia i pulsanti e vedrai la porta comparire sull’IDE:

ESP32S2 mini arduino IDEImposta i parametri extra come mostrato in figura, in particolare:

  • USB CDC On Boot: “Enabled”
  • PSRAM: “Enabled”
  • Upload Mode: “Internal USB”

a questo punto potrai trasferire il blink che hai scritto sopra.

Al primo invio dello sketch dovrai premere manualmente il tasto RST per avviare il programma, dalla volta successiva non sarà più necessario eseguire la procedura e neppure premere il tasto reset alla fine di ogni upload del codice.

Otterrai il led acceso per un secondo:

ESP32S2 mini blink on_II

ed il led spento per un secondo:

ESP32S2 mini blink off_II

e il ciclo continua all’infinito .. il Blink insomma.

Video istruzioni ESP32 in DFU mode

Ecco il video di cui ti ho descritto sopra la procedura:

Sei pronto per usare la tua nuova ESP32 S2 mini nei tuoi prossimi progetti.

  • Questo sito ed i suoi contenuti è fornito "così com'è" e Mauro Alfieri non rilascia alcuna dichiarazione o garanzia di alcun tipo, esplicita o implicita, riguardo alla completezza, accuratezza, affidabilità, idoneità o disponibilità del sito o delle informazioni, prodotti, servizi o grafiche correlate contenute sul sito per qualsiasi scopo.
  • Ti chiedo di leggere e rispettare il regolamento del sito prima di utilizzarlo
  • Ti chiedo di leggere i Termini e Condizioni d'uso del sito prima di utilizzarlo
  • In qualità di Affiliato Amazon io ricevo un guadagno dagli acquisti idonei qualora siano presenti link al suddetto sito.

Permalink link a questo articolo: https://www.mauroalfieri.it/elettronica/esp32s2-mini.html

4 commenti

Vai al modulo dei commenti

    • Marcello il 24 Febbraio 2024 alle 23:46
    • Rispondi

    Grazie per il post.
    Ma come si può collegare ad una breadboard un chip bifilare come questo ESP32S2 mini?

    1. Ciao Marcello,
      purtroppo non è possibile, potresti decidere di sacrificare una delle due linee per lato se non to servono tutte.

    • Lidiano il 6 Marzo 2024 alle 09:47
    • Rispondi

    Ciao sto provando a usare questa scheda, ho fatto come hai spiegato e ci sono riuscito, grazie intanto, ho bisogno di collegare ESP32S2 mini ad un display ST7789, questo primo problema non so come fare, poi lo sketch che devo caricare usa la libreria TFT_eSPI, devo fare modifiche qui, mi aiuti per favore Grazie

    1. Ciao Lidiano,
      via commento posso aiutarti a risolvere eventuali errori, per quelloc he mi chiedi è forse meglio una call, scrivimi una email all’indirizzo info del blog e ci accorderemo su come procedere.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato.

Questo sito usa Akismet per ridurre lo spam. Scopri come i tuoi dati vengono elaborati.