Sommario:

Orologio fotografico di Google: 7 passaggi (con immagini)
Orologio fotografico di Google: 7 passaggi (con immagini)

Video: Orologio fotografico di Google: 7 passaggi (con immagini)

Video: Orologio fotografico di Google: 7 passaggi (con immagini)
Video: Maranza allo stadio ➡️@quanto_costa 2024, Novembre
Anonim
Image
Image
Orologio fotografico di Google
Orologio fotografico di Google
Orologio fotografico di Google
Orologio fotografico di Google
Orologio fotografico di Google
Orologio fotografico di Google

Queste istruzioni mostrano come utilizzare un ESP32 e un LCD per creare un orologio digitale con visualizzazione casuale di foto in background ogni minuto. Le foto provengono dal tuo Google Photo Album condiviso, inserisci semplicemente il link di condivisione ESP32 farà il lavoro;>

Passaggio 1: preparazione dell'hardware

Preparazione dell'hardware
Preparazione dell'hardware
Preparazione dell'hardware
Preparazione dell'hardware
Preparazione dell'hardware
Preparazione dell'hardware

RIUTILIZZA L'HARDWARE DEL PROGETTO PRECEDENTE

Se hai eseguito le istruzioni precedenti, puoi riutilizzare l'hardware per questo progetto e saltare l'assemblaggio dell'hardware:

  • https://www.instructables.com/id/Floating-Display/
  • https://www.instructables.com/id/COVID-19-WHO-Dash…

Scheda di sviluppo ESP8266/ESP32

Qualsiasi scheda di sviluppo ESP8266/ESP32 dovrebbe essere ok.

Display LCD

Qualsiasi display LCD supportato da Arduino_GFX è ok, potresti trovare il display attualmente supportato su GitHub readme:

tagliere

Qualsiasi breadboard che può adattarsi alla scheda di sviluppo ESP e al display LCD.

Cavo del ponticello

Alcuni ponticelli dipendono dalla scheda di sviluppo e dalla disposizione dei pin dell'LCD. Nella maggior parte dei casi sono sufficienti 6-9 cavi jumper maschio-femmina.

Passaggio 2: assemblaggio dell'hardware

Assemblaggio hardware
Assemblaggio hardware
Assemblaggio hardware
Assemblaggio hardware
Assemblaggio hardware
Assemblaggio hardware
Assemblaggio hardware
Assemblaggio hardware

Spingere la scheda di sviluppo ESP32 sulla breadboard e collegare l'LCD con i ponticelli.

Ecco il riepilogo della connessione di esempio:

ESP8266 -> LCD

Vcc -> Vcc

GND -> GND GPIO 15 -> CS GPIO 5 -> DC (se disponibile) RST -> RST GPIO 14 -> SCK GPIO 12 -> MISO (opzionale) GPIO 4 -> LED (se disponibile) GPIO 13 -> MOSI / SDA

ESP32 -> LCD

Vcc -> Vcc

GND -> GND GPIO 5 -> CS GPIO 16 -> DC (se disponibile) GPIO 17 -> RST GPIO 18 -> SCK GPIO 19 -> MISO (opzionale) GPIO 22 -> LED (se disponibile) GPIO 23 -> MOSI / SDA

Passaggio 3: preparazione del software

Arduino IDE

Scarica e installa Arduino IDE se non lo sei ancora fatto:

www.arduino.cc/en/main/software

Supporto ESP8266

Segui le istruzioni di installazione per aggiungere il supporto ESP8266 se non lo hai ancora fatto:

github.com/esp8266/Arduino

Caricatore di file system Arduino ESP8266

Segui le istruzioni di installazione per aggiungere il plug-in per l'uploader se non lo hai ancora fatto:

github.com/esp8266/arduino-esp8266fs-plugi…

Supporto ESP32

Segui le istruzioni di installazione per aggiungere il supporto ESP32 se non lo hai ancora fatto:

github.com/espressif/arduino-esp32

Libreria Arduino_GFX

Scarica le ultime librerie Arduino_GFX: (premi "Clone or Download" -> "Download ZIP")

github.com/moononournation/Arduino_GFX

Importa librerie in Arduino IDE. (Menu "Sketch" dell'IDE Arduino -> "Includi libreria" -> "Aggiungi libreria. ZIP" -> seleziona il file ZIP scaricato)

Passaggio 4: impostazione e caricamento

Impostazione e caricamento
Impostazione e caricamento
  1. Scarica il programma su GitHub: (premi "Clone or Download" -> "Download ZIP")
  2. Apri GooglePhotoClock.ino con Arduino IDE
  3. Inserisci le impostazioni dell'AP WiFi in SSID_NAME e SSID_PASSWORD
  4. Compila le informazioni sul fuso orario locale su GMT_OFFSET_SEC, DAYLIGHT_OFFSET_SEC e TZ
  5. Prepara un album condiviso in Google Foto, crea un link di condivisione e compila il GOOGLE_PHOTO_SHARE_LINK
  6. Se non si utilizza l'LCD ILI9341, commentare la riga 133 e rimuovere il commento dalla dichiarazione di classe LCD corretta
  7. Collega la scheda di sviluppo ESP al computer
  8. Premi il pulsante Carica per compilare e caricare il programma sulla scheda di sviluppo ESP

Passaggio 5: ESP8266 BearSSL CertStore

ESP8266 BearSSL CertStore
ESP8266 BearSSL CertStore
ESP8266 BearSSL CertStore
ESP8266 BearSSL CertStore

Google Foto richiede tutta la connessione in HTTPS. L'ultima versione di ESP8266 utilizza l'implementazione BearSSL e richiede un po' di pre-elaborazione sui dati CertStore.

Ho generato un dato CertStore al 18 aprile 2020, lo fai rigenerare eseguendo:

python make_spiffs.py

Se stai utilizzando ESP8266, segui i passaggi per caricare i dati CertStore:

  1. Apri Arduino IDE
  2. Collega la scheda di sviluppo ESP8266 al computer
  3. Seleziona il menu Strumenti
  4. Seleziona Caricamento dati schizzo ESP8266
  5. Attendi la fine del caricamento

Passaggio 6: come funziona?

  1. Connettiti all'AP WiFi predefinito
  2. Ottieni l'ora corrente dal server NTP
  3. Effettua la richiesta HTTPS del collegamento condiviso di Google Foto
  4. Codice di risposta HTTPS 302 e includeva una posizione di reindirizzamento nell'intestazione della risposta
  5. Effettua la richiesta HTTPS della posizione di reindirizzamento
  6. Leggi l'elenco delle foto dall'array Javascript in risposta HTML (l'HTML è superiore a 500 KB, è necessario un po' di tempo per leggere e dividere i dati)
  7. Per ogni minuto, seleziona casualmente una foto nell'elenco delle foto
  8. Solo per ESP8266, prova prima a trovare il file di foto memorizzato nella cache in SPIFFS
  9. Fai una richiesta HTTPS di collegamento fotografico
  10. Solo per ESP8266, memorizzare nella cache il file della foto su SPIFFS
  11. Mostra la foto
  12. Stampa l'ora corrente sulla foto

Passaggio 7: divertiti

Divertiti!
Divertiti!
Divertiti!
Divertiti!

È ora di aggiungere altre foto preferite all'album fotografico condiviso e posizionare questo Google Photo Clock sulla scrivania.

Consigliato: