π Echo DMD Sampler
The sampler JoyAI-Echo is distilled for β no ancestral noise, no surprises
- sampler
Echo's LTX-2.3 DMD checkpoints are distilled to follow a specific deterministic trajectory, and this node is the sampler that actually walks it. If you've been running those models through a stock KSampler and scratching your head at why results look softer or noisier than the demos, this is why: a DMD model's 8-step schedule is a straight rectified-flow path, and the vanilla euler variants in ComfyUI don't honor it the way Echo's own inference loop does.
EchoDMDSampler is a SAMPLER node with no inputs at all - you drop it in where you'd normally pick euler or dpmpp_2m, wire up its sampler output, and it runs a pure deterministic euler loop. Every step is the same rectified-flow update: x_next = t*x + (1-t)*denoised, no ancestral noise injection, no stochasticity. That matters because DMD distillation collapses the full denoising trajectory into a handful of large jumps - throwing random noise at it mid-path is fighting the training.
How to wire it
The node is deliberately dumb in the right way. Conditioning happens upstream, so you still need a guider. The standard setup for a distilled LTX-2.3 workflow:
Load Model β LTX2STGGuider (or CFGGuider) β SamplerCustom
β β
positive / negative sampler (from EchoDMDSampler)
sigmas (from EchoDMDSigmas)
Because the sampler takes no parameters, per-step CFG scheduling lives in the guider, not here. For the cheap five-step init cluster in Echo's official schedule (where sigmas sit around 0.975-1.0), you can skip the uncond pass entirely by setting cfg=1.0 for those steps in the STG Guider's per-step list - same compute saving, done at the right layer instead of hacking the sampler.
The gotcha worth knowing
This sampler uses the sigmas you give it as-is. Feed it the official 9-value schedule and you're golden. Feed it one of the extended refinement presets (10/11/12 steps) or a custom schedule without remapping, and the model's timestep embedder gets sigma values it was never trained on. That's exactly why this pack ships EchoDMDSigmaRemap - run your sigmas through it (interpolate mode) before they reach both the guider and the sampler, so both see consistent, anchor-aligned timesteps. Don't skip that step if you deviate from the official schedule.
Install
Install is shared across all the 10S nodes, so once is enough:
cd ComfyUI/custom_nodes
git clone https://github.com/TenStrip/10S-Comfy-nodes.git 10S_Nodes
Restart ComfyUI and it shows up under 10S Nodes/Sampling - or use ComfyUI Manager and search "10S-Comfy-nodes". No extra pip dependencies; the pack runs on ComfyUI's existing PyTorch/comfy environment. Update with git pull in the 10S_Nodes folder.
One caveat that applies to the whole pack: it's written against LTX2's class structure (LTXAVModel, BasicAVTransformerBlock), so it only makes sense with LTX-2/2.3 and the Echo-family checkpoints built on them - it won't work on vanilla LTX-Video 0.9.x or other DiT video models. For the JoyAI-Echo models it was written for, it's the right tool and the one you should be using.
Inputs (0)
No inputs
Outputs (1)
| Name | Type | Description |
|---|---|---|
| sampler | SAMPLER | β |