⚜️ Control Pipe
Unpack SDXL Control Module's bundle into individual wires
- Control_Pipe
- Total Steps
- Stage 1 End
- Stage 2 Start
- Stage 1 CFG
- Stage 2 CFG
- Style
- Freeze Wildcards
The other half of the Control Module pairing. Where SDXL Control Module bundles seven settings into one DICTIONARY, this node takes that bundle back apart into seven separate, individually typed sockets you can actually wire into your samplers and style nodes.
Why the split exists
Running a two-stage SDXL workflow means keeping a pile of related settings - total steps, where each stage starts and ends, CFG per stage, your style picks, whether wildcards are frozen - consistent across two different KSamplerAdvanced nodes spread across a big canvas. Dragging all seven as separate widgets, and keeping them in sync if you change one, gets old fast. This pack's answer is to define everything once in Control Module, route a single Control Pipe wire wherever you need it, and drop a Control Pipe node at each point in the graph that actually needs the individual values.
Inputs and outputs that matter
The only input is Control_Pipe - the DICTIONARY from SDXL Control Module. There's nothing else to set here; this node is a pure splitter, not a settings node.
Outputs, one per bundled setting: Total Steps (INT), Stage 1 End (INT), Stage 2 Start (INT), Stage 1 CFG (FLOAT), Stage 2 CFG (FLOAT), Style (still a DICTIONARY - feed it onward into SDXL All-In-One's style input if that's how your graph is structured), and Freeze Wildcards (BOOLEAN - wire into a Wildcard Processor, or into SDXL All-In-One's own freeze_wildcards).
A practical wiring pattern: Total Steps and Stage 1 End feed your first KSamplerAdvanced's step-range inputs with Stage 1 CFG as its cfg; Stage 2 Start and Total Steps feed the second stage's range with Stage 2 CFG; Style and Freeze Wildcards route onward to whichever nodes need them elsewhere in the graph.
Installing it
Via ComfyUI Manager: search Comfyui FOCUS nodes, install, restart. Manually:
cd ComfyUI/custom_nodes
git clone https://github.com/DJ-Tribefull/Comfyui_FOCUS_nodes
Restart ComfyUI. Nothing else to install - it's a splitter node, no models, no extra files.
Common issues & troubleshooting
Missing-input error with nothing connected. Expected - this node does nothing without a Control_Pipe input. It's not a standalone settings node, and there are no defaults to fall back on.
Your samplers still get out of sync. Splitting the bundle back out doesn't validate anything either - if the underlying Control Module's step boundaries don't actually add up (Stage_2_Start_Step lower than Stage_1_End_Step, for instance), Control Pipe will happily hand you those same broken numbers as clean typed outputs. Fix the arithmetic at the Control Module end; this node just relays whatever it's given.
You only have one stage, not two. If your workflow isn't running the pack's two-stage checkpoint-swap pattern, you probably don't need this node or its Control Module partner at all - a plain KSampler with its own widgets is simpler for a single-pass generation.
Inputs (1)
| Name | Type | Default | Description |
|---|---|---|---|
| Control_Pipe | DICTIONARY | — |
Outputs (7)
| Name | Type | Description |
|---|---|---|
| Total Steps | INT | — |
| Stage 1 End | INT | — |
| Stage 2 Start | INT | — |
| Stage 1 CFG | FLOAT | — |
| Stage 2 CFG | FLOAT | — |
| Style | DICTIONARY | — |
| Freeze Wildcards | BOOLEAN | — |