You have one tank of air per match. Every design decision — where you route the tubing, which solenoid you pick, how you write the toggle code — determines whether your pneumatics perform reliably in Match 1 and Match 12.
| Mechanism | Typical Activations / Match | Air Risk |
|---|---|---|
| End-game climber / hang | 1–2 total | Very Low — set and forget |
| One-shot game element release | 1–3 total | Low — designed to be minimal |
| Pneumatic claw (toggle-open/close) | 4–10 per match | Medium — count carefully |
| Rapid-fire launcher / indexer | 10–30+ per match | High — requires two reservoirs, minimal bore |
| Intake deploy / unfold | 1–2 (deploy once, stays open) | Low if single-acting |
Fill the system to working pressure and listen carefully — you can often hear a slow hiss. For small leaks that are not audible, apply a small amount of soapy water to each fitting and connection. Bubbles indicate a leak. Fix the source before any competition.
Select the smallest piston that provides sufficient force for the mechanism. Many teams default to larger pistons unnecessarily:
A solenoid is an electrically-controlled valve. When powered, it opens and allows air to flow to the piston. When un-powered, it closes (or switches direction for double-acting). The solenoid itself does not store pressure — it is a gate.
false) the solenoid closes and the piston spring-retracts. The system is safe by default — a brain crash or power cut does not leave pistons extended in an unsafe position.VEX solenoids use the same 3-wire connector as other ADI sensors. Wiring is straightforward:
The V5 Brain only has 8 ADI ports (A–H). If you need more than 8 pneumatic or 3-wire sensor connections, use the V5 3-Wire Expander, which adds 8 more ADI ports via one smart port. Solenoid code is nearly identical — just specify the smart port in the constructor:
VEX solenoids draw current continuously when energized. This is called a latching vs holding solenoid distinction:
The most common mistake: polling get_digital() in a loop without edge detection. If the button is held for 5 control loops (50ms), the piston fires 5 times. This wastes air and wears solenoids.
For double-acting pistons, you only need a brief pulse to move the piston. Once it has traveled, the air pressure in the closed chamber holds it there without continuous solenoid power. This saves battery and prevents solenoid heat.
setPiston() only when needed (on button press, not every loop). If you need the control loop to keep running during the pulse, use a PROS Task for the piston — shown in Pattern 4 below.Display the activation count on the V5 controller screen so the driver can see remaining air budget during the match:
For autonomous sequences where you need the drive to continue while a piston fires, use a PROS Task:
The most air-efficient pattern of all. Deploy the mechanism once at the start of driver control, and it never fires again:
Double-acting pistons have two air chambers. Extending pressurizes the front chamber and vents the back. Retracting pressurizes the back and vents the front. Each actuation moves air through both chambers — meaning the “vented” side must be re-pressurized next cycle. The net air consumption per full cycle is roughly double that of a single-acting piston of the same bore and stroke.
If the piston stops responding during a match, the reservoir is likely empty. There is no in-match recovery — the mechanism is done for that match. For the next match: