ComfyUI Node

Motorway 2x5

Motorway 2x5

By agilly1989Β·Created 2 years agoΒ·Updated about a year agoΒ· 7
Motorway 2x5
  • MOTORWAY πŸšŒπŸ’¨
  • ANY_(A)
  • ANY_(B)
  • MOTORWAY πŸšŒπŸ’¨
  • ANY (A)
  • ANY (B)
  • ANY (C)
  • ANY (D)
  • ANY (E)
β—„ANY_(A)_keyβ€”β–Ί
β—„ANY_(B)_keyβ€”β–Ί
β—„ANY_(C)_keyβ€”β–Ί
β—„ANY_(D)_keyβ€”β–Ί
β—„ANY_(E)_keyβ€”β–Ί

Motorway 2x5 is the pack's "two in, five out" distribution node - two values join the bus, and five named values come off it. Of those five outputs, two echo what you just put in and three are free taps into anything already sitting on the bus. If you're feeding several branches from one small set of shared values, this is the shape that keeps the canvas from turning into a plate of spaghetti.

It comes from agilly1989/ComfyUI_agilly1989_motorway, a beta "pipe" pack by solo dev agilly1989. Same idea as rgthree's Context nodes or Impact Pack pipes - bundle values onto one wire instead of dragging them everywhere - but the transport is a MotorwayClass bus object passed along a single MOTORWAY πŸšŒπŸ’¨ connection. That connection is the required input on every node and the first output, so the route continues through as many junctions as you like. Start with MotorwayStart; without it there's no bus.

How it works

Like every Motorway node, this one is a write-and-read junction governed entirely by keys. Plug values into ANY_(A) and ANY_(B), name them in ANY_(A)_key and ANY_(B)_key, and they're stored on the bus. Because outputs outnumber inputs, the node carries five key slots - ANY_(A)_key through ANY_(E)_key - matching the larger of the two sides:

  • inputs ANY_(A) and ANY_(B) with keys
  • read-only key slots ANY_(C)_key, ANY_(D)_key, ANY_(E)_key
  • the required MOTORWAY πŸšŒπŸ’¨ bus input
  • outputs MOTORWAY πŸšŒπŸ’¨, ANY (A) through ANY (E)

Keys A and B pull double duty: each names its input and reads its own output. The C, D, E slots are the reason you chose five lanes - they're pure readers. Type the name of anything that's been written upstream (a seed, a model, a prompt you parked a 2x0 earlier) into those key boxes and their outputs light up with the value.

The storage layer is a sha256 hash per key (your seed becomes an attribute like hash_9c2a…), which is why missing-key errors read as 'MotorwayClass' object has no attribute 'hash_'. Same key written twice anywhere on the route overwrites - the bus keeps only the latest value per name.

Installing

cd ComfyUI/custom_nodes
git clone https://github.com/agilly1989/ComfyUI_agilly1989_motorway

then restart ComfyUI, or install via ComfyUI Manager by searching ComfyUI_agilly1989_motorway. No pip dependencies, no model downloads; pure Python means clone-and-restart is the entire install.

Common issues

  • The hash_ error is a key that was never written or is mistyped. Keys are exact strings - capitalization and spaces count.
  • Every key slot must be filled, because an empty _key means that output is never produced and wiring anything into it errors. Don't skip a _key box.
  • Only key connected inputs. An unconnected input with a key writes None over that name and silently wipes a value you might need.

It's a beta pack, author's warning included, but 2x5 is a genuinely nice middle ground when two values in and five taps out is what your graph actually wants.

Categoryagilly1989 Nodes/Motorways

Inputs (8)

NameTypeDefaultDescription
MOTORWAY πŸšŒπŸ’¨MOTORWAY πŸšŒπŸ’¨β€”
ANY_(A)opt*β€”
ANY_(B)opt*β€”
ANY_(A)_keyoptSTRINGβ€”
ANY_(B)_keyoptSTRINGβ€”
ANY_(C)_keyoptSTRINGβ€”
ANY_(D)_keyoptSTRINGβ€”
ANY_(E)_keyoptSTRINGβ€”

Outputs (6)

NameTypeDescription
MOTORWAY πŸšŒπŸ’¨MOTORWAY πŸšŒπŸ’¨β€”
ANY (A)*β€”
ANY (B)*β€”
ANY (C)*β€”
ANY (D)*β€”
ANY (E)*β€”