Ciao a tutti,
mi sono avvicinato da poco ad Arduino, e
sto cercando di realizzare un piccolo orologio su Arduino UNO R4 WiFi, visualizzando l’ora (formato HH:MM) sulla matrice LED integrata.
L’obiettivo finale è far scorrere l’orario da destra a sinistra o, in alternativa, mostrarlo staticamente e aggiornarlo ogni minuto.
Purtroppo, dopo vari tentativi, non sono riuscito a ottenere alcuna visualizzazione corretta dell’orario, nonostante la matrice funzioni perfettamente con gli esempi ufficiali (“Play Animation”, “Scroll Text”, ecc.). La connessione WiFi funziona e il modulo NTP restituisce l’ora corretta sul monitor seriale.
Setup attuale
-
Scheda: Arduino UNO R4 WiFi
-
IDE: Arduino IDE 2.3.6
-
Librerie installate:
-
Arduino_LED_Matrix -
ArduinoGraphics -
WiFiS3 -
WiFiUdp -
NTPClient
-
Cosa NON funziona
- Tutti i tentativi di scrivere testo dinamico (come l’orario) sulla matrice, sia con
beginText() / endText(), sia con funzioni di disegno manuale, non producono risultati.
- Alcune versioni del codice mostrano LED accesi in modo casuale.
- Altre riempiono completamente la matrice.
- Nessuna mostra testo leggibile o scrolling dell’orario.
- Molte funzioni comuni nelle librerie grafiche (es.
drawPixel(),show(),drawChar()) non sono presenti nella classeArduinoLEDMatrix.
L’unico metodo funzionante per aggiornare la matrice sembra essereloadFrame(uint32_t[]), che però carica un frame statico da 12x8 bit, non pixel o testo dinamico. - Tentativi di disegnare l’orario convertendo manualmente ogni cifra in bitmap (via
uint32_t frame[8]) non mostrano nulla, oppure accendono LED errati.
- Qualcuno è riuscito a visualizzare testo aggiornato dinamicamente (es. l’ora, un contatore o messaggi che cambiano) sulla matrice integrata della UNO R4 WiFi?
- Esiste un modo documentato per aggiornare il contenuto di
beginText()senza reimpostare la matrice ogni volta? - Qualcuno ha trovato un modo per costruire e visualizzare bitmap personalizzate o caratteri usando
loadFrame()in modo efficiente?
Grazie per l’attenzione.