REDSTONEPEDIA › Circuits › Pulse shapers

One pulse on every switch (dual-edge detector)

18-tick pulse · 22 blocks

Every time the input changes, on or off, the output gives one short pulse of 18 ticks (0.9 s).

starts after 6 ticks (0.3 s) · needs an input of at least 40 ticks (2 s) · fits in 3×2×5

18-tick pulseOne pulse on every switch3D view loading (or not available in this browser)

Every size 12

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

sizeblocksnumbers
2 ticks (0.1 s)2 blocksstarts after 2 ticks (0.1 s) · needs an input of at least 2 ticks (0.1 s)
4 ticks (0.2 s)4 blocksstarts after 6 ticks (0.3 s) · needs an input of at least 4 ticks (0.2 s)
6 ticks (0.3 s)4 blocksstarts after 8 ticks (0.4 s) · needs an input of at least 8 ticks (0.4 s)
8 ticks (0.4 s)4 blocksstarts after 10 ticks (0.5 s) · needs an input of at least 15 ticks (0.75 s)
10 ticks (0.5 s)8 blocksstarts after 1 tick (0.05 s) · needs an input of at least 20 ticks (1 s)
16 ticks (0.8 s)13 blocksstarts after 4 ticks (0.2 s) · needs an input of at least 30 ticks (1.5 s)
18 ticks (0.9 s) (this page)22 blocksstarts after 6 ticks (0.3 s) · needs an input of at least 40 ticks (2 s)
24 ticks (1.2 s)13 blocksstarts after 4 ticks (0.2 s) · needs an input of at least 60 ticks (3 s)
30 ticks (1.5 s)29 blocksstarts after 6 ticks (0.3 s) · needs an input of at least 40 ticks (2 s)
32 ticks (1.6 s)13 blocksstarts after 4 ticks (0.2 s) · needs an input of at least 60 ticks (3 s)
34 ticks (1.7 s)27 blocksstarts after 6 ticks (0.3 s) · needs an input of at least 80 ticks (4 s)
40 ticks (2 s)13 blocksstarts after 4 ticks (0.2 s) · needs an input of at least 80 ticks (4 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.

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 stone

Details: how it works, measurements and properties

In depth

Every time the input changes (turns on or turns off), the output gives one short pulse of L = 18 ticks (0.9 s), 6 ticks (0.3 s) after the change. It handles every input pulse of 40 ticks (2 s) or longer.

Use it to react to any change of a lever, in both directions.

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 inputINOUTticks0501001502002503003504004505005506006507007508008509009501000

Swipe the diagram sideways: the whole sequence lasts 1025 ticks (51.25 s).

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

Measurements

metricvaluewhat it means
L18 ticks (0.9 s)the length of the output pulse
delay6 ticks (0.3 s)the time from the input's edge to the start of the output pulse
min-pulse40 ticks (2 s)the shortest input pulse handled correctly (every longer one works too)

Properties

StudyPulse shapers
KindOne pulse on every switch (dual-edge detector)
Blocks placed22 (not counting the input levers or buttons the view adds)
Box3×2×5 (30 blocks of space)
Made of (the blocks that change state)comparator, copper bulb, observer, redstone wire, repeater
Inputs / outputsIN (repeater) / OUT
Design filepulse-dual-lock-L18-v30-22b-0

The design file

on GitHub

Design file (32 lines)
# One pulse on every switch: 18-tick pulse · 22 blocks
# https://vjeux.github.io/redstonepedia/circuits/pulse/pulse-dual-lock-L18-v30-22b-0.html
name: pulse-dual-lock-L18-v30-22b-0
circuit: dual-edge
port input: 2 1 3
port output: 3 1 0
origin: 2 0 -2
palette:
  A minecraft:repeater[delay=1,facing=south,locked=false,powered=false]
  B minecraft:repeater[delay=4,facing=north,locked=false,powered=false]
  C minecraft:comparator[facing=west,mode=compare,powered=false]
  D minecraft:repeater[delay=4,facing=south,locked=false,powered=false]
  O minecraft:observer[facing=east,powered=false]
  R minecraft:redstone_wire
  S minecraft:stone
  W minecraft:waxed_copper_bulb[lit=false,powered=false]
  o minecraft:observer[facing=south,powered=false]
  r minecraft:repeater[delay=1,facing=east,locked=false,powered=false]
layer 0:
  SSS
  S.S
  .O
  WSS
  .
  .
layer 1:
  RRR
  B.D
  WCS
  ArR
  o
  W