Redstone avoid propagation upwards
Sebastian Wright
I'm trying to create an elevator, but I'm stuck at powering them. I have inputs for each piston, but I can't seem to separate them. It seems that the redstone powers the block beneath it, and all 3 pistons are extended.
p
p - rt
pIs there a way to power pistons that are on top of each other? I am trying to avoid powering of the lower piston in the picture below.
4 Answers
Pistons are weird. Let me rephrase that: redstone is weird. It never behaves how you would expect it to, consistently. This is especially the case, however, with pistons.
Here's one example:
As you can see, the redstone lamps transfer power in a normal manner (solid block receiving direct power will power the adjacent blocks indirectly). The pistons, on the other hand, behave a little strangely. The first extended piston is powered directly, so it extends. The piston below that one is receiving power indirectly from the block that the redstone is placed on (the lamps behave similarly if you take away the middle lamp). But where the heck is that bottom piston getting power from?
Apparently, pistons can receive power diagonally, or from two blocks above. It was considered a bug for a long time, however, it has since been marked as "Works As Intended". There's a more specific bug report here as well.
Even adding a block in between the redstone and the piston doesn't fix it:
So how do you fix this? Well, that depends on your intended design. If you're going where I think you're going, and going for something similar to a zipper elevator, you actually don't need to worry about this; the zipper design works despite the fact that pistons are activated 2 at a time. Otherwise, you might have to adjust your design, since no combination of blocks and redstone will power just one piston in a vertical tower of pistons. It all depends.
2Due to diagonally powered pistons, this is impossible.
No matter how you try to power the center piston, it will always power the piston below it.
1redstone travels though a single block, so in order to fire off only one piston, you would need one block between the torch and the piston. Whats happening in your setup is the redstone hits the piston, then travels through it to the other piston.
solution: P = piston, S = Stone(or any solid block), RT = redstone torch, RS = redstone dust
like so:
P
P S RS/RT
Pthis setup should only fire the center piston, but as brought to my attention in this answer's comments.. is not the case. so you can try this, but dont expect it to work.
5There are a number of ways to "force" the bottom piston to not move. You could use Obsidian, you could use a big stack of blocks, or you could use an opposing piston. Here's an example that might get you closer to where you're going for your elevator. Not quite the design you requested, but it does work so that only a single piston at a time is moving.
Before the switch is thrown:
And after: