What’s the total number of Pixels supported by a single port, and how can I break a single large prop over several ports in xLights?

Giles1

Giles
Joined
Dec 19, 2016
Messages
94
Location
Brisbane
I had always believed that you could run up to 1024 Pixels on a single port. However, as I am currently using a Falcon F16V3 Controller with 4 x Differential Receivers, I’ve had to split that number over both devices (e.g., 512/512). Currently my largest prop has 500 Pixels in it, and in the past, it seemed to work properly.

However, recently I’ve heard people saying that 800 Pixels per port is now the maximin.

This year I’ve ordered some new Props that will have 823 Pixels in them. I’m not sure if I’ll adjust by Falcon F16v3 pixel balance to something like 823/201. However, I’ll probably just use my old 4-port Pixlight Controller to just run these larger props.

So, I’ll really need to work out if that 800 Pixel per port is now relevant (or if there is any creep allowed e.g., up to 823), or is the 1024 limit still the one I should work to? It would be great if someone could give me the low-down on this.

If that 800 Pixel per port is the new standard, can anyone advise how I should now go about showing a Prop over two (or more) Ports in xLights? With the introduction of the Visualizer in xLights, it’s made the process of working out Ports much easier, but I’m not sure how it would work with a prop with more than one port. Once again, if anyone could advise how to do this, that would really be appreciated.
 
Previous message:
640 pixels is the maximum pixels at 40 frames per secound (FPS). Maximum at 20 (standard) is 1024. you are using differential so that does split things up slightly.

I'll quickly (as fast as my ADSL internet) upload a video I've done with banking on the F48, it's related to the F16v3 and I'll point out how so.



Might be an hour before I get a better animation suited to an F16v3 done and to upload. Someone else can chime in and convey over words.

In essence, I presume this is 4 differential receivers connected with a differential expansion.

This makes the F16v3 go from 1 bank to 2 banks.
Each bank can handle 1024 pixels, but when you add another bank you divide the maximum 1024 pixels between them.

E.g
Bank 1, each port is to to 1000 pixels per port, Bank 2 has 24 pixels per port.
You can change the number of pixels allocated per port in a bank between 1 pixel to 1023 (a bank needs at least 1 pixel set). This is the sliders in the Falcon's settings.

A bank refers to a block of 16 output ports. So the main ports on the F16v3 are bank 1, bank 2 is the differential boards ports. If we have two expansions then we have 3 banks.

Example of when this is a pain:
Main board has 900 pixels per port for a large prop. On a differential you then need 300 pixels on a port. 300+900 is over 1024 so it doesn't work.

I'll get to work on this video iteration!
 
Last edited:
I had always believed that you could run up to 1024 Pixels on a single port. However, as I am currently using a Falcon F16V3 Controller with 4 x Differential Receivers, I’ve had to split that number over both devices (e.g., 512/512). Currently my largest prop has 500 Pixels in it, and in the past, it seemed to work properly.

However, recently I’ve heard people saying that 800 Pixels per port is now the maximin.

This year I’ve ordered some new Props that will have 823 Pixels in them. I’m not sure if I’ll adjust by Falcon F16v3 pixel balance to something like 823/201. However, I’ll probably just use my old 4-port Pixlight Controller to just run these larger props.

So, I’ll really need to work out if that 800 Pixel per port is now relevant (or if there is any creep allowed e.g., up to 823), or is the 1024 limit still the one I should work to? It would be great if someone could give me the low-down on this.

If that 800 Pixel per port is the new standard, can anyone advise how I should now go about showing a Prop over two (or more) Ports in xLights? With the introduction of the Visualizer in xLights, it’s made the process of working out Ports much easier, but I’m not sure how it would work with a prop with more than one port. Once again, if anyone could advise how to do this, that would really be appreciated.

Board can drive 1024 per port.
On the new prop you have that has 823 pixels in them, I am guessing they are providing you with a custom model for it in xlights.
You can then set the number of strings (ports you want to use) and set how many pixels on each.
CustomModelSetup.jpg
 
Might be me now getting confused with the Kulp boards at 800.
I think @Giles1 might also be seeing this from Kulp board setups.

Thanks for the assistance.

I was thinking about building a new controller box, which would have a Kulp K32A-B Board in it, but building such a beast will take a lot of time and money, plus planning, especially with long shipping times. I would also need to get these extra costs past the Wife, so realistically, it may end up being a project for next year. ☹

Just so I have everything straight, if I’m running a Falcon Board, I can get 680 Pixels out of one port (but if I’m running a Differential Receiver, this number would need to be broken up between the two Banks) at 40 fps. However, if my sequences are only at 20 fps, this will increase to 1024. (I think a lot of my sequences are only at 20 fps, but how would I check on this?)

Then if I go with a new Kulp K32A-B, that would then give me 800 Pixels at 40 fps. As the Kulp K32A-B Board also supports Differential Receivers, is this also treated as a second Bank, and the Pixel count needs to be split across it, or would they just give you additional 800 Pixels per Ports as well?
 
Last edited:
This is just getting harder as I go!

The new Props I was hoping to use are the Gilbert Engineering Matrix Arch Spinner (SpinArchy) -Small (with 823 nodes each).

So, if I was going to use a dedicated 4-Port controller to run my 3 SpinArchys, what would be the best way of wiring them up? Could I allocate the first 680 Nodes to a Port each (e.g., Ports 1, 2 & 3) and then split Port-4 across the last 143 Nodes of each SpinArchy.

Or would I need to have to wire each SpinArchy individually? E.g., Port-1 to the first 680 Nodes of SpinArchy-1, Port-2 to the last 143 Nodes of SpinArchy-1 and then to the first 537 Nodes of SpinArchy-2, and so on with SpinArchy-3? o_O
 
Hopefully this gets a better understanding.
At points I do mumble to something else...

I have used a differential expansion as example but this applies to standard expansion too.

1024 pixels is the maximum at 20FPS. So 1024 has been used in this. If you use 40FPS, replace 1024 mentioned with 680.

View: https://youtu.be/4SEVDlZ2CI4


Remember, you can divide a prop across multiple ports to get around this.
But, this should give you an idea how to efficiently use a Falcon with expansion(s) - so pixels available per port is not wasted.
 
So, if I was going to use a dedicated 4-Port controller to run my 3 SpinArchys.
Could I allocate the first 680 Nodes to a Port each (e.g., Ports 1, 2 & 3) and then split Port-4 across the last 143 Nodes of each SpinArchy.

Or would I need to have to wire each SpinArchy individually? E.g., Port-1 to the first 680 Nodes of SpinArchy-1, Port-2 to the last 143 Nodes of SpinArchy-1 and then to the first 537 Nodes of SpinArchy-2, and so on with SpinArchy-3? o_O
When we talk about banking on a Falcon, this is setting the maximum pixels per port.

E.g.
I set bank 1 to 300 pixels. This means each port can output up to 300 pixels.
So I could attach 3 snow flakes at 100 pixels each on one port, then 2 snow flakes at 100 pixels each on another port.
Each port can have less than or equal to 300 pixels.


Here I have an example for loading with 3 of these arches.
Using the information from @Cranzy, I have set the props to 2 ports and adjusted their number of pixels per string.

First, we need to work out how many pixels are needed. Each prop is 823 pixels and we're using a differential receiver. At this stage, this is the only props we're calculating for on this receiver board.

Code:
823 x 3  = 2,469 pixels.

If we set the expansion board 1 bank to 823 pixels we can use 1 port per arch.
823_pix_bank (1).png

But that makes the main board have 201 pixels per port avaliable.

Using what @Cranzy has said, we can split each arch to use multiple ports Also change how many pixels per string.
Given that we have a receiver board, we are limited to 4 ports. We cannot set each prop to more than 4 ports. Instead 4 ports per prop, we might as well run each prop as two ports (saves wiring clutter).

From our calculation before, we know that we need 2,469 pixels across the receiver.
With 500 pixels set in expansion 1's bank, we get a maximum of 2000 pixels with all four ports.
As you can see, this doesn't fit all across one receiver board.

500_pix_bank.png



So 2,469 pixels is needed for these 3 props.
Dividing 2,469 by 4 ports available gives us 617.25.
Code:
2,469 / 4 = 617.25
Rounding up, 618 pixels per port on the expansion bank.
Bank 1 (main board) gets 406 pixels per port.
618_pix_bank.png

You might think you can set it for 617 pixels, given that there is 3 pixels spare available at the last model. But this doesn't work:
617_pix_bank.png


Hopefully my maths is right and this was helpful. Please also look at the video.
You can now image that bank 2 is 618 pixels and 406 pixels are available per port on the main F16v3 board.

So no big props using more than 406 pixels per port, otherwise you'll be splitting across multiple ports again.
 
Last edited:
You might research the Falcon F4 controller. Adding an expansion board and 2 receivers maxes it out with 12 ports for a bit over 12,000 (12 * 1024) pixels at 20 fps. Unlike the F16, the F4 does not incorporate port sharing when adding expansion.

Regarding wiring the arches, I would likely create a custom model; make each arch 2 strings with 1 string the outer arch (about 550 pixels?) and the 2nd string the spokes and inner semi-circle (about 275 pixels?). Six strings total and it lets the display run at 40 fps.
 
Answering Wednesday's question about expanding a Kulp board, I'm quite sure that the large BeagleBone-based controllers support up to 48 pixel outputs of 800 pixels each at 40 FPS or 1500 pixels each at 20 frames per second. In the case of the Kulp K32A-B, you'd need an expansion board to provide 16 of the outputs. If you're not daisy chaining the smart receivers then there wouldn't be any sharing of the total capacity. The only main boards that have sharing between ports are the Falcon F16v3 and the original (still current) F48.
 
@Giles1 Do you still need assistance on the Falcon or are you going to buy another controller?
For this year, I think I’m going to have to stick to my F16v3 and rearrange all my connections, so I only go up to a maximum of 512 nodes per port. This way if I have any Sequences at 40fps, I won’t have any issues, plus I can also evenly share my channels between the main board and the Differential Receivers. All going well, I’ll probably look at getting a new Controller (e.g., a K32A-B) for next year’s show.

As for my new Arches (Spinarchy Minis) with 823 nodes each, I’ll be wiring them up with two separate strings (string-1 with 400 & String-2 with 423 nodes). This should keep everything under the 680 Node limit, and will also assist with the power and fusing requirements for these props.

I have already reached out to Gilbert Engineering, to see if they already have a two-string Custom xLights model available, which I could use. However, if they don’t, can you recommend a YouTube video, which might show me how I would go about making such a Custom xLights model?

Or maybe someone out there already has one and could send me a copy of their Custom model. I’ll keep my fingers crossed.
 
Hi Giles

You can just add a as many ports as you need. You dont need a custom.

If you need some help I live in Brisbane too if you want to come over I can show you what to do. Or if you have any questions
 
Stick to my F16v3 and rearrange all my connections, so I only go up to a maximum of 512 nodes per port.
"Minimum of 512 per port", this tells me you want to set 512 pixels per port on the main board bank, and differential bank.
512 is half of 1024 and 1024 is the max for 20FPS.
680 is the max for 40FPS.

512 x 2 is larger than 680, for 40FPS this doesn't work.

Spoiler content hidden. Log in to see this content.

As for my new Arches (Spinarchy Minis) with 823 nodes each, I’ll be wiring them up with two separate strings (string-1 with 400 & String-2 with 423 nodes). This should keep everything under the 680 Node limit, and will also assist with the power and fusing requirements for these props.
Question I have:
Are you wanting to use 1 differential receiver for 3 spiny arches? or more differential receivers for 3 spiny arches?
This limits us to how many pixels we need available per port.
Going to my previous post, 1 differential board would still mean bank 2 is set at a minimum of 618. This applies at 20FPS or 40FPS.

This way if I have any Sequences at 40fps, I won’t have any issues
I highly suggest you check if you REALLY need 40FPS. xLights defaults to 20FPS.
Bumping it up to 40FPS is dramatically limiting with this large prop.

Hopefully this gets a better understanding.

When we talk about banking on a Falcon, this is setting the maximum pixels per port.
View attachment 17184
I'm willing to explain banking in another way if you're still unsure.
 
Back
Top