ESP32 (25) – Display oled con U8G2

Se avete letto il mio post ESP32, Wemos o non Wemos sapete che ho acquistato una scheda di sviluppo, clone della D-duino-32, con un modulo ESP-WROOM-32 e un display oled da 0.96″. Questo display, disponibile anche standalone su diversi siti web (eccolo ad esempio su Banggood) ha le seguenti caratteristiche: [checklist] dimensioni: 0.96 pollici risoluzione: 128×64 pixels controller: SSD1306 con interfaccia I2C alimentazione: 3.3V –…

ESP32 (24) – I2C un esempio pratico con sensore HTU21D

Nel precedente tutorial vi ho mostrato l’utilizzo del driver I2C incluso nel framework esp-idf per far comunicare il chip esp32 con dispositivi I2C. Oggi vedremo un esempio pratico: l’utilizzo di un sensore temperatura/umidità. Il sensore Per questo tutorial ho scelto di utilizzare il sensore HTU21D di Te Connectivity. Questo sensore offre una buona accuratezza ed è disponibile già saldato su…

ESP32 (23) – I2C basic

Nel tutorial di oggi impareremo ad interfacciare il chip esp32 a dispositivi esterni (sensori, display…) utilizzando un bus molto diffuso: il bus I2C. I2C I2C (si pronuncia i-quadro-c) è un bus di comunicazione seriale – inventato da Philips nel 1982 – che consente a due o più dispositivi di comunicare tra loro. I dispositivi connessi al bus si dividono…

ESP32 (22) – SPIFFS

In alcuni tutorial precedenti vi ho mostrato come includere elementi “esterni” al programma (immagini, certificati…) grazie alla funzionalità embedding binary data del framework. Oggi vi mostrerò invece come poter utilizzare una porzione della memoria flash per memorizzare dati, in maniera simile ad un disco fisso o una memory card. Partizioni e file system Avete già imparato dal mio quarto…

ESP32 (21) – Mutua autenticazione

Dopo aver pubblicato l’articolo su come realizzare un webserver con il chip esp32, alcuni utenti mi hanno scritto segnalandomi giustamente che chiunque, una volta collegato alla rete wifi, potrebbe comandare il relay e chiedendomi come poter controllare l’accesso al sito. Una soluzione classica (utilizzata anche in questo mio tutorial) è quella di richiedere l’inserimento di una password. Tale soluzione è molto semplice…

ESP32, Wemos o non Wemos

Wemos è un produttore cinese di schede IoT, molto noto per la famiglia di prodotti D1 Mini, che comprende schede basate sul chip ESP-8266EX e shield di espansione. Da qualche settimana Wemos ha lanciato una scheda basata sul nuovo chip ESP32, chiamata LOLIN32. Questa scheda ospita un modulo ESP-WROOM-32 e può essere alimentata tramite una batteria LiPo…

ESP32 (20) – Webserver

Uno dei progetti più popolari tra quelli inclusi nel mio tutorial sul chip enc28j60 è sicuramente WebRelay. Tale progetto consente di attivare una uscita di Arduino tramite una semplice pagina web, accessibile anche da smartphone. Oggi vedremo come eseguire WebRelay con il chip esp32; sarà l’occasione per spiegarvi come realizzare un server TCP, in particolare un web server. Netconn API Come ormai…

ESP32 (19) – NVS

Nel tutorial di oggi vedremo come poter salvare informazioni in maniera permanente, in modo che si conservino anche se il chip esp32 viene resettato o gli viene tolta l’alimentazione. NVS NVS (Non Volatile Storage – memorizzazione non volatile) è una libreria del framework esp-idf che consente di memorizzare informazioni (rappresentate dalla coppia chiave/valore) all’interno della memoria flash, il cui contenuto non viene…

ESP32 (18) – Access Point

In tutti gli esempi finora proposti, abbiamo utilizzato il chip esp32 in STAtion Mode, ovvero come client che si collega ad una rete wifi esistente. In un precedente articolo ho spiegato in dettaglio come interagiscono i vari componenti del framework esp-idf per stabilire la connessione e l’uso degli eventi per sincronizzare i vari tasks del nostro programma. Oggi vedremo come configurare il chip esp32…

ESP32 (17) – SNTP

In applicazioni embedded è spesso necessario avere a disposizione un orologio quanto più preciso possibile. Pensiamo ad esempio a dispositivi che si devono attivare in un preciso istante o a logger che devono memorizzare letture di una grandezza (ad esempio la temperatura esterna) a precisi intervalli. La soluzione spesso adottata è l’utilizzo di un chip RTC (Real Time Clock).…