Inhaltsverzeichnis:

Google Fotouhr: 7 Schritte (mit Bildern)
Google Fotouhr: 7 Schritte (mit Bildern)

Video: Google Fotouhr: 7 Schritte (mit Bildern)

Video: Google Fotouhr: 7 Schritte (mit Bildern)
Video: Barbara Beyer - Fotouhren 2024, November
Anonim
Image
Image
Google Fotouhr
Google Fotouhr
Google Fotouhr
Google Fotouhr
Google Fotouhr
Google Fotouhr

Diese Anleitungen zeigen, wie man einen ESP32 und ein LCD verwendet, um jede Minute eine Digitaluhr mit zufälliger Fotoanzeige im Hintergrund zu erstellen. Die Fotos stammen von Ihrem geteilten Google-Fotoalbum, geben Sie einfach den Freigabelink ein ESP32 wird die Arbeit erledigen;>

Schritt 1: Hardwarevorbereitung

Hardwarevorbereitung
Hardwarevorbereitung
Hardwarevorbereitung
Hardwarevorbereitung
Hardwarevorbereitung
Hardwarevorbereitung

WIEDERVERWENDUNG VORHERIGER PROJEKTHARDWARE

Wenn Sie frühere Anleitungen gemacht haben, können Sie die Hardware für dieses Projekt wiederverwenden und die Hardware-Montage überspringen:

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

ESP8266/ESP32-Entwicklungsplatine

Jedes ESP8266/ESP32 Dev Board sollte in Ordnung sein.

LCD Bildschirm

Jedes von Arduino_GFX unterstützte LCD ist in Ordnung. Sie finden die derzeit unterstützte Anzeige in der GitHub-Readme-Datei:

Steckbrett

Jedes Steckbrett, das für das ESP-Entwicklungsboard und das LCD-Display geeignet ist.

Überbrückungsdraht

Einige Jumperdrähte hängen vom Layout der Entwicklungsplatine und der LCD-Pins ab. In den meisten Fällen reichen 6-9 männliche zu weibliche Überbrückungsdrähte aus.

Schritt 2: Hardware-Montage

Hardware-Montage
Hardware-Montage
Hardware-Montage
Hardware-Montage
Hardware-Montage
Hardware-Montage
Hardware-Montage
Hardware-Montage

Schieben Sie das ESP32 Dev Board auf das Steckbrett und verbinden Sie das LCD mit Jumperdrähten.

Hier ist die Beispielverbindungszusammenfassung:

ESP8266 -> LCD

Vcc -> Vcc

GND -> GND GPIO 15 -> CS GPIO 5 -> DC (falls vorhanden) RST -> RST GPIO 14 -> SCK GPIO 12 -> MISO (optional) GPIO 4 -> LED (falls vorhanden) GPIO 13 -> MOSI / SDA

ESP32 -> LCD

Vcc -> Vcc

GND -> GND GPIO 5 -> CS GPIO 16 -> DC (falls vorhanden) GPIO 17 -> RST GPIO 18 -> SCK GPIO 19 -> MISO (optional) GPIO 22 -> LED (falls vorhanden) GPIO 23 -> MOSI / SDA

Schritt 3: Softwarevorbereitung

Arduino-IDE

Laden Sie die Arduino IDE herunter und installieren Sie sie, wenn Sie dies noch nicht tun:

www.arduino.cc/en/main/software

ESP8266-Unterstützung

Befolgen Sie die Installationsanweisungen, um ESP8266-Unterstützung hinzuzufügen, wenn Sie dies noch nicht tun:

github.com/esp8266/Arduino

Arduino ESP8266 Dateisystem-Uploader

Befolgen Sie die Installationsanweisungen, um das Uploader-Plugin hinzuzufügen, wenn Sie dies noch nicht tun:

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

ESP32-Unterstützung

Befolgen Sie die Installationsanweisungen, um ESP32-Unterstützung hinzuzufügen, wenn Sie dies noch nicht tun:

github.com/espressif/arduino-esp32

Arduino_GFX-Bibliothek

Laden Sie die neuesten Arduino_GFX-Bibliotheken herunter: (drücken Sie "Clone or Download" -> "Download ZIP")

github.com/moononournation/Arduino_GFX

Importieren Sie Bibliotheken in die Arduino-IDE. (Arduino IDE "Skizze"-Menü -> "Bibliothek einschließen" -> ". ZIP-Bibliothek hinzufügen" -> heruntergeladene ZIP-Datei auswählen)

Schritt 4: Einstellen und Hochladen

Einstellen & Hochladen
Einstellen & Hochladen
  1. Laden Sie das Programm auf GitHub herunter: (drücken Sie "Clone or Download" -> "Download ZIP")
  2. Öffnen Sie GooglePhotoClock.ino mit Arduino IDE
  3. Geben Sie Ihre WLAN-AP-Einstellungen in SSID_NAME und SSID_PASSWORD ein
  4. Geben Sie Informationen zur lokalen Zeitzone in GMT_OFFSET_SEC, DAYLIGHT_OFFSET_SEC und TZ ein
  5. Bereiten Sie ein geteiltes Album in Google Foto vor, erstellen Sie einen Link zum Teilen und füllen Sie den GOOGLE_PHOTO_SHARE_LINK aus
  6. Wenn Sie ILI9341 LCD nicht verwenden, kommentieren Sie Zeile 133 aus und entkommentieren Sie die korrekte LCD-Klassendeklaration
  7. Verbinden Sie das ESP Dev Board mit dem Computer
  8. Drücken Sie die Schaltfläche Hochladen, um das Programm zu kompilieren und auf das ESP Dev Board hochzuladen

Schritt 5: ESP8266 BearSSL CertStore

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

Google Photo erfordert alle Verbindungen in HTTPS. ESP8266 neueste Version mit BearSSL-Implementierung und erfordert eine gewisse Vorverarbeitung der CertStore-Daten.

Ich habe am 18. April 2020 CertStore-Daten generiert. Sie regenerieren sie, indem Sie Folgendes ausführen:

python make_spiffs.py

Wenn Sie ESP8266 verwenden, befolgen Sie die Schritte zum Hochladen von CertStore-Daten:

  1. Öffnen Sie die Arduino-IDE
  2. Verbinden Sie das ESP8266-Entwicklungsboard mit dem Computer
  3. Wählen Sie das Menü Extras
  4. Wählen Sie ESP8266 Sketch Data Upload
  5. Warten Sie, bis der Upload abgeschlossen ist

Schritt 6: Wie funktioniert es?

  1. Mit vordefiniertem WLAN-AP verbinden
  2. Aktuelle Uhrzeit vom NTP-Server abrufen
  3. Stellen Sie die HTTPS-Anfrage für den freigegebenen Link von Google Foto
  4. HTTPS-Antwortcode 302 und enthält einen Umleitungsort im Antwortheader
  5. Stellen Sie die HTTPS-Anfrage für den Umleitungsstandort
  6. Lesen Sie die Fotoliste aus dem Javascript-Array in Antwort-HTML (der HTML-Code ist über 500 KB groß, es dauert einige Zeit, die Daten zu lesen und aufzuteilen)
  7. Wählen Sie für jede Minute zufällig ein Foto in der Fotoliste aus
  8. Nur für ESP8266, versuchen Sie zuerst, zwischengespeicherte Fotodateien in SPIFFS zu finden
  9. Stellen Sie eine HTTPS-Anfrage für einen Fotolink
  10. Nur für ESP8266: Zwischenspeichern der Fotodatei in SPIFFS
  11. Zeigen Sie das Foto an
  12. Aktuelle Uhrzeit auf das Foto drucken

Schritt 7: Viel Spaß

Genießen!
Genießen!
Genießen!
Genießen!

Es ist an der Zeit, dem geteilten Fotoalbum weitere Lieblingsfotos hinzuzufügen und diese Google-Fotouhr auf Ihrem Schreibtisch abzulegen.

Empfohlen: