Instructables
loading
loading

CHR's 8X8X8 LED Cube Revisited with improvements!

Featured
Picture of CHR's 8X8X8 LED Cube Revisited with improvements!
cube-gif.gif
CIMG2126.JPG
CIMG2092.JPG
CIMG2072.JPG
CIMG2073.JPG
CIMG2982.JPG

See step 17 for more info regarding the music input mode for non-RAMP boards.

There are now 7 music modes in the posted code, and I am looking for more ideas for animations or music triggered effects !

SKIP DIRECTLY TO STEP 1 if you just want to get to the improved build instructions


See step 18 for my latest released Boards and features and subscriber videos of their completed cubes!


See step 19 for the most recent or upcoming design previews and demos.

Don't forget to check out my RGB cube and drop by TheLEDCube.com for more videos and info!

I want to acknowledge that so many here contributed ideas and support, and although there are too many to name now, I did want to acknowledge my gratitude for all that contributed to the project.
I am so happy that the printed circuit boards I developed helped those that wanted or needed them, whether they had put in months of work, and just couldn't get the circuit working,just wanted to eliminate all those wires, wanted a PC Board but didn't know how to design them, designed a circuit board and then realized how expensive they can be to have fabricated, didn't know how to read schematics, were up against a school project deadline, or just loved the added features like the music input and remote control - I am happy that so many were able to benefit from them.
I myself was so taken with the original project, that if I didn't have the knowledge or skill or resources to design a PCB, or wire up the circuit myself,I would have gladly bought a board if they were available.
Unfortunately, none were in the original instructable by CHR when I had first seen it. If you couldn't hand build it, you were on your own, and I felt very sorry for those that tried and failed, or didn't even know where to start.

PLEASE DON'T ASK FOR EAGLE FILES for the PCBoards. It wasn't designed in Eagle, so there aren't any.

Now...on to the instructable.

I was immediately enthralled with the LED Cube instructable by CHR .
I am going to give a piece of advice I saw there that made a lot of sense. READ EVERYTHING including all the comments.
Often there is information and answers to questions that may answer a question you might have.

I thought "I COULD MAKE THAT" (and I did, making little improvements along the way) - but I took it a step further, and decided that I would try to make it so that almost anybody could make it as long as they could solder and could tell the difference between the different parts.
That is the reason I created the PCBoards to control the cube, and eventually even a Cube Base Board which all but eliminates the point-to-point wiring from the project. I loved the project but hated all the messy wires everywhere.
I have also supplied demo code (both the original code and many of my modifications), and clickable AVR initializer and code uploader utilities to get the code onto the board quickly and easily for those that aren't comfortable with dos-prompt based utilities like AVRDude.
There is also a pinout / connection chart that you can use to design and troubleshoot your own board using the Arduino, ATmega328P, or the more capable ATmega32 microcontroller for extended functions.

The hardest part is building a cube that is straight and square. I will be addressing this first.
If you use my construction methods, your cube should be as straight and square as in photos above.

I have a good electronics background, so I immediately wanted to build one of these cubes the second I saw it.
The more I got into it and read the comments on his well documented instructable, the more I thought I might be able to help people with less of an electronics background understand exactly how this thing actually works, and troubleshoot problems.
People were asking all kinds of questions long after people that really knew the circuit stopped answering them, and I found myself answering questions in his instructable on a fairly regular basis.
Finally, I knew enough to make what I hoped would be an easier to understand instructable.
Not only that, I have made a few improvements along the way as well, and eventually even PC Boards for myself, and got extras for those that might also want them

As I start out, I realize I will be "winging it" a lot here, so forgive me if I am unclear at any point, and feel free to ask questions.
If you see ANODE written where you know it should be CATHODE - or vice-versa - let me know. Sometimes I get tired when writing and get electronic dyslexia, and mix them up. I have tried my best to proof read my instructions to make sure this hasn't happened.
Try to keep in mind during construction that there is one cathode connection per layer, and 64 anode connections.

I will ask however that if you are getting ready to build one of these, Especially if you want to build your own circuit, that you go through CHRs well documented instructable FIRST, and then read through this one.

Try to build his controller circuit if you can, and feel free to contact me if you run into trouble (which almost everyone does).
THIS can be a VERY daunting task. Many people find they can build the physical cube, and are able to solder connections easily enough, but when it comes to constructing the actual circuit, that's where it all usually falls apart.
Troubleshooting a point-to-point hand wired circuit is not easy, even if you know what you're doing.
FEAR NOT ! As this instructable progresses, I will be working on a number of circuit boards that will include features requested by people here, and at varying levels of soldering expertise all the way from simple through hole soldering to completely surface mount technology boards.
You will be able to purchase these boards when they are available, and prices drop as more requests for boards come in due to volume discounts. Just don't expect them to be five bucks - I won't be mass producing them which makes my cost a lot higher.
Watch for board revisions if you have made a recommendation or request for a board feature that I liked

Music triggered modes for those with my circuit boards... (I'll be working on more as suggestions come in) - LATEST CODE IS NOW posted on STEP 10

Sorry about the video quality on this one, but I was in a hurry to get these posted and didn't take the time to adjust the camera well.


Just hit the MUSIC button on your board (Black Edition V3.5 and higher, ARMS series or RAMP series) or wireless remote (ARMS and RAMP series boards only) to cycle through the music modes.
Previous 5 mode code is on STEP 12 so you guys with the new boards can play with it! I will be adding to it though!
The code works with both wired input as described in step 17 ,built onto the board (RAMP boards only), or using the Mic Module in the parts list (3.5A and above, ARMS or RAMP boards)






If you are thinking "Big deal, I have seen cubes react to music in other videos" - well, we are doing it WITHOUT a PC hooked up to the serial port! That's right, the ATmega32 is doing this on it's own. What is more, with the Mic module option, this means you could take your cube to a party and set it somewhere (that nobody can touch it) and let it react to the music without even hooking anything up to it.

This instructable has mutated over the past few months, and you'll see a bunch of end results before we get into how to make the cube, and the improvements that have been made over the original construction techniques and original circuit, as well as improvements made on the PC Boards over time.





A couple quick videos of my cube in action are above.
The first video is the cube as a standalone device, and the "Cube Perry" video is under PC control via the TTL Serial port and a script written in Processing.
The serial port is key to allowing it to be controlled by things like a PIC, another Arduino or PCDuino or PC computer .

Stand-Alone Music Input! The video below demonstrates this addition to the circuit,

The schematic is on step 17 for connecting an audio source to previous board versions.



By the way - come back here every few days to check up on this instructable. I tend to add to it without notice!
This includes additions and revisions to the code.


If you have tried to make your own controller - or just know you couldn't build one from scratch, but COULD solder a PC board, then ask me about what boards are available.

Send me a private message for details.

NOTE: If you downloaded the 5 mode music hex file before Jan 12, you need to download the latest code.
The music modes originally used up a little too much RAM in the AVR, and when the Fireworks effect would try to initiate, the cube would reset. This has been fixed by reducing the firework sparkles from 60 to 40. The new 5 music mode HEX file does not have this problem now when running in animation mode. Fortunately I first ran into this issue with the Arduino when porting over the same routine. Since the fonts go into RAM rather than EEPROM on the ATmega328p, there was a lot less RAM to utilize, and this is why there are only 30 sparkles in the fireworks routine that was ported to the Arduino portable code.

The ARMS and RAMP series boards have an area marked off where the wireless remote module goes. If you are NOT going to use the wireless remote module, none of the parts in that area need to be put on the board, and you don't need to purchase the remote module. Likewise, if you don't want acoustic music response, you don't need to purchase the Mic module.

And now on to our regularly scheduled program (How To Make The LED Cube)

 
Remove these adsRemove these ads by Signing Up
1-40 of 360Next »
jjd3370.4 months ago

Made it! Used Supertech's Ramp board. Fun project, working on a few more. Thanks Supertech for all your help!

SuperTech-IT (author)  jjd3370.4 months ago

LOL - that song takes me back! Nice looking cube! Glad I could help !

Sent you a private message about your boards please let me know.

Thanks

SuperTech-IT (author)  jjd3370.4 months ago

I have no idea what this is...lol...if I sent you a private message, please REPLY to it...LOL

nmacintosh13 made it!9 months ago

My LED cube encased in 2-way mirrored acrylic.

Cube.JPG

I love it, had this same idea! Any chances to see it working?

darrcook made it!10 months ago

I just completed constructing my cube two days ago. The instructions and methodology given by SuperTech-IT are spot-on. I deviated slightly by attaching the layers together with them upside down (like a dead bug) instead of on its side like SuperTech indicates. That seemed easier at the time, HOWEVER, my cube ended up a little slanted as a result. You can't really tell too much from my photo. I'd probably do the next one on its side to guarantee perfect alignment.

I also bought a spool of narrow-gauge galvanized wire and straightened using CHR's methodology. I used three of these on each layer (middle and each side) to reinforce. This seemed a little easier and less tedious than using clipped LED leads.

The "S" shaped gaff was indispensable in assembling the layers and getting the finished cube mounted on the PC board. You WILL need one of these. Just make it out of a piece of straightened wire.

I highly recommend getting the circuit boards from SuperTech-IT if he still has them for this cube. It will shave incredible amounts of time off your construction..

Though I didn't need significant amounts of help from SuperTech-IT in construction and debugging (you have minimal problems when using pre-fab circuit boards), he has been incredibly responsive and helpful in addressing my questions. I have close friends that are less responsive. ;-)

For my USB programmer, I used a SainSmart I got thru Amazon. This gave me errors with Avrdude when trying to program. Initially I thought I had fried some part of the circuit or had done a bad solder joint. SainSmart has a GUI-based programmer called PROGISP that could program the ATMEGA. My board was fine. Of course I forgot to set the fuse-bits. POST ran incredibly slow and it looked like I had two completely failed layers. This was fixed when I used the PROGISP tool to se the fuse-bits.

This was a fun project. Now I can set about to customize the effects and create some new ones.

Thank you, SuperTechIT -- this has been the most rewarding Instructable I've ever done.

image2.jpeg
darrcook darrcook10 months ago

I ended up having ghosting on layer 2 of my cube. When pixels above that layer would light, the layer 2 ones would as well, albeit dimly. Come to find out (with SuperTech-IT's help), I had my transistors in backward. I thought I had checked and double-checked. It's about the easiest part to install incorrectly. CHECK YOUR TRANSISTORS if there's any problems. The P2N2222A transistors I got from DigiKey need to mount with the flat side facing away from the 40-pin connectors. I will reverse my transistors later today to see if the situation is improved.

SuperTech-IT (author)  darrcook10 months ago

Yup, someone else had the identical issue on a hand wired board on CHR's instructable page just last week. If you check here at the comment by Tiimmee you'll see the issue was almost exactly the same, and the fix was the same for him.

SuperTech-IT (author) 1 year ago
Post here on step 18 to show off your cube, new effects, music response demos or whatever! You deserve a pat on the back and a place to showcase your work!

I just had a problem with WINAVR not being able to run the make command. It gi\ave the following error:

Size before:

0 [main] sh 9268 sync_with_child: child 4472(0x15C) died before initialization with status code 0xC0000142

167 [main] sh 9268 sync_with_child: *** child state waiting for longjmp

/bin/sh: fork: Resource temporarily unavailable

make: *** [sizebefore] Error 128

To fix it,

Copy this file:

http://www.madwizard.org/download/electronics/msys-1.0-vista64.zip

to utils\bin directory inside the WinAVR directory

rebeltaz1 month ago

Quick question.... Is your template based on 3mm LEDs or 5mm LEDs? I haven't tried yet, but I did print it out and it looks kind of large for 3mm, so... just curious. Thanks :)

SuperTech-IT (author)  rebeltaz1 month ago

If you check the parts page, you'll notice all the LEDs are 5mm.

dvberger1 month ago

Any reason why you didn't pull out the flip-flops and address selector and go with a set of shift registers? They would seem to be easier to use and yield less chips

SuperTech-IT (author)  dvberger1 month ago

Because I didn't know crap about code when I saw CHR's original project, so I made sure my circuit worked exactly as his does so his code would work on it.

When I first saw this project, I didn't know what an Arduino or ATmega was either.

krypstocken made it!1 month ago
Hi
So I finally got around to upgrading my cube with the more powerful microprocessor and the sound inputs.

It seems like the line-in option works best, easiest to calibrate. I lack an output signal that I can feed the cube with where it's sits so I'm relying on the microphone module which is super sensitive when you adjust the level.

I placed the microphone module and the reset, run, and music buttons on a small chip behind the cube for easy access.

I also noticed that the LED legs have started to corrode, I guess you get what you pay for. Now I probably have the first "rustic" cube in the world.
image.jpg
jjd3370.3 months ago

Here's my Second cube with a Hand Made board. A lot of troubleshooting to get this one to work. Got a lot of tips from CHR's instructable , Pyroelectro and Supertech. I like making the Cubes, but would much rather have a printed circuit board. I have to learn how to make those things next.

https://youtu.be/DMrIdqjHaG8

Supertech, I need another board! I need to make one for my Neice! I don't want to make another hand made board!!! :) Seriously if you can get another board let me know.

SuperTech-IT (author)  jjd3370.3 months ago

I have inboxed you

krypstocken made it!3 months ago

Thanks to Supertech-IT for providing a board, a lot of help and his quick responses to my questions.

Will order a RGB kit next.

:-)

Kristoffer

image.jpgimage.jpgimage.jpgimage.jpg
SuperTech-IT (author)  krypstocken3 months ago

Glad to see you have it all up and running! I guess you already had the cube built and just needed the circuit eh? I was wondering why you were asking about the LED layout - I thought you had a base board too...LOL! Looks nice - your next step should be to move up to the ATmega32 and put the audio connectors on the board! LOL !!!

Yes
I made the cube and a prototype board that looked horrible. Bought your printed circuit and haven regretted it for a second.

I think I will upgrade to the bigger processor but save the mic/music for the RGB cube.
SuperTech-IT (author)  krypstocken3 months ago

You were going to hide it in the base anyways, so looks wouldn't have mattered...LOL. I still have my first hand wired board for this project. It's a mess, but it works!

CIMG1924.JPGCIMG1920.JPGCIMG1893.JPGCIMG1870-2.jpgCIMG1846.JPGCIMG1961.JPGDriver-Board.jpg
SuperTech-IT (author)  SuperTech-IT3 months ago

My idea then was to do what I did with the RGB cube, which was have the entire circuit on one board, except the microcontroller, and to make it easy to switch from one microcontroller to another. Once I taught myself how to make a PC Board though, I decided to just make it so you could put either chip on the board and be able to program it right on the board. Here's a blast from the past with the pre-black edition first boards. The SMT board of course could only take the ATmega32 SMT.

Scan_Pic0019.jpgCIMG2316.JPGCIMG2307.JPGCIMG2298.JPGCIMG2103.JPGCIMG2061.JPG
SuperTech-IT (author)  SuperTech-IT3 months ago

Don't forget, there is a front panel connector on the board too, so you can put the LED indicators, buttons and audio input on the front, side or back of your base.

krypstocken made it!3 months ago

http://youtu.be/RJPRnYIkQGY

image.jpgimage.jpgimage.jpgimage.jpg
YASH023 months ago

what is the value of resistor that u connected with the bases of transistors?

SuperTech-IT (author)  YASH023 months ago

All resistor values are marked on the PC Board.

jrtumbles4 months ago

I used a large pizza box for the jig. I have my 4x4x4 and 5x5x5 templates on one side and now this 8x8x8 on the other. I use a bic pen to make the holes to match my 5 mm lights. Pushing the pen in, up to the second shoulder, makes a perfect sized hole. The large box also makes a nice platform for the soldering station, tools and solder and such

SuperTech-IT (author)  jrtumbles4 months ago
Nice on the BIC...never thought of that. Thanks for sharing! In an unannounced contest you can name your prize if you know I have it.
jjd3370.4 months ago

Finished my cube with Supertech's board and attempted to connect the USBtiny to set the fuse bits, I get this error in avrdude:

avrdude: initialization failed, rc=-1

Double check connections and try again, or use -F to override

this check.

avrdude done. Thank you.

Has anyone else ran into this issue? I do have the proper drivers installed for the usbtiny.

Thanks

20150317_202124.jpg
SuperTech-IT (author)  jjd3370.4 months ago
What version/revision are you using? do you have PROG/RUN jumpers?

The USBtiny is Version 3.0. It has power enable jumper. I just noticed it has jumper pins labled "pgm" "sel". Adafruit instructions does not mention these. Should those pins be jumpered?

SuperTech-IT (author)  jjd3370.4 months ago

Let me clarify - it appears you have one of my controller boards - what version and revision is it, and does it have the PROG/RUN jumpers to the right of the transistors ?

Sorry it's a RAMP v4 I sent you a private email with pictures.

SuperTech-IT (author)  jjd3370.4 months ago

OK - that pretty much eliminates the board as being the issue. There must be something off with your USBTiny. You may want to have a little chat with Adafruit. I get my programmers off ebay dirt cheap from overseas and they work great.

Figured out my upload issue I had one pin that was poorly soldered. I got the code uploaded but it looks like I have an issue with Row 1 and row 8. Rows 2 through 6 are working great, font/letter effects work perfectly. I put male headers on my ribbon cables and tested every LED in every row and layer so I don't believe it's the cabling. I also tested continuity between the 40 pin male cable connectors and the solder joints beneath and all were good.. Anyone have any ideas? Here's a video: http://youtu.be/0b3R2vKeGWI Thanks in advanced for any comments.

SuperTech-IT (author)  jjd3370.4 months ago

Possibly chips 1 and 8. Swap 1 with 5 (left most pair of chips) and 8 with 4 (right most chips) and see if the issue moves. If it doesn't, resolder the sockets on chips 1 and 8 (nearest the wired power input, and nearest the right hand header and transistors). Failing that, check the sildering on the 138 (vertical chip) or re-seat it.

rebeltaz4 months ago

I will admit that I haven't had time to completely read your instructable yet (but I will), but the only schematic I see are the original CHR schematic. Do you provide schematics for your modifications? Specifically the audio input mod? I also see that you sell boards. I will most likely build my own on perfboard (call me glutton for punishment, but that tends to be my preferred method!) but I would be interested to know what you charge for bare boards and how one goes about getting said boards. I'll be back later this week when I have more time to fully read your posts.

SuperTech-IT (author)  rebeltaz4 months ago

Because of the barrage of "I can't get it to work, please help" requests that sharing how to hook up the audio input always generates, I just don't bother telling people how to do it on a hand wired board as it tends to never work right because of bus noise etc that has been specifically designed out of my boards.

My schematics follow CHRs pretty much to the letter except for where my decoupling caps are located, their value and quantity, and the fact that I only use 1 transistor per layer. The remote module connection just connects to the pushbuttons via transistors. Other than that, it's all identical.

krypstocken4 months ago

Hi

I almost made it and have a few questions.

I’m inspired by CHRs original, SuperTechIt's improvements and a guide from PyroElectro.com(also based on CHR's design)

1. Is there a forum where I can ask questions if not here?

2.
I made the latch circuit and decided to test it before building the
cathode switching circuit. Should one 1 led connected to any output pin
and ground flash if I load SW on the Arduino?.

3. Why is every layer in cathode layer circuit also connected to +5v via a resistor before the transistors?

3.5 Why are there two transistors for every layer, to limit the amp load?

4.
I suspect I have ruined one or several IC, either the address decoder
or one of the "flip-flops". Any guides out there to verify that they
are OK?

Cheers Kristoffer

1-40 of 360Next »