Nodes/comfyui_bmab/BMAB ControlNet Openpose
ComfyUI Node

BMAB ControlNet Openpose

Pose conditioning, once you install its real dependency

By portu-sim·Created 2 years ago·Updated 8 months ago· 124
BMAB ControlNet Openpose
    • BMAB bind
    textCannot Load comfyui_controlnet_aux. To use this node, install comfyui_controlnet_aux

    Same story as its sibling node, BMAB ControlNet IPAdapter: if you install BMAB on its own and go looking for pose conditioning, this node will greet you with a warning instead of a working feature. That's expected - it's telling you exactly what to fix.

    What it is

    OpenPose conditioning detects human body keypoints (joints, and depending on the variant, face and hand landmarks too) from a reference image, and steers generation to match that pose. It's one of the most reliable ways to control a figure's pose without hand-drawing a skeleton yourself, and it's a staple of any pose-locked character workflow.

    BMAB doesn't implement pose detection itself - it relies on Fannovel16's comfyui_controlnet_aux, the standard preprocessor pack most of the ComfyUI ecosystem uses for OpenPose, DWPose, and the rest of the usual ControlNet preprocessing lineup. Without it installed, this node loads as a stub whose default text says exactly that: "Cannot Load comfyui_controlnet_aux. To use this node, install comfyui_controlnet_aux."

    How it works, once the dependency is there

    Standard OpenPose mechanics: a reference image gets run through a pose detector (classic OpenPose, or the more accurate DWPose that most current preprocessor packs default to for better hand detection), producing a skeleton of keypoints. That skeleton becomes the spatial condition, and generation follows it while your prompt still decides everything about appearance. Pose conditioning is on essentially every modern union ControlNet checkpoint - SDXL, Flux, Z-Image, Qwen-Image all have it - so once the preprocessing dependency is satisfied here, the actual ControlNet weights you need are usually easy to find for whichever base model you're running.

    Inputs and outputs

    In its dependency-missing stub state, the node exposes one required field: text (multiline string), defaulting to the warning message above. Once comfyui_controlnet_aux is installed and BMAB picks it up, the node's real pose-detection inputs take over - the info schema here reflects the stub, not the fully functional node.

    Output is a single BMAB bind, carrying the result (non-functional until the dependency is met) forward to the rest of your chain.

    Installing it

    BMAB itself first, if it isn't already in place:

    cd ComfyUI/custom_nodes
    git clone https://github.com/portu-sim/comfyui_bmab.git
    cd comfyui_bmab
    pip install -r requirements.txt
    

    Then the dependency this specific node needs:

    cd ComfyUI/custom_nodes
    git clone https://github.com/Fannovel16/comfyui_controlnet_aux.git
    cd comfyui_controlnet_aux
    pip install -r requirements.txt
    

    (Windows portable users: use python_embeded\python.exe -m pip install -r requirements.txt for both.) Restart ComfyUI fully after installing - a browser refresh alone won't pick up a newly-installed custom node pack. You'll separately need an OpenPose-capable ControlNet checkpoint for your base model, downloaded into models/controlnet - this node handles the pose detection preprocessing, not the ControlNet weights themselves.

    Common issues

    • Warning text persists after installing. Confirm you did a full ComfyUI restart, not just a page reload - this is the single most common reason a freshly-installed dependency doesn't take effect.
    • comfyui_controlnet_aux installed but its own preprocessor models missing. That pack downloads detection models on first use for most preprocessors; if you're offline or behind a restrictive network the first run, the download can silently fail. Check comfyui_controlnet_aux's own documentation if a specific preprocessor errors out even after the pack itself installs cleanly.
    • No matching ControlNet checkpoint for your base model. Pose detection working correctly doesn't help if you haven't separately downloaded an OpenPose/pose-capable ControlNet checkpoint that matches your generation model's architecture.
    CategoryBMAB/controlnet

    Inputs (1)

    NameTypeDefaultDescription
    textSTRINGCannot Load comfyui_controlnet_aux. To use this node, install comfyui_controlnet_aux

    Outputs (1)

    NameTypeDescription
    BMAB bindBMAB bind