DIY-Spyra Electric Water Gun
Welcome to my guide on building a high-performance water gun, inspired by the advanced Spyra 3 and other electric water blasters!
I've always been fascinated by water guns, ever since the epic backyard water battles of my childhood. As technology has advanced, so have water guns. Spyra and similar toys lead the way. However, these commercial water guns come with a hefty price tag, limited customization options, and aren't very repairable. That's what inspired me to create this DIY project.
In this guide, I’ll walk you through the process of creating a high-tech water gun using readily available materials like brass threaded BSP water pipes, latex rubber tubing, and an Arduino.
I also hope that you'll take this basic design and add your spin or customization to make it truly yours. Whether you enhance the power, modify the aesthetics (it surely could use some LEDs), or integrate new features (sound effects?), with creativity, you can turn this project to be truly yours.
Let's get started on this!
Supplies
Electronics
- MOSFET module
- Arduino Pro Mini
- 5-35V 5A boost module
- 12V RC battery
- 24V solenoid
Connectors and Wiring
- XT60 connector
- Faston terminals
- Pin connectors
- Wires
Switches
- Switch for battery - mine is scavenged from an old copy machine
- Firing selection switch - this one I scavenged from an old microphone
Mechanical Parts
- 5mm metal shaft
- Screws and fasteners
- Rubber latex tubing (16x3 or 10x5)
- 3x 10x1,5 oring for the piston
3D-Printed Parts
- Custom piston
- End cap
- Enclosure for electronics
- Nozzle
Piping
- 2x 1/2" check valve
- 1/2" male T-fitting (outer threaded)
- PPR pipe 20mm (ID 13.6mm)
- PPR extension tube
- 1/2" to 1/8" reducer
- 1/8" male T-fitting
- 1/8" hose fitting - for the bladder
Types of Water Guns
Before diving into the construction of our DIY water gun, it’s a good idea to understand the basic types of water guns available on the market. Each type has its unique mechanism, set of advantages and can be electrified. By exploring these, we can effectively decide on the best design for our project.
Air Pressure Water Gun
This is one of the most common types and often looks like an alien weapon from the "Mars Attacks!" movie. These water guns use a manual pump to pressurize air inside a reservoir. When the trigger is pulled, the pressurized air forces water out of the nozzle. While the design is relatively simple it is not so easy to manufacture in DIY conditions. Moreover, the pressure tends to drop with each shot, leading to inconsistent performance.
Piston Pump Water Gun
This type uses a piston pump mechanism to manually force water out of the nozzle with each pump and is the king of every pool party. The key advantage here is the high output with each pump, eliminating the need for pressurization. However, the downside is that it requires continuous manual pumping and has a small reservoir in comparison to other types...can we use it as a part of this project?
CPS Water Guns
Finally, we have the Constant Pressure System (CPS) water guns, a game-changer in water gun technology (since 90'). CPS water guns use a rubber bladder that expands as it fills with water. The elasticity of the bladder maintains consistent pressure. This design addresses the main issues found in air pressure and piston pump water guns, providing a great range and consistent performance.
Choosing the CPS Design
After considering the various types of water guns, I’ve decided to base my DIY water gun on the Constant Pressure System (CPS) design. High-performance water guns like the Spyra and similar advanced models also utilize this system.
How It Works
Our CPS water gun design relies on a series of water check valves and a manual pump. Here’s a step-by-step breakdown of how the system operates:
When the pump handle is pulled back (fig a), it creates suction. This draws water into the system, through the first check valve. This valve prevents water from flowing back when the pump handle is pushed forward.
As the pump handle is pushed forward (fig b), it forces water to move through the T-fitting to the next section. The water then passes through another check valve, ensuring that water won't return to the pump during the next pullback.
The water flows into the latex tubing, which acts as an expandable bladder. As the tubing fills, it stretches and builds up pressure. From the latex tubing, water has only one way to escape, which is through the barrel of the water gun. When the trigger is pulled, the pressurized water is released through the nozzle.
I chose a manual pump over an electronic one because, in my experience with commercial electric water guns, the loading process is often slow and quickly drains the battery. With a manual pump, you can load the water gun as fast as you need with a little bit of elbow grease. Additionally, the manual pump is cheaper and eliminates concerns about battery life. For this build, the battery will only power the control of the shooting valve.
Finally a Building Phase - the Piping
Given the limited selection of plastic tubing and pipes available where I live, I am using BSP brass fittings for this project. These fittings can withstand greater pressure than plastic ones, but they are pricier.
To properly fit the brass fittings, I first cleaned them thoroughly to remove any potential debris, which helped create a better seal. Next, I used PTFE (polytetrafluoroethylene) tape, also known as plumber’s tape, wrapping it around the male threads of each fitting. Holding the fitting in one hand and the tape in the other, I wrapped the tape in a clockwise direction, the same direction the fitting will be screwed in. I applied 2-4 layers of tape, ensuring the threads were well-covered.
I then hand-tightened the fittings initially to ensure they were correctly threaded and in the right orientation. Once the fittings were hand-tight, I used water pump pliers (but an adjustable wrench would be better) to further tighten them, being cautious not to overtighten to avoid damaging the threads or fittings.
With the piping assembled, we’re ready to move on to integrating the water pump!
Pump
Initially, I used a modified cheap piston water gun to act as the pump. To connect it to the BSP fittings, I 3D printed a threaded part and epoxy glued it to the water gun. While this setup worked initially, the transparent tube of the piston gun always cracked when in use. After the third failure, I decided to build my own sturdier pump.
I constructed the new pump using a PPR water pipe and a 3D-printed piston. Choosing the proper O-ring for the 3D-printed piston was particularly challenging, as it needed to provide a perfect seal while allowing smooth movement. After some trial and error, I found the right size for the O-ring.
The piston features an M8 inner thread for the piston pin. The piston pin can be a threaded rod or an aluminum rod with a tapped end. Before plunging the piston in the pipe, I properly greased it with Vaseline.
On the piston end of the pump, there is a custom cap I modeled and 3D-printed. On the other end, we need to think of a way, to connect our custom pump to 1/2" thread, to fit the fittings...
Custom Pump Interface
I welded a PPR pipe extension to the other end of the newly created pump. For this, I used a special tool for welding pipes, which I had to borrow. The extension is slightly smaller in diameter than the 1/2" BSP fitting. To connect it, I used a makeshift tap: I modified an extra 1/2" fitting with male threads and made grooves in the threads with a Dremel tool. By heating the PPR pipe with a heat gun to soften it, I was able to cut new threads into the extension. I didn't thread it all the way to the end, allowing the fitting to force its threads into the plastic, ensuring a leak-free connection.
For anyone looking to replicate this, I've enclosed the STL file for the piston and the cap. This custom-built pump offers a more durable and reliable solution for our CPS water gun. Now that the pump is ready, we can move on to the bladder.
Bladder
For builds like this, people often use McMaster-Carr to purchase all the required soft latex rubber tubing. However, this e-shop is not available in Europe, so I had to find an alternative. Initially, I found locally sourced latex tubing for exercise, which is basically 10x5 mm latex tubing, sold under a brand name at a higher price.
I tried using this exercise tubing, and while it worked, the performance was not as powerful as I had hoped. I needed a better option, so I turned to Aliexpress and similar sites. I initially searched for latex tubing, and the results were less than satisfactory. Later I discovered that latex tubing is also used for spearfishing, and the selection for this product was extensive.
After some research, I ordered the thickest tubing I could find: 16x3 mm latex tubing. This tubing provided the necessary pressure for our CPS build. My only concern was how to connect latex tubing with a 3 mm hole to 1/2" piping.
Stretching Tubing Onto Piping
Fitting the bladder onto the piping was a challenge due to the unavailability of brass hose adapters. The only available options were nickel-plated, and using different metals in one water system could cause rusting and other issues, potentially clogging the gun after extensive use.
To overcome this, I decided to make my custom adapter by drilling and tapping a hole into a brass end cap fitting. Then I drilled through a brass screw, creating a threaded tube. To ensure the screw was drilled perfectly centered, I fastened it into a drill press chuck and secured the drill bit in a vise. This setup allowed me to drill the screw accurately in the center. I later tried this with a cordless drill, and it can be done as well, but it is much more demanding. Screwing this threaded tube onto the tapped fitting effectively made a hose adapter, and this improvised solution worked well.
Encouraged by this success, I began experimenting with fittings for multiple bladders, hoping to increase the water gun's power. The resulting multi-bladder fitting looked like some kind of artificial muscle, which was quite cool. However, when filled with water, only one of the bladders stretched and filled, because it had lower resistance to pressure, preventing the others from filling.
Through this experimentation, I discovered that the diameter of the hose adapter and other pipe fittings significantly impacts the system's pressure and overall effectiveness. After some quick research, I realized this relates to the Bernoulli principle, which states that:
An increase in the speed of a fluid occurs simultaneously with a decrease in pressure or a decrease in the fluid's potential energy. (Wikipedia)
In other words - correct diameters for fittings increase the pressure needed for powerful water discharge.
With this knowledge, I changed the design, adjusting the upper part of the flat H piping to a smaller diameter to make the whole system more effective. I also found suitable hose adapters for this size of piping. For the upper part of the build, I chose a 1/8" pipe fitting. Next, let's tackle the final piece of the puzzle: integrating the solenoid valve for precise control over our powerful water blasts.
Putting It Together
After assembling the piping, fitting the bladder, and building the pump, it's time to connect these components to form the core of our CPS water gun.
First, I connected the custom pump to the main piping system using PTFE tape just to be sure. I attached the latex bladder next, to the appropriate fittings, and fastened it with zip ties. Finally, I checked for any leaks or loose connections.
With all of this assembled, I tested, if the pump was powerful enough, to fill the spearfishing bladder. It was!
Store Bought Solenoid Valve
For the solenoid valve, I ordered a 1/2" Normally Closed Plastic Solenoid Valve 12V from Aliexpress. It fits nicely into the brass fittings and seemed like the perfect candidate to be controlled by the Arduino. However, after some tests, I discovered that this valve dramatically lowered the range of the water gun.
After disassembling the valve, I found that the internal path, the water had to take, significantly reduced the pressure. When I decided to use smaller diameter fittings for the upper part, It became clear that the store-bought solenoid valve would not work for this build.
Determined to find a solution, I decided to design and 3D-print my custom valve, inspired by the nozzle and valve mechanism used in the original Spyra water gun. I hoped this custom solution could maintain the pressure and optimize performance.
And that's what I am gonna design in the next chapter, where I dive into the details of designing and building a custom valve.
Analysis of the Spyra Solution
To design a custom nozzle, I first researched the original Spyra gun's mechanism. I found out that it uses a solenoid with a thin section, that features a drop-shaped rubber coating at the end to clog the nozzle. This clogging mechanism creates its signature machine gun-like bursts. Inspired by this, I decided to replicate the system using a scavenged solenoid from an old copy machine...
Custom Nozzle With Built in Valve
Using Fusion 360, I designed a similar nozzle with a clogging system. Instead of a thin wire, I used a 5mm rod. To ensure the nozzle was waterproof, I incorporated O-rings into the 3D-printed design and created a custom G-code to insert them during printing. The 5mm shaft was then ground to a point and coated with silicone caulking. The clogging mechanism functioned correctly, but the nozzle's performance was not satisfying.
With weaker sport bands, the water shot out but quickly shattered into drops. Stronger spearfishing bands caused the gun to spray water like a sprayer, lacking any range. Further research revealed the importance of nozzle design principles. I discovered that nozzles are crucial in various applications, not only garden hoses and pressure washers, but even spacecraft have to have their special nozzles, just like jets or industrial CNC water lasers. All of these must be designed to manage fluid dynamics, using special formulas.
Using the appropriate formula, I redesigned the nozzle for our CPS water gun... but how to calculate these?
Downloads
Calculating the Nozzle
After my research, I found out that a converging nozzle is the right choice. It accelerates water flow and increases pressure as the water exits. This design transitions the water from a larger to a smaller diameter and with the right dimensions, it makes shoot range longer, instead of making a sprayer.
I first measured the piping with my cheap digital calipers and used these values, to calculate proper dimensions for these calculations.
Nozzle Design Formula
To calculate nozzle design we need four variables.
- Initial Diameter (D1): for this project, this is the inner diameter of the upper piping.
- Exit Diameter (D2): the hole at the end of the nozzle, sets the thickness of our water stream.
- Length (L1): the length of the cone-shaped part.
- Length (L2): the length of the exit diameter part.
Calculation
For this specific case, the numbers are:
- Initial Diameter (D1): 5.9mm
- Exit Diameter (D2): calculated as one-third of the D1, so 5.9mm/3 = 1.97mm
- Length (L1): 2 times D1, 5.9mm*2 = 11.8mm
- Length (L2): one to two times the exit diameter, I used 3mm.
I used these values to design a nozzle in Fusion 360. Now, to move things around...
Electronics
To give this water gun multiple shooting modes - a continuous stream, rapid bursts with adjustable burst cadence - I decided to use an Arduino Pro Mini.
Why Arduino?
The Arduino Pro Mini allows for easy implementation of these features. To control the solenoid valve, the Arduino is connected through a MOSFET, as its digital pins can't provide enough current to drive the solenoid directly. The MOSFET acts as a switch, enabling a higher current from an external power source to flow to the solenoid when activated by the Arduino. I used a MOSFET module from a previous project to avoid soldering.
Powering the Solenoid
The solenoid requires 24V to operate, so I used a 5A voltage boost converter to step up the voltage from approximately 12V to 24V. This converter ensures a stable power supply and displays the battery voltage on a digital display - something Ellen Ripley would be proud of!
Enclosure and Connections
I 3D printed an enclosure with holes specifically designed for all the components. To avoid soldering and allow for easy adjustments, I crimped all the cables and connected the components using FASTON terminals and pin connectors. The box has screws for + and - power, and all components that need 12V connect to this. I added an on/off switch between the battery + wire and the + screw to turn the electronics off when needed.
For shooting modes, there's another on/off switch connected to the Arduino. I used an old computer switch as the trigger pushbutton, which conveniently already had the right connector for the Arduino.
I've attached the Arduino code file for this project.
Putting It Together II
With the core components connected, it's time to assemble the nozzle, pipes, and electronics.
First, I attached the custom-designed nozzle to the end of the upper part of the piping system, ensuring the connection was secure and leak-free. To further secure the nozzle, I added a water balloon around its protrusion. Although there were no leaks, I wanted to protect the solenoid, so I added the blue balloon just to be sure.
Speaking of the solenoid, I added a metal plate from an old copy machine. I drilled holes in it and secured it to the piping with zip ties. These holes also allowed me to fasten the solenoid with screws.
Next, I connected the electronics. I secured all the components in their designated spots within the 3D-printed enclosure, double-checking all connections to ensure they were tight and properly insulated. Finally, I performed a quick test to make sure the electronics controlled the solenoid valve correctly, switching between stream and burst modes as programmed.
Electronics Test
Here's a quick video demonstrating the solenoid in action, controlled by the Arduino. It works! Yay! I chose rubber bands to help the solenoid return to the correct position because they are easier to source than springs. Plus they won't rust.
Batteries
To power our CPS water gun, I decided to build a 12V battery pack using 18650 cells scavenged from an old laptop battery. This approach was cost-effective, though not the safest.
I carefully disassembled the old laptop battery with a plastic pry tool and extracted the 18650 cells. Using a multimeter, I measured the voltage of each cell and selected those with similar voltages to ensure balance. I grouped and charged the selected cells to have the same capacity.
To avoid spot welding, I used a plastic 18650 battery holder for three cells. This allowed me to connect the cells without welding. I placed the balanced cells into the holder and added a 3S Battery Management System (BMS) bought from Aliexpress to ensure even charging and discharging, protecting against overcharging, over-discharging, and short circuits. I soldered and glued the BMS to the holder, connecting the positive and negative terminals and the balance leads according to the wiring diagram. After soldering, I secured the connections with hot glue and wrapped the pack with shock-absorbent foam and PVC shrink wrap.
This process created a functional 12V battery pack, though it's not the safest method. For a more secure option, consider purchasing a store-bought RC battery designed for submarines and boats, which includes built-in safety features. Ultimately, I used one of these RC batteries for reliability and kept my custom pack as a spare.
Finishing Touches
I installed a drain pipe around the bladder to prevent it from wobbling around.
On this drain pipe, I fastened the electronics box and RC battery to keep it as far away from the water source as possible. This setup minimizes the risk of water damage to the electronics. The drain pipe is attached to the pump with 3D-printed parts, which are secured with zip ties for added stability.
Downloads
Final Tests
With the CPS water gun fully assembled, the final tests were impressive. The gun delivered a powerful, consistent stream, and the rapid burst mode worked flawlessly. With the weaker latex tube, the range was about 5 meters (16 feet), and twice as much with the spearfishing band.
Testing the water gun with friends and kids was a blast. The water battle brought back childhood memories, and we all had a fantastic time. The only issue was the lake water. The gun happily ingested impurities and small rocks, clogging the 2mm nozzle. A strainer could help, but using tap water only is safer.
Throughout this project, I learned a lot about fluid dynamics, nozzle design, and problem-solving. There were moments of frustration and doubt, but overcoming these challenges deepened my understanding.
This project wasn't just about creating a water gun—it was about rediscovering the joy of making, learning, and playing together.
Future Plans and Improvements
There are always opportunities for improvement. Here are some ideas I may implement in the future:
Improved Clogger Design
While copying the original Spyra design was a good starting point, I've learned that effective engineering often involves simplifying where possible. My goal is to redesign the clogging mechanism to eliminate the need for a protruding shaft. One of my ideas is to use a spring-loaded, rubber-coated magnet inside the nozzle and an electromagnet on the outside to control the water flow instead of a solenoid.
Adding a Stand or Feet
Another useful improvement would be to add some sort of feet or stand. This would stabilize the gun when you're pumping and have it submerged in water for reloading. It would make the pumping process easier, especially during intense water battles.
Measuring Bladder Capacity
A great feature to add would be a way to measure how full the bladder is, to prevent bladder overfill and/or explosion. The bladder could be screwed onto a 3D-printed plug on the opposite side of the piping connection. This plug could use cheap digital calipers or a similar mechanism connected to the Arduino, displaying the fill level on a segmented display. Alternatively, a non-digital version could involve a cutout in a drain pipe to see the actual bladder's fill level.
Battery Sensing with Arduino
Another enhancement would be to read the sensing wires of the RC battery with the Arduino. This would add real-time monitoring of the battery's voltage, displaying this information on the segmented display. This feature would help ensure the battery is operating within safe parameters, we could even notify users when the battery needs recharging.
Utilizing the first Check Valve Thread
The check valve has a screw that could be utilized for expanding the gun's water capacity. For instance, the user could wear a backpack with a canister full of water or a CamelBak, with a hose connected to the check valve. This setup would significantly increase the gun's water capacity, allowing for longer use without needing to refill.
Last Words
Thank you for joining me on this journey to create a high-performance CPS water gun!
I hope this guide inspires you to start (and finish!) your own DIY projects. For more interesting projects and updates, including a video of this water gun in action, check out my YouTube channel. Thank you for your time, and happy building! 😉