REDSTONEPEDIA › Circuits › Memory and counters
Counter: counts pulses and reacts on a set count
toggles every 30th pulse · 23 blocks
Every 30th input pulse the output flips: on for 30 pulses, off for the next 30.
fits in 5×3×3
Every size 39
The best design for each size: pick one to see it.
| size | blocks | numbers |
|---|---|---|
| every 2nd | 3 blocks | |
| every 3rd | 11 blocks | |
| every 4th | 6 blocks | |
| every 5th | 19 blocks | |
| every 6th | 14 blocks | |
| every 7th | 25 blocks | |
| every 8th | 9 blocks | |
| every 9th | 23 blocks | |
| every 10th | 22 blocks | |
| every 11th | 23 blocks | |
| every 12th | 17 blocks | |
| every 13th | 23 blocks | |
| every 14th | 28 blocks | |
| every 15th | 23 blocks | |
| every 16th | 12 blocks | |
| every 17th | 23 blocks | |
| every 18th | 26 blocks | |
| every 19th | 23 blocks | |
| every 20th | 25 blocks | |
| every 21st | 23 blocks | |
| every 22nd | 23 blocks | |
| every 23rd | 23 blocks | |
| every 24th | 20 blocks | |
| every 25th | 23 blocks | |
| every 26th | 23 blocks | |
| every 27th | 23 blocks | |
| every 28th | 23 blocks | |
| every 30th (this page) | 23 blocks | |
| every 32nd | 15 blocks | |
| every 33rd | 23 blocks | |
| every 34th | 23 blocks | |
| every 36th | 29 blocks | |
| every 38th | 23 blocks | |
| every 39th | 23 blocks | |
| every 40th | 28 blocks | |
| every 45th | 23 blocks | |
| every 48th | 23 blocks | |
| every 100th | 23 blocks | |
| every 576th | 23 blocks |
Try it
Hold IN under the view for a long press, tap it for a short one: the demo counts the 30 pulses for you: pick 100× in the speed dropdown and watch OUT change (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. Its count is the number of items in its droppers: they pass the items one way per pulse, and the numbers over them show how many each holds. Load another number of items (stone here) to make it react on that count.
How this design does it: Counter 30, with items.
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 30 stone in its containers: the download includes them; building it by hand, put them in first.
Blocks used: comparator copper bulb dropper redstone torch redstone wire stone
Details: how it works, measurements and properties
In depth
It counts input pulses: the output flips once every 30 input pulses: on for 30 pulses, then off for 30. In other words, it divides the number of pulses by 30.
Use it to do something every 30th time, or to slow a fast clock down 30 times.
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 redstone lamp in that cell (the view adds it to show the output) lights 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 4255 ticks (3 min 32.75 s).
Step by step (121 lines)
pulse 1: output 0 (level 0) pulse 2: output 0 (level 0) pulse 3: output 0 (level 0) pulse 4: output 0 (level 0) pulse 5: output 0 (level 0) pulse 6: output 0 (level 0) pulse 7: output 0 (level 0) pulse 8: output 0 (level 0) pulse 9: output 0 (level 0) pulse 10: output 0 (level 0) pulse 11: output 0 (level 0) pulse 12: output 0 (level 0) pulse 13: output 0 (level 0) pulse 14: output 0 (level 0) pulse 15: output 0 (level 0) pulse 16: output 0 (level 0) pulse 17: output 0 (level 0) pulse 18: output 0 (level 0) pulse 19: output 0 (level 0) pulse 20: output 0 (level 0) pulse 21: output 0 (level 0) pulse 22: output 0 (level 0) pulse 23: output 0 (level 0) pulse 24: output 0 (level 0) pulse 25: output 0 (level 0) pulse 26: output 0 (level 0) pulse 27: output 0 (level 0) pulse 28: output 0 (level 0) pulse 29: output 0 (level 0) pulse 30: output 1 (level 15), changed pulse 31: output 1 (level 15) pulse 32: output 1 (level 15) pulse 33: output 1 (level 15) pulse 34: output 1 (level 15) pulse 35: output 1 (level 15) pulse 36: output 1 (level 15) pulse 37: output 1 (level 15) pulse 38: output 1 (level 15) pulse 39: output 1 (level 15) pulse 40: output 1 (level 15) pulse 41: output 1 (level 15) pulse 42: output 1 (level 15) pulse 43: output 1 (level 15) pulse 44: output 1 (level 15) pulse 45: output 1 (level 15) pulse 46: output 1 (level 15) pulse 47: output 1 (level 15) pulse 48: output 1 (level 15) pulse 49: output 1 (level 15) pulse 50: output 1 (level 15) pulse 51: output 1 (level 15) pulse 52: output 1 (level 15) pulse 53: output 1 (level 15) pulse 54: output 1 (level 15) pulse 55: output 1 (level 15) pulse 56: output 1 (level 15) pulse 57: output 1 (level 15) pulse 58: output 1 (level 15) pulse 59: output 1 (level 15) pulse 60: output 0 (level 0), changed pulse 61: output 0 (level 0) pulse 62: output 0 (level 0) pulse 63: output 0 (level 0) pulse 64: output 0 (level 0) pulse 65: output 0 (level 0) pulse 66: output 0 (level 0) pulse 67: output 0 (level 0) pulse 68: output 0 (level 0) pulse 69: output 0 (level 0) pulse 70: output 0 (level 0) pulse 71: output 0 (level 0) pulse 72: output 0 (level 0) pulse 73: output 0 (level 0) pulse 74: output 0 (level 0) pulse 75: output 0 (level 0) pulse 76: output 0 (level 0) pulse 77: output 0 (level 0) pulse 78: output 0 (level 0) pulse 79: output 0 (level 0) pulse 80: output 0 (level 0) pulse 81: output 0 (level 0) pulse 82: output 0 (level 0) pulse 83: output 0 (level 0) pulse 84: output 0 (level 0) pulse 85: output 0 (level 0) pulse 86: output 0 (level 0) pulse 87: output 0 (level 0) pulse 88: output 0 (level 0) pulse 89: output 0 (level 0) pulse 90: output 1 (level 15), changed pulse 91: output 1 (level 15) press 1 20: output 1 (level 15) press 2 30: output 1 (level 15) press 3 200: output 1 (level 15) press 4 20: output 1 (level 15) press 5 30: output 1 (level 15) press 6 20: output 1 (level 15) press 7 30: output 1 (level 15) press 8 20: output 1 (level 15) press 9 20: output 1 (level 15) press 10 30: output 1 (level 15) press 11 200: output 1 (level 15) press 12 20: output 1 (level 15) press 13 30: output 1 (level 15) press 14 20: output 1 (level 15) press 15 30: output 1 (level 15) press 16 20: output 1 (level 15) press 17 20: output 1 (level 15) press 18 30: output 1 (level 15) press 19 200: output 1 (level 15) press 20 20: output 1 (level 15) press 21 30: output 1 (level 15) press 22 20: output 1 (level 15) press 23 30: output 1 (level 15) press 24 20: output 1 (level 15) press 25 20: output 1 (level 15) press 26 30: output 1 (level 15) press 27 200: output 1 (level 15) press 28 20: output 1 (level 15) press 29 30: output 0 (level 0), changed press 30 20: output 0 (level 0)
Measurements
| metric | value | what it means |
|---|---|---|
| N | 30 | how many input pulses one output cycle takes |
| output | toggles every 30 pulses | how the output shows the count: toggles (flips every N), pulses (one pulse every N) or level (its state repeats every N) |
| counts | one pulse per 60 inputs (toggles every 30: a square wave | |
| a | divider by 60) |
Notes from its designer
Counter 30, with items.
Properties
| Study | Memory and counters |
|---|---|
| Kind | Counter: counts pulses and reacts on a set count |
| Blocks placed | 23 (not counting the input levers or buttons and the lamp the view adds) |
| Box | 5×3×3 (45 blocks of space) |
| Made of (the blocks that change state) | comparator, copper bulb, dropper, redstone torch, redstone wire |
| Inputs / outputs | IN (repeater) / OUT |
| Design file | counter30-items-v45-23b |
The design file
Design file (37 lines)
# Counter: toggles every 30th pulse · 23 blocks
# https://vjeux.github.io/redstonepedia/circuits/memory/counter30-items-v45-23b.html
name: counter30-items-v45-23b
circuit: counter 30
port input: 1 2 0
port output: 0 0 1
nbt: 0 1 0 {Items:[{Slot:0b,id:"minecraft:stone",count:30}]}
origin: -2 0 -2
palette:
A minecraft:comparator[facing=south,mode=compare,powered=false]
B minecraft:dropper[facing=west,triggered=true]
C minecraft:comparator[facing=east,mode=compare,powered=true]
D minecraft:dropper[facing=east,triggered=false]
E minecraft:redstone_wall_torch[facing=west,lit=true]
F minecraft:redstone_wire[east=side,north=side,power=0,south=side,west=side]
R minecraft:redstone_torch[lit=true]
S minecraft:stone
W minecraft:waxed_copper_bulb[lit=false,powered=true]
c minecraft:comparator[facing=north,mode=compare,powered=false]
d minecraft:dropper[facing=up,triggered=true]
r minecraft:redstone_wall_torch[facing=north,lit=false]
layer -1:
.
..d
...S
layer 0:
DSW
..cB
.SSFS
layer 1:
FFES
r..A
SCDBR
layer 2:
.
.
...F