The pxlBlck_SlotClock consists of a 1×60 LED matrix. It can display the time in the same way as an analog clock. The colors of the individual hands can be adjusted. Hour markers can also be displayed. This makes orientation and reading the time a little easier. 🙂
Animations can also be shown on the LED display to provide information about events.
Everything you need to build your own pxlBlck_SlotClock can be found in the following article.

Inhalte
- 1 Safety instructions
- 2 Affiliate links / advertising links
- 3 Requirements
- 4 Overview
- 5 Collect the parts you need
- 6 Prepare the LED strips
- 7 Place the LED strip in the holder
- 8 Mount the base
- 9 Insert the front screen
- 10 Install weights in the stand
- 11 Install ESP8266
- 12 Connect the USB cable and attach the cover
- 13 Install LDR for brightness detection
- 14 Programming firmware
- 15 Configure pxlBlck plugin
- 16 Animations, icons and commands
- 17 Scaling to other sizes or LED strip “densities”
- 18 Have fun with the project
Safety instructions
I know the following hints are always a bit annoying and seem unnecessary. But unfortunately, many people who knew it "better" from carelessness lost their eyes, fingers or other things or hurt themselves. In comparison, a loss of data is almost not worth mentioning, but even these can be really annoying. Therefore, please take five minutes to read the safety instructions. Even the coolest project is worth no injury or other annoyance. https://www.nerdiy.de/en/sicherheitshinweise/
Affiliate links / advertising links
The links to online shops listed here are so-called affiliate links. If you click on such an affiliate link and shop via this link, Nerdiy.de receives a commission from the online shop or provider concerned. The price doesn't change for you. If you do your purchases via these links, you will support Nerdiy.de in being able to offer further useful projects in the future. 🙂
Requirements
For the assembly you have to master soldering tasks. The following articles provide tips on how to do this.
- Electronics – My friend the soldering iron
- Electronics – soldering THT components by hand
- Electronics – soldering SMD components by hand
Required tools:
Required material:
In the following list you will find all the parts you need to assemble.
Overview
Here you can see a small overview of how the display of animations and the time on the pxlBlk_SlotClock can look.
Collect the parts you need
Before you can start building your own slotClock, you should have the required parts together.

To assemble the slotClock you need the following parts.
- 1x WS2812 or SK6812 LED strip 144LEDs / m 60 LEDs long
- 1x round Acrylic glass disc, milky, diameter 133mm
- 3D printed base
- 3D printed stand
- 3D printed cover for the stand
- 3D printed retaining ring
- 2x M8x40 cylinder head screw
- 1x Wemos D1 Mini (ESP8266)
- 4x self-tapping screw 2×6
- 3x cables approx. 10cm long
You can find the STL files for printing on your 3D printer in the repository for the pxlBlck_SlotClock under the following link.
Prepare the LED strips
First, you should prepare the LED strip for installation.

Here the red line is connected to the 5V contact, the black line to the GND contact and the green line to the DIN contact of the first LED.
The signal line is connected to the DIN contact directly on the first LED. This makes it easier to install the LED strip later.
Place the LED strip in the holder
The prepared LED strip can now be inserted into the holder.

Now it gets a bit tricky: The lines should now be brought together in such a way that they do not jam when the LED strip is pushed in.
Note: The bracket in the picture looks a little different than the STL file offered above. The STL file is the correct version. Only in this way the twelve and six o’clock positions are aligned vertically.

Another view.
Note: The bracket in the picture looks a little different than the STL file offered above. The STL file is the correct version. Only in this way the twelve and six o’clock positions are aligned vertically.

The end of the LED strip could slightly overlap with the beginning of the LED strip.
Note: The bracket in the picture looks a little different than the STL file offered above. The STL file is the correct version. Only in this way the twelve and six o’clock positions are aligned vertically.

Make sure that there are no short circuits.
Note: The bracket in the picture looks a little different than the STL file offered above. The STL file is the correct version. Only in this way the twelve and six o’clock positions are aligned vertically.

If necessary, you can stick some hot glue or insulating tape behind the end of the LED strip to avoid any short circuits.

As soon as you have completely inserted the LED strip everywhere, your SlotClock should look like this.
Mount the base
The base is there (as the name suggests) to make the SlotClock upright. It also houses the ESP8266 to control the LED strip.
Insert the front screen
To cover the LED strip you can now insert a plexiglass plate into the LED strip holder.

To do this, you need the prepared unit consisting of the LED strip holder and stand as well as a 3mm thick Plexiglas pane with a diameter of 133mm.

The acrylic glass plate should now hold itself in the LED strip holder.
If you want to attach the acrylic glass plate additionally, you can now …
Install weights in the stand
The SlotClock should now stand upright by itself. Nevertheless, you should install two additional weights in the base to increase the stability.

… into the recesses in the base.
To prevent the screws from falling out, you can glue the screws in with a drop of hot glue.
Install ESP8266
To be able to control the LED strip, an ESP8266 must of course be installed. This microcontroller will later take over the control of the LED strip.

The ESP8266 is available in different versions. For the installation in the SlotClock I recommend using the “Wemos D1 Mini”.

Now you should prepare the lines to be soldered to the ESP8266.
Cut the cable to the correct length …

…together.
The connections should be connected as follows.
ESP8266 | Line color | LED-Stripe |
5V | Red | 5V |
G | Black | GND |
D4 | Green | DIN |
Connect the USB cable and attach the cover
Before you close the back of the stand with a lid, you should connect a USB cable to the ESP8266.
Install LDR for brightness detection
The step described here is optional. It is only necessary if you want your SlotClock to be able to automatically adjust its brightness to the ambient brightness.

You will need the following components for this.
- 1x LDR
- 1x resistor 1k
- 2x shrink tubing two cm long
- 2x lines about five cm long

In order to connect the lines to the LDR, you should prepare them again.
To do this, remove five mm of the insulation at both ends of the cables and tin them with a little solder.

In order to then connect the LDR to the ESP8266, you should tin the following contacts of the ESP8266 with some solder.
- 3V3
- A0

After the installation you can screw on the cover of the base again.
Be careful not to damage any cables.
Programming firmware
After setting up the pxlBlck_SlotClock, you now have to install ESPEasy including the pxlBlck plug-in on the ESP8266. How you can proceed is described in the following article.
Configure pxlBlck plugin
After installing the firmware you have to configure the plugin correctly. You can also find information on this in the article pxlBlck – Install and configure the pxlBlck plugin.
As an additional orientation, you can also use the settings from the screenshot shown here.

Animations, icons and commands
You can find more information on the display of animations, icons and the possible commands with which you can configure your pxlBlck in the following articles.
- pxlBlck – Configure and display animations
- pxlBlck – Design icons, transfer them to the pxlBlck and display them
- pxlBlck – Commands to configure the pxlBlck
Scaling to other sizes or LED strip “densities”
The WS2812 LED strips are available in different lengths or “dense” (LEDs/m). In theory, these (longer LED strips) can also be used to build a SlotClock. Oliver from https://huf.org/wp/ has taken the trouble and created a Google Sheet with which you can easily calculate the scaling factors. With the factor that fits your LED strip, you should also be able to print a suitable STL (if necessary divided into several parts).
Thank you Oliver! 🙂
Link to the Google Sheet:
LEDs per m on the strip | Number of LEDs in a circle | Length [m] | Radius [m] | Diameter [m] | Magnification factor to the original 3D model |
---|---|---|---|---|---|
144 | 60 | 0,417 | 0,066 | 0,133 | 1,000 |
96 | 60 | 0,625 | 0,099 | 0,199 | 1,500 |
74 | 60 | 0,811 | 0,129 | 0,258 | 1,946 |
60 | 60 | 1,000 | 0,159 | 0,318 | 2,400 |
30 | 60 | 2,000 | 0,318 | 0,637 | 4,800 |
Have fun with the project
I hope everything worked as described. If not or you have any other questions or suggestions, please let me know in the comments. Also, ideas for new projects are always welcome. 🙂
P.S. Many of these projects - especially the hardware projects - cost a lot of time and money. Of course I do this because I enjoy it, but if you appreciate it that I share these information with you, I would be happy about a small donation to the coffee box. 🙂
Sieht echt cool aus! Klasse Artikel, irgendwann will ich mir auch mal eine Uhr bauen! Danke fürs Zusammenschreiben.
Freut mich, danke 🙂
Wie schon per Mail geschrieben ein super Projekt! Danke für die viele Zeit die du darin offensichtlich investiert hast!
Zum Design der Base habe ich noch einen Vorschlag in Sachen Druckoptimierung:
Wenn die Wandstärke der Unterteilungen ein vielfaches von 0.4mm wäre, würde der Druck noch etwas schneller und sauberer gehen. Gerade druckt man ansonsten bei jeder Unterleitung einen ganz schmalen Infill mit was die Druckzeit nach oben treibt,
Man könnte natürlich über den Slicer und die Infill Settings etwas hacken, aber sauberer wäre es direkt im Design:)
Hey Pilipp,
Danke. 🙂
Und danke für den Hinweis. Ist ein guter Punkt. Ich werde das umsetzen und die STL aktualisieren. 🙂
Beste Grüße
Fab
Hi,
ich habe vor die Uhr nachzubauen und habe dafür schon mal den ESP mit LED-Strip vorbereitet. Ich habe alle Einstellungen nach dieser Anleitung gemacht. Der ESP steuert jedoch nur 59 Pixel an, zwischen Sekunde 30 und 32 fehlt ein Pixel. Was kann da bei mir falsch gelaufen sein?
Gruß Myrng
Hi Myrng,
hast du die Firmware mit der Arduino IDE (also den aktuellen Code) geflasht oder die vorkompilierten binaries genommen? Ich plane noch die binaries automatisch erstellen zu lassen (bisher füge ich die manuell in das repository ein) was zur Folge hat, dass die binaries nicht auf dem aktuellsten Stand sind.
Ich habe auch gestern einen Fehler gefixed der so ähnlich klingt wie der von Dir beschriebene. Also falls du die binary geflasht hast sag mir mal bescheid. Dann kannst du es mit dem programmieren aus der Arduino IDE probieren oder ich aktualisiere die binary manuell. 🙂
Beste Grüße
Fab
Ja, hab die fertige Binary genommen. Werde es dann nochmal mit der IDE probieren. Hab zwar schon relativ viel mit ESPs gemacht, aber finde ESPeasy bis jetzt nicht so intuitiv, deshalb die fertige IDE.
Gruß Myrng
Ja ähnliche Probleme hatte ich am Anfang auch damit. Ist wie mit allen Sachen: Hat man sich erstmal etwas damit auseinandergesetzt wird es leichter. 😀 (Sorry für den doofen Ratschlag). Das flashen der Firmware ist aber letztendlich relativ easy. Also wenn du schonmal mit der Arduino IDE firmware auf den ESP geflasht hast, solltest du das hinbekommen. 🙂 Wenn du willst sag mir gerne bescheid ob es geklappt hat und der Fehler darin behoben ist. 🙂
Beste Grüße
Fab
Die Uhr ist fertig und die selbst kompilierte Version funktioniert! Keine Fehler mehr mit fehlenden LEDs 🙂
Super, freut mich! 🙃 Dann viel Spaß damit!
Hey Fab,
Sau geil, hab es fast hin bekommen 😀
Mega Erfolgserlebnis gerade 🙂
Hab nur etwa anders gemacht als du, habe die Uhr an sich doppelt so groß gemacht, sprich Pro Sekunde sollen zwei LEDs angesteuert werden, insgesamt nutze ich also 120 LEDs.
Gibt es eine Möglichkeit, in der Benutzeroberfläche von ESP-Easy diese Änderungen anzupassen ?
Danke und Gruß,
Lukas
Hey Lukas,
super, freut mich. 🙂
In der Benutzeroberfläche gibt es diese Option (noch) nicht. Aber wenn du mir ein bisschen Zeit gibst, sollte sich das (zumindest in den Code) einbauen lassen. 🙂
Beste Grüße
Fabian
Hey Fab,
Alles klar, dann warte ich einfach noch ein bisschen, Danke! 🙂
Hätte noch eine kleine Frage, hab nun die kleine Uhr aus Fun nochmal gebaut, jetzt hat die Große Uhr nen kleinen Bruder 😀
Dort habe ich das Problem, dass mir in der Benutzeroberfläche die Meldung angezeigt wird, dass noch keine RTC zur Anzeige gewählt ist. Hab mich daraufhin ein bisschen im Netz belesen, benötige ich trotzdem noch zusätzlich ein RTC-Modul oder fragt die Uhr normalerweise die Zeit über das WIFI ab ?
Vlt. hab ich da auch was in den Settings übersehen, bzw. muss da noch was aktivieren.
Sonst funktioniert alles super, schaue ständig auf die Uhr :DD
Hey Lukas,
kann es sein, dass dort etwas von “…NTP…” stand? 🙂 Du musst nicht zwangsläufig eine RTC verbaut haben. Wenn der pxlBlck mit einem WLAN verbunden ist, ist es genauer/einfacher die Zeit über NTP abzurufen. Ich habe dazu einen Artikel geschrieben in dem erklärt ist wie du das ganze konfigurieren kannst: https://nerdiy.de/howto-espeasy-ntp-zeitabruf-aus-dem-internet-aktivieren/
Ich hoffe das klappt alles. 🙂
Beste Grüße
Fabian
Hey Fab,
Ja hat alles funktioniert, dank deinen Anleitungen läuft jetzt alles.
Danke für die geilen Projekte!
Beste Grüße,
Lukas 🙂
Super, freut mich. 🙂
Danke und beste Grüße
Fabian