[MCPE-15793] Redstone components don't apply the correct amount of delay when activated by world changes Created: 21/Jun/16  Updated: 26/Jul/24

Status: Reopened
Project: Minecraft (Bedrock codebase)
Component/s: None
Affects Version/s: 1.20.20.23 Preview, 1.20.20.22 Preview, 1.17.10, 1.16.200.57 Beta, 1.16.100.58 Beta, 1.16.100.56 Beta, 1.16.100.55 Beta, 1.15.0.8 RTX Beta, 1.16.0.63 Beta, 1.16.0.61 Beta, 1.15.0.53 Beta, 1.15.0.51 Beta, 1.14.30.51 Beta, 1.14.2.51 Beta, 1.14.2.50 Beta, 1.14.0.51 Beta, 1.13.3, 1.14.0.4 Beta, 1.13.1, 1.14.1 Hotfix, 1.14.0.3 Beta, 1.14.0.2 Beta, 1.14.0.1 Beta, 1.13.0.18 Beta, 1.13.0.17 Beta, 1.13.0.16 Beta, 1.13.0.15 Beta, 1.13.0.9 Beta, 1.13.0.6 Beta, 1.12.0.2 Beta, 0.15.0, 0.15.2, 0.15.4, 0.15.10, 0.15.90.8, 0.16.0, 0.16.1, 0.17.0.1, 0.16.2, 1.0.0.0, 1.0.0.1, 1.0.0.7, 1.0.0, 1.0.2, 1.0.3, 1.0.4.0, 1.0.4.1, 1.0.4.11, 1.0.5.13, 1.0.6.0, 1.0.5.54, 1.1.0.0, 1.0.6.52, 1.1.0.4, 1.1.0.5, 1.0.7.0, 1.1.0.9, 1.1.0.55, 1.1.1.0, 1.1.1.51, 1.1.2.50, 1.1.3.1, 1.1.5.0, 1.2.0.25, 1.2.0.31, 1.2.3.6, 1.2.5.12, 1.2.6.2, 1.2.5.52, 1.2.6.60, 1.2.9.1, 1.2.10.1, 1.2.10.2, 1.2.15.01, 1.2.16.3, 1.5.0.0, 1.4.0.5, 1.5.0.7, 1.4.2.0, 1.5.0.14, 1.6.0.6, 1.7.0.9 Beta, 1.9.0, 1.10.0.4 Beta, 1.11.0.1 Beta, 1.11.0.3 Beta, 1.11.4, 1.12.1, 1.12.0, 1.13.0, 1.14.1.2 Beta, 1.14.0, 1.14.30 Hotfix, 1.14.60 Hotfix, 1.16.0, 1.16.20, 1.16.50 Hotfix (iOS), 1.16.40 Hotfix, 1.16.100, 1.16.210, 1.16.221 Hotfix, 1.18.2 Hotfix, 1.19.2 Hotfix, 1.19.20, 1.19.21 Hotfix, 1.19.62, 1.20.12 Hotfix, 1.20.81 Hotfix
Fix Version/s: None

Type: Bug
Reporter: Siphio
Resolution: Unresolved Votes: 203
Labels: piston, redstone, redstone-pulse, redstone_comparator, redstone_repeater, redstone_torch

Attachments: File C-tick powering.mp4     PNG File IMG_1634.PNG     PNG File MCPE-15793 Direct VS Delayed Power Examples.png     PNG File MCPE-15793 Piston Example A.png     PNG File MCPE-15793 Piston Example B.png     File Monostable circuit bogué.mp4     File One-tick debug.ahk     File P-tick powering.mp4     GIF File Pistons, repeaters, and_or redstone update bug(s).gif     PNG File Screenshot (27).png     PNG File Screenshot_2016-09-26-07-23-15.png     PNG File Screenshot_2016-09-26-07-23-32.png     PNG File Screenshot_2016-09-26-07-24-00.png     PNG File Screenshot_2016-09-26-07-24-10.png     GIF File pe_redstone.gif    
Issue Links:
Duplicate
is duplicated by MCPE-17208 Repeaters set to 1-redstone-tick & co... Resolved
is duplicated by MCPE-17274 Repeaters add random delay to pistons... Resolved
is duplicated by MCPE-20762 Piston Retraction Resolved
is duplicated by MCPE-20859 Repeaters are broken Resolved
is duplicated by MCPE-20904 Repeater delay bug Resolved
is duplicated by MCPE-21087 The repater delay changed in mcpe 1.1 Resolved
is duplicated by MCPE-21281 Repeaters don't make signals longer Resolved
is duplicated by MCPE-24278 inconsistent Redstone/pistons Resolved
is duplicated by MCPE-25859 Piston timings are glitched Resolved
is duplicated by MCPE-27516 Incorrect Repeater Timings Resolved
is duplicated by MCPE-28387 Piston Feedtape Bug Resolved
is duplicated by MCPE-28623 repeater updates 1 tic early and rele... Resolved
is duplicated by MCPE-28657 Observers triggered by redstone has i... Resolved
is duplicated by MCPE-28690 Monostable cuircuit only works when p... Resolved
is duplicated by MCPE-29171 Pistons need to have consistant timing Resolved
is duplicated by MCPE-30678 Piston bug Resolved
is duplicated by MCPE-30888 T Flip-Flop redstone mechanism Resolved
is duplicated by MCPE-31399 Monostable circuits aren't working Resolved
is duplicated by MCPE-31470 Double piston extender not working Resolved
is duplicated by MCPE-31790 Piston monostable pulse generator not... Resolved
is duplicated by MCPE-33011 Repeater's tick doesn't work correctly. Resolved
is duplicated by MCPE-33825 Falling edge mono-stable circuit does... Resolved
is duplicated by MCPE-35543 Redstone not always working properly Resolved
is duplicated by MCPE-36786 Failure in back-to-back piston monost... Resolved
is duplicated by MCPE-37625 Sticky Piston is not passing Redstone... Resolved
is duplicated by MCPE-41017 Bug with pistons and repeaters Resolved
is duplicated by MCPE-42968 Piston systems and repeater clock Resolved
is duplicated by MCPE-60278 Repeaters activate 2 gameticks too early Resolved
is duplicated by MCPE-75293 Redstone Timing Inaccuracies: Observe... Resolved
is duplicated by MCPE-84280 Moving blocks take 1-2 redstone ticks... Resolved
is duplicated by MCPE-98587 Repeaters changing the way redstone d... Resolved
is duplicated by MCPE-103691 Repeaters are not applying correct de... Resolved
is duplicated by MCPE-103999 Redstone components do not react base... Resolved
is duplicated by MCPE-136762 If a repeater runs into a monostable ... Resolved
is duplicated by MCPE-152120 Redstone Repeaters and Observers prog... Resolved
is duplicated by MCPE-161802 Circuit breaker pulse limiter does no... Resolved
is duplicated by MCPE-167483 Disappearing signal delay / repeater ... Resolved
is duplicated by MCPE-173858 Left redstone repeater responds diffe... Resolved
is duplicated by MCPE-182268 The redstone-mechanism does not work ... Resolved
Relates
relates to MCPE-37479 Command blocks fail to recognize thei... Open
relates to MCPE-12848 Comparators measuring a container tak... Resolved
relates to MCPE-15607 Pistons take 3 redstone ticks to exte... Resolved
relates to MCPE-16371 Multiple mechanism components are tic... Resolved
relates to MCPE-34207 Observers have a 3 RS tick delay Resolved
relates to MCPE-156762 Comparator outputs the power level of... Open
relates to MCPE-89921 Observers dont activate redstone dust... Reopened
relates to MCPE-22741 Fill command doesn't give repeater th... Resolved
relates to MCPE-24278 inconsistent Redstone/pistons Resolved
relates to MCPE-28647 Redstone torch clock behaviour Resolved
relates to MCPE-116576 Dropper update order is affected by o... Resolved
Confirmation Status: Confirmed
Platform: Multiple
CHK:
ADO: 32788, 36225, 176093

 Description   

What I expected to happen was...

On flicking the power switch in each example, the blue example shown would fire like the red example shown (end repeater lights up).

What actually happened was...

In the blue example, the output repeater doesn't fire. If you rapidly flick the switch back and forth, the blue repeater fires intermittently.

Steps to reproduce:

  1. Drive redstone current into a block on top of a piston to generate a 1-tick pulse (red example). Position a repeater to pick up the current from the piston block, but the redstone should flow directly from power source to the block.
  1. Turn on the power source; the piston will fire and the output repeater will light up for its pulse duration.
  1. Insert a repeater anywhere along the input line and toggle the power source. the output repeater will not fire.
  1. Rapidly toggle the power source (switch works best). The repeater will occasionally fire.
  1. replacing the relay with redstone torch inverters shows the same issue (the mechanism will fire when the torch is placed, but not when the mechanism is toggled).
  1. Using an observer block as the power source showed the same issue.

Minecraft pocket edition 0.15.0 (iOS - replicated on iPhone 6 and iPad air 2)

Update by nighter
This bug has been reported to our internal bug tracker for further testing and a fix. It is scheduled to be fixed in one of the future updates (no specific date can be provided).
Please avoid duplicate comments. Post only NEW information regarding this bug.

Update by talaeus, explaining the cause of the bug
Repeaters don't apply the delay properly in all cases. If the repeater was activated by another pure redstone component being ticked, then the delay will be correct. However, if it was activated by a world change (lever, piston modifying a circuit, pressure plates, buttons, etc) then the repeater will output a signal 1 tick too fast. A 1-delay repeater will act as a 0-delay repeater (that is, completely ignored). A 3-delay repeater will act as a 2-delay repeater.



 Comments   
Comment by Кузнецов Юрий Сергеевич [ 22/Jul/24 ]

This problem often affects mechanisms designed for tick, because of it I face the fact that the mechanisms do not work correctly and constantly break, which makes their use in the game impossible

In the video, the mechanism should go down 1 block, but because of the different delay of the signal given by the observer, it often works incorrectly or breaks https://youtu.be/fOfB7Tgd_gA Unlike Java, in Bedrock the mechanism works differently every time you run it and it's quite annoying

Comment by Dl [ 20/Oct/23 ]

About redstone timings in Bedrock Edition
Here's an article about techically comprehensive explanation of redstone in Bedrock Edition, which may be helpful to understand why these issues happen.
In Bedrock Edition, redstone circuits rely on the circuit system to work, rather than block updates. The fundamental reason for these issues is that there is something wrong with the original design of the circuit system. To fix the bug, many disruptive changes must be made, and perhaps even needs rewrite the whole circuit system. That's why this frustrating bug can't be fixed for a long time.

Comment by Bryan Wendlberger [ 19/Aug/23 ]

Given that this is still an issue years later, I would really appreciate some official commentary/explanation of the underlying issue.

On the surface, this seems incredibly straightforward to fix without major changes to tick processing order. That is, simply have components remember their previous power state, and always queue an update to invert them during the next tick if they received any update that would have changed their state during the previous tick. I.e. This should just require adding a flag(s) to tile entities and an additional step to the block update logic). Maybe I'm wrong, and this would break other things, or harm performance more significantly than I think. And of course, I can think of other (potentially noncompatible) ways to address it.

 

In either case, a specific, techically comprehensive, explanation of this years-old and wildly frustrating bug would help set expectations for how this will be managed in the future, and what impact it will have on our clumsy workaround designs when it is eventually fixed.

Comment by jedirabbit12345 [ 25/Feb/23 ]

Still affects 1.19.63 

Comment by Tal Melamed [ 10/Aug/22 ]

1.19.20 too

Comment by Dschinghis Khan [ 07/Jul/22 ]

Still in 1.19.2and 1.19.20.20

Comment by [Mod] GoldenHelmet [ 28/Oct/20 ]

From MCPE-103999:

In the first video, the piston should extend/be powered like the repeater and redstone dust, but doesn't because it is processed in a different tick ("consumer" tick)
C-tick powering.mp4
In the second video, the piston is powered, but the repeater is not, and the dust is VISUALLY not powered, because they are processed in a different tick ("producer" tick)
P-tick powering.mp4
In both situations, the wire, repeater and piston should, logically, all be powered.
This behavior is not only inconsistent with java, it is also very unintuitive. It makes no sense to behave this way.

Comment by GinePik [ 01/Oct/20 ]

Affects 1.16.100

Affects 1.16.200.56 Beta

Comment by GinePik [ 17/Sep/20 ]

Affects 1.16.100.56 Beta.

Comment by GinePik [ 16/Sep/20 ]

Affects 1.16.40 Hotfix.

Affects 1.16.100.55 Beta.

Comment by 77Tigers [ 25/Aug/20 ]

(note: different types of components are powered in alternating gameticks, it may be useful to know to understand why it happens)

This seems hard to fix without major changes to redstone.

The issue isn't with the repeater. The issue is that when a world change happens, the components activated in that tick (often called consumers) aren't instantly powered/depowered.

You can either:

  • remove the delay and make chains of pistons instantly power/depower each other
  • add extra delay to repeaters from world changes (and other components known as producers)
  • fix it only for player interactions

The first two would break most redstone builds. The third wouldn't, but doesn't really fix the bug fully.

May I suggest that this is marked as "Won't fix"?

Comment by Natthan [ 24/May/20 ]

Affects 1.16.0.63

Comment by E Stabach [ 04/May/20 ]

Observers showing up to a 3 tick (often randomized) delay on 1.14.60.

Comment by Blobs2 [ 17/Apr/20 ]

Affects version 1.14.60.

Comment by Blobs2 [ 23/Nov/19 ]

My concern is that if I create redstone contraptions now, and design them to work in spite of this bug, they may break when this bug is fixed. Please fix this ASAP so players can make contraptions that will continue to work in the future.

Comment by BastiReds [ 16/Nov/19 ]

I think this is related but with observers this time.

I built a flying machine only with sticky pistons and it should work (or at least, I think so). Just look in the attached files to see what happens.

Sorry if this is not related.

 

Comment by KopperXP [ 29/Sep/19 ]

Affects 1.12.1

Comment by silentwisperer [ 05/Jul/19 ]

Affects 1.11.4

Comment by [MCPE Mod] Auldrick [ 04/May/19 ]

Please remember that the bug tracker is for reporting bugs only. It is not a discussion forum or a feedback site.

Comment by Junior Apanishile [ 28/Feb/19 ]

Affects 1.11.0.3 beta version

Comment by Junior Apanishile [ 21/Feb/19 ]

Affects 1.11.0.1 beta version

Comment by Zohan Nelson [ 29/Jan/19 ]

There is still a problem with the monostable circuits

Comment by MaladjustedPlatypus [ 18/Sep/18 ]

Source? ^

Comment by [MCPE Mod] Auldrick [ 18/Sep/18 ]

[Redacted: May have been inside information that Mojang does not want shared at this time.]

For the present, the workaround of inserting a dummy repeater on input signal lines pulsed by world events is often enough to ensure the behavior of the circuit is at least predictable.

Comment by Gabriel Alexandre Marcotte [ 18/Sep/18 ]

This is also affecting the Xbox one Bedrock version as of the Sept. 17 of 2018 in the most recent update. Please fix this or tell us if this is an intentional thing. 

Comment by PC_Screen [ 19/Jul/18 ]

Still affects 1.6.0.6

Comment by PC_Screen [ 01/Jun/18 ]

I did some testing on this using the same design in 9 separate locations to make sure there wasn't any other factor in play. I put a lime concrete block on the ones that were following the intended behavior and red on the others over 2 consecutive runs:

Comment by Jeffrey [ 26/May/18 ]

Okay, sorry about that then

Comment by [MCPE Mod] Dr.Awesome4333 [ 26/May/18 ]

MindBlown, Please do not make comments like that, they are not helpful in getting the issue resolved any faster. Thanks.

Comment by Jeffrey [ 25/May/18 ]

This has been around since repeaters were added and that was in 0.14.0. We are now in 1.4.2 and approaching 1.5

Comment by MrJam003 [ 21/May/18 ]

Affects 1.4.0.5

Comment by BastiReds [ 09/Mar/18 ]

I built a monostable circuit and placed a repeater in front of it. It should have given me a short impulse but it didn't give me anything at all.
Monostable circuit bogué.mp4
Steps :
1. Place a block and a redstone dust on it.
2. Place a sticky piston vertically and a block on it.
3. Place a block and a repeater on it.
4. Place a block and a repeater on it before the redstone dust already placed.
5. Active with a lever or a button, it won't work as expected.

Watch the video included if you don't understand.

Comment by hytsnbr10519 [ 08/Feb/18 ]

Still affects in 1.2.10.2.

Comment by husky2490 [ 12/Jan/18 ]

Can anyone prove if this happens to moving observer blocks?

Edit: I'm going to try my hand at it Sorry, what I'm thinking of is probably a different issue

Comment by husky2490 [ 12/Jan/18 ]

I originally posted this to [MCPE-25360] but I think it belongs here more

I captured this behavior today in slow-mo with the help of a macro script (Uses AutoHotkey v1.1; run then press ALT+k to activate). The GIF with a very long name contains 10 images, 5 covering the rising edge and 5 covering the falling edge, representing 0.005 second intervals beginning with 0.005 seconds after clicking the lever. Due to issues with Windows not saving screenshots, images were captured individually on sequential runs.

Comment by hytsnbr10519 [ 19/Nov/17 ]

Still affects in 1.2.6.2.

Comment by Zeb [ 24/Oct/17 ]

I can confirm this is still happening as of 1.2.5 build 2 on Windows 10. Pistons appear to be slightly faster than before, but that didn't fix this bug (though it may make working around the bug in contraptions a little easier).

Comment by Pneuma01 [ 24/Oct/17 ]

Still affects in 1.2.5.13

Comment by [MCPE Mod] Auldrick [ 05/Oct/17 ]

@r.takahashi Although the pistons are clearly getting pulsed at the same time, if you look closely you can see that the redstone dust next to the repeater is being activated 1 tick after the piston.

Comment by Pneuma01 [ 05/Oct/17 ]

MaladjustedPlatypus I tested this way.
But, Re-affected on 1.2.2.

Comment by MaladjustedPlatypus [ 01/Oct/17 ]

^ Still occurring in 1.2.1.1. How did you test this?

Comment by Pneuma01 [ 28/Sep/17 ]

I can't confirmed on 1.2.1.1.
Probably fixed.

Comment by Zeb [ 20/Apr/17 ]

In 1.1.0.5, the behavior has reverted to what is was like pre-1.1.0.0... still broken, but less broken.

Comment by Zeb [ 15/Apr/17 ]

Revised title yet again to be even more descriptive of the issue.

Comment by Zeb [ 01/Apr/17 ]

Now even worse in 1.1.0.0... previously, repeaters set to 1 rs tick delay seemed to have no delay compared to just redstone dust. Now, a repeater set to a 2 rs tick (4 game tick) delay also seems to have no delay compared to redstone dust. This breaks almost everything that relies on redstone timing. (And most contraptions were already having to use extra delay to ensure things were activated in the right order... now they need even more.)

Comment by Zeb [ 27/Mar/17 ]

Revised title again, since this is not a bug exclusive to delays from repeaters, but delays from comparators, redstone torches, and other redstone delayers.

Comment by Zeb [ 23/Jan/17 ]

Re-opening, as this was incorrectly closed as a dupe of MCPE-13983, which was a separate bug which has now been fixed. I have copied over the information provided by talaeus relating to this bug and added it to the description. Also revised the report title and attached the relevant screenshots from MCPE-17208 & MCPE-17274.

Comment by Zeb [ 10/Oct/16 ]

Affects 0.15.10 & 0.15.90.8 (0.16.0 beta build 5).

Comment by Siphio [ 29/Jul/16 ]

Still broken in 15.4.

Comment by Siphio [ 08/Jul/16 ]

Still a problem in 0.15.2

Comment by Siphio [ 07/Jul/16 ]

I can confirm that driving the last stage of your input chain with a redstone block on a piston does work as a fix (with as many relays running into the redstone block piston as you need). This leads me to believe it's a problem with the way piston timing and redstone timings interact.

Comment by Lloyd Lewis [ 30/Jun/16 ]

I had something similar. I was working on an automated melon farm using the observer block. I had the farm working correctly last night, and when I looked at it today, two of the repeaters in the circuit would not activate. I removed the repeaters and put down two new ones and the circuit began to work again.

I was testing this on a Windows 10 Edition. I can attach a download of the world if you need it.

Comment by PHO [ 22/Jun/16 ]

Interesting. It is possible that this one and MCPE-15607 stem from the same root cause.

Generated at Sat Jan 11 15:09:03 UTC 2025 using Jira 9.12.2#9120002-sha1:301bf498dd45d800842af0b84230f1bb58606c13.