Handwritten Clock Cube 8x16x8

12,704

134

21

Introduction: Handwritten Clock Cube 8x16x8

About: PLC, Arduino - Do it yourself project

I do not know why I especially liked to do some projects about lighting and sound. Here is one of LED projects, as called "Handwritten Clock Cube 8x16x8", that actually made me very excited. And I hope you will be enjoyable what I wanna to share on this instructable.

This cube has a total of 1024 leds, with 512 red leds and 512 green leds. They are same as two separated 8x8x8 led cubes and assembled into an 8x16x8 cube block. Let's take a look at some beautiful effects through the following videos:

  • Handwritten Clock Mode: It can shows year, month, day of month, day of week, hour, minute & second & temperature by reading real time value from DS3231.

*** Version 1.0: For this demo video, it only show hour, minute & second.

*** Version 2.0: It show all information that got from DS3231.

  • Animations Mode:
  • Spectrum Analyzer Mode: It can also read music analog signal via stereo audio jack, with FFT transformation, then show volume unit on this cube.

Step 1: BILL OF MATERIAL

For handwritten clock mode, I bought one more RTC module - DS3231 & Arduino Mega 2560 to expand storage memory and program.

Step 2: WOODEN CUBE TEMPLATE

Firstly, I printed out the cube base design, sticked on wooden plate then drilled with 64 holes, diameter 5mm. This is an important preparation step to get a beautiful and symmetrical cube. Here is the download link for cube template: CUBE TEMPLATE

Step 3: LED SOLDERING

This step took the most time and effort. Before and after every single led soldering, I had to check it carefully. Otherwise when these leds were pieced together into cube block, it would cause us lot of troubles if there were some broken leds in the middle of led cube.

Step 4: CUBE BASE BOARD

For cube base PCB and wooden cube template, distance between leds is the same together. After soldering 64 leds on wooden cube template, we can place them exactly on print circuit board of cube base.

PCB Eagle design & pictures:

PCB real size download file: CUBE BASE PCB

Step 5: LAYER BOARD

I used 2x74HC238 (with active HIGH outputs) to control 16xNPN - 2N2222 + 16xPNP - TIP42C Transistors. You can download real size PCB picture above.

PCB layer board

PCB real size download file: LAYER BOARD

Step 6: SHIFT REGISTER BOARD

Shift Register Board include 8x74HC595, 8xULN2803, 64xR100, 10x0.1uF decoupling capacitors.

PCB file: SHIFT REGISTER BOARD

Finally, I joined Layer Board & Shift Register Board into one cooper glad A4 size. It's really well-fitting in A4 size.

Step 7: CUBE ASSEMBLY

  • Soldering LEDs to 1st cube base PCB:

  • Testing every single LED:

  • Soldering LEDs to 2nd cube base PCB & testing:

  • Installing Shift Register Board & Layer Board:

Step 8: CUBE BOX

  • Preparation

I made one small adapter board for connecting between Arduino and PCB boards.

*** For Arduino Uno version: This version only included animations & spectrum analyzer functions with female audio jack, 3 way toggle switch & push button.

*** For Arduino Mega 2560 version: This update version included one more function "handwritten clock" so I added RTC DS3231 as picture

  • Bottom box

Making a bottom cube box to contain: Power Supply, Arduino Uno/ Mega, Shift Register Board, Layer Board. At back side of cube box, I mounted power switch, push button, 3 ways toggle switches & female stereo audio jack.

  • Top box

  • Connecting all together

  • Finish
  • Step 9: PROGRAME

    Led cube size is defined:

    • X = 8
    • Y = 16
    • Z = 8

    We have total of 8 layers for this cube. With my hardware, we have to convert 16 rows to 8 layers as follow:

    • Z0 = Layer 0 = Row 0 + Row 8
    • Z1 = Layer 1 = Row 1 + Row 9
    • Z2 = Layer 2 = Row 2 + Row 10
    • Z3 = Layer 3 = Row 3 + Row 11
    • Z4 = Layer 4 = Row 4 + Row 12
    • Z5 = Layer 5 = Row 5 + Row 13
    • Z6 = Layer 6 = Row 6 + Row 14
    • Z7 = Layer 7 = Row 7 + Row 15

    See picture below:

    For Y axis, we also do some modification in program to get correct coordinates:

    For detail, let see example above for command setvoxel(6, 10, 0).

    For Arduino handwritten clock program, you can download at GitHub link:

    https://github.com/tuenhidiy/Handwritten_Clock_Cub...

    Step 10: HANDWRITTEN TEMPLATE

    Creating ASCII code in handwriting is a time-consuming work. Luckily, Microsoft Excel can help me do this job very well, not only create fonts but also create programming codes for Arduino. You can download my excel template file at link: Excel Handwrtten Template

    This file has a total of 4 sheets:

    • Sheet "TEMPLATE_8X8": be used to create 8x8 ASCII fonts for leds or look up from this font library after all symbols are created. And then specific symbol is converted to coordinates (x, y). With this sheet, you can make a font or image with size 8x8 for yourself. See image below for capital letters "E".

    • Sheet "DIY_FONT": contains the entire ASCII font that was created

    • Sheet "EXAMPLE_E": is a typical example of creating handwriting character. Based on coordinates of capital letter "E" in step 1, we will create handwritten letter by allowing which coordinate to be displayed firstly and which coordinates are displayed secondly, thirdly... and endly. I used the “&” (ampersand) operator to combine coordinates from multiple cells in order of showing priority. Result for handwritten capital letter “E” is: {{6, 1},{6, 0},{5, 0},{4, 0},{3, 0},{2, 0},{1, 0},{1, 1},{2, 1},{2, 2},{1, 2},{1, 3},{2, 3},{2, 4},{1, 4},{2, 5},{1, 5},{0, 6},{1, 6},{2, 6},{3, 6},{4, 6},{5, 6},{6, 6},{6, 5},{3, 3},{4, 2},{4, 3},{4, 4}}; // E

    • Sheet “TOTAL_HANDWRITTEN”: contains the entire handwritten letters that I created. I used Microsoft Excel to create an Arduino subroutine in this case. Otherwise, it will take time to write down 180 command lines like this:

    Step 11: PICTURES

    Step 12: SOME ANIMATIONS

    Clocks Contest

    Second Prize in the
    Clocks Contest

    Be the First to Share

      Recommendations

      • Big and Small Contest

        Big and Small Contest
      • Make It Bridge

        Make It Bridge
      • For the Home Contest

        For the Home Contest

      21 Comments

      0
      pieguy729
      pieguy729

      9 months ago

      I think this is a beautiful way to show off LEDs and give function to form. Well done.

      0
      propellerclock
      propellerclock

      Question 3 years ago

      Hello, would you mind sharing the eagle .brd and .sch files?

      0
      CarelVolschenk
      CarelVolschenk

      Question 4 years ago on Step 3

      Hi

      What a great project,is there perhaps a video or step by step instruction on how to complete the soldering on the LED layers,as an example where the anodes and cathodes need to be soldered for the whole cube and where each layer ties up with the next?

      This would be very helpfull for beginners.

      0
      DankeyMcKein
      DankeyMcKein

      Question 4 years ago

      Also in regards to the layer board, I am trying to understand how the PNP Transistor is necessary if the NPN transistor can just be used as a switch? I am inexperienced in the world of electronics and did some research on NPN-PNP drivers for LED Arrays, but found nothing on both transistors being on the negative end of the LEDs. Could you explain this?

      0
      DankeyMcKein
      DankeyMcKein

      Question 4 years ago on Step 5

      For the Layer Board, what are the resistor values used? I have been trying to figure it out, but cant seem to. Thank you!

      0
      razil
      razil

      4 years ago

      Sir, an you kindly share the schematics or eagle files. Thanks in advance

      0
      DipanjanP4
      DipanjanP4

      4 years ago

      Arduino: 1.6.11 (Windows 10), Board: "Arduino/Genuino Uno"

      Sketch uses 11,996 bytes (37%) of program storage space. Maximum is 32,256 bytes.
      Global variables use 4,486 bytes (219%) of dynamic memory, leaving -2,438 bytes for local variables. Maximum is 2,048 bytes.
      processing.app.debug.RunnerException: Not enough memory; see http://www.arduino.cc/en/Guide/Troubleshooting#size for tips on reducing your footprint.
      at cc.arduino.Compiler.size(Compiler.java:338)
      at cc.arduino.Compiler.build(Compiler.java:158)
      at processing.app.Sketch.build(Sketch.java:1111)
      at processing.app.Sketch.build(Sketch.java:1081)
      at processing.app.Editor$BuildHandler.run(Editor.java:1988)
      at java.lang.Thread.run(Thread.java:745)
      Not enough memory; see http://www.arduino.cc/en/Guide/Troubleshooting#size for tips on reducing your footprint.

      This report would have more information with
      "Show verbose output during compilation"
      option enabled in File -> Preferences.

      0
      SeraD1
      SeraD1

      Question 4 years ago

      I'm student Can u share the animation sir code sir..

      0
      tuenhidiy
      tuenhidiy

      Reply 4 years ago

      Thank you!

      0
      riff raff
      riff raff

      4 years ago

      OMG. Sell. Kits.

      0
      tuenhidiy
      tuenhidiy

      Reply 4 years ago

      Thank, Riff. PCB design was shared on my post!

      0
      juzzza1
      juzzza1

      4 years ago

      One of the best designs I have seen. Have done an 8x8x8 but combining 2 is just awesome. Thanks for posting. Might have to try this one.

      0
      tuenhidiy
      tuenhidiy

      Reply 4 years ago

      Thanks, Juz. It's more amazing if you combine 2 led cubes 8x8x8 together.

      0
      SimonP47
      SimonP47

      4 years ago on Introduction

      Am I missing something, in the parts list it details 512 red leds and 512 green leds, in the video it looks like the colours are blue, white and red....how ? Or is this another variant?

      0
      tuenhidiy
      tuenhidiy

      Reply 4 years ago

      Hi Simon. This led cube really only include green and red LEDs. Maybe I filmed with camera and phone so colors had a bit difference.

      0
      SimonP47
      SimonP47

      Reply 4 years ago

      Hello, thanks for the response, it certainly looks blue and red.

      0
      siupilot
      siupilot

      4 years ago

      This is truly fantastic. Is it possible to make the steps significantly more detailed, meaning a true instruction manual?

      0
      tuenhidiy
      tuenhidiy

      Reply 4 years ago

      Thanks, Siu. I saw a lot of tutorials about led cube 8x8x8 on this forum, and my cube is as simple as two led cubes 8x8x8 assembled together.

      0
      doncore
      doncore

      4 years ago

      I'm speechless.

      This is one of the best led-cube projects i've ever seen.