Ethical DIY

Progetti hardware & software etici


Menu orizzontale con sottomenu CSS








 


Progetti hardware

Basetta sperimentale per ESP8266

Assemblare la basetta sperimentale

Configurazione e piedinatura di ESP8266

Download dei dati necessari per la realizzazione della basetta 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
-Procedura con la basetta sperimentale per ESP01
- Come caricare le librerie necessarie
- Piedinatura di ESP01
- Piedinatura di ESP8266

I sensori/attuatori compatibili con ESP01
I sensori/attuatori compatibili con ESP8266



Pin disponibili per  gli sketch




Programmi con libreria SSD1306Wire.h

Un orolgio digitale

Un orologio analogico

AUn orologio analogico con 2 display


Un termometro con DHT11 Wi-Fi





Programmi con libreria U8G2.h

Controllo di uno_switch in locale

Controllo di uno switch via_WiFi

Controllo di due switch in locale

Controllo di due_switch_via WiFi

Una stazione meteo BME280 in locale

Una stazione meteo BME280 in locale con 2 display

Qualità dell'aria e temperatura con SGP30 e DHT11



Programmi con libreria Oled.h

Dht11_local_thermometer




Programmi con il DB Firebase




Programmi con MQTT (Mosquitto)




Programmi con LittleFS




Link utili per ESPxxx


 















ESP8266 Oled
Programmi con libreria Oled.h

Programmi con la libreria OLED.h



A causa dei pochi esempi e informazioni trovate per la libreria Oled.h, per il momento presentiamo un solo progetto per questa libreria. Eventualmente in futuro aggiungeremo qualche altro esempio.





Rilevazione locale di temperatura e umidità con DHT11/DHT21/DHT22



Questo programma utilizzaun ESP8266 OLED e un sensore di temperatura DHT11 oppute DHT21, o ancora DHT22. Lo scopo è quello di visualizzare l'umidità e temperatura sul display Oled integrato.





Schema elettrico



dht11

Lo schema elettrico del progetto.
DHT11 connette il suo piedino dati (marcato "S")
sul GPIO2 di ESP8266 Oled



render
Il rendering della basetta in scala 1:1
Si nota sulla sinistra DHT11, connesso allo zoccolo GPIO2 ed ESP8266 OLED.



Il programma



Le librerie necessarie:

Nota: per quanto possibile, scaricare sempre le librerie più aggiornate.
Solo in caso non le trovaste, utilizzare quelle proposte nel sito.
Clicca qui per imformazioni sull'installazione delle librerie

Wire.h
OLED.h
DHT.h
Adafruit_Sensor.h



Se leggi sul display dati di temperaura e umidita sballati, significa che non hai usato il sensore giusto. Togli le due barre iniziali al sensore corretto.
Nota: ho acquistato alcuni sensori come "DHT11", ma in effetti erano "DTH22. Selezionato il sensore corretto, tutto ha funzionato perfettamente.

dhtok
Evidenziato il sensore usato



ESP8266 usa porte diverse da ESP8266 standard per il protocollo I2C. In questo caso, utilizza GPIO12 per SDA (dati) e GPIO14 per SCL (clock). E' necessario dichiararlo nel programma.

i2c
Dichiarazione delle porte I2C



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







Comandi per la libreria Oled.h
Ho trovato pochissimo materiale per questa libreria. Praticamente tutto quello che ho appreso, deriva dallo studio dell'unico sketch di esempio per questa libreria, ovvero "hello world".
Questi sono i colmandi presenti nel file di esempio:
OLED display(14, 12);
Dichiarazione del display (SDL, SDA)                     
display.begin();
inizializza il display                          
display.clear() 

pulisce lo schermo                         
display.on()

avvia (accende) lo schermo
display.off();

arresta (spegne) lo schermo  
display.print(t, r, c);        

stampa sullo schermo:                                                         
t: un "testo" (tra apici) o una variabile
r: riga. Da: nessuna dichiarazione (riga 0) a 6 (riga 7)
c: colonna da 0 a 15



Nota: apparentemente questa libreria sembra fornisca solo  comandi di base, in quanto (se non esistono altri comandi non documentati nell'esempio):
- non c'è la possibilità di cambiare il tipo e le dimensioni dei caratteri;
- la posizione delle righe può essere indicata solo con un numero intero, da nulla (che corrisponde a riga 0) a 6, e non, come per le altre librerie, indicando in modo più flessibile il valore relativo  all'asse y in punti (dot).







Per contatti: info@ethicaldiy.org