Schematics for the 8x8x8 LED cube

185 views
Skip to first unread message

alex hornstein

unread,
Dec 20, 2014, 3:16:30 PM12/20/14
to cube...@googlegroups.com
PDFs of the schematics for the baseboard and LED strips are attached.  The original eagle files are available in the hardware github repo.

Happy hacking,
Alex
baseboard.pdf
LED strip.pdf

Werner M.

unread,
Jul 12, 2015, 6:27:33 PM7/12/15
to cube...@googlegroups.com
I'm comparing these pdfs with the ones I have downloaded a couple weeks ago from the repository, there are a few differences - In this version, there is a single LM321 (U2) whereas the version I've got has a quad op-amp (U3). I've looked in my baseboard, it appears to have a "U3" labeled IC in there. Judging by the date of your post, the one with the LM321 is outdated? Could you confirm it?
What's the purpose of M1 in the schematic, as it is not implemented in the board? It would be nice to be able to output sound from the cube, but I couldn't work out how this would work the way the speaker is connected.

Also the baseboard provides an external connector (labeled "high power") with DIN, 5V, GND. What I couldn't easily work out from the schematic is if this external connector is for powering the strips only or both the strips and the processor (eliminating the need to keep the microUSB power connected)?
Since I haven't got the photon yet, I have an arduino uno connected to the baseboard, being fed by an external 4A psu via its barrel power connection. What is the difference between doing it the way I described and using the external connection on the baseboard?

What is the idea behind providing an external "DIN" connection?

Lastly, could you provide a link to a connector that would fit the provided solder points?

Peter Chestna

unread,
Jul 13, 2015, 12:44:34 AM7/13/15
to cube...@googlegroups.com
Take a look at my post about power here: http://cubetube.org/forum/?place=msg%2Fcubetalk%2FpexD5q_9ACk%2FkI64jM4V5mMJ for details about how I connected external power.

You can power not only the leds but the boards as well. The difference between powering directly through the board and powering through the USB connection is that you are not subject to any power restrictions imposed by the micro controller. At max brightness (all white, full brightness), you cannot power the leds from the arduino. I believe the same is true of the photon.

Good to see someone else using Arduino. If you look through the forum you will see several sketches that I have posted specifically for Arduino. Mega in my case but should run fine on an UNO.

Alex Hornstein

unread,
Jul 13, 2015, 1:09:06 PM7/13/15
to Peter Chestna, cube...@googlegroups.com
A quick note about power connections in the cube:

The cube’s base board has a built-in current-limiter that limits current from the USB connection to 1.7A.  The photon routes the USB 5V power directly into the board, so you can draw up to 1.7A from the cable, as long as your power supply can supply it.  You can run all the LEDs at full white from the photon (which draws the max power), but the current limiter kicks in, dropping the board voltage down and dimming the highest-voltage, blue LEDs, giving the whole cube a yellowish hue.  
Most arduino designs (including all official arduinos, as far as I know) have a 0.5A polyfuse in series with the USB power line, so you can only draw an anemic 0.5A if you’re powering the cube through the arduino’s USB connector.  This can still light the LEDs, but they will be dim and the colors will look yellowish-reddish.  If you turn on all the LEDs full-white, it’s likely to trip the polyfuse, which cuts all power until you reset the arduino.

You can use the high-power connector to bypass these limitations.  The +5V pin goes directly to the LEDs, with no current limiter in the way.  You can use an arduino this way with a small 5V supply going into the high-power connector.  If you want high-power and have a beefy power supply, the cube can draw up to 30A at its max brightness — this is painfully hard to look at, but if that’s what you want (burners), more power to ya!  If you’re using a photon or arduino and want more current, just connect the 5V and GND lines to an external supply, and use the arduino to supply the data signal to the LEDs.  A note of caution:  be sure to only supply 5v through the high-power connector — higher voltage can fry all your LEDs, leading to great sadness.  

Happy cubing,
Alex

-- 
You received this message because you are subscribed to the Google Groups "cubetalk" group.
To unsubscribe from this group and stop receiving emails from it, send an email to cubetalk+u...@googlegroups.com.
To post to this group, send email to cube...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/cubetalk/a9281016-b7cb-4c34-8bfc-039709ee6476%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Werner M.

unread,
Jul 13, 2015, 5:45:42 PM7/13/15
to cube...@googlegroups.com, peter....@gmail.com
In my previous tests (lighting up one LED at a time, one color, brightness set to 5 - barely noticeable), and using the stock 2A adapter, the arduino could only keep up sequencing up to the 11th or 12th strip before dying. After I added an extra 2A to the equation, it behave normally (running the FFT_Joy and Fireworks sketches separately). I wouldn't really want to light the LEDs up to 255, as this would bring burn-in issues to the LEDs themselves (even surpassing the internal constant-current driver's limit of 18.5mA - I'm estimating around 58.5mA per WS2812B with all strips lit at full blast, according to your data). I really love my cube and 50 <= maxBrightness <= 150 looks good to me. ;-)

Peter, I'm using the UNO as it's currently the only one I've got at hand here. I have ordered a couple Megas off ebay, but these will take some time to arrive. I ported a couple sketches from the photon demo reel to the uno and they both run surprisingly well. The only drawback is that the uno has little capacity for storing programs (can't fit the entire demo into the uno, but with some tinkering on the code I hope to be able to squeeze it in the Mega's memory space).

I had had interesting experiences so far. The fireworks demo had to be well thought, and it actually taught me a few tricks on the way to get it right; same goes for the fft_joy (although this one was surprisingly straightforward to adapt - there was only one issue with a couple arrays that were dimensioned 'dynamically' - using calculation at runtime - and I fixed it by just writing down the result of the calculation directly in the array declarations).
I had to do a similar thing to get the fireworks to 'explode' faster - those kind of exercises are healthy stuff to keep you on your toes and paying attention while programming.

I'm feeling like working on making a C version of the L3D cube library so that it could be referenced by any arduino sketch. Also, there is something cool coming down the mail, I've ordered along with my Megas. I can't wait to get my hands on that stuff and start working on it - perhaps sooner than later I might have some really cool cube hacks to show off here at the forums.  ;-) Gonna have some happy cubing ahead indeed.

-Werner

Peter Chestna

unread,
Jul 15, 2015, 11:39:52 AM7/15/15
to cube...@googlegroups.com, peter....@gmail.com
Is there a reason that you feel compelled to port the L3D library? Take a look at my Arduino sketches and what I was able to do in a small amount of code with the FastLED library. One of the things you will find is that most libraries are using floating point arithmetic which is dog-@ss slow on the Arduino processor. FastLED does the same operations with fixed point arithmetic which is lightning fast.

Werner M.

unread,
Jul 15, 2015, 3:37:17 PM7/15/15
to cube...@googlegroups.com
Hi Peter,

Yeah, mainly the reason is that I am new to the arduino/photon world and I am pretty much completely unaware of the solutions available out there. L3D.h and neopixel have been pretty much all my references so far.
My sketches are based on these libraries and math.h - the rest is all my tinkering around L3D's code to squeeze more performance. It's been literally a day that I discovered that arduinos prefer fixed point arithmetic (and hate square roots/power/sine/cosine and pretty much all functions related to geometry and calculus).

I haven't looked at any of your sketches, I have to do that, you seem to be a mile ahead of me. I'll have a search through the forums to gather what I can from you. I hope it doesn't make me feel too much like an idiot.  ;-S

Regards,
-Werner
Reply all
Reply to author
Forward
0 new messages