UClock

Aus der Mikrocontroller.net Artikelsammlung, mit Beiträgen verschiedener Autoren (siehe Versionsgeschichte)
Wechseln zu: Navigation, Suche

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

uClock Digitalanzeige
uClock Animation "Matrix"
uClock Wetter Icon

(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