π§ͺLoad Merged SparseCtrl Model ππ π π
SparseCtrl + ControlNet in ComfyUI
- sparse_method
- tk_optional
- CONTROL_NET
This one's flagged experimental (the little test-tube in its name gives it away), and it does something specific: it loads a SparseCtrl model and a regular ControlNet and merges them into one control path. The idea is to combine SparseCtrl's sparse-frame conditioning - keyframe a couple of frames, let the motion module fill the rest - with a normal ControlNet's dense guidance, without wiring two separate control chains.
SparseCtrl came out of AnimateDiff v3 (December 2023) and added encoders that let you condition on a starting frame, an ending frame, or a rough scribble and have the motion module interpolate between them. Merging it with a standard ControlNet is the sort of thing you'd try when you want, say, sparse RGB keyframes plus a canny or depth ControlNet riding along on the frames that have one. It's a power-user combination, hence "experimental."
Inputs and outputs
Required:
- sparsectrl_name - dropdown of your SparseCtrl models (
ComfyUI/models/controlnet). - control_net_name - dropdown of the regular ControlNet to merge with it.
- use_motion (default true) - whether the SparseCtrl's motion component is active.
- motion_strength (default 1.0) - how strongly that motion component applies.
- motion_scale (default 1.0) - scales the motion effect.
Optional:
- sparse_method - a SPARSE_METHOD from the SparseCtrl Index Method (or spread) node, telling it which frames your sparse images map to. Without one it uses the default mapping.
- tk_optional - a Timestep Keyframe to bake on here; usually unnecessary if you're feeding an Apply Advanced ControlNet downstream (set keyframes there instead).
Output: CONTROL_NET - the merged, Advanced-ified control model, into the control_net input of an Apply Advanced ControlNet node.
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 then restart. Kosinkadink's pack, pure ComfyUI. This node needs actual models: a SparseCtrl checkpoint and a ControlNet, both in ComfyUI/models/controlnet, plus an AnimateDiff setup (motion module via AnimateDiff-Evolved) since SparseCtrl is an AnimateDiff feature.
Common gotchas
It's experimental - treat it that way. Behavior and inputs can shift between pack versions, and it's the kind of node where a specific SparseCtrl + ControlNet combination might just not play nicely. If a merge misbehaves, fall back to running the SparseCtrl and the ControlNet as two separate Advanced ControlNet applies; that path is the well-trodden one.
Second, empty dropdowns mean the models aren't downloaded. The node ships with the pack; the SparseCtrl and ControlNet weights don't.
Third, the honest framing from the AnimateDiff KB: this is SD 1.5 / AnimateDiff-era tech, and AnimateDiff is superseded for general video work by Wan-based tooling as of 2026. It still runs and Kosinkadink still maintains the runtime, so it's not dead - but if you're not specifically chasing the AnimateDiff sparse-keyframe workflow, you're probably reaching for the wrong era of tool.
Inputs (7)
| Name | Type | Default | Description |
|---|---|---|---|
| sparsectrl_name | COMBO | 0 options: | |
| control_net_name | COMBO | 0 options: | |
| use_motion | BOOLEAN | true | β |
| motion_strength | FLOAT | 1.0000β10 | β |
| motion_scale | FLOAT | 1.0000β10 | β |
| sparse_methodopt | SPARSE_METHOD | β | |
| tk_optionalopt | TIMESTEP_KEYFRAME | β |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| CONTROL_NET | CONTROL_NET | β |