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

Download dei file necessari

Assemblare la basetta sperimentale

Il settaggio della basetta

La  piedinatura di ESP32 e la gestione delle porte (GPIOx)

Le cinque  configurazioni della basetta sperimentale (BDS)

Elenco dei sensori/attuatori testati per ogni slot di collegamento

Programmi di test per la basetta
didattica e sperimentale



Informazioni di base:

- Come installare la IDE di Arduino
- Configurazione della IDE 
- Caricamento dei programmi
- Il problema dei permessi sulle porte seriali con Linux
- Come caricare le librerie necessarie

I sensori/attuatori compatibili con ESP32





Programmi per ESP32 CYD

Disegnare e scrivere
Inserire un'immagine
Caricare immagini da SD
Orologio controllato via internet
Stazione meteorologica via internet
Stazione meteorologica con BME280
Programmi con il DB Firebase
Programmi con MQTT (Mosquitto)
Programmi con LittleFS













 















ESP32 CYD
con display integrato





esp32cyd

Visione frontale

bk
Visione posteriore




I programmi presenti in questa pagina:

Ho pensato di inserire qualche programma per questo interessante microcontroller con video integrato, perché in internet spesso si trovano solo dei programmi molto banali, che non permettono di scoprire le vere potenzialità del prodotto.
Spero che quelli proposti siano interessanti e possano essere una base per successivi perfezionamenti e ulteriori sviluppi.


I programmi presenti in questa pagina non usano dei sensori o attuatori, quindi possono essere utilizzati anche stand-alone, ovvero sensa essere direttamente collegati alla nosta basetta:

In caso di problemi: consultare le informazioni di configurazione


Disegnare e scrivere con la libreria TFT_eSPI



La libreria "TFT_eSPI" di Bodmer permettono di disegnare e scrivere sul display con pochissime righe di codice.
A volte è necessario modificare il file "User_Setup.h". La libreria presente in questa pagina è già stato modificato (come indicato sul sito "randomnerdstutorial") e funziona perfettamente con la mia versione del display.
Su questa pagina, veramente esaustiva e ben fatta, si possono trovare tutti i comandi disponibili corredati da esempi.

Scarica la libreria TFT_eSPI modificata



Il programma è veramente semplice; Dopo aver richiamato le librerie necessarie, inizia riempiendo lo sfondo di vari colori; poi disegna una riga, un rettangolo, un quadrato, un cerchio e un triangolo con perimetri di vari colori; poi riempie le varie figure con un colore; infine stampa una frase sul video.

Clicca qui per visualizzare il programma
Clicca qui per scaricare il programma in formato ".zip"



immagine

Ho tratto le informazioni da questo video (é parte di una serie, utile da vedere tutta):
https://www.youtube.com/watch?v=E3NAmstft_8&list=PLwh4PlcPx2GcKJ17Z_xcAxQoh-Tmms_X1&index=3
Ho modificato leggermete il programme, per renderlo più completo

Inserire un'immagine come sfondo



Per utilizzare questo programma, oltre alla libreria TFT_eSPI illustrata per il programma precedente, è necessaria anche una seconda libreria, "LVGL" di Kisvegabor. Anche questa libreria, in vase alla versione della ESP32 CYD  acquistata, è necessario modificare il file "lv_conf.zip".
La libreria presente in questa pagina è già stato modificato (come indicato sul sito "randomnerdstutorial") e funziona perfettamente con la mia versione del display.


Scarica la libreria LVGL modificata



Le immagini di fondo devono essere in formato 240 x 320 pixel, e inoltre essere convertite in formato ".h". Potrebbe sembrare difficile, ma quando si è ottenuta l'immagine nelle dimensioni corrette, in formato BMP, JPG, PNG, è sufficielte caricarla nel programma "Image converter" e convertirla in formato "image.h".
La procedura è spiegata in modo chiaro ed esaustivo su quwsta pagina di "randomnerdstutorial".
Una volta ottenuta l'immagine, inserirla nella stessa pagina in cui è contenuto il programma.
Nota: scaricando il programma, si trovano alcune immagini in formato ".jpg" e in formato "image.h", quello utilizzato dal programma


tux
Tux, la mascotte di Linux

Clicca qui per visualizzare il programma
Clicca qui per scaricare il programma in formato ".zip"

Puoi trovare le informazioni complete per questo programma qui:
https://randomnerdtutorials.com/esp32-cyd-lvgl-display-image/



Richiamare immagini salvate su SD



L'ultimo programma di questa pagina, permette di far scorrere sullo schermo, direi con notevole semplicità, una serie di immagini in formato ".bmp". Come per il programma precedente, le immagini debbono essere tutte di dimensioni 240 x 320, ma ha il grande vantaggio che le immagini non devono essere convertiti in un formato particolare-
tigre


Il programma genera una specie di slideshow, una presentazione in cui le immagini scorrono dal basso all'alto.
È richiesta la libreria TFT_eSPI e SPI, già vista nel primo programma presentato, oltre alle librerie "SPI" (per la comunicazione con periferiche che usano questo protocollo) e "SD", per gestire la micro-scheda SD.

Il programma è corredato di una serie di una decina di immagini di test, già in formato ".bmp" e di dimensioni 240 x 320. Esse sono nella sottocartella "SD_images". Le immagini devono essere scaricate direttamente nella root della schedina SD.

Clicca qui per visualizzare il programma
Clicca qui per scaricare il programma in formato ".zip"


Ho tratto le informazioni da questo video (é parte di una serie, utile da vedere tutta):
https://www.youtube.com/watch?v=y66KPy53rZc&list=PLwh4PlcPx2GcKJ17Z_xcAxQoh-Tmms_X1&index=4







Ci sono vari programmi che trasformano un ESP32 in orologi controllati via internet, ma questo è particolarmente interessante, perché costruendo un piccolo guscio con una stampante 3D, è possibile trasformareil progetto in un simpatico orologio da casa.


Oltre alle "solite" librerie TFT_eSPI e LVGL, necessarie per gestire il video, sono richieste anche WiFi, HTTPClient (già presenti nel set delle librerie per ESP32) e ArduinoJson. Tutte possono essere facilmente scaricate dall'opzione di Arduino IDE sketch/#include librerie/Gestione librerie (vedi la pagina relativa alle librerie), o scaricare la mia versione cliccando sul nome evidenziato.
Insieme al programma, c'è anche un secondo file, denominato "arduino_secrets.h". È un semplice file di testo, in cui inserire il nome della tua rete WiFi e la password. Ho optato per questa soluzione, forse leggermente più complessa ma maggiormente sicura, perché questi dati sensibili non sono direttamente inseriti nel programma stesso.
L'unico intervento necessario per settare il programma, è selezionare il fuso orario; se sei in Italia è già corretto:
zona

orologio

Immagine dell'orologio tratto da "Randomnerdstutorials"
Clicca qui per visualizzare il programma
Clicca qui per visualizzare il file
"arduino_secrets.h"
Clicca qui per scaricare il programma e
"arduino_secrets.h" in formato ".zip"

Puoi trovare le informazioni complete per questo programma qui:
https://randomnerdtutorials.com/esp32-cyd-lvgl-digital-clock/







Una interessante stazione meteorologica, che oltre ai "canonici" indicatori di temperatura e umidità, simpaticamente mostra anche una  descrizione sintetica e l'immagine della situazione meteo attuale della tua città.
stazione meteo


Questo programma richiede le stesse librerie del progetto precedente, oltre a "arduino_secrets.h" (per le informazioni relative alla propria rete WiFi). È necessaria anche l'imagine "weather_images.h", che troverai nella cartella compressa del programma.
Puoi trovare le informazioni dettagliate del programma da questo link:
https://randomnerdtutorials.com/esp32-cyd-lvgl-weather-station/


data

Affinchè il programma dia le informazioni corrette, è necessario inserire alcune informazioni:
- latitudine e longitudine della propria città; informazioni che si possono facilmente reperire su wikipedia;
- inserire il nome della propria città;
- inserire la fascia oraria. Per tutta l'italia quella che vedi è già corretta.
Può succedere che trasferendo il programma sul microcontroller, appaia un errore di compilazione del tipo "sketch too big": è necessario modificare un parametro.
Cliccare sulla linguetta "Strumenti", poi "partition scheme..." e infine selezionare "Huge app (3Mb...)".
Ricompilare il programma. Finalmente dovresti vedere apparire le condizioni meteo della tua città!


errore

Ho fatto una piccola modifica al programma, in modo che le informazioni appaiano in italiano.

Clicca qui per visualizzare il programma (originale)
Clicca qui per scaricare il programma (originale, scritte in inglese) + accessori
Clicca qui per scaricare il programma (scritte in italiano) + accessori







Per contatti: etdiy@centroanahata.it