The 40 IO, and LED PWM bitbanging

@ Nicolas3, Did you hand compose that test animation array? :smiley:

Not that particular one which was included as an example with the rainbowdashboard source code. However it is not that difficult using their command codes API (I put a copy at the beginning or my driver).
0x72 is the beginning of a command, then 0x03 is “show color”, etc etc :smiley:

A bag of 1,000 blue leds finally showed up yesterday. It’s going to be a bright Christmas.

@ kurtnelle What size LEDs did you order? How many pins have you got your design down to? I’m looking forward to a video and schematics.

They are small, blue leds. A bit smaller than normal.

With Charlie Plexing it should be down to 32 pins (If I’m correct) so I’ll be using my Fez Rhino (with the ethernet board) as the main driver. I don’t expect that it will get warm, but I will see. Going to start with a 3x3x3 cube and work my way up.

I would need to post video of the construction since I can’t find any vids of people actually building the thing (which makes life kinda hard).

I recently built a 3x3x3 cube. I built it by just soldering all the leads directly together. I wouldn’t recommend this technique for anything larger. I saw another tutorial where someone built a wire square for each layer and then filled it in with LEDs. If I were doing it again for anything larger, I would try this technique since I think it will end up with straighter edges than you can get directly soldering the leads. It requires some cutting of bending of leads before soldering but it will be worth it. Also, a must is to drill holes in a piece of plywood to use as a template for laying out your LEDs in layers to ensure you get perfect spacing. Have fun!

Ah, the template is a good idea. But I’ll use transparent sheet, so that I can see the bottom…

You put the LEDs in the template upside down. So, it doesn’t really matter if you can see the bottom or not. The bottom is on top :slight_smile:

I just checked out your “straw hat” LEDs. It’ll be interesting to see how that turns out. Another lesson I learned was that next time I will use “diffused” LEDs. The clear ones really appear somewhat faint when viewed from the side. Notice in the video that the light is mostly contained to the center of the LED. It’ll be interesting to see what the wide angle of yours looks like. You may want to paint the bottom side of your LEDs black or you may get a lot of light bleeding over from the LEDs below.

@ ian, Interesting tip about the paint; I’ll try it out.

So I encountered a problem. I am not able to figure out how to wire 27 leds to create the 3x3x3 matrix from the 6 leads of the micro controller. I only keep finding examples of 6 leds. I need an example (circuit diagram preferable) of 4 micro controller pins or more.

The pic is of my first (failed) attempt to wire the items together, only to realize that I didn’t fully understand CharliePlexing. I’m using Fritzing to draw out the circuit diagram.

And here is a picture of the layout in Fritzing that I’ve gotten stuck at.

A good explanation here :

@ Nicolas, Nah that’s the same as all the others I’ve looked at; it stops at 3 pins. I need to see what a 4 or more pin configuration “looks” like (as I am a visual learner) before I can understand it.

Yatta! I figured it out.

Uggg… For 1000 LEDs that looks like it’s going to be a nightmare. Sure you don’t want to do a regular matrix with shifters?

@ ian, Nah; It’s alot of work but I’ll get there. The picture is a bit blurry, but it shows the leds chasing. Not bad for 1 afternoon’s work.

The next challenge is getting it shaped like a cube.

So, on your 10x10x10 is the plan to Charlieplex each layer of 100 and then have a pin for enabling each layer or are you going to Charlieplex the entire 1000? I can’t imagine how you would route all those wires in a cube without them overlapping. I’m eager to see how it turns out :slight_smile:

Yes, the plan is to charlieplex the entire 1000. I’m going to be using a fine enamaled wire to do the routing, and I hope that I can find an efficient method of knowing which wire is which :frowning:

Good luck, my friend. Hope Santa puts an extra bottle of Tums in your stocking :slight_smile: Based on your 30 LED schematic, I don’t even know how you’ll keep track of it on paper much less in a cube. With that much wire and components will you be able to maintain enough current from the pins or will it run off external power?

Ok, so you will need 33 io lines to drive 1000 leds.

The down side of charlieplexing is that you can only light ONE led at a time. You will have to be REALLY fast to make it look good… :slight_smile:

That comes with a big trade-off in brightness. When I run my standard matrix cube by lighting one LED at a time, I have to add about a 20ms wait before moving to the next in order to give it time to get bright enough to be worth looking at. Maybe you can overcome that by using higher power than would normally be acceptable if it were lit longer.