[dorkbotdc-blabber] Re: LED Cube Workshop - use an Arduino?

Tim Slagle tim at slagle.org
Sat Dec 8 23:26:55 EST 2007


Yeah, Make seems allergic to schematic diagrams but what you
wrote looks right to me.
--Tim

--- "Peter S. May" <me at psmay.com> wrote:

> 
> I've so far had decent luck buying LEDs and certain other
> electronics
> items (CR2032 coin cells, for example) from the various
> China/Hong Kong
> (gray market?) sellers.  It just happens that both LED orders
> I've
> placed came from giorgio11185, aka "Asia Engineer".  No
> complaints so
> far, other than the 17-20 days it takes to ship since it's not
> domestic,
> and at least in my experience 12 cents shipped (lot of 100) is
> a good
> price for a high-brightness white LED.  Some come with free
> resistors;
> see the auction description if you want to ask for resistors
> adjusted
> for 5V (the default is often 12V).
> 
> Your mileage may vary, but for me it's been unproblematic and
> worth the
> wait.
> 
> (As with any LED, take note of both spot brightness (mcd) and
> viewing
> angle (degrees) when picking one out.)
> 
> 
> Incidentally, what is this way you have to drive the LEDs
> "without
> needing anything fancy"?  Is it different than the
> multiplexing method
> used by Bre and Mitch?
> 
> Getting pedantic for the benefit of the unaware, so please
> skip with my
> apologies if this doesn't include you. :-)
> 
> Somebody who's done the Make version of this project, please
> tell me if
> the following description is correct--I took a look at the PDF
> for the
> Make mod of MiniPOV for the 3x3x3 cube, and it wasn't trivial
> to decode.
>  But from what I can tell they took the 8 LED outputs already
> on the
> kit, added one more by sticking a resistor onto one of the
> other I/O
> pins, and then implemented the multiplexing by using three
> more of the
> I/Os as a ground select.  The result looks a bit like the
> following
> ASCIImatic:
> 
> .               (X,Y,TOP)
> . XY ---/\/\--+->|-------------------- /TOP
> .             |    (X,Y,MID)
> .             +----->|---------------- /MID
> .             |        (X,Y,BOT)
> .             +--------->|------------ /BOT
> 
> Where XY is _each_ of
> 
> . NW N0 NE
> . 0W 00 0E
> . SW S0 SE
> 
> It's wired up such that all LEDs of a given Z share a cathode
> and all
> LEDs of a given XY share an anode.  That adds up to 12 I/O
> pins (9 to
> select XY and 3 to select the Z layer) and 27 LEDs (one per X
> per Y per
> Z).  A given LED on the cube will be lit if and only if its
> anode (XY
> pin) is high and its cathode (Z pin) is low.
> 
> The firmware draws the pattern one Z layer at a time by, for
> example,
> setting all Z pins high to clear, setting the XY pins to the
> desired
> pattern, and then setting the desired Z pin low.  By cycling
> through the
> layers faster than the viewer's flicker threshold, it appears
> that all
> layers are being drawn at the same time.
> 
> So, assuming the above is true, as long as the Arduino has 12
> available
> outputs it can pull the same trick.
> 
> More garbage on this topic in the PS.
> 
> Was this what you had in mind?  If not, what?
> 
> Word
> PSM
> 
> 
> 
> Post Scriptum:
> 
> This is me getting (even more) carried away...
> 
> There's even a means of addressing 3x3x3 = 27 LEDs (or as many
> as 30)
> using only 6 pins, as long as each one is tri-state-able.  But
> this
> method can typically only address one LED at a time (as
> opposed to one
> layer) and it majorly complicates the firmware.  (See also
> "Charlieplexing".)
> 
> An unrelated project I have going on is a little heavy duty
> for any sort
> of multiplexing and instead uses a small fleet of 74HC595
> shift
> registers.  For an immense number of LEDs (over 60 in my case)
> it's a
> bit more straightforward and can use as few as 3 pins for an
> arbitrarily
> large number of LEDs--as long as you buy one 74HC595 for every
> 8 LEDs.
>
........................................................................
> .......dorkbot dc: people doing strange things with
> electricity.........
> ................... http://dorkbot.org/dorkbotdc
> .......................
>
........................................................................
> 





More information about the dorkbotdc-blabber mailing list