UClock
uClock ist eine Uhr mit einer 32x32 WS2812-LED-Matrix-Anzeige. Diese ist eine Weiterentwicklung des Projekts WordClock_mit_WS2812. Jedoch werden hier keine Wörter beleuchtet, um die Uhrzeit anzuzeigen, sondern 1024 Quadrate einer 32x32 LED-Matrix.
Zugehöriger Thread im Forum: https://www.mikrocontroller.net/topic/463659#new
(Diese Bilder stammen von der uClock-Simulation auf einem STM32F407 mit angeschlossenem TFT-Display. Fotos mit "echter" LED-Anzeige werden in Kürze folgen)
Software
Die Software ist lauffähig auf
- Nucleo STM32F401RE Board
- Nucleo STM32F411RE Board
- STM32F407VE Black Board
Features
Die Software wird ständig weiterentwickelt. Folgende Punkte wurden bereits umgesetzt:
- Anbindung eines ESP8266-WLAN-Moduls mit speziell abgestimmter Firmware
- WPS-Button zum schnellen Anbinden des ESP8266-WLAN-Moduls an das vorhandene Netzwerk
- Konfiguration über Web-Interface
- Holen der Uhrzeit per NTP-Protokoll aus dem Internet
- Fernsteuerung über IR-Fernbedienung mittels IRMP
- Fernsteuerung per Android App
- Einstellen des Anzeigelayouts, der Helligkeit und der Farbe per IR-Fernbedienung/App/Web
- Konfigurierbare Nachtschaltzeiten - d.h. automatisches Abschalten zur Nachtzeit, separat auch für das Ambilight
- Abspielen von MP3-Dateien zu bestimmten Ereignissen oder zu Alarmzeiten (Wecker) über optionalen Mini-DFPlayer
- Anbindung von LED-Stripes des Typs WS2812, WS2812B, APA102 und SK6812 (RGB- und RGBW-RLEDs)
- Sanftes Überblenden der Uhrzeiten oder verschiedene Animationen bei Uhrzeitwechsel, z.B. "Explode" oder "Matrix"
- Farbanimationen, z.B. Automatischer Farbverlauf durch alle Regenbogenfarben ("Rainbow")
- Einblendung von Overlays (Icons, Laufschriften) zu bestimmten festen oder beweglichen Kalenderdaten wie Geburtstag/Ostern/Weihnachten/Advent/Silvester etc.
- Erstellen von eigenen Overlays als dynamische Erweiterung
- Automatische Helligkeitsregelung mittels LDR (optional)
- Anbindung einer externen DS3231-RTC
- Anbindung eines externen I2C-EEPROMs
- Optionaler Anschluss eines DCF77-Moduls
- Manuelles Stellen der Uhrzeit per Webserver-Interface oder Android App, wenn kein Internet/DCF77 verfügbar
- Optionale Temperaturmessung und -Anzeige mit DS18xxx-Sensor
- Optionale Wetteranzeige über openweathermap.org, auch als Piktogramm (Overlay)
- Separate Farbauswahl für Display und Ambilight
- Separat einschaltbares Ambilight mit auswählbaren Animationen: Keine, "Clock" (Umlaufende Sekundenanzeige) und "Rainbow"
- Konfiguration einer "Zeitschaltuhr" für das Ambilight, um dieses zum Beispiel generell nachts abzuschalten
- Laufschriften - eigene Texte und Wettermeldungen
- Optionale Steuerung der Stromversorgung für die LED-Stripes
- Einspielen von Updates für ES8266 ESP-12F und STM32 über OTA ("over the air").
- Spiele: WCtris (Tetris Clone) und Snake zum Spielen auf der Uhranzeige
Download
WICHTIG
Es ist unbedingt erforderlich, dass die passende ESP8266-Firmware zur STM32-Firmware eingespielt wird! Ältere ESP8266-Firmware-Versionen führen auf jeden Fall zu Fehlverhalten!
Regel ist dabei: Die STM32-Version A.B.C muss mit der ESP8266-Firmware in den ersten beiden Ziffern A.B übereinstimmen, die dritte Ziffer C darf unterschiedlich sein.
Aktuelle STM32-Version: | 3.0.0T7 vom 19.10.2019 |
Aktuelle ESP-Version: | 3.0.0T6 vom 19.10.2019 |
EmBitz-Projekt für STM32 und Sources für ESP8266: | Tarball |
SVN hier auf µc.net: | svn://mikrocontroller.net/uclock/ |
Repo-Browser: | uClock im SVN |
Hex-Datei für Nucleo STM32F411RE: | Datei:Uc-nucleo411-ws2812.hex |
Bin-Datei für ESP8266 ESP-12F: | Datei:ESP-uclock-12F.bin |