Ethical DIY

Progetti hardware & software etici


Menu orizzontale con sottomenu CSS








 

Versione di ESP32

NodeMCU ESP32 (standard)

ESP32 - Cam (con telecamera)

ESP32 CYD (con display)



La basetta sperimentale (BDS)

La basetta sperimentale (BDS)  per ESP32x: intro e download

Assemblare la basetta sperimentale

Il settaggio della basetta

La gestione delle porte (GPIOx)

Le cinque  configurazioni della basetta sperimentale (BDS)

Elenco dei sensori/attuatori testati per ogni slot di collegamento




Informazioni di base:

- Come installare la IDE di Arduino
- Configurazione e piedinatura
- Caricamento dei programmi
- Come caricare le librerie necessarie

Piedinatura di ESP32 a 30 o 38 pin



Programmi per ESP32x




Link utili






 















La basetta sperimentale (BDS)
con ESP32/32S/CYD e display LVGL

Purtroppo nella famiglia ESP32x non è stata scelta la stardandizzazione, infatti è commercializzata con diversi numeri di pin (30, 36 o 38) e varie dimensioni, oltre una versione con display integrato
Ci si è sforzati di progettare la basetta sperimentale, che con dimensioni all'incirca di un foglio A5 (200 x 140 mm) possa ospitare alcune delle tipologie più utilizzate del nostro microcontroller.
Infatti può ospitare alternativamente un ESP32 (30 pin), o un ESP32S (38 pin) e anche un ESP32 con display LGVL da 2.8" integrato. Inoltre è stato inserito uno slot per ospitare un display LGVL da 2.8", da abbinare con gli ESP32x senza display integrato, creando cinque configurazioni di base, ovvero:

  1. configurazione con ESP32 (30 pin);
  2. configurazione con ESP32s (38 pin);
  3. configurazione con ESP32 (30 pin) + display LVGL da 2.8";
  4. configurazione con ESP32s (38 pin) + display LVGL da 2.8";
  5. configurazione con ESP32 CYD con display LVGL da 2.8" integrato.

Di seguito verranno illustrate maggiormente nel dettaglio le cinque configurazioni.




La prima configurazione: ESP32 (30 pin)



esp32



In questa configurazione, il microcontroller verrà inserito sullo zoccolo più interno, denominato "U2". Una curiosità: nel programma "EasyEda", che ho usato per disegnare la basetta sperimentale, non ho trovato un modello di un ESP32 a 30 pin corrispondente alle dimensioni del microcontroller che acquistai; l'unico disponibile poneva ile due file di piedini troppo distanti; ovviai al problema inserendo una fila di piedini interna rispetto al modello originale.  So che non è una soluzione molto professionale, ma non mi sentivo di disegnare un nuovo modello di ESP32 per conto mio. Poichè le due file adiacenti di piedini sono collegati in parallelo, nel caso chiuserà questa basetta con il modello "più largo", avrà la possibilità di utilizzare anche il suo microcontroller, aumentando ancora la flessibilità del progetto.

es_pcb
Nel riquadro rosso la pie-dinatura per il "mio" ESP32.
Gli zoccoli per ESP32s e ESP32 (rispettivamente U1 e U2), sono connessi in parallelo; per esempio GPIO21 presente su U1, corrisponde al GPIO21 presente su U2. E questo vale per tutte le porte in comune tra i due microcontroller; ESP32 a 30 pin non presenta in uscita i pin corrispondenti alle seguenti porte:
- GPIO0
- GPIO6
- GPIO7
- GPIO8
- GPIO9
- GPIO10
- GPIO11
Questo però non è un grave problema, in quanto le porte da GPIO6 a GPIO11 non possono essere utilizzate dall'utente; l'unica porta che potrtebbe essere utilizzata con qualche cautela è GPIO0.
Lateralmente allo zoccolo per ESP32S, sono presenti due file di connettori, denominati H1 a sinistra e H2 a destra del microcontroller, su cui sono duplicate tutti i 38 pin di ESP32s. Per cui se fosse necessario, inserendo dei cavetti nei connettori corrispondenti, si potrebbero effettuare i collegamenti con le periferiche. Naturalmente se si fosse inserito un ESP32 a 30 pin su U2, si potrebbero utilizare tutti i collegamenti per le porte comuni, escludendo quindi le sette porte indicate precedentemente.

esp32s_pcb

La duplicazione delle porte (H1 e H2) presenti lateralmente allo zoccolo per ESP32S.
Nei riquadri rossi sono indicate le porte non presenti su ESP32 a 30 pin.



La seconda configurazione: ESP32S (38 pin)



sp32s



In questa seconda configurazione, ESP32S verrà inserito sullo zoccolo più esterno, denominato U1.
Non c'è nulla di particolare da aggiungere, in quanto le considerazioni sulle porte disponibili sono già state discusse nel paragrafo dedicato a ESP32 con 30 pin.



La terza configurazione: ESP32 con display LVGL da 2.8"



32_dsp



Questa terza configurazione è pmolto interessante, perché se il programma viene strutturato in modo corretto, è possibile visualizzare sul display LVGL da 2,8" una preziosa serie di informazioni, per esempio rilevate dai sensori, oltre che a immagini ad altarisoluzione. Inoltre il display integra anche uno slot per microSD, per cui è possibile salvare/leggere/modificare o cancellare informazioni presenti sulla schedina, ampliando le possibilità del proprio progetto.
Nota: il display LVGL si inserisce su uno zoccolo personalizzato, e a volte sarà necessario inserire un'istruzione nel programma per ruotare l'immagine di 180°. Il display usa delle porte dedicate solo ad esso, per cui non andrà in conflitto con alcuna altra periferica, se non nel caso che si utilizzi lo zoccolo universale "DATA", in cui sono presenti tutte le porte presenti sui microcontroller, e quindi anche quelle dedicate al display.



La quarta configurazione: ESP32S con display LVGL da 2.8"



32s_dsp



Questa configurazione, al di là del fatto che utilizza un ESP32S, è molto simile alla precedente, per cui valgono       le stesse considerazioni.



La quinta configurazione: ESP CYD (ESP32 con display LVGL da 2.8" integrato)



dsp



La quinta configurazione è particolare e sicuramente interessante: infatti si tratta di un ESP32 con integrato un display LVGL da 2.8", spesso denominato ESP32 CYD (ovvero Cheap Yellow Display - display giallo economico). Inoltre integra anche uno slot per microSD, per cui è possibile salvare/leggere/modificare o cancellare informazioni presenti sulla schedina, ampliando le possibilità del proprio progetto. Il microcontroller può essere connesso fisicamente alla basetta inserendo quattro perni che si inseriscono nei fori corrispondenti presenti sulla scheda; mentre le uscite presenti in varie zone di ESP32 CYD possono confluire in un unico connettore maschio che si collega al connettore "LVGL ESP32".
In uno spazio simile a quello del semplice display (con dimensioni simili, ma non identiche, solito problema di standardizzazione!) si trova un sistema completo, che può quindi essere inserito con grande facilità in un progetto più ampio.
Per contro, lascia a disposizione dell'utente un numero limitato di porte, ovvero:
- GPIO21
- GPIO22
-GPIO26
-GPIO27
-GPIO35
Per questo motivo può utilizzare un numero minore di zoccoli dedicati agli utenti. Si potrebbe pensare che il suo utilizzo sia molto limitato. Però nel progettare la basetta sperimentale, si è tenuto conto di questo problema, in modo di massimizzare le possibilità di utilizzo.
Infatti ESP32 CYD può collegarsi ai seguenti connettori:
-IC21
-IC22
-IC23
-IC24
-GPS1 o GPS2
-DA2
-DA4
-MT1 o BZ1
Sfruttando bene le possibilità fornite dai vari zoccoli, in cui per alcuni si possono variare le porte collegate, si potrebbero collegare un buon numero di sensori/attuatori.
A titolo di esempio, si potrebbero collegare ben quattro periferiche che utilizzano il protocollo I2C su IC21/2/3/4; un sensore GPS su GPS1 o GPS2; un altoparlante, un relè o un qualsiasi semplice sensore su BZ1. Perciò potrebbe gestire ben sei periferiche contemporaneamente!

Si possono trovare informazioni complete su questa periferica al seguente indirizzo:
https://randomnerdtutorials.com/lvgl-cheap-yellow-display-esp32-2432s028r/


slot
Ecco lo zoccolo su cui si possono collegare i vari connettori presenti su ESP32 CYD, im modo da connetterlo alla nostra basetta sperimentale.






Per contatti: info@ethicaldiy.org