Inhoudsopgave:

Google Photo Clock: 7 stappen (met afbeeldingen)
Google Photo Clock: 7 stappen (met afbeeldingen)

Video: Google Photo Clock: 7 stappen (met afbeeldingen)

Video: Google Photo Clock: 7 stappen (met afbeeldingen)
Video: Ik Leerde Realistisch Tekenen Binnen 7 Dagen! 2024, November
Anonim
Image
Image
Google Fotoklok
Google Fotoklok
Google Fotoklok
Google Fotoklok
Google Fotoklok
Google Fotoklok

Deze instructables laten zien hoe je een ESP32 en een LCD-scherm gebruikt om elke minuut een digitale klok te maken met een willekeurige fotoweergave op de achtergrond. De foto's zijn afkomstig van je gedeelde Google-fotoalbum, voer gewoon de share-link in ESP32 zal het werk doen;>

Stap 1: Hardwarevoorbereiding

Hardwarevoorbereiding
Hardwarevoorbereiding
Hardwarevoorbereiding
Hardwarevoorbereiding
Hardwarevoorbereiding
Hardwarevoorbereiding

HERGEBRUIK VAN VORIGE PROJECTHARDWARE

Als je eerdere instructables hebt gedaan, kun je de hardware voor dit project opnieuw gebruiken en de hardware-assemblage overslaan:

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

ESP8266/ESP32-ontwikkelbord

Elke ESP8266/ESP32 Dev Board zou in orde moeten zijn.

LCD scherm

Elk door Arduino_GFX ondersteund LCD-scherm is in orde, mogelijk vindt u momenteel ondersteunde weergave op GitHub readme:

Breadboard

Elk breadboard dat geschikt is voor het ESP Dev Board en het LCD-scherm.

Doorverbindingsdraad

Sommige jumperdraden zijn afhankelijk van het dev-bord en de lay-out van de LCD-pinnen. In de meeste gevallen zijn 6-9 mannelijke naar vrouwelijke jumperdraden voldoende.

Stap 2: Hardwaremontage

Hardware-assemblage
Hardware-assemblage
Hardware-assemblage
Hardware-assemblage
Hardware-assemblage
Hardware-assemblage
Hardware-assemblage
Hardware-assemblage

Duw de ESP32 Dev Board op het breadboard en sluit het LCD-scherm aan met jumperdraden.

Hier is het voorbeeld van een verbindingssamenvatting:

ESP8266 -> LCD

Vcc -> Vcc

GND -> GND GPIO 15 -> CS GPIO 5 -> DC (indien beschikbaar) RST -> RST GPIO 14 -> SCK GPIO 12 -> MISO (optioneel) GPIO 4 -> LED (indien beschikbaar) GPIO 13 -> MOSI / SDA

ESP32 -> LCD

Vcc -> Vcc

GND -> GND GPIO 5 -> CS GPIO 16 -> DC (indien beschikbaar) GPIO 17 -> RST GPIO 18 -> SCK GPIO 19 -> MISO (optioneel) GPIO 22 -> LED (indien beschikbaar) GPIO 23 -> MOSI / SDA

Stap 3: Softwarevoorbereiding

Arduino IDE

Download en installeer Arduino IDE als je het nog niet doet:

www.arduino.cc/en/main/software

ESP8266-ondersteuning:

Volg de installatie-instructies om ESP8266-ondersteuning toe te voegen als u dit nog niet doet:

github.com/esp8266/Arduino

Arduino ESP8266 bestandssysteem uploader

Volg de installatie-instructies om de uploader-plug-in toe te voegen als u dit nog niet doet:

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

ESP32-ondersteuning:

Volg de installatie-instructies om ESP32-ondersteuning toe te voegen als u dit nog niet doet:

github.com/espressif/arduino-esp32

Arduino_GFX-bibliotheek

Download de nieuwste Arduino_GFX-bibliotheken: (druk op "Clone or Download" -> "Download ZIP")

github.com/moononournation/Arduino_GFX

Importeer bibliotheken in Arduino IDE. (Arduino IDE "Sketch" Menu -> "Include Library" -> "Add. ZIP Library" -> selecteer gedownload ZIP-bestand)

Stap 4: Instellen en uploaden

Instellen en uploaden
Instellen en uploaden
  1. Download het programma op GitHub: (druk op "Clone or Download" -> "Download ZIP")
  2. Open GooglePhotoClock.ino met Arduino IDE
  3. Vul uw WiFi AP-instellingen in SSID_NAME en SSID_PASSWORD
  4. Vul lokale tijdzone-informatie in tot GMT_OFFSET_SEC, DAYLIGHT_OFFSET_SEC en TZ
  5. Bereid een gedeeld album voor in Google Foto, maak een deellink en vul de GOOGLE_PHOTO_SHARE_LINK
  6. Als u ILI9341 LCD niet gebruikt, becommentarieert u regel 133 en verwijdert u de opmerking bij de juiste LCD-klassedeclaratie
  7. Sluit ESP Dev Board aan op de computer
  8. Druk op de knop Uploaden om het programma te compileren en te uploaden naar het ESP Dev Board

Stap 5: ESP8266 BearSSL CertStore

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

Google Photo vereist alle verbindingen in HTTPS. ESP8266 nieuwste versie met BearSSL-implementatie en het vereist enige voorbewerking op CertStore-gegevens.

Ik heb CertStore-gegevens gegenereerd op 18 april 2020, u maakt deze opnieuw door het volgende uit te voeren:

python make_spiffs.py

Als u ESP8266 gebruikt, volgt u de stappen om CertStore-gegevens te uploaden:

  1. Arduino IDE openen
  2. Sluit het ESP8266-ontwikkelbord aan op de computer
  3. Selecteer het menu Extra
  4. Selecteer ESP8266 Schetsgegevens uploaden
  5. Wacht upload voltooid

Stap 6: Hoe werkt het?

  1. Maak verbinding met vooraf gedefinieerde WiFi-AP
  2. Krijg de huidige tijd van de NTP-server
  3. Maak het HTTPS-verzoek voor de gedeelde Google Photo-link
  4. HTTPS-antwoordcode 302 en een omleidingslocatie opgenomen in de antwoordheader
  5. Maak het HTTPS-verzoek voor de omleidingslocatie
  6. Lees de fotolijst uit de Javascript-array in antwoord-HTML (de HTML is meer dan 500 KB, het heeft enige tijd nodig om de gegevens te lezen en te splitsen)
  7. Selecteer voor elke minuut willekeurig een foto in de fotolijst
  8. Probeer alleen voor ESP8266 eerst het in de cache opgeslagen fotobestand in SPIFFS te vinden
  9. Maak een HTTPS-verzoek voor een fotolink
  10. Alleen voor ESP8266: cache het fotobestand in SPIFFS
  11. Toon de foto
  12. Print de huidige tijd op de foto

Stap 7: Geniet

Genieten van!
Genieten van!
Genieten van!
Genieten van!

Het is tijd om meer gunstfoto's toe te voegen aan het gedeelde fotoalbum en deze Google-fotoklok op uw bureau te plaatsen.

Aanbevolen: