Possible OctoBrite application

Here's a great video I found on YouTube. A 2009 graduate installed 64 RGB LEDs and 8 TLC5947 drivers along with an Arduino Mini, in a mortar board cap. I don't know the actual dimensions of a typical cap, but 8" per side seems about right. The project in this video could be easily duplicated by using OctoBrites, which are 4" modules containing 8 RGB LEDs spaced 1/2" apart. Cool stuff!


Submitted by Garrett on Mon, 06/29/2009 - 16:14.

ShiftBrite Usage Overview

Update: I have been working on documentation; a much more complete version is available here: http://docs.macetech.com/doku.php/shiftbrite

ShiftBrites have been available for a while, and I haven't created an actual datasheet or hook-up diagram yet. I still need to do that, but this should at least provide enough information to understand what the ShiftBrite is doing, and how to control it.

A ShiftBrite has an RGB LED and a small controller chip, the Allegro A6281. The A6281 provides 10-bit PWM and 7-bit current control for each of the red, green, and blue LEDs.

The V+ and GND pins power both the LED and the control chip. ShiftBrites require up to 60mA per module when all LEDs are active. The supply voltage should be kept between 5.5 and 9 volts. I have had good results with 6V and 7.5V power supplies.

The DI (Data In) pin carries the actual control information into the ShiftBrite. It is the input to an internal 32-bit shift register. Every time data is shifted into the controller, the binary value on the DI pin is placed in Bit 0 of the shift register, and the value in Bit 31 overflows out the DO (Data Out) pin to the next ShiftBrite in the chain. Data is shifted in using MSB (most significant bit first).

The CI (Clock In) pin controls the shifting process. Each time the CI pin is sent to logic high and low, data is shifted into the DI pin and out of the DO pin. The CI signal is passed through the ShiftBrite to the CO (Clock Output) pin, so the next ShiftBrite can receive the bits from the DO line.

 Read more»


Submitted by Garrett on Tue, 06/02/2009 - 00:43.

Maker Faire 2009

It's been a while since I made an update here, but things have been really busy. Had some supplier issues with a bunch of new products, lots of work to do on Maker Faire projects, random other daily crises. Oh...a day job too.

But the Maker Faire is only a few days away, and things are finally shaping up. The giant VU meters and front sign/desk are working, the coffee table is working, the giant MegaBrite wall requires only a few more steps to completion. Didn't help that we had none of the electronics until late last week, when we were supposed to have them no later than the 15th. But John at OurPCB really stepped up and fixed the assembly scheduling issue, getting us what we needed on time and worrying about the other stuff later.

Here's a photo of the stuff we've got running so far (not counting some smaller tabletop projects):

Valerie gave us a booth in a darker area of the main Expo Hall. This is great, our LEDs won't look as amazing as they would in the Dark Room (a building with no lights on), but the lights in this section are typically dimmed. The reason is a little dismaying...it's where they set up the pair of 20 foot Tesla coils, shooting 20 foot arcs of lightning between them every hour. Last year, I wasn't alone in having my electronics negatively affected by Tesla coils, and those were only a couple feet tall. It will definitely be...interesting.

 Read more»


Submitted by Garrett on Wed, 05/27/2009 - 02:03.

Capslocker Rebuild

This project is mainly about my new build process, which I used to create a single sided PCB for a rebuild of the Capslocker project from last year. Instead of using a laser printer to create an iron-on resist pattern, I'll cover a whole PCB in resist and then use a laser cutter to etch off the resist.

First, I created a new design in Eagle. I wanted this version of the Capslocker to be a little easier to program and adjust, so I added a potentiometer and a 6-pin AVR ISP header. It makes the device a bit bigger, but really makes it easy to modify the code.


Next, I lightly spray painted some single sided copper clad PCB material from Jameco. The best paint I've found is Rust-Oleum "Painter's Touch" flat black spray paint. It dries in about 20 minutes.

The laser cutter I'm using is a 45 watt Epilog, one of two currently available at Techshop in Menlo Park.


I set up the spray painted copper clad on the laser table and focused it as precisely as possible. A sharp beam is essential to getting a precision resist mask. Then I printed-to-file using a postscript driver, imported that file into Corel, converted to a 1200x1200 DPI bitmap, and inverted. I set the laser to 50% speed and 40% power, raster mode, bottom-up etching. It can be a good idea to print two copies since the second pass cleans up paint residue a lot, but it's not required.
[url=http://www.flickr.com/photos/macetech/3405861630/]
 Read more»


Submitted by Garrett on Wed, 04/01/2009 - 23:47.

AF_XPort and lighttpd

Recently I was building a project for a client, who needed an internet-controlled display device. For quick development time and minimal budget, I selected an Arduino Duemilanove, XPort Shield, and XPort Direct from Lady Ada's Adafruit store. Soldered everything together, tested and configured the XPort, everything worked. Then I wrote the necessary code to request data from a web server, that all worked too.

Finally I took the project down to the client's office in Mountain View and set it up...didn't work. I ended up working on the project for about four hours trying to get it running (minus some tricky subnet issues...use increments of 8 bits on an XPort). The client was using lighttpd to serve the display data, and I had been using Apache for testing. HTTP is HTTP, right? It should work on either? It didn't. I set up an Apache server on my laptop and everything worked great...point the Arduino sketch back at the client server, nothing worked. I kept getting "501 - Not Implemented" errors from the web server. If I opened up a telnet session directly to the web server and manually typed in the request the Arduino was sending, it worked.

 Read more»


Submitted by Garrett on Tue, 03/17/2009 - 17:19.

Front driveway snail

O HAI IMA SNALE

 


Submitted by Garrett on Sun, 02/22/2009 - 03:15.

Awesome ShiftBrite KITT

"my05stang" has installed the full ShiftBrite bar in his Mustang and posted a new video! Looking great....he's going to experiment with different colors and speeds, as well as check into diffuser solution. But at this point, it looks great. Good job!



Submitted by Garrett on Fri, 02/13/2009 - 20:54.

ShiftBrite Roundup Megapost

A lot of ShiftBrite modules are out there now, and occasionally someone will post a few pictures on their website or some videos of their latest project. Here's some of the projects I ran across that I thought were pretty awesome:

Altoona Lights:

Nick over at AltoonaLights.com thought that ShiftBrites might be an interesting addition to the DoItYourselfChrismas community. He has been rigging his house with computer-controlled Christmas lights, synchronized to music. One of the more popular pieces of control software for home displays is called Vixen Lights, and Nick decided to jump into C# programming to create a ShiftBrite plugin for Vixen. His code currently uses a parallel port to output the serial data and control lines. His ShiftBrite page includes lots of protocol analysis, pinouts, source code, and demo videos (I should probably take a hint from this). LED technology is becoming increasingly popular with animated display builders, since they are straightforward to control and dim, have a long life, and in some installations don't require dangerous voltages.  Read more»


Submitted by Garrett on Tue, 01/27/2009 - 21:59.

Quick cable tester

Cable tester

I got a batch of cables that had a few bad wires in them, so I needed to test every cable. Checking all the wires with a multimeter was out, so I built this simple cable tester out of a proto board, some headers, an LED, a resistor, and some wire. It just completes a circuit through all the wires in a cable; if any wire is bad, the LED will not light. Simple concept, but it allowed me to test about 300 cables in about half an hour. A video of a few cable tests is below:



Submitted by Garrett on Mon, 01/12/2009 - 22:54.

ShiftKnight

Testing new headers

I got some custom headers for use in Arduino shields today, and tested them out tonight. Seems to be pretty much ideal.

After the soldering, I decided to attack a problem that a customer asked me about. He's working on a Mustang and wants to use ShiftBrites to make a Knight Rider style scanner (2008 TV show version). I wrote some code, it allows any chain length divisible by two, any solid or mixed color, and custom leading and trailing gradients. Here's the relevant post on the Arduino forum. A YouTube video is below:


Update: I moved the controller to a larger LED bar and updated the code a little bit:  Read more»


Submitted by Garrett on Sat, 01/10/2009 - 05:58.