Table des matières:

Horloge photo Google : 7 étapes (avec photos)
Horloge photo Google : 7 étapes (avec photos)

Vidéo: Horloge photo Google : 7 étapes (avec photos)

Vidéo: Horloge photo Google : 7 étapes (avec photos)
Vidéo: Elle Était Coincée Donc Ce Policier L'aide 2024, Novembre
Anonim
Image
Image
Horloge photo Google
Horloge photo Google
Horloge photo Google
Horloge photo Google
Horloge photo Google
Horloge photo Google

Ces instructables montrent comment utiliser un ESP32 et un écran LCD pour créer une horloge numérique avec affichage aléatoire des photos en arrière-plan toutes les minutes. Les photos proviennent de votre album photo Google partagé, entrez simplement le lien de partage ESP32 fera le travail;>

Étape 1: Préparation du matériel

Préparation du matériel
Préparation du matériel
Préparation du matériel
Préparation du matériel
Préparation du matériel
Préparation du matériel

RÉUTILISER LE MATÉRIEL ANTÉRIEUR DU PROJET

Si vous avez fait des instructions précédentes, vous pouvez réutiliser le matériel pour ce projet et ignorer l'assemblage du matériel:

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

Carte de développement ESP8266/ESP32

Toute carte de développement ESP8266/ESP32 devrait être ok.

Affichage LCD

Tout écran LCD pris en charge par Arduino_GFX est correct, vous pouvez trouver l'affichage actuellement pris en charge sur le fichier readme de GitHub:

Planche à pain

Toute maquette pouvant s'adapter à la carte de développement ESP et à l'écran LCD.

Cavalier

Certains fils de connexion dépendent de la carte de développement et de la disposition des broches LCD. Dans la plupart des cas, 6 à 9 cavaliers mâles à femelles suffisent.

Étape 2: Assemblage du matériel

Assemblage du matériel
Assemblage du matériel
Assemblage du matériel
Assemblage du matériel
Assemblage du matériel
Assemblage du matériel
Assemblage du matériel
Assemblage du matériel

Poussez la carte de développement ESP32 sur la planche à pain et connectez l'écran LCD avec des câbles de démarrage.

Voici l'exemple de résumé de connexion:

ESP8266 -> LCD

Vcc -> Vcc

GND -> GND GPIO 15 -> CS GPIO 5 -> DC (si disponible) RST -> RST GPIO 14 -> SCK GPIO 12 -> MISO (optionnel) GPIO 4 -> LED (si disponible) GPIO 13 -> MOSI / ADD

ESP32 -> LCD

Vcc -> Vcc

GND -> GND GPIO 5 -> CS GPIO 16 -> DC (si disponible) GPIO 17 -> RST GPIO 18 -> SCK GPIO 19 -> MISO (optionnel) GPIO 22 -> LED (si disponible) GPIO 23 -> MOSI / SDA

Étape 3: Préparation du logiciel

IDE Arduino

Téléchargez et installez Arduino IDE si vous ne l'êtes pas encore:

www.arduino.cc/en/main/software

Prise en charge de l'ESP8266

Suivez les instructions d'installation pour ajouter le support ESP8266 si vous ne le faites pas encore:

github.com/esp8266/Arduino

Téléchargeur de système de fichiers Arduino ESP8266

Suivez les instructions d'installation pour ajouter le plugin de téléchargement si vous ne l'avez pas encore fait:

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

Prise en charge ESP32

Suivez les instructions d'installation pour ajouter le support ESP32 si vous ne le faites pas encore:

github.com/espressif/arduino-esp32

Bibliothèque Arduino_GFX

Téléchargez les dernières bibliothèques Arduino_GFX: (appuyez sur "Cloner ou Télécharger" -> "Télécharger ZIP")

github.com/moononournation/Arduino_GFX

Importez des bibliothèques dans Arduino IDE. (Menu "Sketch" Arduino IDE -> "Inclure la bibliothèque" -> "Ajouter une bibliothèque. ZIP" -> sélectionnez le fichier ZIP téléchargé)

Étape 4: Configuration et téléchargement

Paramétrage et téléchargement
Paramétrage et téléchargement
  1. Téléchargez le programme sur GitHub: (appuyez sur "Cloner ou Télécharger" -> "Télécharger ZIP")
  2. Ouvrez GooglePhotoClock.ino avec Arduino IDE
  3. Remplissez vos paramètres WiFi AP dans SSID_NAME et SSID_PASSWORD
  4. Remplissez les informations de fuseau horaire local à GMT_OFFSET_SEC, DAYLIGHT_OFFSET_SEC et TZ
  5. Préparez un album partagé dans Google Photo, créez un lien de partage et remplissez le GOOGLE_PHOTO_SHARE_LINK
  6. Si vous n'utilisez pas ILI9341 LCD, commentez la ligne 133 et décommentez la déclaration de classe LCD correcte
  7. Connectez ESP Dev Board à l'ordinateur
  8. Appuyez sur le bouton Télécharger pour compiler et télécharger le programme sur ESP Dev Board

Étape 5: ESP8266 BearSSL CertStore

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

Google Photo nécessite toutes les connexions en HTTPS. La dernière version d'ESP8266 utilise l'implémentation BearSSL et nécessite un prétraitement sur les données CertStore.

J'ai généré une donnée CertStore le 18 avril 2020, vous la régénérez en exécutant:

python make_spiffs.py

Si vous utilisez ESP8266, suivez les étapes pour télécharger les données CertStore:

  1. Ouvrir l'IDE Arduino
  2. Connectez la carte de développement ESP8266 à l'ordinateur
  3. Sélectionnez le menu Outils
  4. Sélectionnez ESP8266 Sketch Data Upload
  5. Attendre la fin du téléchargement

Étape 6: Comment ça marche ?

  1. Se connecter à un point d'accès WiFi prédéfini
  2. Obtenir l'heure actuelle du serveur NTP
  3. Faire la demande HTTPS de lien partagé Google Photo
  4. Code de réponse HTTPS 302 et a inclus un emplacement de redirection dans l'en-tête de réponse
  5. Faire la demande HTTPS de l'emplacement de redirection
  6. Lire la liste des photos du tableau Javascript en réponse HTML (le HTML fait plus de 500 Ko, il faut un certain temps pour lire et diviser les données)
  7. Pour chaque minute, sélectionnez au hasard une photo dans la liste des photos
  8. Pour ESP8266 uniquement, essayez d'abord de trouver le fichier photo mis en cache dans SPIFFS
  9. Faire une demande HTTPS de lien photo
  10. Pour ESP8266 uniquement, mettez en cache le fichier photo dans SPIFFS
  11. Afficher la photo
  12. Imprimer l'heure actuelle sur la photo

Étape 7: Profitez

Prendre plaisir!
Prendre plaisir!
Prendre plaisir!
Prendre plaisir!

Il est temps d'ajouter plus de photos préférées à l'album photo partagé et de placer cette horloge photo Google sur votre bureau.

Conseillé: