REDSTONEPEDIA › Circuits › Pulse shapers

Signal stretcher (pulse extender)

at least 12 ticks (0.6 s) · 17 blocks

Even the shortest input pulse comes out at least 12 ticks (0.6 s) long.

starts after 8 ticks (0.4 s) · needs an input of at least 4 ticks (0.2 s) · fits in 3×2×4

at least 12 ticks (0.6 s)Signal stretcher3D view loading (or not available in this browser)

Every size 21

The best design for each size: pick one to see it.

sizeblocksnumbers
4 ticks (0.2 s)2 blocksstarts after 4 ticks (0.2 s) · needs an input of at least 2 ticks (0.1 s)
6 ticks (0.3 s)2 blocksstarts after 6 ticks (0.3 s) · needs an input of at least 2 ticks (0.1 s)
8 ticks (0.4 s)2 blocksstarts after 8 ticks (0.4 s) · needs an input of at least 2 ticks (0.1 s)
10 ticks (0.5 s)5 blocksstarts after 1 tick (0.05 s) · needs an input of at least 2 ticks (0.1 s)
12 ticks (0.6 s) (this page)17 blocksstarts after 8 ticks (0.4 s) · needs an input of at least 4 ticks (0.2 s)
14 ticks (0.7 s)17 blocksstarts after 10 ticks (0.5 s) · needs an input of at least 4 ticks (0.2 s)
16 ticks (0.8 s)13 blocksstarts after 6 ticks (0.3 s) · needs an input of at least 4 ticks (0.2 s)
18 ticks (0.9 s)17 blocksstarts after 6 ticks (0.3 s) · needs an input of at least 4 ticks (0.2 s)
20 ticks (1 s)20 blocksstarts after 6 ticks (0.3 s) · needs an input of at least 4 ticks (0.2 s)
22 ticks (1.1 s)20 blocksstarts after 6 ticks (0.3 s) · needs an input of at least 4 ticks (0.2 s)
24 ticks (1.2 s)13 blocksstarts after 6 ticks (0.3 s) · needs an input of at least 4 ticks (0.2 s)
26 ticks (1.3 s)20 blocksstarts after 6 ticks (0.3 s) · needs an input of at least 4 ticks (0.2 s)
28 ticks (1.4 s)20 blocksstarts after 6 ticks (0.3 s) · needs an input of at least 4 ticks (0.2 s)
30 ticks (1.5 s)20 blocksstarts after 6 ticks (0.3 s) · needs an input of at least 4 ticks (0.2 s)
32 ticks (1.6 s)13 blocksstarts after 6 ticks (0.3 s) · needs an input of at least 4 ticks (0.2 s)
36 ticks (1.8 s)24 blocksstarts after 6 ticks (0.3 s) · needs an input of at least 4 ticks (0.2 s)
38 ticks (1.9 s)24 blocksstarts after 6 ticks (0.3 s) · needs an input of at least 4 ticks (0.2 s)
40 ticks (2 s)13 blocksstarts after 6 ticks (0.3 s) · needs an input of at least 4 ticks (0.2 s)
64 ticks (3.2 s)13 blocksstarts after 6 ticks (0.3 s) · needs an input of at least 4 ticks (0.2 s)
128 ticks (6.4 s)13 blocksstarts after 6 ticks (0.3 s) · needs an input of at least 4 ticks (0.2 s)
256 ticks (12.8 s)13 blocksstarts 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 every input to one fixed length.

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.

Blocks used: comparator copper bulb observer redstone wire repeater 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 = 12 ticks (0.6 s), starting 8 ticks (0.4 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).

a 60-tick inputa 80-tick inputINOUTticks050100150200250300350400450500550600650700750800850

Swipe the diagram sideways: the whole sequence lasts 885 ticks (44.25 s).

Step by step (13 lines)
in  2 ticks (0.1 s): +8 for 12
in  3 ticks (0.15 s): no output  <- not handled
in  4 ticks (0.2 s): +8 for 12
in  5 ticks (0.25 s): +8 for 12
in  6 ticks (0.3 s): +8 for 12
in  8 ticks (0.4 s): +8 for 12
in 10 ticks (0.5 s): +8 for 12
in 15 ticks (0.75 s): +8 for 12
in 20 ticks (1 s): +8 for 12
in 30 ticks (1.5 s): +8 for 12
in 40 ticks (2 s): +8 for 12
in 60 ticks (3 s): +8 for 12
in 80 ticks (4 s): +8 for 12

Measurements

metricvaluewhat it means
L12 ticks (0.6 s)the length of the output pulse
delay8 ticks (0.4 s)the time from the input's edge to the start of the output pulse
min-pulse4 ticks (0.2 s)the shortest input pulse handled correctly (every longer one works too)

Notes from its designer

Stretches every input to one fixed length.

Properties

StudyPulse shapers
KindSignal stretcher (pulse extender)
Blocks placed17 (not counting the input levers or buttons the view adds)
Box3×2×4 (24 blocks of space)
Made of (the blocks that change state)comparator, copper bulb, observer, redstone wire, repeater, sticky piston
Inputs / outputsIN (repeater) / OUT
Design filepulse-oneshot-pulse-extender-L12-v24-17b

The design file

on GitHub

Design file (27 lines)
# Signal stretcher: at least 12 ticks (0.6 s) · 17 blocks
# https://vjeux.github.io/redstonepedia/circuits/pulse/pulse-oneshot-pulse-extender-L12-v24-17b.html
name: pulse-oneshot-pulse-extender-L12-v24-17b
circuit: pulse-extender
port input: -1 1 0
port output: 0 1 2
origin: 0 0 0
palette:
  A minecraft:repeater[delay=4,facing=west,locked=false,powered=false]
  C minecraft:comparator[facing=south,mode=compare,powered=false]
  O minecraft:observer[facing=north,powered=false]
  R minecraft:redstone_wire
  S minecraft:sticky_piston[extended=false,facing=east]
  W minecraft:waxed_copper_bulb[lit=false,powered=false]
  o minecraft:observer[facing=west,powered=false]
  r minecraft:repeater[delay=1,facing=east,locked=false,powered=false]
  s minecraft:stone
layer 0:
  .
  osW
  s.W
  .OW
layer 1:
  SO
  RAR
  C.R
  WrR