Poolctl · equipment pad

Panel build

Every part, where it sits on the backplate, and what connects to what — inside a VEVOR SP-CAG-334318 enclosure — 16.93 × 12.99 × 7.09 in outside, and it mounts portrait — so the plate is 11.18 in wide by 15.12 in tall, on detachable ABS. The line-voltage side is an electrician's work and is marked as such throughout.

The organising idea

Three voltage classes, kept apart

The panel is laid out in bands by voltage, not by function. Line voltage stays at the bottom where the feeds enter, 24 VAC sits above it, and the logic sits at the top furthest from the transformer. This colour code runs through every diagram and table below — and in the wiring figures it is doubled by stroke weight, line voltage drawn heaviest and signal lightest, so the distinction that matters most never rests on hue alone.

120 VAC — line, electrician's scope 24 VAC — actuators, contactor coil 5 VDC / signal — Pi, RS-485, dry contacts

The parts

Every panel component, photographed

Nine of the eleven panel components have a chosen part number, and all nine are shown here as the manufacturer or distributor photographs them. The two without a photo are the two that are still undecided — the gap in this gallery is not a sourcing problem, it is the outstanding decisions, and it is worth reading that way.

VEVOR outdoor enclosure
enclosure

VEVOR outdoor enclosure

SP-CAG-334318 · 6.29 in deep inside

Everything below mounts inside this. ABS shell and ABS backplate, IP67/IK08, hinged lid, 304 stainless latches. The photo looks like two glands; the datasheet says one sealing sleeve offered in two sizes, and it is smaller than the 3/4 in entries — so it displaces nothing on the gland order.

Photo: vevor.com

Raspberry Pi 4 Model B
5 VDC / signal

Raspberry Pi 4 Model B

2 GB

Runs njsPC and the supervisor. Sits top-right, diagonally opposite the transformer — away from its heat, its steel core and the line-voltage band.

Photo: Wikimedia Commons, Laserlicht, CC BY-SA 4.0

Sequent Microsystems Eight Relays HAT
5 VDC / signal

Sequent Microsystems Eight Relays HAT

8-REL v6.0 · 4 A / 120 V

The eight channels. Stacks on the Pi on 11 mm standoffs and powers it over the GPIO header, so the Pi has no USB-C supply of its own in the panel.

Photo: sequentmicrosystems.com

Mean Well HDR-60-5
5 VDC / signal

Mean Well HDR-60-5

HDR-60-5 · 5 V 6.5 A

DIN-rail 5 V supply. Line in, 5 V out to the HAT’s own connector. Step-shape case, so it clips to the same rail as the terminal blocks.

Photo: Amazon (B07VQ8WQZ8)

Eaton definite-purpose contactor
24 VAC

Eaton definite-purpose contactor

C25CNB130T · 30 A · 24 V coil

CH6 pulls this coil; the contactor’s own contacts carry the blower. Sized for inrush so the 4 A relay never sees it — a welded relay would leave the blower stuck on and unreachable.

Photo: electricalparts.com

Intermatic valve actuator × 3
24 VAC

Intermatic valve actuator × 3

PE24GVA

Intake, return and bypass. These mount on the valves out at the pad, not in the box; their three-wire runs come back through glands on the left face.

Photo: ezpools.com

Arlington cord grips
cable entry

Arlington cord grips

LPCG757 (3/4 in) · LPCG50 (1/2 in)

Seals every cable through the enclosure wall. Cord range decides which size each cable gets — a cable thinner than the grip’s range does not seal, so this is a per-cable choice, not a bulk buy.

Photo: rexelusa.com

Functional Devices TR100VA001 control transformer
120 → 24 VAC

Functional Devices TR100VA001

100 VA · Class 2 UL5085-3 · 3.80 lb

Powers three actuators plus the contactor coil, and carries its own manual-reset circuit breaker — the button on top. Class 2 is not a nicety here: it is what ADR-8 requires of anything feeding a PE24GVA, and this part is listed for it.

Photo: ZOT Supply · specs: manufacturer datasheet

no part chosen
distribution

DIN rail, terminal blocks, ferrules, wire

Carries the PSU, distributes 24 VAC, and lands every field wire so nothing terminates directly on a relay screw.

Why there is no photo: Nothing specified beyond a ~$40 allowance. Block count follows from the entry table below, once the entries are final.

no part chosen
120 VAC

Ground bar, plus its bonding jumper

Where every equipment grounding conductor lands — feed in, blower out, light out. In a plastic box this is a plain insulated bar screwed to the plate, not a load-centre bonding bar: there is no metal can to bond.

Why there is no photo: no part chosen. It was drawn in Figure 1 and named in the assembly sequence without ever reaching the BOM — now added at ~$10.

IP68 M12 by 1.5 breather screw, two pack
enclosure

IP68 breather screw, M12×1.5

dual-port · 2-pack · metric thread

Equalises pressure and drains condensate without breaking the IP rating. A sealed box in Florida sun breathes whether you plan for it or not. Two in the pack, so one is a spare.

Photo: Amazon (B0H3C4CML7)

Pi accessories are not shown: the microSD card, the M2.5 standoffs and the heatsink kit are chosen but belong to the Pi rather than to the plate.


Figure 1

Backplate, plan view

LOGIC · 5 VDC / SIGNAL 24 VAC 120 VAC · ELECTRICIAN DIN rail A · 5 in Pi 4 + 8-Relay HAT CH1-8 and RS-485 on HAT HDR-60-5 5 V 6.5 A DIN rail B · 8 in 1-4 hot · 5-10 valves · 11 coil · 12-16 common Line terminals · rail C L . N — PE bar bolts to the plate Transformer TR100VA001 . 100 VA Contactor C25CNB130T CH1 CH2 CH3 HTR 485-P 485-C vent IN BLW LT LEFT FACE BOTTOM FACE 11.18 in 15.12 in
Bands stack bottom-up by voltage so the line-voltage feeds never cross the logic. Portrait suits that better than landscape did: the Pi and the transformer end up 15.12 in apart rather than 11.18, which is free margin on both the heat and the Wi-Fi arguments.

Ten entries will not fit on one 12.99 in face — roughly 13.25 in of hole and clearance against about 11.5 in usable — so they split. Low voltage down the left face, line voltage along the bottom. Forced by arithmetic, but better practice than the single row it replaces: the two classes now pass through different walls. Positions are indicative; confirm against the parts in hand before drilling anything.

The ground bar carries a jumper because it has to. The enclosure and its backplate are both ABS, so a DIN rail mounted on that plate is floating, and nothing in this box is bonded by accident. Note the failure mode: every conductor on the bar is continuous with every other one whether or not the bar reaches earth, so checking continuity between EGCs proves nothing. Bar-to-incoming-ground is the only check worth making.

Why the parts sit where they do

Transformer, bottom left

Heaviest item and the biggest heat source. Low keeps the centre of mass low; left puts it as far as possible from the Pi.

Pi + HAT, top right

Diagonally opposite the transformer. Away from its heat plume, its magnetic field, and the line-voltage band.

RS-485, on the HAT

There is no separate terminal block: the HAT carries the transceiver and its own A/B/SHLD terminals, and presents on the Pi's GPIO UART. The run is the most noise-sensitive in the panel, so keep it off the contactor side on its way up.

Entries, two faces

Line voltage along the bottom, where water runs down a cable and every conductor gets a natural drip loop. Low voltage down the left face, because ten entries do not fit on one 12.99 in wall.


Figure 2

Where the power goes

Panel supply from T40004RT3 ~2.6 A total line bus Transformer 100 VA, Class 2 HDR-60-5 5 V 6.5 A T40004RT3 100 A, 8 breaker spaces light and blower branch circuits originate here hot out switched hot back Switch contacts only CH7 light, direct CH6 → contactor → blower no load power originates here Each load keeps its own breaker and its own protection in the subpanel. This panel only opens and closes the circuit. 24 VAC 3 × PE24GVA via CH1–3, COM/NO/NC Contactor coil via CH6 → blower 5 V HAT → Pi over the GPIO header no USB-C brick
The panel's own feed has two destinations, not five. An earlier version of this drawing had the light and the chlorinator fed from these line terminals, which would have put the blower's 7.3 A and its 30–45 A inrush through this box's supply. They are not: every load is its own branch circuit from the T40004RT3, looped through a contact here and back, keeping its breaker and its protection where they already are.

The relay HAT powers the Pi over GPIO rather than the Pi powering the HAT — which is why the 5 V supply is sized for both and why there is no USB-C brick in the finished enclosure.

The transformer earns its size here

100 VA rather than 75. njsPC diverts both valves at once — measured on the bench, not assumed — so the "sequenced, never simultaneous" assumption that made 75 VA work does not hold. Three actuators moving together draw 54 VA before the contactor coil pulls in. Class 2 is then settled by the part rather than by arithmetic: the TR100VA001 is Class 2 UL5085-3 listed and carries its own manual-reset breaker, which is what ADR-8 actually requires of anything feeding a PE24GVA.


The HAT

Relay channels

Eight channels, fixed by the equipment rather than by preference. Channels 1–3 need changeover contacts because a three-wire actuator keeps one of two lines energised at all times; channels 4–5 must be isolated because the Raypak supplies its own low voltage on that terminal block.

CH Load Contacts Class Lands on
1Intake actuatorCOM / NO / NC24 VACTB2 → gland 1
2Return actuatorCOM / NO / NC24 VACTB3 → gland 2
3Bypass actuatorCOM / NO / NC24 VACTB4 → gland 3
4Heater POOL, terminal 45dry, isolateddrydirect to HAT, gland 4
5Heater SPA, terminal 46dry, isolateddrydirect to HAT, gland 4
6BlowerNO → contactor coil24 VACTB5, coil in panel
7LightNO, in the load's loop120 VACgland 8, to and from T40004RT3
8sparechlorinator gate dropped — see below

Contact rating — settled from the card in hand

Resolved, and in the favourable direction. The board that arrived is V 7.1, not the v6.0 the product photograph in this document shows, and its silkscreen differs in exactly the place that mattered. It reads ALL RELAYS 120VAC/30VDC, with per-channel current beside each connector group: REL1,3: 10A, REL2: 8A, REL4: 3A, REL5: 3A, REL6,8: 10A, REL7: 5A.

So 120 VAC is rated outright and CH7 drives the light directly — the interposing relay this BOM lacked is not needed. The light draws under 1 A into a 5 A channel; the actuators are 0.75 A into 8–10 A; the heater dry contacts are milliamps into 3 A. Nothing here is close to a limit.

The v6.0 figure of 5A/48VAC/DC was never wrong — it was a fact about a different board. Worth asking Sequent why the revisions disagree: if it is a creepage change it bears on any spare bought later, and if it is a correction then v6 cards in circulation are mismarked. Not blocking anything now.

The two connector groups are mirrored

Read off the V 7.1 card, the halves of the board disagree with each other:

GroupTerminal order
RELAY 1–4N.C. · COM · N.O.
RELAY 5–8N.O. · COM · N.C.

The three actuators are CH1–3, so they sit in the first group and take N.C. first — which is what Figure 4’s inset draws. Swapping the two on those channels inverts which position a valve rests in with the coil off, and ADR-9 turns on relay 3 resting in flow. On a board whose halves are mirrored, count the screws rather than carrying muscle memory from the other end.

Confirmed with a meter, 28 August 2026, one relay at a time on a bare card — not read off the silkscreen and trusted. Both groups are exactly as printed, and COM is the middle screw on all eight. The mirroring has a dull cause: the board is laid out with 180° rotational symmetry, so one silkscreen reads two ways depending on which half you are facing.

Where each relay physically is

Board landscape, GPIO header along the top, terminal blocks down the left and right edges, screws running vertically in each block:

                      top
   +-----------------------------------+
 8 |                                   | 1
 7 |          header, DIP              | 2
 6 |                                   | 3
 5 |                                   | 4
   +-----------------------------------+

The right edge runs 1–2–3–4 top to bottom; the left edge runs 5–6–7–8 bottom to top. Measured by latching each relay in turn and finding the block whose contact moved, then marking the numbers on the card in permanent marker.

This is not guessable and it is not printed anywhere useful. Everything established before this point mapped bits to LED labels; nothing tied an LED to the terminal block beside it, and on this card that adjacency is not a safe assumption. Work from the numbers on the card, or repeat the measurement — docs/bench-relays.md, Test 1b.

ChannelRelayEdgeSafe stateScrew to use
Intake valve1right, 1stpooltop · N.C.
Return valve2right, 2ndpooltop · N.C.
Bypass valve3right, 3rdflow through heatertop · N.C.
Pool heat4right, 4thcontact openbottom · N.O.
Spa heat5left, bottomcontact opentop · N.O.
Blower6left, 3rdofftop · N.O.
Light7left, 2ndofftop · N.O.
Spare8left, top

Every one of these pairs with COM, the middle screw.

The heater pair does not wire symmetrically

Pool heat and spa heat straddle the boundary between the two groups, so the matched pair takes different screws: CH4 is the bottom screw and CH5 is the top one. Both are N.O., because a heat call must be absent when the coil is.

This is the easiest mistake available on this card and it fails in the worst direction. Wire the two alike and one of them sits closed while the supervisor believes the heater is idle — a heat call nobody made and nothing in software can see.

Channels 4 and 5 carry someone else's voltage

The heater's three-wire interface is powered by the Raypak, not by this panel. Those two channels must be genuinely isolated dry contacts with no path back to the 24 VAC transformer — tying them to the panel's common is the one wiring mistake here that damages equipment rather than just failing.


Figure 3

What each channel actually switches

The same eight channels, drawn terminal to terminal. Read it left to right: what feeds the contact, what the contact is, and what it lands on. Five channels are fed from this panel's own buses, two are dry contacts that must touch nothing here, and one pulls a coil and nothing else.

FED FROM CONTACT LANDS ON WHY ISOLATED — NOTHING HERE TOUCHES THIS PANEL'S 24 VAC 24 H 24 C CH1 — SPDT COM · NO · NC PE24GVA — intake (180°) RED = NO · WHT = NC · BLK = 24 C COM is fed from 24 H, so one of the two lines is always live. The cam limit switch stops the motor at the end of travel. 24 H 24 C CH2 — SPDT COM · NO · NC PE24GVA — return (90°) RED = NO · WHT = NC · BLK = 24 C Wired identically to CH1, on a 90° valve. 24 H 24 C CH3 — SPDT COM · NO · NC PE24GVA — bypass (90°) RED = NO · WHT = NC · BLK = 24 C Held energised right through pool mode (ADR-9). Holding a line live does not run the motor once the valve has arrived. no feed CH4 — dry isolated contact Raypak TB — 44 ↔ 45 close to call POOL heat Touches nothing on this panel. The Raypak supplies this low voltage from its own board, and 22 is the shared common. no feed CH5 — dry isolated contact Raypak TB — 44 ↔ 46 close to call SPA heat Same contact form, same isolation. The heater keeps its own thermostat and its 104 °F spa cap (ADR-4). 24 H 24 C CH6 — NO coil circuit only Contactor coil — A1 / A2 C25CNB130T, 24 V coil The relay pulls the coil and nothing else. The contactor's own L1/T1 carry the blower: 7.3 A running, 30–45 A locked-rotor inrush. T4000 CH7 — NO in the load's loop Pool light LED, under 1 A Hot in from the subpanel breaker, switched hot back out to it. Far more cycles than any other channel — Jandy colour changes count power interruptions. Remap in software. no feed CH8 — spare not wired nothing — the gate was dropped the cell has its own supply The chlorinator is fed by its own transformer off the subpanel; only RS-485 reaches us. Its only job was suppressing spa chlorination, which ADR-6 already allows simply accepting. NOT SWITCHED — THE THREE RUNS THAT HAVE NO RELAY 5 VDC HDR-60-5 +V / -V → HAT 5 V connector → Pi over the GPIO header. The Pi has no supply of its own. RS-485 HAT A / B / SHLD → IntelliFlo pump and chlorinator cell. Shield termination is not decided. PE Feed, blower and light EGCs → ground bar → jumper to incoming ground. Nothing here bonds itself.
Channels 4 and 5 are the ones to get right. They carry the Raypak's own low voltage, so tying either to this panel's 24 VAC common back-feeds one supply into the other — the single wiring mistake here that damages equipment rather than merely failing. Everything inside the dashed boundary connects only to the heater's terminal block.

Figure 4

One valve, traced end to end

Figure 3 draws all eight channels at once, which is the wrong scale for the question that actually comes up while holding a screwdriver: where does each individual wire go? So here is one valve — channel 1, the intake actuator — drawn as the complete circuit it is, out of the transformer, through the relay, out to the actuator and back.

TR100VA001 100 VA · Class 2 24 VAC secondary TB-H hot bus TB1 common bus TB2a white TB2b red also feeds CH2, CH3 24 VAC hot 24 VAC common also returns valves 2, 3 COM N.C. N.O. white red black gland 1 · 3-wire cable HAT relay CH1 · intake coil 5 V from the Pi changeover · coil off as drawn PE24GVA M cam limit cam limit intake · 180° rear toggle: AUTO 1 / OFF / AUTO 2 What the relay is actually doing coil off — boot, power cut, Pi down: COM ties to N.C., white is live. The fail-safe position. coil on — CH1 commanded: COM ties to N.O., red is live. One of the two is live at all times. The relay picks which; it never switches the valve off. At end of travel the cam opens that side's limit switch, so a live line is not a running motor. CH1 screw block N.C. → white COM ← 24 VAC hot N.O. → red Group RELAY 1–4, top to bottom, as silkscreened on the V 7.1 card. The RELAY 5–8 group is mirrored: N.O. first.
Channel 1 and the intake actuator, drawn from the transformer secondary and back to it. Colour is voltage class here as everywhere else, so the small filled circles carry the actual insulation colour instead — hue never has to do two jobs at once. All three conductors share gland 1: it is one cable, drawn apart only so the circuit reads.

It is a loop, and that is the part the plan views hide. Every other figure here draws a cable as a line going somewhere. Current does not go somewhere; it goes around. Twenty-four volts leaves one end of the transformer secondary, reaches the actuator through whichever conductor the relay has selected, passes through the motor, and comes back on black to the other end of the secondary. Two of the three conductors are in a complete circuit at any moment. The third is simply open.

The relay does not switch the valve on and off. This is the thing worth reading twice, and it is why channels 1–3 need changeover contacts rather than the ordinary on/off kind. COM is permanently fed with 24 VAC. The contact chooses whether that feed continues to N.C. or to N.O. — so one of white and red is live at all times, in both valve positions, including when the Pi is off. Energising the coil moves the feed from one to the other, and that is the entire command.

Which is why a permanently live wire does not cook the motor. The actuator's cam opens that direction's limit switch as it arrives at the end of travel. The line stays energised; the motor stops. This is also what lets ADR‑9 hold relay 3 energised through all of pool mode without a duty cycle problem — the 1 min ON / 8 min OFF limit governs movement, not sitting still with a line hot.

Which conductor gives which position is decided at the valve, not here. Red and white are just "the two directions"; the cam plate and the rear AUTO 1 / OFF / AUTO 2 toggle set what those directions mean physically. If the valve ends up backwards on first power-up, flip the toggle at the actuator — do not rewire the panel, and do not swap red and white at the terminals. Swapping them inverts the fail-safe, which is the one property here chosen deliberately: with the coil unpowered, the bypass must rest in flow.

Only two blocks on rail B belong to this valve. TB2a and TB2b carry white and red, each landing the field wire in one clamp and the wire up to the HAT in the other. Black shares the common bus with the other two actuators and the contactor coil, and the hot side is shared the same way. That is the whole reason for the jumpers: one arriving conductor, several departing ones, at one potential.

One thing this exposes. The terminal schedule on rail B reads TB1 COM · TB2–4 valves · TB5 coil, which named a common bus but no hot bus — though the hot leg needs exactly the same treatment, since it feeds four COM screws. Figure 6 settles it: three blocks for each bus, bridged by a comb, and a schedule that adds up to something you can order against.


Figure 5

The same panel, wired

Figure 1 says where the parts go and Figure 3 says what connects to what. This is both at once: every cable drawn on the real plate, entering at its own gland and routed through the gaps the parts leave. Colour is voltage class, as everywhere else.

LOGIC · 5 VDC / SIGNAL 24 VAC 120 VAC · ELECTRICIAN DIN rail A · 5 in Pi 4 + 8-Relay HAT CH1-8 and RS-485 on HAT HDR-60-5 5 V 6.5 A DIN rail B · 8 in 1-4 hot · 5-10 valves · 11 coil · 12-16 common Line terminals · rail C L . N — PE bar bolts to the plate Transformer TR100VA001 . 100 VA Contactor C25CNB130T CH1 CH2 CH3 HTR 485-P 485-C vent IN BLW LT LEFT FACE BOTTOM FACE 11.18 in 15.12 in RS-485 to cell RS-485 to pump heater 3-wire, dry light loop to CH7 supply ~2.6 A blower loop primary 24 V secondary L/N to 5 V supply 5 V to HAT CH6 TB5 to coil 120 VAC 24 VAC dry 5 V / signal
What this drawing says that a schematic cannot. Portrait puts the actuator glands on the left face at the same height as the terminal strip, so those three cables go almost straight in — but only if they are pulled in the right order. The cable entering highest has to turn down furthest right, or the three cross each other on the way to the strip. That is a pulling order, not a drawing detail.

The right margin is the other thing to notice. On a portrait plate it is the only path from the bottom face or the lower left to the HAT at the top, so it carries four risers: both RS-485 cables, the heater three-wire, and the light loop. They are lane-ordered on the same rule. Anything else that later needs to reach the HAT goes there too, and there is not much room left.

The two RS-485 cables are drawn as two, because they are: the pump and the cell each home-run to the panel rather than chaining to each other. Electrically that is still one bus — the HAT has a single transceiver and two terminals wired in parallel to it — but it puts the panel in the middle of that bus, with a device at either end. Termination belongs at the ends, so the HAT’s termination DIP stays off. Chain the two outside instead and the panel becomes an end, and that switch goes on.

Follow the light loop and the drawing makes an awkward point of its own. CH7 is a relay on the HAT, so a 120 V pair has to climb the full height of the plate into the logic band and land on the same board as the Pi. The card is rated for it — 4 A at 120 V — but it is the one place the voltage-band layout breaks down, and it breaks down because the channel is used directly rather than through a contactor in the line band, the way the blower is. Worth deciding deliberately rather than by default.


Figure 6

Every 24 VAC conductor, block by block

Figure 4 followed one valve. This is the whole 24 VAC network at once — three actuators, the blower coil and the transformer — drawn at the level the confusion actually lives at: which conductor lands in which clamp, and what the jumpers tie together.

Positions here are chosen for legibility, not measured. Figure 5 is where the cables really run; this is what happens once they arrive.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 rail B CH1 COM N.C. N.O. CH2 COM N.C. N.O. CH3 COM N.C. N.O. CH6 COM N.C. N.C. unused HOT BUS · one node · one conductor out of each block, all four to the HAT gland 1 intake gland 2 return gland 3 bypass contactor blower TR100VA001 24 VAC secondary 100 VA · Class 2 hot COMMON BUS · one node · three actuator blacks, the coil return, and the transformer common white → N.C. red → N.O. black → common HOT BUS SWITCHED PAIRS COIL COMMON BUS one node · 4-way comb one node · 5-way comb
Both buses are drawn as one line each, because that is what a comb makes them: one node. Every individual conductor is still drawn — each tap is a conductor — and only the shared node is collapsed. The first attempt drew all nine separately and produced seven crossings with no lane ordering that removes them, which is itself the point: a bus is not nine wires that happen to meet, it is one place with nine things on it.

The entanglement is two nodes. Everything else is point to point. The hot leg of the secondary arrives once and has to reach four COM screws; the common leg leaves once and has to collect three actuator blacks and the far side of the contactor coil. Those are the only two places where more than two conductors meet, and both are made by a comb rather than by twisting wires together in a clamp.

Two clamps per block, and the jumper is separate. A feed-through block has one clamp on each side of a single internal bar, so one block already takes two conductors — that is what the switched pairs use, HAT wire in one side, field wire out the other. The comb plugs into a third opening on the front and bridges neighbouring bars without consuming either clamp. So a node does not need a block per conductor.

But it does need a block per conductor leaving in the same direction, and that is what sets the count. The two clamps of a block face opposite ways. All four COM conductors go to the same place — up to the HAT — so all four want the upper clamp, and four upper clamps means four blocks. Dividing 5 conductors by 2 clamps gives 3, which is the number that fits the copper and the wrong number to build: one COM would have to leave on the face pointing away from the HAT and route back around the strip. The hot bus is four.

The common bus is five, and there is no choice about it. Every one of its conductors leaves downward — the transformer common, the contactor coil return, and the three actuator blacks routed under the strip to their glands. Five conductors on one face is five blocks. Its upper clamps are all spare, which is a good place to put a meter probe.

Read the table by column and the whole rule is visible. Eleven entries in the upper column, thirteen in the lower, and no cell doing double duty. Four COMs stacked in the upper column is why the hot bus is four blocks; five returns stacked in the lower column is why the common bus is five.

BlockGroupUpper clamp — toward the HATLower clamp — toward the field
1hot busCH1 COMtransformer hot leg in
2hot busCH2 COM
3hot busCH3 COM
4hot busCH6 COM
5CH1 · intakeCH1 N.C.white → gland 1
6CH1 · intakeCH1 N.O.red → gland 1
7CH2 · returnCH2 N.C.white → gland 2
8CH2 · returnCH2 N.O.red → gland 2
9CH3 · bypassCH3 N.C.white → gland 3
10CH3 · bypassCH3 N.O.red → gland 3
11coilCH6 N.O.contactor coil, leg A
12common bustransformer common leg in
13common busblack ← gland 1
14common busblack ← gland 2
15common busblack ← gland 3
16common buscontactor coil, leg B

Sixteen blocks, one four-way comb and one five-way — 32 clamps for 24 conductors, so eight spare. That is the count to order against, and it is the first time this plan has had one: the BOM line still reads terminal blocks — no part chosen.

Size it before you buy it. Sixteen blocks at a typical 6.2 mm pitch is about 3.9 in, comfortably inside rail B’s 8 in even after two end brackets. But pitch runs from roughly 5.2 to 8 mm across the usual 2.5–6 mm² range, so this is a number that depends on the part and there is no part chosen yet. Add end plates: a feed-through block is open on the face the comb enters.

The comb is the one part that can short the transformer. It must be a four-way piece on blocks 1–4 and a five-way on 12–16, and neither may reach a neighbour. The gap drawn before block 12 is an end plate, and it is there for this reason. A comb that over-runs block 4 into block 5 ties the hot bus to CH1’s N.C. output, so white and red go live together and the intake actuator is driven both ways at once. One that reaches back from block 12 into block 11 ties CH6’s N.O. to common, and the first blower command is a dead short across the secondary. Cut them to length, count the ways twice, and leave a gap block if the part you buy cannot be cut cleanly.

Rail C adds four more. This figure is rail B only — the 24 VAC side. The panel’s own 120 V feed arrives once and has to reach two places, the transformer primary and the 5 V supply, so line and neutral are each a three-conductor node: two blocks apiece, bridged two-way. Four blocks, two combs. Nothing else lands there — the blower goes straight to the contactor and the light straight to CH7, both looped from the Intermatic subpanel, and every equipment grounding conductor goes to the bolted PE bar rather than to a rail. Twenty blocks on the panel altogether.

Two faces

Cable entries

Split across two faces: low voltage down the left, line voltage along the bottom. Ten entries need about 13.25 in of hole and clearance and the bottom wall offers roughly 11.5 in usable, so one row was never going to work — and splitting them puts the two classes through different walls, which is where they should have been anyway. Every grip seals only inside its cord range — a cable too small for the grip leaves an open hole just as surely as one too large.

# Face Cable ~OD Fitting Range Hole
1–3leftActuator pigtails ×3 24 VAC0.25″LPCG503.100–.3607/8″
4leftHeater 3-wire, 18/3 dry0.20″LPCG503.100–.3607/8″
5leftRS-485 to pump signal0.21″LPCG503.100–.3607/8″
6leftRS-485 to cell signal0.21″LPCG503.100–.3607/8″
7bottomPanel supply in, ~2.6 A line0.53″LPCG757.385–.6001-1/8″
8bottomBlower loop, to/from subpanel line0.53″LPCG757.385–.6001-1/8″
9bottomLight loop, to/from subpanel line0.45″LPCG50.200–.4857/8″
DbottomBreather screw, IP68 ventM12×1.512.5 mm

Four things that decide these before you drill

The breather is metric, everything else is not. Rows 1–8 are imperial trade sizes; row D is an M12×1.5 thread wanting a 12.5 mm hole. A 1/2″ bit is 12.7 mm — 0.2 mm over, which the O-ring will probably still seal, but it is a sloppier hole than the one part on this panel whose whole job is to keep water out deserves. Use a 12.5 mm bit or a step drill with that detent.

Conduit changes rows 6–8 entirely. If the line voltage arrives in conduit rather than as cord, those want hubs, not cord grips. Ask whoever does the 240 V side first.

Flat cable never seals in a round grip. UF-B and NM-B are flat. If either is being pulled, the fitting is wrong regardless of size.

Measure the cable, then drill. The ODs above are typical SOOW. A wrong-sized hole in a sealed box is not recoverable — keep a couple of rated hole plugs on hand in case.


Order of work

Assembly sequence

The order matters in two places: the plate is laid out before anything is drilled, and the panel is proven at 24 VAC before line voltage is ever connected.

  1. Lay the parts on the plate, unmountedTransformer, contactor, PSU, Pi and rail, physically positioned. Confirm the diagonal separation and that DIN rail runs clear the transformer. Adjust on paper, not with a drill.
  2. Mount DIN rail and the fixed partsRail first, then transformer on its feet, contactor, PSU. Pi and HAT on 11 mm standoffs last so nothing is dropped on it.
  3. Drill entries and fit glandsOnly once the actual cables are in hand and measured. Bottom face, low voltage left, line right. Breather-drain at the lowest point.
  4. Wire 24 VAC and signal onlyTransformer secondary to TB1–5, relay channels 1–6, RS-485, heater dry contacts. Nothing line-voltage yet.
  5. Power the logic from a bench supply5 V to the HAT, Pi boots, supervisor runs. Exercise every relay channel and watch the actuators move before the panel is anywhere near the pad.
  6. Electrician connects line voltageFeed in, blower out, light out. Every EGC to the ground bar, and the bar jumpered to the incoming ground — nothing in an all-plastic box is bonded on its own. Permit and inspection as your jurisdiction requires.
  7. Commission njsPC against real equipmentPoint njsPC at /dev/serial0, set enable_uart=1, remove console=serial0, and set the HAT's TX/RX DIP switches on. The supervisor will tell you on screen if the port is still missing.
  8. Seal, then measure the temperatureClose it, run it through a hot afternoon, and read the internal temperature. That is the one number the whole thermal design is still missing.

Not settled

What this plan does not decide

Where the RS-485 cable lands

Per architecture.md the field cable goes straight to the HAT's own terminals, and Figure 5 draws it that way. Worth deciding whether it should: landing a field cable on a stacked HAT means unplugging the bus to lift the card, and an intermediate terminal block would fix that. Nothing in this project has proposed one — this is a suggestion, not a decision already made.

Relay channel rating — blocking

4 A/120 VAC on the product page, 5 A/48 VAC on the board itself. Until Sequent resolves it, no 120 V may land on the card, and CH7's direct light connection is the one part of the design that assumes it can. Ask what the silkscreen refers to and why relay 4 differs.

RS-485 shield termination

Figure 3 shows the shield reaching the HAT and stops there. Whether it lands at one end, both, or through a capacitor is a real decision about ground loops on a run that leaves the box, and nothing in this project has made it. Decide it before the cable is pulled, not after.

Enclosure temperature

The only figure is +14 °C over ambient, measured on a bench without the HAT and unsealed. Four heat sources go in this box. Measure before adding vents — venting trades a corrosion exposure for a temperature rise nobody has quantified.

Valve travel

Assumed 45 s, never timed. njsPC currently restarts the pump 20 s after a valve move, so if the assumption holds the pump restarts mid-swing. Time a valve, then set valveDelayTime above it.

The watchdog

Unbuilt on purpose. The HAT's own watchdog cuts power to the Pi rather than dropping relays, and whether relay state survives that decides the design. Ten minutes on a bench answers it.

Conduit vs cord

Rows 6–8 of the entries table assume round cord. The electrician's answer changes the fittings, and possibly the hole sizes.

Line voltage is not this document's scope

Everything marked 120 VAC — the feed, the blower run, the light, the ground bar, and NEC 680 equipotential bonding — is work for a licensed electrician, and in most jurisdictions needs a permit and an inspection. This plan says where those conductors land inside the box. It is not a wiring guide.