Nodes/ComfyUI-Advanced-ControlNet/Middle Weight Extras πŸ›‚πŸ…πŸ…’πŸ…
ComfyUI Node Runs on cloud

Middle Weight Extras πŸ›‚πŸ…πŸ…’πŸ…

Multiply a ControlNet's middle block in ComfyUI

By KosinkadinkΒ·Created 3 years agoΒ·Updated 8 days agoΒ· 993
Middle Weight Extras πŸ›‚πŸ…πŸ…’πŸ…
  • cn_extras
  • cn_extras
β—„middle_mult1.000β–Ί

This is a small modifier node that multiplies a ControlNet's middle block weight. It doesn't produce weights on its own - it produces a cn_extras object that you attach to a real weights node, and when that weights node builds its final profile, the middle block gets scaled by whatever you set here. Think of it as a targeted tweak you layer on top, not a standalone control.

Why single out the middle block? In the SD-style architecture the middle block sits at the network's bottleneck and carries a lot of the ControlNet's structural influence - it's the strongest point in the pack's default soft-weight profile (middle defaults to 1.0 while the shallow blocks sit near 0.1). Nudging just the middle up or down is a quick way to make a ControlNet grip harder or looser on overall structure without redrawing the whole per-block curve.

How it fits in the graph

The cn_extras system is how this pack layers optional weight modifiers. Most weights nodes (Scaled Soft Weights, the Custom Weights nodes, Default Weights) have a cn_extras input. You build up extras with nodes like this one and chain them in. This node both accepts an incoming cn_extras (so you can stack several extras together) and outputs a cn_extras carrying your middle multiplier.

Inputs and outputs

  • middle_mult (required, default 1.0) - the multiplier applied to the ControlNet's middle block weight. Above 1.0 strengthens the middle; below 1.0 weakens it.
  • cn_extras (optional) - an incoming extras object to build on, so multiple extras stack.

Output: cn_extras (type CN_WEIGHTS_EXTRAS) - wire this into the cn_extras input of a weights node (or into another extras node to keep chaining).

Installing the pack

ComfyUI Manager β†’ Install Custom Nodes β†’ "ComfyUI-Advanced-ControlNet" β†’ restart. Or cd ComfyUI/custom_nodes && git clone https://github.com/Kosinkadink/ComfyUI-Advanced-ControlNet and restart. Pure ComfyUI, from Kosinkadink. No preprocessors or ControlNet models bundled - comfyui_controlnet_aux and ComfyUI/models/controlnet respectively.

Common gotchas

The big one: this node does nothing by itself. It has to feed the cn_extras input of an actual weights node that's attached to your ControlNet. Leave its output dangling and middle_mult has zero effect - no error, just no change. If you set it and see nothing, check that the chain reaches a weights node and that weights node reaches your Apply/ControlNet.

Second, it only touches the middle block. If you wanted to reshape more of the profile, you want a Custom Weights node (which exposes every block), not this. And because it's a multiplier, it stacks on top of whatever the weights node already assigned to the middle - a middle_mult of 2.0 on a weights node whose middle is 1.0 lands at 2.0, then still multiplies against the Apply node's overall strength downstream.

CategoryAdv-ControlNet πŸ›‚πŸ…πŸ…’πŸ…/weights/extras

Inputs (2)

NameTypeDefaultDescription
middle_multFLOAT1.0000–10β€”
cn_extrasoptCN_WEIGHTS_EXTRASβ€”

Outputs (1)

NameTypeDescription
cn_extrasCN_WEIGHTS_EXTRASβ€”