ComfyUI Node

Smart Bus Out

The other end of a Smart Bus — unpack ten values from one wire

By slvslvslv·Created 2 years ago·Updated 8 days ago· 3
Smart Bus Out
  • bus
  • bus
  • any 1
  • any 2
  • any 3
  • any 4
  • any 5
  • any 6
  • any 7
  • any 8
  • any 9
  • any 10

Smart Bus Out is where a Smart Bus stops being a pipe and becomes ten outputs again. A Smart Bus In bundles values into one SMART_BUS connection; this node is the unpacker on the far side, splitting the bus back into its stored values so you can wire each one to wherever it's actually consumed.

If you've ever dragged ten cables across a canvas just to change a seed, you already know why this exists. The bus pattern - the same idea rgthree's Context popularized - collapses that mess into one wire, and this node is the "one wire in, ten outputs out" endpoint.

How it works

You feed it a bus (the SMART_BUS dict) and get back the bus itself plus ten any-type outputs named any 1 through any 10. Each output corresponds to a slot in the bus's values array. Unfilled slots come out as None, and the labels that travelled with the bus show up on the outputs, which is how you keep track of which value is which when the names are meaningful.

The bus output is passed through unchanged, which is what lets you daisy-chain: Out → In → Out, or multiple Out nodes off one bus. You can have a single bus feed a whole region of the graph and every consumer reads its own slot.

The inputs and outputs that matter

  • bus - required SMART_BUS input.
  • Outputs: bus (passthrough) plus any 1any 10.

Type-wise, the outputs are any, so they'll plug into almost anything - a KSampler's CFG, a LoadImage path, an int widget. ComfyUI lets you connect a loose any wire to most inputs, which is exactly the flexibility this node trades on. The flip side is that the workflow won't catch a mismatch for you: if slot 3 is actually a string and you wire it into a float input, you get the error at queue time, not connect time.

Installing it

It's one of the bus nodes in SmartHelperNodes, so the install is the pack install:

cd ComfyUI/custom_nodes
git clone https://github.com/slvslvslv/ComfyUI-SmartHelperNodes

Restart ComfyUI (or install "SmartHelperNodes" from ComfyUI Manager). No pip dependencies, no downloads.

Common issues

The classic failure is slot misalignment: you build a bus with values in slots 1–5, plug it into a Bus Out, and grab any 8 expecting your width. Label your slots at the In node - the labels travel with the bus and make Out legible. And remember the Out node only knows what it was given; slots that were never set come out as None, so wire from the slots you actually populated and you'll avoid a wall of None hunting.

CategorySmartHelperNodes/Bus

Inputs (1)

NameTypeDefaultDescription
busSMART_BUS

Outputs (11)

NameTypeDescription
busSMART_BUS
any 1*
any 2*
any 3*
any 4*
any 5*
any 6*
any 7*
any 8*
any 9*
any 10*