HowTo: pxlBlck - build 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 set. 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 notes are always kind of annoying and seem unnecessary. Unfortunately, many people who knew "better" have lost eyes, fingers or other things due to carelessness or injured themselves. Data loss is almost negligible in comparison, but even these can be really annoying. Therefore, please take five minutes to read the safety instructions. Because even the coolest project is not worth injury or other trouble.
https://www.nerdiy.de/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 make a purchase via this link, Nerdiy.de will receive a commission from the relevant online shop or provider. The price does not change for you. If you make your purchases via these links, you support Nerdiy.de in being able to offer other useful projects in the future. 🙂 


Requirements

For the assembly you have to master soldering tasks. The following articles contain tips on this.

Required tool:

Required material:

In the following list you will find all the parts you need for the assembly.


Overview

Here you can see a small overview of how the display of animations and the time can look on the pxlBlk_SlotClock.


Collect the necessary parts

Before you can start building your own slotClock, you should have the necessary parts together.

You will need the following parts to assemble the slotClock.

  • 1x WS2812 or SK6812 LED strip 144LEDs/m 60 LEDs long
  • 1x round Pleix glass pane, 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 cable approx. 10cm long

The STL files for printing on your 3D printer can be found in the repository for the pxlBlck_SlotClock under the following link.


Prepare LED strips

First, you should prepare the LED strip for installation.

Insulate the ends of the three cables approx. 5mm as shown...

...and tin them with a little solder.

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

Another view of the tinned contacts of the LED strip.

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

Here, the red wire is connected to the 5V contact, the black wire to the GND contact and the green wire to the DIN contact of the first LED.

The signal line is connected directly to the DIN contact on the first LED. This makes it easier to install the LED strip later.

Another view of the LED strip including the soldered cables.


Insert LED strip into 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 the cables from the front...

...through the hole in the bracket shown.

Make sure that the cables lead away from the LED strip in the direction of the base.

Now it gets a bit tricky: The cables should now be brought together in such a way that they do not get jammed when the LED strip is pushed in.

Note: The bracket in the picture looks slightly different from the STL file offered above. However, the STL file is the correct version. This is the only way to align the twelve and six o'clock positions vertically.

Other view.

Note: The bracket in the picture looks slightly different from the STL file offered above. However, the STL file is the correct version. This is the only way to align the twelve and six o'clock positions vertically.

Then you can slowly run the LED strip around the entire circumference as shown.

... into the gap of the bracket.

The end of the LED strip could overlap slightly with the beginning of the LED strip.

Make sure that no short circuits occur here.

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

As soon as you have completely inserted the LED strip everywhere, your SlotClock should look like this.


Mounting the stand

The stand is there (as the name suggests) to be able to place the SlotClock upright. It also houses the ESP8266 for controlling the LED strip.

To assemble, you will need the stand, two self-tapping 2×6 screws and the prepared LED strip holder.

Now thread the cables through the hole in the stand as shown and place it in the...

...cover the back of the LED strip holder.

Now you can mount the bracket using the two screws.

...to the LED strip holder.

Make sure that you do not overtighten the screws.

Another view of the screwed-in screws.

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


Insert windshield

To cover the LED strip, you can now insert a Plexiglas plate into the LED strip holder.

You will need the prepared unit consisting of the LED strip holder and stand as well as a 3mm thick plexiglass pane with a diameter of 133mm.

You can then simply remove the Pleix glass pane...

...from the front into the LED strip holder.

The Plexiglas plate should now hold in the LED strip holder by itself.

If you want to attach the Plexiglas plate additionally, you can now add...

...attach the 3D printed retaining ring as shown.

Another view of the inserted Plexiglas panel incl. retaining ring.


Installing weights in the stand

The SlotClock should now stand upright on its own. 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 stand.

To prevent the screws from falling out again, you can glue them in with a drop of hot glue.


Install ESP8266

In order 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 installation in the SlotClock, I recommend using the "Wemos D1 Mini".

Before installing the ESP8266, you should ...

...tin the following contacts with some solder.

  • 5V
  • G
  • D4 (or D6)

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

Cut the cable to the correct length...

... to and...

...removes approx. five mm of insulation from the cables.

To make it easier to solder the cables later, you should now tin the cable ends with a little solder.

Then you can connect the prepared cables with the prepared ESP8266...

...soldering.

The connections should be connected as follows.

ESP8266Line colorLED strips
5VRed5V
GBlackGND
D4GreenDIN

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

...and fix with a little hot glue.


Connect USB cable and attach cover

Before you close the back of the stand with a cover, you should connect a USB cable to the ESP8266.

A USB cable with a micro-USB connection and relatively small micro-USB plug is best suited 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 remove the lid...

...place it on the stand...

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

The USB cable should be fed through the cut-out in the stand 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 automatically adjust its brightness to the ambient brightness.

You will need the following components.

  • 1x LDR
  • 1x resistor 1k
  • 2x shrink tubing two cm long
  • 2x cables approx. five cm long

So that the connections of the LDR can be routed into the housing, you must first...

...drill two 1 mm holes in the base.

Now remove the cover flap of the stand.

...and folds the ESP8266 upwards without damaging the soldered cables.

Now you can add the 1k resistor as shown...

...on the underside of the ESP8266.

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

... stuck in the stand.

To connect the cables to the LDR, you should prepare them again.

To do this, remove five mm of insulation from each end of the wires and tin them with a little solder.

Then solder the cable...

...with the connections of the LDR and...

...insulate the exposed contacts of the LDR with some shrink tubing.

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

To 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 cable of the LDR...

...with contact "A0" of the ESP8266.

Then connect the remaining connection cable to the "3V3" connection of the ESP8266.

Once soldered, your assembly should be...

...now look like this.

After installation, you can screw the cover of the stand back on.

Take care not to damage any cables.


Program firmware

After setting up the pxlBlck_SlotClock, you must now install ESPEasy including the pxlBlck plugin on the ESP8266. How to do this 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 about this in the article pxlBlck - Install and configure the pxlBlck plugin.

For additional orientation, you can also use the settings from the screenshot shown here.


Animations, icons and commands

More information about the display of animations, icons and the possible commands with which you can configure your pxlBlck can also be found in the following articles.


Scaling to other sizes and "sealing" LED strips

The WS2812 LED strips are available in different lengths or "densities" (LEDs/m). Theoretically, these (longer LED strips) can also be used to build a SlotClock. Olivier from https://huf.org/wp/ has taken the trouble to create a Google Sheet with which you can easily calculate the scaling factors. With the right factor for your LED strip, you should also be able to print a suitable STL (possibly divided into several parts).

Thank you Oliver 🙂

Link to the Google Sheet:

LEDs per m
on the strip
Number of LEDs
in the circle
Length [m]radius [m]Diameter [m]Magnification factor
to the original 3D model
(arithmetic)
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 GoogleSheet.

Have fun with the project

I hope everything worked as described for you. If not or you have questions or suggestions please let me know in the comments. I will then add this to the article if necessary.
Ideas for new projects are always welcome. 🙂

PS 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 think it's cool that I share the information with you, I would be happy about a small donation to the coffee fund. 🙂

Buy Me a Coffee at ko-fi.com       

17 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 🙂

  4. Hey, that's a super cool project!
    You get itchy fingers watching it. Unfortunately, it is impossible for me to get the individual components (round plexiglass pane) and my neighbor's 3D printer is too small for it.

    You don't happen to be offering these parts for sale, do you?

Kommentar hinterlassen

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

This site uses Akismet to reduce spam. Learn how your comment data is processed.