Introduction: Nerf Ballista

Have you ever wanted to DOMINATE your opponents in the Ancient Roman style with the power of foam darts? Well look no further. Conquer your classmates or coworkers with this (unofficial) Nerf Ballista!

This Project was created by Jaden and Jerry, both students of Ms. Berbawy’s Principles of Engineering class at Irvington High School. This project would not have been possible had it not been for the resources and assistance provided by Ms. Berbawy and Berbawy Makers.

Shoutout to American Foam and his Nerf Stryfe LiPo Mod Guide! Though we did not follow his guide exactly, it taught us a lot about how to wire our design and the inner workings of flywheel Nerf launchers.

All files from this project are available on GitHub.


Paragraph for Remake It Contest:

Ballista-style foam dart launchers are epic, but traditional ballista designs suffer greatly in firepower due to being limited to one measly projectile at a time. In the modern era of foam flinging, that just won’t fly (no pun intended). As a result, we have created the new Nerf Ballista, a redesign that is capable of launching darts in quick succession, granting it far more firepower.

Supplies

Tools:

M2 Hex Screwdriver

Bambu Lab P1P

Soldering Station (soldering iron, fan, tip tinner and cleaner)

Hair Dryer or other similar device that produces hot air


Supplies:

Out of Darts (OOD) Kraken 130 3s Neo Motor

Slider Switch

XT60PW Male Connector

XT60 Female Connector

OOD Flywheel Motor-Spanning Board with Motor Shims

Stranded Core wire

Lead Solder and Flux

Bambu Lab PLA Basic and PLA Matte

Worker Metal Flywheels

Butcher's Twine

9V Battery

M2 Hardware (countersunk is optional besides the M2 x 25 mm):

  • (2x) M2 x 25 mm screws
  • (2x) M2 x 20 mm screws
  • (2x) M2 x 16 mm screws
  • (4x) M2 x 12 mm screws
  • (4x) M2 x 6 mm screws
  • (10x) M2 Hex Nuts

LEGO Parts:

  • (4x) Technic Bush 1/2
  • (4x) Technic Bush
  • (2x) Technic, Liftarm, Modified Stud Connector Thin 1 x 4
  • (2x) Technic, Axle 1L with Friction Ridges
  • (2x) Technic, Axle and Pin Connector Perpendicular
  • (2x) Technic, Pin Connector Round 2L with Slot (Pin Joiner Round)
  • (1x) Technic Axle (9L or longer)

Step 1: CAD Flywheel Cage

For the flywheel cage, we took a model of a Nerf Elite Stryfe flywheel cage from Grabcad, and modified it to be symmetrical. The original version was asymmetrical, which would not really cause any functional problems, but for aesthetic purposes, we replaced the left half with a mirrored copy of the right. We also changed the original circle cutouts for the motors to be a much better fit for our OOD Kraken 130 3s Neo motors. If using other motors, be sure to check the dimensions and ensure that they will be compatible with our cut outs. Make adjustments if necessary.

Step 2: CAD Other Parts

We CADed all of these parts from scratch, with little reference to outside resources.

Our Arm and Gear pieces were by far the simplest to CAD, being only simple extrusions of 2D sketches. The Arm only has one added layer of complexity, which is the notch added on the ends of both arms for the drawstring to be tied to. These Arms and Gears are not actually held onto the frame using rigid connection points, but rather held on by friction with twisted strings, creating a torsion spring mechanism.

The battery fits into the Frame, which is also what the torsion mechanism is assembled onto through the circular holes located on both the top and bottom of the Frame. The Frame also includes hex nut cut-outs to fit the Flywheel Cage and Front Tray. We added a 3D wooden texture on the top for aesthetic purposes (who likes a boring design?).

The three tray pieces all slot together using male and female connecting ends, screwed together with hex nuts (hidden in hex inserts) and screws. The Front tray piece features two protruding tabs, as a cut-out to house our switch, and another small cut out at the front of the Front Tray to prevent interference with our electronic components. The Middle Tray piece only has a male and female end, nothing fancy here. The Back Tray piece has a hole that is made for a Lego Technic axle to fit and rotate in (see below for how we designed the crank with LEGO).

We designed all of our parts to be assembledwithout the use of glue, so the ballista can be taken apart and broken down for easier storage. For example, we designed male and female connecting pieces so that the tray pieces can all screw together with hex nuts and screws.

Do note that our switch cutout is specific to the switch we used, and your switch tabs and size may vary. Check your dimensions and make adjustments as needed.

Also, neat documentation of your design process will help greatly in troubleshooting any issues you encounter.

Step 3: CAD LEGO Crank

Due to the relative complexity of a cranking mechanism with a rotating handle, we opted to design this not with conventional CAD, but with LEGO CAD on Bricklink Studio 2.0. The purple brick is a stand-in for our Crank Tray piece. This design is mirrored on both sides, so the required parts are 2x what is shown in the picture, except for the axle.

Step 4: 3D Print

We used a Bambu Lab P1P with Bambu PLA Basic filament, and all of our slicer settings are from their Bambu Studio Slicer program. Your quality and speeds may vary with other printers and filaments. Check screenshots for orientation when printing.

Print Settings:

Frame: Default Settings, Bambu PLA Basic, 0.08 Layer height, no supports, no brim

Flywheel Cage: Default Settings, Bambu PLA Matte, 0.12 Layer height, Supports on Build Plate Only, no brim

Front Tray: Default Settings, Bambu PLA Basic, 0.12 Layer height, Tree Supports, auto-generate brim

Back Tray: Default Settings, Bambu PLA Basic, 0.12 Layer height, Supports, auto-generate brim

Middle Tray, Arms, Gears, Pusher Piece: Default Settings, Bambu PLA Basic, 0.12 Layer height, no supports, auto-generate brim

Step 5: Assemble Electronics

Follow the pictures in order

We soldered the XT-60PW connector onto the spanning board as shown.

Next, we screwed both motors into the flywheel cage with four M2 x 6 mm screws, making sure the motors’ positive and negative pins correspond to the symbols on the spanning board in the orientation shown. For our motors, a red dot indicated the positive pin. We then attached the flywheels, hollow side down, by pushing down hard with our thumbs. Since this requires some force, you may instead carefully use a clamp to squeeze the parts together. Before proceeding, we tested that our motors were able to spin, as pushing the flywheels too far down would cause friction, and prevent them from spinning. We did this by simply touching the terminals of a 9V battery to the pins of the motors.

We soldered the spanning board onto the motors by joining the pins of the motors with the metallic edges of their corresponding holes on the board. Note that the side marked “this side up for most builds” is facing away from the flywheel cage, or down. This allows the XT-60PW to fit nicely between the motors. Then, we attached the XT-60 female connector and pushed it in fully. We tested with alligator clips to make sure we soldered the motors in the correct orientation. They should spin in opposite directions and launch darts fed from the back (flat) side of the flywheel cage forwards. If they do not, check if the motors are spinning in the correct direction, or if the flywheels are on too tight, or not pushed down enough.

Finally, we soldered wires connecting the XT-60 female connector, the switch, and the battery clip or power source. Be sure to use flux: we found that the solder otherwise would not stick to the pins of the XT-60 connector. Out of the two connections to the switch, exactly one is to one of the two center pins. Make sure the positive terminal of the battery clip is connected to the side of the XT-60 female connector marked with a +, and the same for the negative terminal. We have provided a circuit diagram that models the flywheel cage assembly with one motor.

Step 6: Parts Assembly

Follow the pictures in order

We positioned the flywheel cage with the XT-60PW pointing backward. Then, we secured the cage with two M2 x 25 mm screws and two hex nuts on the front of the cage. In our case, this had to come before attaching the first tray piece because the tray piece blocks the XT-60PW from moving into position. The back two screw/nut inserts on our design ended up being inaccessible, but the front two are still sufficient to secure the cage.

We screwed the switch into the front tray piece using two M2 x 20 mm (optionally countersunk) screws. (This step should come after soldering on the wires.) We then clipped the battery on and slid it into the battery cavity. Since it wasn't very secure, we added tape (Velcro also works) on the back of the battery to attach it more securely.

We assembled the crank mechanism onto the back tray piece as shown. The spacer (Technic Bush 1/2) on the central portion of the axle may be replaced with another right-angle axle piece (right of center on the axle) to help the string wind up more neatly.

To assemble the feeding tray, we fit hex nuts into the inserts on each tray piece. If the inserts are too small, as in our case, heating the area with a hair dryer may allow the plastic to bend for more tolerance. After heating and inserting the hex nut, the PLA will shrink around the hex nut as it cools, ensuring a tight fit.

We attached corresponding ends together (screw holes with hex nut inserts) and used two pairs of M2 x 12 mm screws and hex nuts to secure all three tray pieces. The tray piece with screw holes on both sides and the tray piece holding the crank mechanism should be on opposite ends with one middle piece in between. See the final assembly for the correct order.

We screwed the front tray piece into the frame with two M2 x 16 mm screws and two hex nuts, finishing the tray assembly.

Finally, we prepared the ballista for launching darts. We aligned a pair of gears above and below the frame to the string holes on one side. We recommend pinching both ends of the string together and treating it as a new string of half the length. We looped the string down one side, across the surface of the bottom gear, and up the other side, and tied it securely on the surface of the top gear. Then we fit a ballista arm through the slot on the frame and the space formed by the strings. We twisted the pair of gears at the same rate to add enough torsion for the arm to swing back against the frame, and repeated all these steps on the other side.

We clipped the pusher piece onto the tray and fed a string through the front hole of the pusher piece, looped each end through the groove on its corresponding arm, and tied securely.

We looped one end of another string through the back hole of the pusher piece and tied securely. We tied the other end around a right-angle axle piece on the crank. Lastly, we tested the assembly by using the crank to wind up the string. Make sure to adjust the gears so that the arms swing back symmetrically.

Step 7: Fling Foam!

To use the ballista, pull the drawstring back either using the rotating crank, or manually pulling the pusher piece back with your hand (this allows for much faster, but uncontrolled launching of the darts). Flick the switch, and move the pusher piece forward either by rotating the crank in the opposite direction of how you wound it, or if you manually pulled the string back, just by releasing it.

Also, try launching darts at some 3D print-able targets! Files are attached below, and can also be found on our GitHub Repository.

Step 8: Maintenance Tips

To avoid losing torsion power in the strings of your ballista, it is best to de-tension the strings when not in use by untwisting them using the gear pieces. This also allows for easier storage, as the arms can fold back much more easily. Check periodically the strings are not excessively stretched, and if they are, just untie or cut them, and retie new strings. Also, be sure to detach your 9V battery when not in use. Otherwise, the battery may leak while still inside, which will damage the components of the ballista.

Remake It - Autodesk Design & Make - Student Contest

This is an entry in the
Remake It - Autodesk Design & Make - Student Contest