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…

CH340G board

Su questo sito vi ho già parlato del chip CH340G, prodotto da una azienda cinese e utilizzato come alternativa economica ai classici chip convertitori USB -> seriale, come quelli di FTDI. Visto che il package del chip (SOP16) lo rende facilmente saldabile anche a mano, ho ordinato da AliExpress alcuni esemplari e ho disegnato una demoboard minimale, basata sullo schema di riferimento:…

AiR – Assembliamo il robot

Iniziamo oggi ad assemblare il kit di Banggood che costituirà la piattaforma robotica con cui giocheremo nei prossimi tutorial… Prima di iniziare, rimuoviamo la pellicola protettiva dalle tutte le parti in acrilico: Montiamo il primo motore sullo chassis. Ci servono il motore, due viti con i relativi dadi, i due supporti in acrilico e la rotella plastica…

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).…

ESP32 (16) – IFTTT

Dopo aver pubblicato il tutorial relativo all’invio di SMS con il chip ESP32, ho ricevuto diversi commenti tramite il sito web da parte di utenti che chiedevano un modo di inviare notifiche gratuite. Oggi vi mosterò una possibile soluzione; sarà anche l’occasione per parlarvi di IFTTT e dello sviluppo di componenti custom per il framework esp-idf. IFTTT IFTTT (IF This Then That – Se questo…

ESP32 (15) – mDNS

Quando navighiamo su Internet, il servizio DNS (Domain Name System) si occupa di “tradurre” (risolvere) i nomi nei corrispettivi indirizzi IP. Se ad esempio digitiamo www.google.com nel nostro browser, il nostro computer interroga il server DNS – normalmente quello messo a disposizione dal nostro provider – e ottiene da questo l’indirizzo IP del server che ospita il sito di Google:…

Raspberry Pi Zero, audio output via I2S

Pi Zero è una piccola scheda – parte della famiglia Raspberry – pensata per applicazioni embedded. Il suo bassissimo costo (circa 10€ per la versione W, con connettività wifi) e la capacità di eseguire diversi sistemi operativi la rende la scelta ideale per diverse applicazioni (media center, datalogger…). La scheda Pi Zero purtroppo non offre un connettore audio dedicato: normalmente infatti…

ESP32 (14) – esp-idf v2 e come gestire le diverse versioni

Il giorno 6 Aprile Espressif ha rilasciato la versione 2.0 del framework esp-idf. L’elenco completo delle nuove features e dei bug risolti è disponibile su Github, vediamo quelli più significativi (a mio parere ;)): [checklist] sono stati introdotti o resi stabili nuovi drivers per periferiche quali I2C, I2S, SPI Master, SDMMC è stata introdotta la possibilità di lanciare un monitor…