A DMX controller for multiple RGB pixel strings

jstjohnz

New member
Updated Sep 14, 2011

Updated the E680 board user documentation pdf file.

Updated Aug 21, 2011

Firmware version 2.20 is attached, see post #653 from this date for details.

Updated Aug 14th, 2011

The v2.17 eeprom file is attached. This is primarily for the folks who have their own prop plugs. It adds support for the TLS3001 pixels (chip type 8), and adds the comand to set the gamma correction: GV a.b where a.b is the gamma from 1.0 to 3.0 in steps of 0.2.

Updated July 13th, 2011

Recent news re the project: A new version will be offered sometime next month, the E681. For details, see the related thread in this forum. The E680 isn't going away, the two boards are essentially identical in terms of how they control the pixels, the E681 is more of a "pro" configuration. As a result it's a significantly larger board, and will be somewhat more expensive.


This has become a long thread, and the project has evolved quite a bit, so for those jumping in for the first time, I thought I'd give a status report as to where we are with the project as of mid-April, and maybe save you from having to wade through hundreds of posts to see where we are.

The project is a small circuit board called the E680 that inputs up to 4 universes of DMX data using an ethernet connection, with a protocol called E1.31 aka streaming ACN, or SACN. This allows large numbers of channels to be controlled without having to string multiple dmx cables, and deal with multiple dmx dongles on your PC. In fact, you don't need *any* dongles!

Basically, you plug an E680 into your LAN and you are good to go. The controller will drive up to 16 separate strings of RGB pixels. It can control up to 680 individual pixels, or more if some of them are controlled in groups.
A typical configuration might be 12 strings of 50 pixels each, or 16 strings of 42 pixels each. You can even mix different sizes of strings if you want.

Several different pixel types are supported (2801, 6803, 1804, and GE), and you can have several different pixel types attached to the board, and they can be 5 volt, or 12 volt, or some of each. These pixels are available, primarily from Chinese sources, at as little as $0.60 each plus shipping.

Strings attach to the board with 4-pin connectors that provide power and data. All you need for a complete setup is a controller, a power supply, and some pixels.

This controller is compatible with Vixen, Light Show Pro, Madrix, and basically any software package that supports the E1.31 protocol. And if your favorite software doesn't support E1.31 yet, it probably will soon as it is rapidly becoming the protocol of choice for large channel count displays.

Configuration is done via a built-in web server. It allows you to set all of the board's configurable parameters including number of strings, lengths of strings, types of pixels, whether controlled individually or grouped, the order of the colors ie RGB or BGR, etc, and several more.

A few users began testing the boards a couple of months ago. Right now there are about 80 boards out in the field, some I'm sure not assembled yet. There is no official group buy for the project at this time, but I do have available PC boards and pre-programmed eeproms that I have been selling for $15, starting about 3 week ago. The remaining parts can be purchased online from several sources.

We're starting to get more and more comments from folks who have assembled their boards, so far all pretty favorable.

Attached here are an assembly manual, and an operating manual, as well as the schematic. Software coming as soon as I get it into a presentable format.

Feel free to ask questions or post comments here in the forum, or you can contact me by PM or email at the address in my signature.

For now, I'd suggest jumping ahead to the last few pages for current updates rather than wading through the 1st 30 pages, a lot of which has been obsoleted as the project has evolved.

Also in the works is a board to input E1.31 and output it as standard DMX, that project has it's own thread.

If you're interested in these projects you should also check out Ben's propcontroller threads here, a similar project but using a common motherboard and purpose-specific daughterboards. That project does pixels, e1.31->DMX, and can also control lights other than pixels with the proper daughterboards.

Source code archive attached 05/02/2011. The archive is just the source code, with the propeller tool attached the archive was too large. You can download the propeller tool from Parallax here: http://www.parallax.com/Portals/0/Downloads/sw/propeller/Setup-Propeller-Tool-v1.2.7-(R2).exe

Attachments:

Vers 2.20 firmware eeprom file
The ISO-xxx file is the schematic diagram.
E680doc_2 is the general documentation
The vers 2.06 Archive is the source code
E680 Assembly Instructions is just that, and parts lists and vendor suggestions



------------------------------------------------------------------------------------------------------------------------------------------------------------------
(obsoleted text deleted)
 

Attachments

Last edited:
Multiple controlled RGB pixels are the future of our shows.
I would love to hear more.

They already have a pre-built, ready to go 4 output 6803, 2801 controller, with cables for about $45 over at aussie christmas lights. The bulb buy is open just a short period of time (day or two?) even though it says it's closed. You would need to make a post and send the payment now. You could have them in your display this year.
 
They already have a pre-built, ready to go 4 output 6803, 2801 controller, with cables for about $45 over at aussie christmas lights. The bulb buy is open just a short period of time (day or two?) even though it says it's closed. You would need to make a post and send the payment now. You could have them in your display this year.

While I'm sure the stuff at aussie Christmas would work jstjohnz is looking to make his own version. In fact he already has a working prototype built. His version will allow for users to customize their code since its propeller based (like my PropController).

This thread should focus on his project not others. :)
 
They look to pretty much the same as far as features - is the propeller unit going to be cheaper?

I can't speak for the costs of this specific project verses the other but here are the highlights for any prop based device.

Customizable: The IDE is provided for free via Parallax, and programming is done via serial (typically usb to serial interface). There also is a large community of users for help via Parallax's forum.

Portable Code: Instead of one giant file the propeller uses individual objects. Which means code produced by this project is portable and can be used on my PropController with some minor tweaks. Further parallax has a large library of ready to go code objects which makes creating something a lot faster.

Powerful: The propeller is 8 processors in one, literally. If you are familiar with the renard, imagine all the separate IC's all in one package.
 
I can't speak for the costs of this specific project verses the other but here are the highlights for any prop based device.

So even if it were functionally the same as the TP3212 and at a higher cost, you'd still do the project? I'm thinking it can't be made any faster than something that has already been developed, tested and is ready for purchase. Just sayin'
 
While I'm sure the stuff at aussie Christmas would work jstjohnz is looking to make his own version. In fact he already has a working prototype built. His version will allow for users to customize their code since its propeller based (like my PropController).

This thread should focus on his project not others. :)

I think you may not be speaking for him. He says here: "That's about it for now, questions, comments and suggestions welcome. "

I'm providing comments and suggestions.

That's great that the code can be customized - but for what reason? What more could it do that the TP3212 isn't already doing or will be doing in the next firmware update? Of course I'm all about this if he can produce a 100% completed, pre-assembled, board for under $37. That's a pretty good price point in my opinion but I'd love to see if someone else could "beat" it.
 
So even if it were functionally the same as the TP3212 and at a higher cost, you'd still do the project? I'm thinking it can't be made any faster than something that has already been developed, tested and is ready for purchase. Just sayin'

I see your point but sometimes its not about cost or time. Since we are all DIYers some of us are willing to make similar or better devices just to do it. I say the more options the better. Personally I made a dimmer last year that was a lot more expensive and took 6mo to make because I wanted the flexibility and I wanted the challenge.
 
Agreed - I made a point of showing him the OZ stuff as well just in case he wasn't aware of it but left it at that. Kudos for digging into the stuff to really know how it works at every level. True enough it may cost more but you can't beat telling someone that not only did you build it yourself but you also designed it.
 
I see your point but sometimes its not about cost or time. Since we are all DIYers some of us are willing to make similar or better devices just to do it. I say the more options the better. Personally I made a dimmer last year that was a lot more expensive and took 6mo to make because I wanted the flexibility and I wanted the challenge.

I guess I don't understand then.
 
I guess I don't understand then.

Think of it as art-adjusted science. Some folks will go immediately to the pre-programmed, pre-built, pre-defined lighting (eg Mr. Christmas, etc) -- others will go off on a bit of a stretch that's still pre-programmed and pre-built, but put a little of themselves into the mix (eg LOR, D-lite etc) -- still others want to build a well defined platform and program it with others' sequences, or even sequence it all themselves (Renards, Grinches and many others) -- and some are so esoteric that they HAVE to create the whole shebang themselves, from scratch, JUST for the challenge of doing it and the feeling of accomplishment when they succeed. :wink:

Don't even try to justify any of those groups as better than any other, they each have their own goals and drives -- none of which make sense to any outside their peergroup. :confused:

Just find your comfort zone and dig in and enjoy the frenzy of the season...

.........and watch the blinky lights......:D :D :D



:)
 
They look to pretty much the same as far as features - is the propeller unit going to be cheaper?

This will drive 16 separate strips, and handle up to 2 DMX universes for a total of 340 pixels. Hopefully 4 DMX universes on the next rev.
 
While I'm sure the stuff at aussie Christmas would work jstjohnz is looking to make his own version. In fact he already has a working prototype built. His version will allow for users to customize their code since its propeller based (like my PropController).

This thread should focus on his project not others. :)

I don't mind comparisons, maybe I'll get some ideas for some new features...
 
So even if it were functionally the same as the TP3212 and at a higher cost, you'd still do the project? I'm thinking it can't be made any faster than something that has already been developed, tested and is ready for purchase. Just sayin'

This project started with 2 goals:

I wanted a single controller to control a mega-tree that used led strips.

I wanted to get familiarized with the propeller processor. I have been working on this off and on for about 4 weeks.

The main differences between this and the Aussie project are 16 independent strip outputs instead of 2, and 2 dmx universes in instead of 1.

I am in the process of re-doing the board layout to accommodate up to 4 DMX inputs for a total of 680 separate pixels on one controller.

This is one of the beauties of the propeller chip. To change the software to support 2 DMX universes instead of one took about 2 hours. It's pretty much just a matter of running a 2nd copy of the dmx software on another processor.

Cost-wise, components run under $30, the PC boards probably $10-$15 each for quantity 10.
 
The nice thing about the Prop is you can add other outboard widgets like SD cards and MP3 players, etc, add the object code (which has probably already been written) to run on an extra cog and boom - done! (ok - simplified a bit - but not by too much!).

I look forward to your progress - I've been trying to delve into the Prop myself but just haven't found the time yet...
 
(update April 2011) This project has evolved to the point where this post is no longer accurate. See post#1 for current project status)

Sorry for abandoning the thread for the past several days. Here's the status of the project:

First 3 prototype PC boards received, and 1 built up. The board layout seems to be error-free other than some holes for jumper headers are a bit small.

I have shifted my software development over to the pc board version. It is presently working with 2 separate DMX universes. I am presently going through and verifying that each of the 16 strip outputs is working. I haven't fully loaded it with 16 strips yet simply because I don't have 16 strips, but so far so good.

The code for the 6803 chips is done. The code for the 2801 won't take long at all but I need to get a 2801-based strip in to test it, same for the 3005.

Otherwise, as far as software, all that's left is the code to allow programming the various parameters (dmx addresses, # of strips per cluster, controller type, RGB mode, # pixels per string, and pixel repeat factor) via DMX. I hope to wrap that up tomorrow.

Hardware Info:

CPU is the propeller, other ICs are a 64KB EEPROM and 2 RS485 receivers. The next version will replace those 2 chips with a single quad receiver to handle up to 4 DMX inputs.

DMX I/O is via RJ-45 jacks. If you just need one DMX universe, the 2nd RJ-45 acts as DMX pass-thru. If you need both DMX universes then you use both RJ-45s as inputs, and there is no pass-thru option.

For the 4-DMX version I will use the pin 3/6 pairs on both RJ-45s for the last 2 DMX inputs.

CPU output pins drive the strip clock and data lines directly. Each strip has it's own data line, each cluster of 4 strips shares a clock line. I have had a fully-populated 4-strip cluster with cable lengths of anywhere from a foot to about 8 feet with no issues. I haven't verified what the cable length limit to the strips is yet.

There are 2 separate power rails for the strips. They can be tied together if you have a single supply, or used separately if you are using something like a PC power supply with dual 12V rails. Or one could be 5 volts and the other 12 volts if you have both types of strips.

Board power can be tied to the +12V strip power or can be supplied separately.

Everything is through-hole, no surface mount parts.

I will post some pictures of the prototype board tomorrow.

-jim-
 
Last edited:
Back
Top