The 3D printed housing of the “pxlDigits” was initially not intended to be “just” a 7-segment display with WiFi.
Originally I used it to build a kind of timer from a two-digit, 7-segment display for a friend of mine. She is a primary school teacher and had the problem that she needed a time display for her students that can also be read by students who are not yet able to read numbers and / or estimate time periods.
In this case, the display of the numbers on the 7-segment display is of course unsuitable. That is why the display was extended by a 1m long LED strip made of WS2812 LEDs and a rotary encoder. The time can then be set using the rotary encoder.
As soon as a time is set, it runs down automatically. The LED strip lights up completely at the beginning. As the time elapses, the number of LEDs lit on the LED strip is reduced. In addition, the color of the LED strip changes from green to red.
In principle, this LED strip visually shows the elapsing time. Similar to a loading bar on a computer. In this way, the remaining time for a school task can also be read off by students who still have difficulties with the numbers.
How you can recreate this timer called “time_timy” is described in the following article.
Inhalte
- 1 Safety instructions
- 2 Affiliate links / advertising links
- 3 Requirements
- 4 Collect the parts you need
- 5 Circuit diagram
- 6 Place threaded inserts in the base
- 7 Screw the digits to the base
- 8 Prepare the encoder for installation
- 9 Prepare the Arduino Nano for soldering
- 10 Solder the Arduino Nano to the wires
- 11 Assemble the housing
- 12 Attach alternative LED segment cover
- 13 Optional: Attach a buzzer
- 14 Flash the software with the Arduino IDE
- 15 Attach the LED strip
- 16 Power supply
- 17 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 construction you have to master SMD 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:
Collect the parts you need
To build your own time_timy, of course, you first have to collect the parts you need.

You need the following parts for the assembly.
- 2x fully assembled seven segment digits. See: Electronics – Build seven segment number “pxlDigit” from WS2812 LEDs
- 1x 3D printed case
- 1x 3D printed lid
- 1x Arduino Nano
- 1x rotary encoder
- 10-15cm five-core cable
- 2x M3 thread inserts
- 1x connection cable for WS2812 LED strips
- 6x M3x6 countersunk head screw
- If necessary 5V buzzer
Circuit diagram
In the following you can see the circuit diagram of how the individual components are wired together.
Place threaded inserts in the base
So that the housing can be closed with a cover later, this is now prepared.

Depending on the quality of the thread inserts, it is now worthwhile to “cut free” the threads of the thread insert with a thread cutter.
If you don’t have a thread cutter at hand, you can of course also skip this step.
Screw the digits to the base
After you have opened the cover again, you can now screw the seven segment digits to the housing.

… and screw them with two M3x6 countersunk screws from inside the case.
Make sure that the screws hold by cutting a thread in the plastic of the seven-segment displays. Since this is very thin, you have to be particularly careful here and not overtighten the screws.
Prepare the encoder for installation
The time to be displayed can later be set and, if necessary, reset using the rotary encoder. For this to work, the rotary encoder must be connected to the Arduino via a short piece of cable.

In order to prepare the connection of the rotary encoder, you should first connect the wires to it.
To do this, you should strip the ends of the individual lines approx. 5mm and tin them with some solder.
Prepare the Arduino Nano for soldering
In this step, a few initial soldering tasks are performed on the Arduino Nano.

… tin the contacts shown on the Arduino Nano with some solder.
So tins the following contacts.
- +5V
- GND
- D2
- D3
- D4
- D5
- D6

… the Arduino Nano.
You should stick to the color coding shown in the picture. (Provided that you have also connected the individual lines to the rotary encoder as shown above.)

Then you can thread the connection line for the LED strip through the hole in the side of the housing.
Solder the Arduino Nano to the wires
After you have prepared the wires for the components to be connected, you can now connect the Arduino Nano.

You can solder the lines according to the following scheme.
Funktion | Arduino Pin |
---|---|
Digit Input | D5 |
LED-Stripe Input | D6 |
Encoder A pin | D3 |
Encoder B pin | D2 |
Encoder Button | D4 |
Digit 5V | 5V |
Digit GND | GND |
Encoder GND | GND |

In order to mechanically stabilize and also to isolate the soldered lines, you can now cover the soldering points with some hot glue.
Assemble the housing
After all electrical connections have been made, you can install the individual components in the housing.
Attach alternative LED segment cover
I noticed that the paper front panels used to cover the LEDs in the seven segment digits lose their adhesive strength over time.

An alternative solution for the front panels with the help of 3D printed panels is also described in the article Electronics – Building seven segment numbers “pxlDigit” from WS2812 LEDs.
Optional: Attach a buzzer
If you want to be informed acoustically in addition to the visual notification when the set time of the timer has expired, you can also install a buzzer.

For this you need a 5V sounder / buzzer, two approx. 20 mm long shrink tubes and two cables approx. 10 cm long.

In addition to the rotary encoder, there is also a hole in the cover.
The buzzer will be attached behind this later.

But now it’s time to connect the buzzer first.
To do this, tin the contacts “A1” and “A2” of the Arduino Nano with some solder.

Now you have to fix the buzzer with a little hot glue over the hole so that the hole in the buzzer is congruent with the hole in the lid.

… look like this.
It is important that the hole in the buzzer is congruent with the hole in the lid and that no hot glue is covering the hole in the buzzer.
Only in this way the noises of the buzzer can penetrate the outside.
Flash the software with the Arduino IDE
The Arduino code for operating the “time_timy” can be found in the following Git repository.
How you can download files from a Git repository is described in the article GitHub – How do I copy files from a Git repository to my computer.
Tips for programming the Arduino code on the Arduino Nano can also be found in the article ArduinoIDE – Tips and Tricks.
Attach the LED strip
Unfortunately, I don’t have any photos of the complete set-up including the LED strip. But you can also get a very good overview of the complete structure in the following video.
You just have to plug the LED strip into the prepared connection. Often these LED strips are delivered including the connector used here. Your LED strip should consist of 90 WS2812 LEDs. If you use more or fewer LEDs, you can adjust this number in the Arduino code using the “NUMPIXELS_BAR” parameter.
Power supply
You can supply the “time_timy” via the USB socket of the Arduino Nano. Make sure that the power supply you are using is secured against overvoltages, overcurrent, short circuits and all other possible errors. I have also linked a power supply unit that you can use in the material list.
The power consumption of the LEDs is reduced with the help of the configuration in the Arduino Sketch. You should not change these values without having adjusted the power supply circuit.
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. 🙂