ControlNetLoader_motorway_edition
Load a ControlNet into the Motorway, not onto a wire
- MOTORWAY 🚌💨
- MOTORWAY 🚌💨
Every ControlNet workflow starts with the same step: pick a .safetensors from your controlnet folder and load it into a CONTROL_NET object. That's this node's entire job, and the _motorway_edition version does it from inside agilly1989's Motorway bus. Instead of a CONTROL_NET wire going into your Apply node, the loaded object gets parked in the bus under a key, and a later ControlNetApply*_motorway_edition picks it up by that key.
How it works
It's a straight wrapper around core ControlNetLoader from nodes.py. The one thing you set directly is the control_net_name dropdown, which lists everything in ComfyUI/models/controlnet - the same list the plain core loader shows. Load a canny model, a depth model, a union model, whatever's on disk. The loaded CONTROL_NET is written into the bus under OUTPUT_CONTROL_NET_key (default CONTROL_NET), and the node returns the updated Motorway. Since the only original input is that dropdown (a widget, not a wire), there are no INPUT_*_key fields on this one.
One nice detail: MOTORWAY 🚌💨 is optional here, so this node can start a Motorway if nothing feeds it. That's useful because a loader is naturally the head of a controlnet chain - load the model, then have it riding along in the bus while later apply nodes consume it.
Where it sits in a workflow
In a normal graph you do ControlNetLoader → ControlNetApplyAdvanced → KSampler. In a Motorway graph you do: MotorwayStart (or let this node start one), load the ControlNet into the bus, have your conditioning and image already in the bus too, then a ControlNetApplyAdvanced_motorway_edition pulls all three out by key. The bus is what wires it, not the canvas.
For what ControlNet actually conditions on - edges, depth, pose, and the strength/start/end knobs that tune it - the KB has a full essay in controlnet.md; the short version is the control weight (usually 0.3–1.0) and the start/end percent window matter more than anything else once the right model is loaded.
Installing
The node is part of the whole pack:
cd ComfyUI/custom_nodes
git clone https://github.com/agilly1989/ComfyUI_agilly1989_motorway
Restart ComfyUI, or search ComfyUI_agilly1989_motorway in Manager. No Python deps. You do need your own ControlNet model files in models/controlnet - the pack ships none.
Caveats
Same pack reality as the rest of the _motorway_edition family: active beta, README header "BIG BROKEN WITH ASYNC WILL FIX WHEN I GET THE TIME/MOTIVATION", and in the version I checked the clone nodes are commented out of __init__.py - re-enable ClonedNodeMapping if they're missing. Keys are exact and case-sensitive; 'MotorwayClass' object has no attribute 'hash_' means a key isn't in the bus. If you're not running a Motorway graph, the plain ControlNetLoader is identical and a lot less moving parts.
Inputs (3)
| Name | Type | Default | Description |
|---|---|---|---|
| control_net_name | COMBO | 0 options: | |
| OUTPUT_CONTROL_NET_key | STRING | CONTROL_NET | — |
| MOTORWAY 🚌💨opt | MOTORWAY 🚌💨 | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| MOTORWAY 🚌💨 | MOTORWAY 🚌💨 | — |