Redstonery
RedstoneryCircuits › Retriggerable comparator extender
Pulse circuit

Retriggerable comparator extender

Extend a timed activity when another request arrives.

8 × 3 footprint1 layer13 blocksTested in 4 rotationsJava Edition 26.2
Open in the simulatorBuild it in the game

Layout

Layer 0 (on the floor)
lever [face=floor, facing=north, powered=false] at x 0, z 0repeater [facing=west, delay=1] at x 1, z 0redstone dust at x 2, z 0comparator [facing=west, mode=compare] at x 3, z 0redstone dust at x 4, z 0redstone dust at x 4, z 1redstone dust at x 4, z 2comparator [facing=east, mode=compare] at x 3, z 2redstone dust at x 2, z 2redstone dust at x 2, z 1repeater [facing=west, delay=1] at x 5, z 0redstone dust at x 6, z 0redstone lamp at x 7, z 0
redstone dustrepeater or comparatorinputlamparrows point where a device sends its output; north is up

How it works

A comparator feedback loop gradually loses signal after the input is released. Trigger it again during decay to recharge it. The output repeater converts any remaining strength into a full signal; inspect the loop to see the decay.

  1. The active input fills a comparator feedback loop with a high signal. After release, dust losses make that numeric signal decay in steps.
  2. Reactivating during decay replenishes the loop. An output repeater stays at full strength while the remaining signal is nonzero.

Inputs and outputs

  • Inputcharge/retrigger (x 0, y 0, z 0)
  • Outputdecaying analog signal (x 4, y 0, z 0)
  • Outputtimed digital signal (x 6, y 0, z 0)

Blocks you need

7 × redstone dust, 2 × repeater, 2 × comparator, 1 × lever, 1 × redstone lamp.

Build it in the game: 13 commands

Relative to where you stand, with x running east and z running south. Paste one line at a time into chat, or into a chain of command blocks. The block art is the game's own; the layout is what the page above shows.

setblock ~0 ~0 ~0 minecraft:lever[face=floor,facing=north,powered=false]
setblock ~1 ~0 ~0 minecraft:repeater[facing=west,delay=1]
setblock ~2 ~0 ~0 minecraft:redstone_wire
setblock ~3 ~0 ~0 minecraft:comparator[facing=west,mode=compare]
setblock ~4 ~0 ~0 minecraft:redstone_wire
setblock ~4 ~0 ~1 minecraft:redstone_wire
setblock ~4 ~0 ~2 minecraft:redstone_wire
setblock ~3 ~0 ~2 minecraft:comparator[facing=east,mode=compare]
setblock ~2 ~0 ~2 minecraft:redstone_wire
setblock ~2 ~0 ~1 minecraft:redstone_wire
setblock ~5 ~0 ~0 minecraft:repeater[facing=west,delay=1]
setblock ~6 ~0 ~0 minecraft:redstone_wire
setblock ~7 ~0 ~0 minecraft:redstone_lamp