Ard Control Box
Every generation knob in one node
- positive_prompt
- negative_prompt
- model
- vae
- model
- positive
- negative
- latent_out
- seed
- cfg
- steps
- denoise
- scaler
- vae
- width
- height
- latent_width
- latent_height
- divx
Ard Control Box is the reason this pack exists. The whole GitHub README is about this node (under its old name, CPlus Control Box), and the rest of the pack is essentially plumbing built around it. The pitch: instead of a dozen loose widgets scattered across your graph, you get one node holding your model, VAE, positive and negative CONDITIONING, and all the generation numbers - cfg, steps, denoise, seed, width, height, plus latent_width, latent_height, latent_batch_size, a mysterious scaler, and divx - and it outputs all of them plus a freshly generated empty latent. One control panel, 15 outputs, and your sampler plugs into it like a console.
Mechanically it's a pass-through plus a small amount of genuine work. It rounds width, height, latent_width, and latent_height up to a multiple of divx (that's the "make sure dimensions are clean" step), then builds an empty latent tensor at latent_width × latent_height. Note it hardcodes the latent's own divisor at 8, so the empty latent follows the standard 8×-per-side VAE compression the KB's concepts doc describes. Everything else - model, prompts, cfg, steps, seed, denoise, scaler - comes in and goes right back out unchanged. scaler is not applied to anything; it's just a value you get to use elsewhere (the author's own workflow uses it as an upscale factor downstream). The output list is model, positive, negative, latent_out, seed, cfg, steps, denoise, scaler, vae, width, height, latent_width, latent_height, divx.
Now the honest part, and it matters because this is a "control everything" node. The defaults are SD 1.5/SDXL-era numbers: cfg 8, steps 20. Per the KB's distillation material, modern guidance-distilled models (Flux, Z-Image Turbo, Klein) run at CFG 1 by default - CFG 8 will burn those images and roughly double render time. If you use this box with a 2026 model, change cfg before you run, or you'll blame the model for something the defaults did. Also note the conditioning inputs expect CONDITIONING tensors (from a CLIP Text Encode or this pack's Ard Dual Prompt), not raw text - beginners plug text in and get connection errors, which is the number-one complaint pattern.
Where this node genuinely helps: keeping a clean canvas and sharing one seed/one set of knobs across several sampler chains. Where it's a trap: it gives you no prompt fields, no sampler/scheduler dropdowns, and no img2img source (the latent it creates is always empty). It's a control panel, not a pipeline.
Install is the standard pack route - ComfyUI Manager → search ComfyUI-Ardenius, or:
cd ComfyUI/custom_nodes
git clone https://github.com/ArdeniusAI/ComfyUI-Ardenius
then restart ComfyUI. Ignore the README's instructions about renaming a downloaded zip to CPlus_Ardenius and downloading from Ko-fi - that's stale; the free pack on GitHub is this one, cloned as-is. The pack installs civitai and moviepy with it, and a console import error at startup is the Save Image node wanting comfyui_controlnet_aux (irrelevant to this node).
Verdict: a fun "all the knobs in one box" node if you like the author's workflow. Just remember the CFG default was written for a different generation of models.
Inputs (15)
| Name | Type | Default | Description |
|---|---|---|---|
| cfg | FLOAT | 8.00.1–15 | — |
| steps | INT | 201–100 | — |
| denoise | FLOAT | 1.000.01–1 | — |
| scaler | FLOAT | 1.00000.01–4 | — |
| seed | INT | 12345678911–9999999999 | — |
| positive_prompt | CONDITIONING | — | |
| negative_prompt | CONDITIONING | — | |
| model | MODEL | — | |
| vae | VAE | — | |
| width | INT | 102464–8192 | — |
| height | INT | 102464–8192 | — |
| latent_width | INT | 102464–8192 | — |
| latent_height | INT | 102464–8192 | — |
| latent_batch_size | INT | 11–4096 | — |
| divx | INT | 88–4096 | — |
Outputs (15)
| Name | Type | Description |
|---|---|---|
| model | MODEL | — |
| positive | CONDITIONING | — |
| negative | CONDITIONING | — |
| latent_out | LATENT | — |
| seed | INT | — |
| cfg | FLOAT | — |
| steps | INT | — |
| denoise | FLOAT | — |
| scaler | FLOAT | — |
| vae | VAE | — |
| width | INT | — |
| height | INT | — |
| latent_width | INT | — |
| latent_height | INT | — |
| divx | INT | — |