How can I make a piston expand on a delay, but contract immediately?

So my circuit is very simple: It's a lever, with an on or off state. I have a set of pistons with a small delay using repeaters, but I need these pistons to close immediately after the circuit goes off, despite being on a delay when they extend.

The delay of the circuit is a fully delayed repeater plus another repeater without extra delay (5 ticks?)


Solution 1:

An inverted pulse extender may be what you're looking for. An inverted pulse extender

Solution Notes

  • Adjust the repeater delay to gain the appropriate delay.
  • The redstone torches will cause a two-tick delay (0.2 secs) when the lever is turned on This delay is local to the inversions and cannot be removed without overcomplicating the circuit.
  • If you require an output that is normally on, simply remove the redstone torch next to the lamp and take your output from the block below it.

How it Works

  1. A pulse extender extends out the pulse for a specific length of time.
  2. When the input is on, the output turns on immediately.
  3. When the input is off, the output takes a little time to turn off.
  4. You need to invert the inputs and outputs, so that turning the lever ON will start the timer, and turning it OFF will reset it.