3D Printed Light Saber With Arduino Powered Sound (files Included)
by Jackbraun11 in Circuits > Arduino
1735 Views, 10 Favorites, 0 Comments
3D Printed Light Saber With Arduino Powered Sound (files Included)
I was never able to find a good tutorial when I was working on this project so I figured I would create one. This tutorial will use some files from 3DPRINTINGWORLD and some parts of the code came from JakeS0ft
Things you will need:
1. A 3D printer of some kind (I used a CR-10)
2. A soldering Iron
3. Arduino Nano
4. MPU-6050 6-axis Accelerometer Gyroscope Sensor
5. Adafruit Audio FX Sound Board + 2x2W Amp - WAV/OGG Trigger -16MB
6. 1.5" 4Ohm 3W Full Range Audio Speakers
7. One small-ish in diameter metal rod
8. Copper wire
9. Drill and drill bit close to the diameter of your metal rod
Start Printing
Lets start by printing the blade, hilt, and cap. They will take upwards of 30 hours and they print well with a 1mm nozzle. After bringing the files into Cura I noticed that they were too small for what I wanted to do.
be sure to print the Hilt and Blade at 150% scale and the Cap at 2540%
This is critical. Do not forget to scale them or the Arduino will not fit. The lightsaber will be cut down to about 9 1/8" so if you want to save time you can stop the print when it reaches that height.
Arduino, MPU-6050, and Adafruit Wiring
You have some freedom when it comes to wiring, if you plan on using the attached program then I recommend following my pin out. This will (hopefully) allow your setup to be relatively close to plug and play. I recommend waiting to solder on your 9v connector so that you can slide in through the hole in the bottom of the cap.
Genera Tips for this step:
- Test the circuit before you solder it
- Take your time when soldering
- Remember this all must fit into the hilt later on
I was dissapointed with how quiet it was so I cut the G1 bridge on the Adafruit sound board. I have not experienced any problems after doing this but it could lead to problems if the wrong speakers are used or if the soundboard gets overwhelmed.
Coding
Adruino Nano
I won't go into too much detail about how the program does what it does but I will share this flow chart with you. Once you've downloaded the program, plug in your Arduino Nano and upload the program.
Adafruit Soundboard
There isn't any coding involved with the soundboard. All you have to do is upload your sounds to the board by plugging it into your computer. The files are triggered by their names. We have used the pins 0 and 1, this means you would want your sound files to be named T01.wav or T01RAND0.wav if you plan on having multiple random sounds. I originally attached the 0 pin for a constant "hum" sound but ultimately ended up deciding against it. DO NOT USE PIN 0 AS YOUR TRIGGER unless you plan on going into the code and changing it.
Here is a PDF explaining more about the Adafruit soundboard + amp
Downloads
Prep for Assembly
You are ready for assembly if you have:
- A printed hilt
- A printed blade (cut to 9 1/8")
- A printed cap containing your Adafruit soundboard, Arduino nano, and MPU-6050
- A 9v battery
- A drill
- A small metal rod
- hot glue
Drill Holes for Metal Rod / Acoustics
Drill a hole that goes through one side and part of the way through the other. This is where you will insert and cut your metal rod to size. This ensures that the light saber blade will not come down and crush the electronics you spent so much time soldering. I find a dab of hot glue works well enough to hold the rod in place.
I recommend drilling several holes around the base of the hilt to allow sound to escape. It definitely makes a big difference.
Enjoy and Improve!
This is your finished product, all you have to do is hook up a 9v to your Arduino nano and you're ready to go
There are plenty of ways this could be improved, including a dedicated spot for the battery, louder speaker(s), and smaller form factor to name a few.
As always if you guys and gals have any questions or concerns please comment and let me know. I will try to make sure the links stay active and that the program is up to date.