Nodes/ComfyUI-JDCN/LogicUtil_Sleep (Image tunnel)
ComfyUI Node

LogicUtil_Sleep (Image tunnel)

A pause that rides along your image wire

By daxcay·Created 2 years ago·Updated about a year ago· 159
LogicUtil_Sleep (Image tunnel)
  • image
  • *
interval0.00

Here's a node whose name tells you everything: it sleeps, and your image gets tunneled through it untouched. LogicUtil_Sleep (Image tunnel) (class LogicUtil_SleepNodeImage) sits in the LogicUtil subpack of ComfyUI-JDCN and does exactly one thing - pause the run for interval seconds and pass the image straight through. It's the image-shaped sibling of the pack's generic sleep node, and it exists for a simple reason: sometimes the delay you need happens to live on a branch that's carrying an image.

What it is and why it exists

The parent node LogicUtil_SleepNodeAny sleeps on any type, but a wildcard socket can be fiddly to wire when you've got a clean image path going. This one commits to the image lane: an image input (also typed * in the schema, so it's forgiving about what you plug in) and an image output that comes back byte-for-byte identical. The "tunnel" in the name is the whole pitch - the image goes in one end, sits there while the clock runs, and comes out the other end like nothing happened.

Realistically you reach for this when:

  • A downstream process needs a beat before it reads something, and the only wire you have available is carrying an image.
  • You're chaining a pipeline where an external tool (a renderer, a server, a file watcher) needs time to catch up, and you want the delay visibly anchored to the visual data stream.
  • You're debugging a sequence and want to eyeball each frame as it passes - the pause makes the flow watchable.

How it works

Under the hood it's the same time.sleep() mechanism as the any-type version. The required inputs are interval (a FLOAT in seconds, default 0) and image. The * output is the exact object you fed in - same image, same batch, no resizing, no conversion. It does not touch pixels, metadata, or anything else.

One thing to internalize before you overuse it: this is a blocking delay for the entire run. It's not an async "let the image breathe" node; while it sleeps, nothing downstream executes anywhere in the graph. If you just need a plain pause on a branch that isn't carrying an image, the generic sleep node is the better fit - this one only makes sense when the image path is where the pause belongs, or when the type-agnostic node's wildcard socket is being awkward with your graph.

Installing it

It's part of the ComfyUI-JDCN pack, so install the pack and you get this plus all the other LogicUtil and JDCN file nodes. ComfyUI Manager: Install Custom Nodes → search "JDCN", install, restart. Or:

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

Dependencies are light - piexif is the only thing in the requirements, no models, no downloads. The pack is a small two-person effort (Daxton Caylor and Jerry Davos) aimed at artists and animators, and honestly the sleep nodes are the boring-but-useful corner of it. You won't build a headline workflow around this node. But the day a batch needs to pace itself, it's the right tool.

CategoryLogicUtil

Inputs (2)

NameTypeDefaultDescription
intervalFLOAT0.00
image*

Outputs (1)

NameTypeDescription
**