HowTo: pxlBlck – Build your own pxlBlck_SlotClock

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.

Your own pxlBlck_SlotClock could look like this.

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 stores listed here are so-called affiliate links. If you click on such an affiliate link and store via this link, Nerdiy.de receives a commission from the online store 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.

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 screws
  • 1x Wemos D1 Mini (ESP8266)
  • 4x self-tapping screws 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.

To do this, insulate the ends of the three wires approx. 5mm…

… and tin them with a little solder.

Now also tin-plates the contacts on the LED strip as shown.

Another view of the tinned contacts of the LED strip.

Now solder the prepared lines to the corresponding contacts as shown.

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.

Another view of the LED strip including the soldered lines.


Place the LED strip in the holder

The prepared LED strip can now be inserted into the holder.

For this you need the prepared LED strip and the 3D printed bracket of the SlotClock.

You should now start putting the wires from the front …

… through the hole shown in the led mount.

Make sure that the lines lead away from the LED strip towards the base.

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.

Then you can slowly put the LED strip over the entire circumference as shown …

… into the gap in the LED mount.

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.

For the assembly you need the base, two self-tapping 2×6 screws and the prepared LED strip holder.

Now guide the cables through the hole in the base as shown and lay it …

… congruent on the back of the LED strip holder.

Now you can mount the bracket using the two screws…

… screw it to the LED strip holder.

Be careful not to over tighten the screws.

Another view of the screwed in screws.

The LED strip holder should now be screwed firmly to the stand.


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.

You can then simply put the acrylic glass …

… into the LED strip holder from the front.

The acrylic glass plate should now hold itself in the LED strip holder.

If you want to attach the acrylic glass plate also, you can now …

… put on the 3D printed retaining ring as shown.

Another view of the inserted acrylic glass plate including retaining ring.


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.

Two M8x25 screws are very suitable as weights.

Now insert the screws as shown …

… 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".

Before installing the ESP8266 you should …

… tin the following contacts with some tin solder.

  • 5V
  • G
  • D4 (or D6)

Now you should prepare the lines to be soldered to the ESP8266.

Cut the cable to the correct length...

...and...

… removes the insulation from the lines by approx. five mm.

To make it easier to solder the lines later, you should tin the ends of the lines with some solder.

Then you can solder the prepared lines with the prepared ESP8266 …

...together.

The connections should be connected as follows.

ESP8266Line colorLED stripe
5Veditor5V
GBlackGND
D4GreenDIN

After you have soldered the wires, you can insert the ESP8266 into the stand...

… and fix with a little hot glue.


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.

A USB cable with a micro-USB connector and a relatively small micro-USB plug is best for this.

Plug the USB cable into the micro USB port of the ESP8266 as shown.

Another view of the connected USB cable.

Now you can put the lid...

... place it on the stand ...

… and screw it to the stand with the four self-tapping 2×6 screws.

The line of the USB cable should be led out of the stand through the recess as shown.

Your SlotClock should now look like this.


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

So that the connections of the LDR can be led into the housing, you must first …

…drill two 1mm holes in the base.

Now remove the cover flap from the stand …

… and fold the ESP8266 upwards without damaging the soldered cables.

Now you can use the 1k resistor as shown …

… and solder it to the underside of the ESP8266.

You can then insert the connection pins of the LDR through the previously drilled holes as shown …

... and stick it in the base.

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.

Then solder the wires...

… with the connections of the LDR and …

… isolate the exposed contacts of the LDR with some shrink tubing.

You can then roughly stow the cables of the LDR in the base.

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

  • 3V3
  • A0

Then connect the first connection line of the LDR …

… with the contact “A0” of the ESP8266.

You then connect the other connection line to the "3V3" connection of the ESP8266.

Your structure should be completely soldered and …

… look like this.

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.


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. Olivier 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 by m
on the strip
Number of LEDs
in a circle
Lenght [m]radius [m]Diameter [m]magnification factor
to the original 3D model
144600,4170,0660,1331,000
96600,6250,0990,1991,500
74600,8110,1290,2581,946
60601,0000,1590,3182,400
30602,0000,3180,6374,800
Here you can see an excerpt from the Google Sheet.

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 that I share this information with you, I would be happy about a small donation to the coffee box. 🙂

Buy Me a Coffee at ko-fi.com   

16 comments

  1. As already written by email, a great project! Thank you for the amount of time you obviously invested in it!
    For the design of the base, I have another suggestion in terms of pressure optimization:
    If the wall thickness of the subdivisions were a multiple of 0.4mm, the print would be a little faster and cleaner. Otherwise, a very narrow infill is printed for each sub-line, which increases the printing time,
    You could of course hack something via the slicer and the infill settings, but it would be cleaner directly in the design :)

    1. Hey Philip,
      Thanks. 🙂
      And thanks for the hint. Is a good point. I'll implement that and update the STL. 🙂
      Best regards
      Fab

  2. Hi,
    I intend to recreate the clock and have already prepared the ESP with LED strip for this. I made all settings according to this guide. However, the ESP controls only 59 pixels, between 30 and 32 seconds a pixel is missing. What could have gone wrong with me?

    Greetings Myrng

    1. Hi Myring,
      did you flash the firmware with the Arduino IDE (i.e. the current code) or did you use the precompiled binaries? I plan to have the binaries created automatically (so far I've added them to the repository manually), which means that the binaries are not up to date.
      Yesterday I fixed an error that sounds similar to the one you described. So if you flashed the binary let me know. Then you can try programming from the Arduino IDE or I'll update the binary manually. 🙂
      Best regards
      Fab

      1. Yes, I took the finished binary. Will try again with the IDE. I've already done quite a lot with ESPs, but haven't found ESPeasy that intuitive so far, hence the finished IDE.

        Greetings Myrng

        1. Yes, I had the same problem at first. It's like everything else: once you've dealt with it, it becomes easier. 😀 (Sorry for the stupid advice). Flashing the firmware is ultimately relatively easy. So if you've already flashed firmware onto the ESP using the Arduino IDE, you should be able to do it. 🙂 If you want, please let me know if it worked and the error in it has been fixed. 🙂
          Best regards
          Fab

          1. The clock is ready and the self-compiled version works! No more errors with missing LEDs 🙂

  3. hey fab,
    Awesome, almost got it 😀
    Mega sense of achievement right now 🙂
    I just did it a bit differently than you did, made the clock itself twice as big, i.e. two LEDs should be controlled per second, so I use a total of 120 LEDs.

    Is there a way to adjust these changes in the ESP-Easy user interface?

    Thanks and regards,
    Luke

    1. Hey Lukas,
      great, I'm glad. 🙂
      This option is not (yet) available in the user interface. But if you give me some time, it should be possible (at least in the code). 🙂

      Best regards
      Fabian

      1. hey fab,
        All right, I'll just wait a little longer, thanks! 🙂
        I still have a small question, I've now built the small clock from Fun again, now the big clock has a little brother 😀

        There I have the problem that the user interface shows me the message that no RTC has yet been selected for display. I then read up a bit on the net, do I still need an additional RTC module or does the clock normally query the time via the WIFI?
        maybe Did I miss something in the settings, or do I have to activate something else?

        Otherwise everything works great, keep checking the clock :DD

          1. hey fab,
            Yes everything worked, thanks to your instructions everything is working now.
            Thanks for the cool projects!

            Best regards,
            Luke 🙂

Kommentar hinterlassen

Your email address will not be published. Erforderliche Felder sind mit * markiert