LogicUtil_Sleep (Image tunnel)
A pause that rides along your image wire
- image
- *
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.
Inputs (2)
| Name | Type | Default | Description |
|---|---|---|---|
| interval | FLOAT | 0.00 | — |
| image | * | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| * | * | — |