Jurek and the Amazing Techno, Colored DreamWall

Jurek and the Amazing Techno, Colored DreamWall

The title is mostly a placeholder, as I haven't really figured out a name for it yet. This project is a wall hanging that consists of semi-large triangular pixels using discrete RGB LED's and PWM to control intensity levels of each LED, resulting in a 4096-color display.

Wednesday, October 18, 2006

15x4 pixels done


Well, now that I got my latest Digikey shipment in, I was able to wire up the TWI bus properly so I could connect more than one driver board to the microcontroller. I tested this out yesterday (10/16) and had a minor scare.
In my haste to get everything connected up to test, I accidentally wired up one of the power cables backwards. I first plugged everything in and hit the power switches, but nothing turned on. After flipping everything off and on a few times, I tried to see if somehow I connected things incorrectly. Everything seemed to be conducting properly, but then I noticed that the red and black wires were swapped going into one of the boards!

Oh noes!

I quickly disconnected everything, and the power cables were a bit warm. The ground pin for the TWI bus coming into both the driver boards had started to melt the plastic socket, and the header pin on the board itself had started to tarnish and turn black. I swapped the wires, plugged everything back in, crossed my fingers, and turned everything back on. Much to my relief, everything started working fine. The wiring was crazy messy, but at least the code was working fine for 2 driver boards.

So tonight, I set out to clean up most of the wiring. I started with the power supply and got that all organized and routed well, and even managed to install both the fans I bought for cooling. It took several hours to do that and reroute/organize the power and data cables going to the driver boards. Everything looks much better now and can handle all of the cable routing needed for the upper half, plus the power cables needed for the second module.

Video of 15x4 pixels running (3.9MB QuickTime)

Video, sans diffuser (3.0MB QuickTime)

So far, everything's holding up to the scaling from 4 to 12 driver chips, as it should. The only problem now seems to be speed. In the video, everything is running at about 15fps. This isn't horrible, except that this is with only 1/2 of the final number of pixels, so the final speed will be about 7fps. In my opinion, that is unacceptable for what I want.
I have managed to tweak the SDCC compiler to make things a bit faster, but I don't know if there are many tweaks left that I can do to speed it up any more. I will have to dig into the code and see what I can do for shortcuts. Right now, there are quite a few extra steps it's doing each and every time for computing the color value, so that's probably going to be my main focus for optimization.

More to come!



Anonymous MJ said...


Saturday, October 21, 2006 2:49:00 AM  

Post a Comment

Links to this post:

Create a Link

<< Home