ControlNetApplyAdvanced_motorway_edition
The ControlNet apply you'll actually reach for, now reading keys
- MOTORWAY 🚌💨
- MOTORWAY 🚌💨
ControlNetApplyAdvanced is the workhorse of every serious ControlNet workflow: it takes positive and negative conditioning, a loaded control net, a condition image and a VAE, and applies the control to both conditioning sides at once, with start/end percent control over when it kicks in. This _motorway_edition is that node, rehosted on agilly1989's Motorway bus. If you're building a Motorway graph that does control-guided generation, this is the apply node you'll use most.
How it works
Mechanically it's the core ControlNetApplyAdvanced from nodes.py. The VAE-encode step turns your condition image into the latent space the ControlNet actually consumes, and the conditioning you get back carries the control baked in. On the Motorway version, every one of those data inputs - positive, negative, control_net, image, vae - is pulled out of the bus by the matching INPUT_*_key string, and the two outputs are written back under your OUTPUT_*_keys. The knobs stay as widgets on the node.
The inputs that matter
- MOTORWAY 🚌💨 - the bus, required.
- INPUT_positive_key / INPUT_negative_key - keys for your two conditionings, defaults
positiveandnegative. - INPUT_control_net_key - key of the loaded CONTROL_NET, default
control_net. - INPUT_image_key - key of the condition image (canny, depth, pose, ...), default
image. - INPUT_vae_key - key of the VAE used to encode that image, default
vae. - strength - control weight, 0–10, default 1.0.
- start_percent / end_percent - when in the sample the control applies, 0–1. The KB's standing advice: release the condition once composition has formed - e.g. end at 0.5 - rather than holding structure through the whole sample.
- OUTPUT_positive_key / OUTPUT_negative_key - where the conditioned positives/negatives land, defaults
positive/negative.
Only output: the updated MOTORWAY 🚌💨. Read the conditioned pair back out with a Motorway AxB ramp node feeding your sampler.
Installing
With the pack:
cd ComfyUI/custom_nodes
git clone https://github.com/agilly1989/ComfyUI_agilly1989_motorway
Restart, or ComfyUI Manager → "ComfyUI_agilly1989_motorway". No Python deps. You supply the ControlNet models, the VAE, and the preprocessed condition image - none of those come from the pack.
Caveats
The usual Motorway caveats apply: active beta with a "BIG BROKEN WITH ASYNC" README banner; in the checked version the _motorway_edition clones are commented out of __init__.py (re-enable ClonedNodeMapping if the menu's missing them); keys are exact and case-sensitive, and 'MotorwayClass' object has no attribute 'hash_' means a key isn't in the bus. The mental load here is real - five keys plus two output keys - so double-check each key against what's actually parked upstream. If you just want control applied, the plain core node is simpler; this earns its keep only inside a Motorway graph.
Inputs (11)
| Name | Type | Default | Description |
|---|---|---|---|
| MOTORWAY 🚌💨 | MOTORWAY 🚌💨 | — | |
| INPUT_positive_key | STRING | positive | — |
| INPUT_negative_key | STRING | negative | — |
| INPUT_control_net_key | STRING | control_net | — |
| INPUT_image_key | STRING | image | — |
| INPUT_vae_key | STRING | vae | — |
| strength | FLOAT | 1.000–10 | — |
| start_percent | FLOAT | 0.0000–1 | — |
| end_percent | FLOAT | 1.0000–1 | — |
| OUTPUT_positive_key | STRING | positive | — |
| OUTPUT_negative_key | STRING | negative | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| MOTORWAY 🚌💨 | MOTORWAY 🚌💨 | — |