Stoatworks Labs

Reference

Two lines, two limits, and the one that stops you first

"How many panels per line?" is two questions sharing a word. One line is a processor port and is limited by bandwidth; the other is a circuit from a distro and is limited by current. The physics behind them is unrelated, they rarely agree, and the run you can build is the smaller of the two. Below I work out both and check each against the numbers the manufacturers publish, which in one case turn out not to mean what they look like.

The data line, and the factor everyone gets wrong

pixels per port = link rate × efficiency ÷ bits per pixel ÷ frame rate

Three of those four are uncontroversial. Bits per pixel is where almost every capacity spreadsheet goes wrong, because the obvious answer (three colour components at the video bit depth, so 3 × depth) is only right at 8-bit.

Controllers pack pixels into a power-of-two container so the DMA engine stays word-aligned. Ten-bit colour costs 32 bits on the wire, not 30, and twelve-bit costs 48, not 36. So the naive formula overstates a 10-bit port by 6.7 % and a 12-bit port by 33 %, in the direction that has you hang panels the port can't carry.

DepthNaiveActualError
8-bit24 bits24 bits—
10-bit30 bits32 bits+6.7 %
12-bit36 bits48 bits+33.3 %

Bits on the wire per pixel, all three colour components. The right-hand column is how far a 3 × depth assumption overstates the port.

The containers, read off a vendor's own numbers

The containers fall straight out of the published figures. NovaStar quote three per-port capacities for the MX40 Pro's gigabit ports at 60 Hz. With power-of-two containers, one link efficiency of 0.95 reproduces all three exactly, and the build below fails if any of them misses by a single pixel.

SignalNovaStar publishComputed hereRatio to 8-bitContainer ratio
8-bit, 60 Hz659,722 px659,722 px1.0024/24 = 1.00
10-bit, 60 Hz494,791 px494,791 px0.7524/32 = 0.75
12-bit, 60 Hz329,861 px329,861 px0.5024/48 = 0.50
  • The published ratios are the container table. 1.00, 0.75 and 0.50 are exactly 24/24, 24/32 and 24/48. NovaStar don't explain the packing anywhere; they print three numbers whose ratios can only be those containers.
  • No single efficiency rescues the naive formula. Fit one to each depth and you need 0.950 at 8-bit, 0.891 at 10-bit and 0.712 at 12-bit, a spread of 33 %. A physical link doesn't change its framing overhead because the colour got deeper.
  • Efficiency isn't waste you can tune away. The missing 5 % is Ethernet framing, preamble, inter-packet gap and the vendor's own protocol. Brompton's Tessera links pack naively and run nearer 0.756, so the constant comes with the controller, whichever cable it's on.

Refresh rate is not bandwidth

A panel's datasheet advertises 3840 Hz or 7680 Hz refresh, and it's tempting to put that number in the formula. It doesn't belong there. The frame crosses the wire once per video frame. The receiving card writes it to local memory and the driver ICs re-scan it from there, thousands of times a second, to build greyscale by pulse-width modulation. None of that rescanning touches the link.

Frame rate is the one that costs bandwidth, and it costs it proportionally: 120 Hz halves the port. The same confusion runs the other way round with bit depth. The panel's internal greyscale depth (14 to 16 bit, typically) isn't the 8, 10 or 12-bit depth of the video on the wire, and feeding a panel deeper colour doesn't change the refresh rate it can achieve.

TilePixels8-bit, 60 Hz10-bit, 60 Hz12-bit, 60 Hz
500 x 500, 2.5 mm40,000168.0 m wide126.0 m wide84.0 m wide
500 x 500, 3.9 mm16,3844020.0 m wide3015.0 m wide2010.0 m wide
500 x 1000, 3.9 mm32,7682010.0 m wide157.5 m wide105.0 m wide
600 x 1200, 5.8 mm21,6323018.0 m wide2213.2 m wide159.0 m wide
500 x 500, 1.9 mm67,60094.5 m wide73.5 m wide42.0 m wide

Panels on one gigabit port, at 0.95 efficiency. Halve for 120 Hz. These are the port's limit alone. A receiving card caps what sits behind it, and the processor itself usually runs out of backplane before its ports run out of bandwidth.

The power line, which almost nobody publishes

panels per circuit = ⌊ breaker × derating ÷ (watts ÷ volts) ⌋

The arithmetic is trivial, so it all comes down to the inputs. Which watts: the peak, all-white, full-brightness figure, not the average. A distro sized on average power trips the first time somebody puts up a white holding slide, and the gap between the two is about three to one on a modern tile.

Which volts: the phase voltage. Panels are line-to-neutral loads, so a 400 V three-phase supply feeds them at 230 V and a 208 V supply at 120 V. The answer roughly halves between 230 V and 120 V for the same breaker, which is a bigger effect than anything else on this page.

What derating: a breaker's rating is the point where it trips, so you don't plan a load all the way up to it. The 80 % continuous-load rule (NEC 210.20(A); BS 7671 arrives at much the same place by a different route) is what rental power plans assume, and it's applied throughout here.

So a 170 W tile on a 230 V, 16 A circuit draws 170/230 = 0.74 A each, against 16 × 0.8 = 12.8 A usable: 17 panels, and the 18th would be over.

Per panel230 V, 16 A230 V, 32 A120 V, 20 A208 V 3ph, 30 A
140 W21421320
170 W17341116
200 W1429914
360 W81658
500 W51135

Panels on one circuit at peak power, derated to 80 %. The three-phase column is per leg, so multiply by three for a wall spread evenly across the phases.

The one published table, and what it actually encodes

Absen's PL V2 user manual is the only manufacturer document found that tabulates this directly: the quantity of cabinets one 3×2.5 mm² power cable carries, at AC220 V and at AC110 V, for eleven models in eighteen rows (some come in two cabinet sizes). Two things fall out of checking it, and neither is stated in the manual.

  • It's a current limit, not a power one. The 110 V column is the 220 V column halved: ⌈n/2⌉ in all eighteen rows. Halving with voltage is what a fixed cable current does: the panel's wattage doesn't change, so halving the volts doubles the amps. 15 rows halve exactly; the 3 that don't are the odd 7-panel rows, where 3.5 is rounded up to 4. That's the less conservative direction, and the one place the table argues with itself.
  • It's a recommendation, not a maximum. Divide back out and every row lands between 9.7 A and 15.3 A at 220 V, all inside the 16 A a 2.5 mm² flex on a 16 A breaker gives you, most of them well inside. A computed maximum would sit at 16 A in every row. These are round numbers (7, 10 and 12 panels at 110 V, doubled) chosen to be safe, and the spread tells you they were quantised rather than calculated.
ModelPeakAC220 VAC110 VImplied currentA 16 A circuit allowsMargin left
PL2.9 Pro V2outdoor, 500x500152.5 W1479.7 A23+9
PL3.9 Pro V2outdoor, 500x500200 W14712.7 A17+3
PL3.9W Plus V2outdoor, 500x500150 W201013.6 A23+3
PL4.8 Pro V2outdoor, 500x500200 W14712.7 A17+3
PL4.8W Plus V2outdoor, 500x500150 W201013.6 A23+3
PL1.9 Plus V2indoor, 500x500175 W14711.1 A20+6
PL2.5 XR V2indoor, 500x500185 W14711.8 A19+5
PL2.5 Pro V2indoor, 500x500170 W14710.8 A20+6
PL2.5 Plus V2indoor, 500x500160 W201014.5 A22+2
PL2.9 Plus V2indoor, 500x500140 W241215.3 A25+1
PL3.9 Plus V2indoor, 500x500140 W241215.3 A25+1

The seven 500×1000 rows are omitted here because Absen publish the watts per 500×500 cabinet; those rows are half the count for double the cabinet, which is the same current and a consistent table. "A 16 A circuit allows" is the figure with no derating. Apply the 80 % rule and the published numbers stop looking conservative and start looking about right.

Numbers that look like power limits and are not

Where a brochure prints a panels-per-something figure, it usually isn't this one. ROE Visual's spec tables give "Max. Hanging (panels)" and "Max. Stacking (panels)": 12 and 5 for the Carbon series, 15 and 6 for Vanish, 13 and 6 for Black Quartz. Those are mechanical: how many tiles the top panel's frame can carry hanging beneath it, and how many can stand on the bottom one's without deforming it. They have nothing to do with the distro, and they get read as power limits constantly, partly because they sit two rows below the power-consumption line in the same table.

The mechanical limit still matters, and it's often the binding one for a column, so it's worth knowing both. It answers a different question. Absen's own installation text sums up why the power figure is so rarely published: "the number of cabinets loaded on each power cable will be different upon different voltages and product models."

Which line stops you

Put the two together for one common tile (a 500 × 500 at 200 × 200 px drawing 170 W) and the answer flips back and forth depending on nothing to do with the panel. At 8-bit on a 16 A European circuit the port binds; go to 12-bit and it binds harder; move to a 20 A American circuit at 120 V and the power binds instead. There's no general rule, so work out both.

ConditionsData linePower lineYou can buildBinds on
8-bit, 60 Hz, 230 V 16 A161716data
10-bit, 60 Hz, 230 V 16 A121712data
12-bit, 60 Hz, 230 V 16 A8178data
8-bit, 60 Hz, 120 V 20 A161111power
8-bit, 120 Hz, 230 V 32 A8348data

One gigabit port, and one circuit derated to 80 %. The unused half is the useful part: where data binds, adding a distro fixes nothing, and where power binds, adding a processor fixes nothing.

Your panel

Put in the panel's resolution and peak watts, the link and the signal format, the supply and the breaker. It gives you the port capacity, the panels each line carries, and which of the two you'll hit first.

Try:

This calculator needs JavaScript. The tables above cover the common tiles and supplies.

The port figure is the link alone: a receiving card caps what sits behind it, and most processors run out of backplane before their ports run out of bandwidth, so a real box carries fewer panels than its port count times this number. The power figure is steady state. LED supplies draw a large, brief surge at switch-on, which is why a wall is powered up in sections and why a breaker that holds all day can trip on power-up.

Sources

  • NovaStar, MX40 Pro LED Display Controller Specifications (V1.4.1) and the V1.5.1 revisions of the CX40 Pro, MX30 and KU20 sheets, for the per-port capacities at 8, 10 and 12-bit that calibrate the whole data half, and the 9 Mpx device cap that binds before the ports do.
  • Brompton Technology, Tessera Processor Output Port Capacity table (dl.bromptontech.com, processor version 3.5.2) and the SX40 data sheet, for the naive-packing counter-example, and a device cap that is a pixel rate rather than a bandwidth figure, so it doesn't move with bit depth.
  • Absen, PL V2 Series User Manual, section 4.2 p.19, for the cabinets-per-power-cable table, and the accompanying statement that it depends on voltage and model. The same section states a per-port limit of 655,360 pixels, which sits just under the 659,722 the link arithmetic gives. Cabinet power from PL V2 Series Specifications (usabsen.com, rev 2025-04-30).
  • ROE Visual, Carbon, Vanish MkII and Black Quartz brochures (roevisual.com, 2024). Cited for what they do not contain: no power-chain figure and no connector type, but a Max. Hanging and Max. Stacking row that is read as one.
  • NFPA 70 (NEC) 210.20(A), for the 80 % continuous-load rule used as the default derating. BS 7671 reaches a comparable place by way of cable rating and volt drop rather than a flat factor.

Assembled 21 September 2026 with AI assistance. The link arithmetic is checked at build time against NovaStar's three published MX40 Pro figures and reproduces all three exactly; the Absen table's two properties are asserted the same way. Those checks catch a transcription error but can't catch a wrong source. Nothing here has been used to plan a wall that was then built. Sizing a circuit, and signing off a distro, is a job for someone qualified to do it.

Companion pages: cable voltage drop for the volt drop along the power chain this page ignores, Ethernet cabling for how far the data line will actually run on which category, and Pixel Peeker's Line calc, which does this arithmetic against a library of real panels.