Nodes/Shima/Shima CN Preprocessor Bus
ComfyUI Node

Shima CN Preprocessor Bus

One router for all your ControlNet preprocessor images

By KDB-USJP·Created 6 months ago·Updated 6 months ago· 2
Shima CN Preprocessor Bus
  • c1_passthrough
  • c2_normal_lineart
  • c3_anime_lineart
  • c4_manga_lineart
  • c5_midas_depthmap
  • c6_color_palette
  • c7_canny_edge
  • c8_openpose_recognizer
  • c9_scribble_lines
  • c10_yourchoice1
  • c11_yourchoice2
  • IMAGE
Input1

ControlNet workflows breed preprocessor outputs: a canny here, a depth map there, a lineart over yonder. Shima CN Preprocessor Bus is a routing node that gathers up to nine of those IMAGE streams into one node and lets you pick which one flows out the single output with an integer selector. It's a multiplexer for control maps - the kind of node that looks pointless until you're trying to switch between "canny" and "depth" runs without rewiring a handful of connections.

How it works

The node has eleven named IMAGE inputs, each labeled for the preprocessor it expects - c2_normal_lineart, c4_manga_lineart, c5_midas_depthmap, c7_canny_edge, c8_openpose_recognizer, c9_scribble_lines, and so on. You wire each preprocessor's output into its matching slot, then set the Input widget (1–9) to choose which channel passes through. The mechanism is one lookup in the source: the selector indexes into the channel list and returns that input, nothing else. It's a true router, not a blender - exactly one image comes out.

The labels match the standard ComfyUI preprocessor naming (normal_lineart, midas_depthmap, canny_edge, openpose_recognizer, scribble_lines...), so wiring is usually obvious. c1_passthrough is the "already done, send it as-is" lane, and there are two spare slots - c10_yourchoice1 and c11_yourchoice2 - for whatever you want, with the honest caveat that the selector widget tops out at 9, so those last two channels are effectively reserved/experimental rather than reachable from the UI.

The inputs that matter

  • Input - the 1–9 selector. The whole node is this widget.
  • c1_passthroughc9_scribble_lines - the preprocessor image slots. Wire what you actually use; leave the rest empty.
  • c10_yourchoice1 / c11_yourchoice2 - spare channels for custom maps (see the caveat above).

Single IMAGE output.

When you'd use it

This earns its place in a workflow where you're A/B testing control types - same source image, several preprocessors run in parallel, and you flip the selector to decide which condition drives this run. Paired with Shima's Choice Switch or a Breaker, you can even script that selection instead of clicking it. It's also a clean way to keep a "control island" self-contained: all your preprocessors land in one bus, and one wire leaves it.

It is not a processor itself. No preprocessor runs inside; every input is something you generate upstream. If you're looking for a node that extracts canny or depth from an image, that's Shima ControlNet Agent's job - this is purely the routing half of the story.

Installing it

Part of the Shima pack - ComfyUI Manager → search Shima, or:

cd ComfyUI/custom_nodes
git clone https://github.com/KDB-USJP/shima_wf.git Shima

Restart ComfyUI. First launch auto-installs the pack's deps and companion repos (ComfyUI-Impact-Pack, cg-use-everywhere). No models or extra downloads for this node.

Common issues

  • "Output is empty." You selected a channel with nothing wired to it. The router returns whatever's in the selected slot - if that's unconnected, you get None and a silently broken downstream.
  • "I selected 10 and nothing happened." The selector caps at 9, so the two yourchoice channels aren't reachable from the UI. Wire into c1c9 for dependable use.
  • "Wrong image came out." Off-by-one: Input 1 is c1, Input 2 is c2, and so on. The selector is 1-indexed - easy to trip on if you're thinking in list positions.

For a workflow that iterates on control types, this is the difference between five minutes of rewiring per experiment and a single click. Small node, genuinely useful habit.

CategoryShima/Utilities/Passers

Inputs (12)

NameTypeDefaultDescription
InputINT11–9
c1_passthroughoptIMAGE
c2_normal_lineartoptIMAGE
c3_anime_lineartoptIMAGE
c4_manga_lineartoptIMAGE
c5_midas_depthmapoptIMAGE
c6_color_paletteoptIMAGE
c7_canny_edgeoptIMAGE
c8_openpose_recognizeroptIMAGE
c9_scribble_linesoptIMAGE
c10_yourchoice1optIMAGE
c11_yourchoice2optIMAGE

Outputs (1)

NameTypeDescription
IMAGEIMAGE