MAKER:parallyze/Translated by: Fun Endless
The LED clock project has always been a favorite among makers, with new projects emerging every year. This issue introduces a multifunctional 7-segment clock made with LED strips and Arduino.
The clock uses a single LED strip, consisting of 252 LEDs in total. Inside the frame, there is only one LED strip that is 4.2 meters long. Each segment has 8 LED blocks, with each block containing 56 LEDs.
Clock details:
Width: 40.7 cm; Height: 14.8 cm; Depth: 3.8 cm. A total of 252 LEDs are needed, with 1 continuous LED strip (WS2812B, 60 leds/m, 4.2m). If it is a 6-digit version (6.47m), 388 LEDs are required.
Watch the video:
Previous exciting LED projects:
Creating a colorful clock with 128 ping pong ballsUsing Raspberry Pi or Arduino to create LED matrix lights with a schedule clock using Google Calendar on Raspberry Pi
Material List
WS2812B LED × 252 (60 pcs/m) Arduino Nano/Pro Mini/atmega328 × 1 DS3231 RTC module × 1 16x6mm button × 2 26AWG wire × several USB wires × 1 USB charger × 1 M3 screws × 12
Project Description
When all white LEDs are lit and driven at the maximum rated current (60mA), the power consumption is about 75.6W. If you plan to illuminate at high brightness, ensure to use appropriate heat dissipation materials. Because when running the clock at high brightness and setting a power limit of 7.5A, the components will noticeably heat up within the first ten minutes of testing.
The source code is based on the S7ripClock project, which can be viewed here: https://www.instructables.com/id/S7ripClock-Basic-Edition/
During installation, you can add a wall hook, allowing the clock to be placed on top of the electronic device’s casing.
Electronic Components
Upload the source code using Arduino IDE. The FastLED library is used here. For RTC communication, JChristensen’s DS3232 library is utilized.
The internal power and current limit of the project is 750mA. You can adjust according to actual conditions and handle wiring or power accordingly.
3D Printed Parts
The digital 3D printed parts are recommended to be printed with black material. L7One_Frame_A.STL×1 L7One_Frame_B.STL×1 L7One_Frame_C.STL×1 L7One_Cover_A.STL×1 L7One_Cover_B.STL×1 L7One_Cover_C.STL×1 L7One_Front_AC.STL×4 L7One_Front_B.STL×1 L7One_Elec_Case.STL×1 L7One_Cable_Cover_A.STL×1 L7One_Feet.STL×1
The diffuser (diffusion layer) part is recommended to be printed with transparent material. L7One_Diffuser_AC_Type_1 or 2 (empty) ×28 L7One_Diffuser_B_Type_1 or 2 (empty) ×2 The collection of types 1 and 2 of the diffuser is included in a single STL (30 pieces).
The maximum component size for printing (x/y) is 187.3mm x 147.6mm.
Printing Settings:Thickness: 0.5mm; Layer height: 0.25mm; No support required; Maximum overhang: 45°.
STL files can be downloaded from the project file library: https://make.quwj.com/project/236
Installing the LED Frame and Strip
Install as shown.
Testing the LEDs
The test environment current is limited to 500mA, you can safely run it by powering the Arduino via USB, connecting the LEDs to +5V/GND and the data input to pin 6.
In the video, all 252 LEDs are tested. Each LED will be lit, so do not pay too much attention to the light leaked from unused LEDs between the numbers and points.
In the video, each position will demonstrate displaying 0-9 and counting from 0-99 starting from the left or right.
If you plan to use HH:MM display in the project, you just need to do some tests including segment and number definitions, etc.
Test files can be downloaded from the project file library: https://make.quwj.com/project/236
Front Diffuser
According to your needs, place the diffuser inside the front, and connect it to the numbers or dots. Pay attention to the direction of the numbers, with two (MM) located below the wall and aligning with the notches of the sawtooth, and two (HH) positioned above the wall. The front components are symmetrical and can be rotated 180°.
It is relatively difficult to achieve the best real effect of the LEDs in one go. I tried adding Type A and Type B and comparing them. When moving, the Type B head produces a spotlight effect, but beyond 4m, the difference between Type A and Type B is minimal.
Assembly
In addition to the three wires in the test, you also need to add a power line to the other end of the LED strip. The selection of the power line depends on actual conditions, threading the wire through the hole in the frame A cover.
Cover all the lids on the LED frame.
As shown in the picture, place the electronic device’s casing on the back and secure it in place. Connect the casing to the connector of the central module.
Electronic Parts
The box for installing hardware is suitable for various combinations of Arduino Pro/Nano and RTC (suitable for Raspberry Pi DS3231, DS1307, and DS3231). You can choose other microcontrollers according to your needs.
For the connection method of the electronic parts, please click to view: https://www.instructables.com/id/S7ripClock-Basic-Edition/
You can also adjust according to the brightness and power you need, and you may need to add capacitors next to the LED strip and Arduino.
Arduino Clock Source Code
This software is the fifth version.
The basic settings are: Button A: Select brightness. Button A (long press): Switch color mode (per digit/per LED). Button B: Select palette. Button B (long press): Switch 12h/24h mode. Button A + B: Enter settings. In the settings process: Button B -> Increase +1, Button A -> Accept/Next step. Note: This design does not yet support six-digit numbers.
Once everything is normal, it can work. If there are any issues, please set the serial console to 57600 baud and check its status. If the clock immediately enters settings and displays nothing, it may be due to button shortening or connection errors.
You can also refer to my other projects: https://www.thingiverse.com/parallyze/designs
Code files can be downloaded from the project file library: https://make.quwj.com/project/236
Six-Digit (Optional)
If you need to add two extra digits and a central module to display HH:MM:SS, please follow these steps.
This version requires redesigning the code framework, as the number of LEDs will exceed 255, which will increase many variables. Memory usage needs to be optimized.
When using six digits, it is recommended to run at least 1.5A, otherwise, even at the lowest brightness setting, the center point lighting 24 LEDs will cause all digits to dim.
The STL for six digits are: L7One_Frame_D.STL×1 L7One_Cover_D.STL×1 L7One_Diffs_D.STL×1 (only provides one Type 1, fourteen AC, and two One) L7One_Connector.STL×1
The STL in the original file section are: L7One_Frame_B.STL×1 L7One_Front_B.STL×1 L7One_Cover_B.STL×1 L7One_Front_AC.STL×2
Others: WS2812B LED×136 M3 screws×8
The installation method of the LED strip is as shown in the picture. After completing the preparations, everything can be connected.
STL files can be downloaded from the project file library: https://make.quwj.com/project/236
Assembly of Six Digits (Optional)
Install as shown, removing all items from the clock until you can safely remove the outer cover from the RTC on the right-side module and central module.
Note: Remove the button battery from the RTC during operation!
Now, the entire project is complete!
Project file library address:
http://maker.quwj.com/project/236
via instructables.com/id/Lazy-7-One/
Links in the text can be clicked to read the original text at the end
More exciting content
Baby monitor based on Raspberry Pi CribSense
I look like a handle, but I’m actually an adjustable power supply
A cloud that forecasts the weather, based on Raspberry Pi + 3D printing
Barrier: PC and Raspberry Pi keyboard and mouse sharing solution
Building remote temperature monitoring with Raspberry Pi and MCC 134
Cool modification: electric skateboard with a speed of 40km and a range of 18km
8GB memory version of Raspberry Pi 4 released, official price $75
Samytronix Pi: Desktop computer DIY with Raspberry Pi