ESP32 (8) – connessione tcp

Dopo aver imparato come collegare il chip esp32 alla nostra rete wifi, oggi vediamo come inviare e ricevere dati. lwIP Il framework esp-idf utilizza la libreria lwIP per implementare lo stack di protocolli TCP/IP. Questa libreria, inizialmente sviluppata da Adam Dunkels e ora mantenuta da una community di sviluppatori con licenza opensource, è molto utilizzata in ambito embedded per le sue ridotte dimensioni e per le numerose features:…

ESP32 (7) – menuconfig

Come abbiamo visto nei precedenti tutorials, la configurazione di diversi aspetti del framework esp-idf avviene tramite un menu di configurazione: E’ possibile utilizzare lo stesso menu per configurare opzioni/parametri relativi al programama che stiamo sviluppando: nel tutorial di oggi vedremo come fare! Kconfig Il menu di configurazione del framework viene configurato tramite alcuni files di testo. La sintassi di questi files…

ESP32 (6) – Collegamento ad una rete wifi

In questo post vi mostrerò come effettuare il collegamento ad una rete wifi. Il framework esp-idf include un driver wifi che si occupa della gestione dell’interfaccia wifi del modulo esp32. Tale driver mette a disposizione delle API che il programma può utilizzare; alcune di queste API le abbiamo già viste nel precedente tutorial: ESP_ERROR_CHECK(esp_wifi_init(&wifi_config)); ESP_ERROR_CHECK(esp_wifi_set_mode(WIFI_MODE_STA)); ESP_ERROR_CHECK(esp_wifi_start());ESP_ERROR_CHECK(esp_wifi_init(&wifi_config)); ESP_ERROR_CHECK(esp_wifi_set_mode(WIFI_MODE_STA)); ESP_ERROR_CHECK(esp_wifi_start()); Il driver wifi viene…

ESP32 (5) – Wifi scanner

La caratteristica principale del chip esp32, come per il predecessore esp8266, è sicuramente la possibilità di collegarsi a reti wifi. Come abbiamo visto nel primo articolo di questa serie, il chip esp32 supporta diversi standard (802.11 b/g/n) e diverse modalità di sicurezza (WEP, WPA-PSK…). Oggi vedremo come scrivere un programma per effettuare lo scan delle reti wifi disponibili. Il…

ESP32 (3) – Eclipse

Nel precedente articolo, vi ho mostrato come installare il framework di sviluppo ufficiale (Espressif IoT Development Framework) e come utilizzarlo per compilare il primo esempio, Hello world. Sebbene sia possibile sviluppare i propri programmi con un semplice editor di testo (su Windows consiglio sempre il programma opensource Notepad++), è sicuramente più semplice dotarsi di un IDE (Integrated Development Environment), ovvero un applicativo grafico…

ESP32 (2) – L’ambiente di sviluppo

Dopo aver introdotto, nel precedente articolo, il chip ESP32 e la scheda di sviluppo ufficiale di Espressif, oggi vediamo come installare e utilizzare l’ambiente di sviluppo ufficiale. Il framework di sviluppo ufficiale per il chip ESP32 è stato rilasciato da Espressif su Github, con licenza opensource (Apache 2.0) e chiamato Espressif IoT Development Framework (idf per brevità). Per poterlo utilizzare su S.O. Windows,…

ESP32 (1) – Introduzione

Sicuramente avrete già sentito parlare del chip wifi  esp8266, prodotto da Espressif. Apparso sugli store cinesi a metà 2014, inizialmente ha avuto successo come “ponte” per collegare i diversi microcontrollori (in primis Arduino) alle reti wifi grazie al costo molto più basso (circa 5$ a modulo) rispetto alle soluzioni precedenti. Visto che il firmware di base non era molto ben documentato, conteneva diversi…

MQTT – enc28j60 e Adafruit IO

Adafruit IO è la nuova piattaforma cloud (attualmente ancora in beta) di Adafruit, realizzata per consentire un semplice scambio di informazioni tra dispositivi e la realizzazione di dashboard web. Questa nuova piattaforma espone delle API MQTT, possiamo quindi applicare quello che abbiamo imparato nei precedenti articoli per realizzare un completo progetto che ne sfrutti le potenzialità. Il…

MQTT – Sicurezza

Uno degli aspetti spesso trascurati nell’IoT è la sicurezza delle comunicazioni. La prova è che molti degli ultimi attacchi DDOS (Distributed Denial of Service) sono stati portati utilizzando smart devices connessi ad Internet. Nei precedenti articoli abbiamo visto come configurare mosquitto per ricevere messaggi pubblicati dai client e per inoltrare questi a tutti i sottoscrittori. Oggi vediamo come configurare la sicurezza…