Ino Load Controlnet Model
Load a ControlNet from a path string and keep structure control config-driven
- success
- message
- control_net
ControlNet is how you tell a diffusion model where things go - edges, depth, pose - and if you're doing serious structure-controlled work, you'll eventually want to load the model from a path string rather than a dropdown. That's this node's whole job. Ino Load Controlnet Model takes a model_path and returns a CONTROL_NET object you can wire into your ControlNet-applying node, with the pack's standard success/message reporting on top.
It's part of ComfyUI Ino Nodes (nobandegani/ComfyUI-InoNodes), the 125+-node V3-schema pack, and lives in its InoModelHelper category alongside the other path-driven loaders (CLIP, VAE, UNET, LoRA).
How it works
Same architecture as the pack's other loaders: it wraps ComfyUI's own ControlNetLoader and feeds it the path you provide. The value isn't in the loading - that's stock - it's in where the path comes from. In this pack's model-management story, files get downloaded at runtime by HTTP, S3, HuggingFace, or Civitai download nodes, which return paths as strings. Ino Load Controlnet Model consumes those paths, so a ControlNet that was fetched seconds ago becomes usable in the same run, no manual file management.
Inputs:
enabled- the pack-wide toggle; off skips and reportssuccess: False.model_path- the path to the ControlNet file.
Outputs: success (boolean), message (string - your diagnostic when loading fails), and control_net (CONTROL_NET) - the object you feed into a node that applies ControlNet conditioning.
Context: what you're loading
A quick reminder since ControlNet files are easy to get wrong: a ControlNet is trained for a specific base architecture, so an SD-era model won't load usefully onto a Flux or SDXL graph. This node will happily load the file; whether it works depends on matching architecture. For structure work, the community wisdom (and the KB's controlnet essay) still holds: preprocess into a clean edge/depth/pose map, load the matching ControlNet, and mind the weight and start/end steps - the condition usually does its best work early in the sample.
Common issues
- Wrong-architecture ControlNet. The load succeeds, the result is garbage or no visible effect. Match the file to your base model.
- Bad path →
success: False. Reported inmessage, doesn't kill the run - but don't skip the check in automation. enabledoff returnssuccess: Falsewith "not enabled", which is the toggle doing its job.
Installing it
ComfyUI Ino Nodes installs like any custom node pack:
- ComfyUI Manager (easiest): search for "ComfyUI Ino Nodes", install, restart.
- Manual:
Then restart ComfyUI.cd ComfyUI/custom_nodes git clone https://github.com/nobandegani/ComfyUI-InoNodes.git cd ComfyUI-InoNodes pip install -r requirements.txt
The pack needs inopyutils and a current ComfyUI. It's a niche pack with minimal community signal, so the README is your manual - but if your ControlNet path ever arrives as a string at runtime, this is the loader that fits the pipeline.
Inputs (2)
| Name | Type | Default | Description |
|---|---|---|---|
| enabled | BOOLEAN | true | — |
| model_path | STRING | — |
Outputs (3)
| Name | Type | Description |
|---|---|---|
| success | BOOLEAN | — |
| message | STRING | — |
| control_net | CONTROL_NET | — |