Nodes/ComfyUI-HiddenImages/NanoBanana Magic Scheduler
ComfyUI Node

NanoBanana Magic Scheduler

One slider that bundles every hidden-image setting you'd otherwise guess

By GeekatplayStudio·Created 5 months ago·Updated 24 days ago· 0
NanoBanana Magic Scheduler
    • controlnet_strength
    • start_percent
    • end_percent
    • recommended_cfg
    • latent_mask_strength
    model_family
    magic_slider0.72

    Hidden-image workflows have a tuning problem. ControlNet strength, start/end percent, CFG, mask strength - each one is a knob that only makes sense in relation to the others, and the "right" values live in forum threads from 2023. The Magic Scheduler's pitch is that you stop touching all of them and move one slider instead. Pick your model family, drag magic_slider, and out come five values tuned for that family.

    First, get the name straight: despite the "scheduler" in the title, this is not a denoising scheduler. It doesn't replace the KSampler's scheduler dropdown or touch your sigma schedule. It's a settings bundler - a lookup table with interpolation, which is exactly what you want it for and not what the name suggests.

    How it works

    The source is honest about it: a PRESETS dict per family, and the slider linearly interpolates between each range. Slider at 0 gives you the low end; slider at 1 gives you the aggressive end.

    • sd15: controlnet strength 0.55 → 1.35, CFG 5.5 → 8.5
    • sdxl: strength 0.85 → 1.6, CFG 3.2 → 5.0
    • flux: strength 0.18 → 0.55, CFG 2.5 → 4.0

    Those ranges tell the whole story. QR-style work on SD 1.5/SDXL wants the slider high - strong, late-ending control to keep the machine-readable pattern intact. FLUX's ghost preset starts at 0.18 strength and caps at 0.55, because the FLUX path is a low-strength Canny ControlNet plus a soft latent mask, and cranking it makes the ghost look stamped on instead of embedded. If you only remember one thing: slider high = QR, slider low = ghost.

    Inputs and outputs

    Two inputs: model_family (sd15 / sdxl / flux) and magic_slider (0 to 1, default 0.72). Five outputs:

    • controlnet_strength → your ControlNet's strength input
    • start_percent → ControlNet start. Heads-up: this is always 0.0, hardcoded - the wiring exists so the node's output shape is complete, but it never changes.
    • end_percent → ControlNet end, where the condition releases
    • recommended_cfg → KSampler's CFG
    • latent_mask_strength → the strength for your latent-mask conditioning (it pairs with the pack's IllusionLatentMask mask_strength, or a ConditioningSetMask strength)

    Note the outputs are plain floats, not a real scheduler object, so you wire them to separate inputs. That's mildly annoying but also transparent - you can override any single output and the rest still line up.

    Installing it

    Same pack install as the rest of the NanoBanana nodes: ComfyUI Manager, search "ComfyUI-HiddenImages", or clone into custom_nodes and run ./install.sh with the preset matching your target (--preset qr, text, or ghost). This node has no model dependencies of its own - the installer's weight downloads are what it's meant to tune.

    Troubleshooting

    If you crank the slider and the result is a posterized mess, the settings aren't broken - you overshot. The recommended_cfg climbs with the slider, and too-high CFG with a strong late ControlNet is exactly the "image ruined at the end" recipe. Back the slider down a notch. And be aware recommended_cfg is tuned for the pack's target models: FLUX doesn't consume CFG the way SD 1.5 does (it uses guidance), so treat that output as a starting point, not gospel.

    It's a convenience node - any seasoned user could hand-roll these numbers - but it's a genuinely good convenience, because it keeps all five settings moving together instead of letting you drift into a combination nobody would recommend.

    CategoryNanoBanana/Illusion

    Inputs (2)

    NameTypeDefaultDescription
    model_familyCOMBO3 options: sd15, sdxl, flux
    magic_sliderFLOAT0.720–1

    Outputs (5)

    NameTypeDescription
    controlnet_strengthFLOAT
    start_percentFLOAT
    end_percentFLOAT
    recommended_cfgFLOAT
    latent_mask_strengthFLOAT