Generated from saved zone engineering data. Dashed/unresolved details are planning inputs, not verified wiring instructions. Data and power are separate paths: receivers carry pixel data; the named power supply feeds fused branches.
No controller architecture is selected by this installer. Add your own planning inputs.
{% for row in plan.rows %}{% set v=row.zone.get('planning',{}).get('values',{}) %}{% set c=row.calculation %}
{{ row.zone.name }}
{% for node in row.chain %}{{ node }}{% if not loop.last %}→{% endif %}{% endfor %}
Power path: {{ v.get('power_supply','Supply TBD') }} → branch fuse {{ v.get('fuse_a','TBD') }} A → cable → power injection / prop. Injection locations and branch balancing require review.
Pixels: {{ c.pixels }} ({{ c.pixel_source }}) · Load: {{ c.current_a if c.current_a is not none else 'unknown' }} A / {{ c.watts if c.watts is not none else 'unknown' }} W · Minimum outputs: {{ c.outputs if c.outputs is not none else 'unknown' }}
Full-zone current over entered cable: {{ c.voltage_drop if c.voltage_drop is not none else 'unknown' }} V drop. This excludes connectors and pixel wiring; it does not size a conductor or fuse.
Calculations: pixels = ceil(length × 12 / spacing); watts = volts × amps; minimum outputs/branches use rounded-up division by entered capacities; cable drop = 2 × one-way feet × Ω/ft × total zone amps. These are planning estimates, not a safety certification.