First, lets start with a basic understanding of how pixels address pixels and then on to how this affects the spacing of pixels.
While each pixel protocol/chip type (2811, 2801, 6803, 1804, etc) has a slightly different method, pixel controllers generally generate a large packet of data that contains all the information for all the pixels in the entire pixel string. It would look something like this if we had three pixels connected to the pixel controller:
DMX Channels 1 to 9 (1,2,3 / 4,5,6 / 7,8,9) comes in over TCP/IP (Artnet/E1.31) > Pixel Controller Converts this to SPI Data Output > Data Packet [Pixel 1: 255,255,255][Pixel 2: 128,128,128][Pixel 3:000,000,000] (this is a pixel with a full on white, then one with half-on white and then the last pixel is off)
As you might have noticed, "normal" pixels don't have any pre-set address - so how do they get addressed? They don't - a pixel only knows that it takes a data packet from the preceding pixel and then processes it. So, when the above pixel "packet" is processed by each pixel in this three pixel string, it would look like this:
- PIXEL 1 Sees: [255,255,255][128,128,128][000,000,000], it takes off the first instruction (255,255,255), processes the instruction, cuts off the first instruction (that it processed) and then passes the remaining packet along to the next pixel
- PIXEL 2 Sees: [128,128,128][000,000,000], this pixel doesn't know if it is the first or middle pixel and again, processes the first instruction, then cuts it off and passes the remainder along to the other pixels
- PIXEL 3 Sees: [000,000,000], this is the last instruction and so even if there are additional physically connected pixels, this pixel doesn't pass anything along because it is the final instruction.
So, you can see why you need to define the number of pixels in a controller and also why pixels don't have pre-set addresses. You can also see why pixels always have an "DATA IN" and "DATA OUT".
The proceeding information is at the logical level - what happens at the physical level? Well, to start with, there are no absolute numbers for the distances from pixel to pixel (or from the controller to the first pixel) since a large number of factors come into play, some which you can control, other factors which you can't. These factors include the wire gauge (resistance), the wire capacitance, the design of the chip (how much power is dedicated to repeating the signal), signal interference, the design of the supporting circuits and others. Here are some basic rules of thumb for most common pixels (2811, 2801, 6803, 1804, etc):
What do you do if you need to go long (25+ feet) distances between pixels or the start of your pixel string from the controller? The solution is simple - a null / ghost / repeater.
- 0 to 15 Feet - No problems
- 15 to 25 Feet - Usually no problems with quality wire and pixels. HolidayCoro supports up to 25ft when using HolidayCoro lights, cables and controllers.
- 25+ Feet - Could have problem
We hope this helps explain not only addressing of pixels but the relationship of pixels and their physical spacing and how to work within those limits of pixels.