Ce tutoriel fait partie de: Matrice LED RGB ESP32-S3
Projet sympa à réaliser pour des applications ludiques et pratiques utilisant le module matrice RGB ESP32-S3.
Projet d'horloge Internet avec matrice LED RGB ESP32-S3 - 3 couleurs de nuit avec date
Horloge Internet ESP32-S3 RGB NeoMatrix avec luminosité automatique jour/nuit
Ce projet est une horloge Internet à matrice RGB ESP32-S3 qui ajuste automatiquement la luminosité pendant le jour et la nuit. L'ESP32-S3 se connecte au Wi-Fi, synchronise l'heure actuelle à partir d'un serveur NTP et fait défiler l'heure dansHH:MMformat sur une matrice RGB NeoMatrix 8×8. L'horloge prend également en charge des couleurs RGB fixes ou tournantes pour le texte affiché.

Ce que fait cette horloge
Après avoir été mis sous tension, le ESP32-S3 se connecte à votre réseau Wi-Fi et récupère l'heure locale actuelle depuis Internet. L'heure défile en douceur sur la matrice LED. Pendant la nuit, l'affichage s'assombrit automatiquement à un niveau de luminosité inférieur, tandis que pendant la journée, il revient à un niveau plus lumineux.
Bibliothèques utilisées
Ce croquis utilise les bibliothèques suivantes :

#include <WiFi.h>
#include "time.h"
#include <Adafruit_GFX.h>
#include <Adafruit_NeoMatrix.h>
#include <Adafruit_NeoPixel.h>InstallerAdafruit NeoMatrixdepuis le Gestionnaire de Bibliothèques Arduino. Toutes les dépendances requises telles queAdafruit GFX LibraryetAdafruit NeoPixelsera installé automatiquement.

Configuration utilisateur importante
Identifiant SSID Wi-Fi et mot de passe (sensible à la casse)
Remplacez les valeurs suivantes par vos propres identifiants Wi-Fi :

const char* WIFI_SSID = "WiFi";
const char* WIFI_PASSWORD = "passW0rd";Important :Les SSID Wi-Fi sontsensible à la casse. Un SSID nommé"Book"estnonle même que"book"Si la capitalisation ne correspond pas exactement, l'ESP32 échouera à se connecter.
Serveur NTP, fuseau horaire et heure d'été
L'horloge synchronise l'heure en utilisant le serveur NTP suivant :
const char* ntpServer = "pool.ntp.org";L'heure locale est calculée en utilisant ces décalages :
const long gmtOffset_sec = -5 * 3600;
const int daylightOffset_sec = 3600;gmtOffset_secdéfinit votre décalage UTC en secondesdaylightOffset_secajoute une heure lorsque l'heure d'été est active (utiliser0si non nécessaire)
Ces valeurs sont appliquées avec :
configTime(gmtOffset_sec, daylightOffset_sec, ntpServer);Luminosité automatique jour/nuit
La luminosité de l'écran change automatiquement en fonction de l'heure actuelle :
const int DAY_BRIGHTNESS = 40;
const int NIGHT_BRIGHTNESS = 5;
const int NIGHT_START_HOUR = 22; // 10 PM
const int NIGHT_END_HOUR = 6; // 6 AMEntre 22 h et 6 h, la luminosité de la matrice est réduite pour rendre l'environnement confortable dans l'obscurité. En dehors de ces heures, la luminosité maximale de jour est rétablie. Vous pouvez ajuster ces valeurs en fonction de l'éclairage de votre pièce.
Configuration de couleur RGB
La couleur du texte de l'horloge est définie à l'aide de valeurs RGB (Rouge, Vert, Bleu), chaque canal variant de 0 à 255. Plusieurs couleurs peuvent être stockées dans un tableau et cyclées automatiquement :
uint8_t userColors[][3] = {
{17, 43, 171}, // Light Blue
{255, 0, 0}, // Red
{0, 255, 0}, // Green
{255, 165, 0}, // Orange
{255, 0, 255} // Magenta
};SiuseFixedColorest réglé àtrue, l'horloge utilise toujours une couleur. Si réglé surfalse, la couleur change automatiquement après chaque défilement complet du temps.
Pour trouver rapidement les valeurs RGB exactes pour n'importe quelle couleur, utilisez l'outil Sélecteur de Couleurs RGB :Sélecteur de couleur RGB.
Affichage de l'heure et défilement
L'heure actuelle est formatée commeHH:MMet stocké dans un petit tampon de caractères. Comme l'affichage n'a que 8 pixels de largeur, le texte défile doucement de droite à gauche. Une fois que le temps quitte complètement l'affichage, la prochaine couleur (si activée) est sélectionnée pour le passage suivant.
Démonstration
Après avoir téléchargé le croquis :
- L'ESP32-S3 se connecte au Wi-Fi
- Le temps est synchronisé depuis Internet.
- L'heure actuelle défile à travers la matrice RVB.
- La luminosité change automatiquement entre le jour et la nuit.
- La couleur du texte reste fixe ou alterne en fonction de vos paramètres.
Téléchargements et liens
Le code source complet est fourni ci-dessous cet article. Des liens vers les pièces, les outils et les fiches techniques sont disponibles ci-dessous cet article.
Ce tutoriel fait partie de: Matrice LED RGB ESP32-S3
- Projets de Matrice LED RGB ESP32-S3 (Jeu d'Inclinaison, Texte, Flèche, Démo WiFi)
- Projet 2 de matrice LED RGB ESP32-S3 - Texte défilant
- Projet de matrice LED RGB ESP32-S3 3 - Texte provenant du téléphone mobile
- Projet de matrice LED RGB ESP32-S3 4 - Point incliné
- Projet de matrice LED RGB ESP32-S3 5 - Flèche toujours vers le haut
- Projet de matrice LED RGB ESP32-S3 6 - Jeu cible
- Projet Horloge de Base ESP32-S3 Matrice LED RGB Wi-Fi + Horloge NTP -1
- Projet d'Horloge Internet avec Matrice LED RGB ESP32-S3 - Affichage de l'heure et de la date en multi-couleurs
- Projet d'horloge Internet avec matrice LED RGB ESP32-S3 - 5 couleurs arc-en-ciel
- Projet d'horloge Internet avec matrice LED RVB ESP32-S3 - 4 couleurs aléatoires
- Test de matrice LED RGB ESP32-S3 pour réglage RGB, GRB
Ce dont vous pourriez avoir besoin
-
Amazon
-
eBay
-
AliExpressAchetez le matrix RGB ESP32-S3 sur AliExpress.s.click.aliexpress.com
-
AliExpressAchetez une matrice RGB ESP32-S3 sur AliExpress (2)s.click.aliexpress.com
Ressources et références
-
Vidéo
-
Interne🎨 Color picker Toolrobojax.com
Fichiers📁
Fichier Fritzing
-
esp32-S3-supermini-tht fritzing part
esp32-S3-supermini-tht.fzpz0.02 MB