About a year ago I met Dante Kube at the Detroit Maker Faire. He explained that he was creating a replica of the Daft Punk Discovery Era helmets, and was in need of some help putting the electronics together.
The electronics package for the Guy Man helmet (right side of above picture) includes 5 areas. The right and left sides are mirror images of each other, so there are three different types of LED assemblies that need to be built:
- The central “face” portion is an array of LEDs, 36 tall by 14 wide, 504 total LEDs
- The side color bars consist of 8 large regions of color (one for the right side, one for the left side)
- The chin portions consist of one bar of 8 white LEDs, horizontally in one row above an array, 6 tall by 8 wide, of red, yellow, and green LEDs. This lower array has the appearance of 6 bar graphs, using rectangular LEDs. (one for the right chin, one for the left chin)
Dante does not want to implement the central face portion at this time, this project will therefore focus on the chin and color bar assemblies.
Having performed a few tests on a simple scanned LED array, I’m not happy with the brightness and CPU usage required to drive it well. In addition, scanned arrays suffer problems with photography and video recording, as the scanning appears to flicker in the video, and photographs may show portions darker due to timing issues. They look fine to people viewing them in person, but I did not want to compromise the effect merely because someone wanted to post a video of the helmet to youtube.
This can be fixed by using a non-scanned array, where each LED is controlled by a single I/O line, rather than sharing lines with other LEDs as with a scanned array. Recently, due largely to advanced LED backlights in televisions, many companies have designed LED drivers that provide a great deal of control over each LED, giving each one their own I/O pin, PWM control, and a real current driver.
One of these chips is the Texas Instruments TLC59401 which can drive 16 LEDs. The chin board and side board, together, comprise 59 LEDs, which would require 4 of these chips. Further, the control lines are combined so that only a few control lines need to go to the main microcontroller, rather than an array of wires. This also decreases assembly time as we don’t need to include additional driver transisters, resistors, and other support components that an array would require. Current control is built in to these chips.
While I expect the layout to change, the general design for each chin board will include 4 of these chips, and the chin LEDs mounted directly to the board. The sidebar LEDs will be connected to this board so those LEDs will not require separate chips. There are a few LEDs that won’t be used on the chin board – these will be available for the pulsing LEDs in the earpieces.
Here’s a quick mockup of the layout. The board size isn’t relevant for this first test version, the primary question is whether the LED placement fits the helmet, and whether the LED control lines from the four chips can get to the LEDs.
For reference, the grid is 0.1 inches between dots. The outline size of the board is 3.8″ x 2.5″.
So far I have not been able to find superbright rectangular LEDs. The design will probably use superbright round LEDs for now, and if suitable rectangular LEDs are located they can be used in the final design. Alternately, we can grind down the round LEDs to create rectangular LEDs.
I’m targeting using a PIC32 microcontroller as the brains of the electronics package. It’s inexpensive, yet has a lot of power, memory, and capability. While the initial animations may be pretty simple, later programming could implement very interesting and complex features. Given that the whole LED package needs only a few control lines, it could easily be controller by an Arduino or similar device as well. A connector will be chosen so that the microcontroller can be changed out, and one could use a variety of controllers for the helmet, including MIDI or computer controllers.