REDSTONEPEDIA › Circuits › Pulse shapers
Signal stretcher (pulse extender)
at least 16 ticks (0.8 s) · 13 blocks
Even the shortest input pulse comes out at least 16 ticks (0.8 s) long.
starts after 6 ticks (0.3 s) · needs an input of at least 4 ticks (0.2 s) · fits in 5×3×3
Every size 21
The best design for each size: pick one to see it.
| size | blocks | numbers |
|---|---|---|
| 4 ticks (0.2 s) | 2 blocks | starts after 4 ticks (0.2 s) · needs an input of at least 2 ticks (0.1 s) |
| 6 ticks (0.3 s) | 2 blocks | starts after 6 ticks (0.3 s) · needs an input of at least 2 ticks (0.1 s) |
| 8 ticks (0.4 s) | 2 blocks | starts after 8 ticks (0.4 s) · needs an input of at least 2 ticks (0.1 s) |
| 10 ticks (0.5 s) | 5 blocks | starts after 1 tick (0.05 s) · needs an input of at least 2 ticks (0.1 s) |
| 12 ticks (0.6 s) | 17 blocks | starts after 8 ticks (0.4 s) · needs an input of at least 4 ticks (0.2 s) |
| 14 ticks (0.7 s) | 17 blocks | starts after 10 ticks (0.5 s) · needs an input of at least 4 ticks (0.2 s) |
| 16 ticks (0.8 s) (this page) | 13 blocks | starts after 6 ticks (0.3 s) · needs an input of at least 4 ticks (0.2 s) |
| 18 ticks (0.9 s) | 17 blocks | starts after 6 ticks (0.3 s) · needs an input of at least 4 ticks (0.2 s) |
| 20 ticks (1 s) | 20 blocks | starts after 6 ticks (0.3 s) · needs an input of at least 4 ticks (0.2 s) |
| 22 ticks (1.1 s) | 20 blocks | starts after 6 ticks (0.3 s) · needs an input of at least 4 ticks (0.2 s) |
| 24 ticks (1.2 s) | 13 blocks | starts after 6 ticks (0.3 s) · needs an input of at least 4 ticks (0.2 s) |
| 26 ticks (1.3 s) | 20 blocks | starts after 6 ticks (0.3 s) · needs an input of at least 4 ticks (0.2 s) |
| 28 ticks (1.4 s) | 20 blocks | starts after 6 ticks (0.3 s) · needs an input of at least 4 ticks (0.2 s) |
| 30 ticks (1.5 s) | 20 blocks | starts after 6 ticks (0.3 s) · needs an input of at least 4 ticks (0.2 s) |
| 32 ticks (1.6 s) | 13 blocks | starts after 6 ticks (0.3 s) · needs an input of at least 4 ticks (0.2 s) |
| 36 ticks (1.8 s) | 24 blocks | starts after 6 ticks (0.3 s) · needs an input of at least 4 ticks (0.2 s) |
| 38 ticks (1.9 s) | 24 blocks | starts after 6 ticks (0.3 s) · needs an input of at least 4 ticks (0.2 s) |
| 40 ticks (2 s) | 13 blocks | starts after 6 ticks (0.3 s) · needs an input of at least 4 ticks (0.2 s) |
| 64 ticks (3.2 s) | 13 blocks | starts after 6 ticks (0.3 s) · needs an input of at least 4 ticks (0.2 s) |
| 128 ticks (6.4 s) | 13 blocks | starts after 6 ticks (0.3 s) · needs an input of at least 4 ticks (0.2 s) |
| 256 ticks (12.8 s) | 13 blocks | starts after 6 ticks (0.3 s) · needs an input of at least 4 ticks (0.2 s) |
Try it
Hold IN under the view for a long press, tap it for a short one: the box marked OUT turns red while the output is on. Press play under the view to watch a demo on a loop; touch any other control to take over.
How this design does it: Stretches any input of 4 ticks or more into one pulse of exactly 8 ticks per item in the first hopper (8 ticks to 24 seconds), always 13 blocks: a copper bulb remembers the input (a piston pushes an observer beside it, which fires once each time the input turns on); while the bulb is lit, its comparator locks the second hopper and unlocks the first, so the items pass one by one; when the first hopper is empty, its comparator goes off and a torch toggles the bulb off; then the items flow back.
Build it
Download .litematic Download the design as text
The .litematic opens in Litematica (Minecraft 26.3): every block of the design in one region. The text file is the same build written as plain text, block by block.
Comes loaded with 2 cobblestone in its containers: the download includes them; building it by hand, put them in first.
Blocks used: comparator copper bulb hopper observer redstone torch sticky piston stone
Details: how it works, measurements and properties
In depth
Any input pulse, even a 1-tick one, gives an output pulse of at least L = 16 ticks (0.8 s), starting 6 ticks (0.3 s) after the input turns on. It handles every input pulse of 4 ticks (0.2 s) or longer.
Use it to make a brief signal (an observer's 2-tick pulse) last long enough for a slower part.
How to try it
Press play under the view to watch the demo on a loop (the badge reads demo with the step it is on; the same sequence is drawn as a timing diagram below). Touch any control to stop it and try the circuit yourself.
To try it: press and hold the IN button of the bar (or the cell tagged IN) to power that input; a quick tap sends a short 2-tick pulse.
Inputs are tagged in lime; the output is tagged OUT: the orange glass marker next to it glows while the output is on (the output strip by the demo badge shows its last 40 game ticks, 2 seconds). Drag to look around, pinch or scroll to zoom, step one game tick at a time with the step button.
Inputs and output over time
The input follows this schedule (the 3D view's demo plays the same). Lime: an input is on; orange: the output is on (taller = a stronger signal, 1 to 15). Time runs left to right in game ticks (20 ticks = 1 s).
Swipe the diagram sideways: the whole sequence lasts 997 ticks (49.85 s).
Step by step (13 lines)
in 2 ticks (0.1 s): +6 for 16 in 3 ticks (0.15 s): +4 for 16 <- not handled in 4 ticks (0.2 s): +6 for 16 in 5 ticks (0.25 s): +6 for 16 in 6 ticks (0.3 s): +6 for 16 in 8 ticks (0.4 s): +6 for 16 in 10 ticks (0.5 s): +6 for 16 in 15 ticks (0.75 s): +6 for 16 in 20 ticks (1 s): +6 for 16 in 30 ticks (1.5 s): +6 for 16 in 40 ticks (2 s): +6 for 16 in 60 ticks (3 s): +6 for 16 in 80 ticks (4 s): +6 for 16
Measurements
| metric | value | what it means |
|---|---|---|
| L | 16 ticks (0.8 s) | the length of the output pulse |
| delay | 6 ticks (0.3 s) | the time from the input's edge to the start of the output pulse |
| min-pulse | 4 ticks (0.2 s) | the shortest input pulse handled correctly (every longer one works too) |
Notes from its designer
Stretches any input of 4 ticks or more into one pulse of exactly 8 ticks per item in the first hopper (8 ticks to 24 seconds), always 13 blocks: a copper bulb remembers the input (a piston pushes an observer beside it, which fires once each time the input turns on); while the bulb is lit, its comparator locks the second hopper and unlocks the first, so the items pass one by one; when the first hopper is empty, its comparator goes off and a torch toggles the bulb off; then the items flow back. This one holds 2 items: 16 ticks. Detail: the bulb's comparator powers the stone above the second hopper (locking it) and turns off the torch on that stone, which locked the first hopper; the first hopper's comparator powers the block whose torch lights the bulb from below when that hopper empties.
Properties
| Study | Pulse shapers |
|---|---|
| Kind | Signal stretcher (pulse extender) |
| Blocks placed | 13 (not counting the input levers or buttons the view adds) |
| Box | 5×3×3 (45 blocks of space) |
| Made of (the blocks that change state) | comparator, copper bulb, hopper, observer, redstone torch, sticky piston |
| Inputs / outputs | IN (repeater) / OUT |
| The same build is also | 16-tick pulse · 13 blocks (the same blocks, listed as another kind) |
| Design file | pulse-extender-hopper-oneshot-L16 |
The design file
Design file (34 lines)
# Signal stretcher: at least 16 ticks (0.8 s) · 13 blocks
# https://vjeux.github.io/redstonepedia/circuits/pulse/pulse-extender-hopper-oneshot-L16.html
name: pulse-extender-hopper-oneshot-L16
circuit: pulse-extender
origin: 0 0 0
port input: 5 2 2
port output: 1 2 1
palette:
G minecraft:stone
S minecraft:hopper[enabled=false,facing=east]
U minecraft:hopper[enabled=true,facing=west]
C minecraft:comparator[facing=north,mode=compare,powered=true]
F minecraft:stone
Y minecraft:stone
T minecraft:redstone_wall_torch[facing=east,lit=false]
W minecraft:redstone_wall_torch[facing=west,lit=true]
X minecraft:stone
K minecraft:comparator[facing=south,mode=compare,powered=false]
B minecraft:waxed_copper_bulb[lit=false,powered=false]
O minecraft:observer[facing=east,powered=false]
P minecraft:sticky_piston[extended=false,facing=west]
layer 0:
......
G.....
......
layer 1:
SU....
CF....
YT....
layer 2:
WX....
.K....
.B.OP.
nbt: 0 1 0 {Items:[{Slot:0b,id:"minecraft:cobblestone",count:2}]}