by nothinglabs, published
Use This Project
Give a Shout Out
If you print this Thing and display it in public proudly give attribution by printing and displaying this tag.Print Thing Tag
More info and demo -Video- for this project at:
3d print your own speaker enclosures!
This OpenSCAD / Customizer script lets you:
- Generate a box of any desired volume / ratio / wall thickness
- Determine optimal sealed box size for any driver using Thiele / Small parameters (Qts, Vas and Fs)
- Include cutouts for speaker / terminals (and screw holes)
- Include a bass port of any dimensions
With a wide variety of inexpensive full-range drivers - you can easily 3d print a set of speakers that sound great.
Note: If running locally - you'll need HarlanDMii's Write.scad library: http://www.thingiverse.com/thing:16193
Polyfill from fabric store (highly recommended)
Loudspeaker Enclosure Design in 30 seconds
SpeakerGen provides a built-in tool that can automatically create an optimized sealed box for your driver's parameters.
Speaker drivers' acoustic properties are described using "Thiele/Small" parameters (Qts, Fs and Vas). You can use these parameters to help determine what kind of box will work well for your speakers.
Sealed boxes are the simplest to design with primarily one variable: size. They are also very flexible. A speaker driver that sounds good in a 1.0 sealed liter box probably sounds pretty decent in a 1.25 sealed liter box.
A sealed box / driver system is acoustically described using a number of parameters - an important one being "Q." A box's Q describes behavior around its resonance frequency - and hence helps dictate F3 value (bass frequency with a 3db drop in response).
Sealed box speakers commonly have Q values in the 0.7 to 1.4 range. The Q of a sealed enclosure system will always be larger than its driver's Qts.
The Q of a box decreases as its size goes up - and vice versa.
A Q of 0.7 provides the lowest possible F3 value - and by that argument is the optimal value for sealed speaker design. That said - accepting a larger Q value (say 0.9) allows of a significantly smaller box - with only some loss in bass response. Larger Q values still (say 1.4) result in a further loss in low-end response - but also introduce an upper-bass response peak - which can result in a boomy sound.
SpeakerGen uses some simple math to estimate what box size a given driver needs to obtain a certain Q value - and what F3 frequency that will result in. It works similarly to other online closed box calculators - such as this one:
"Ported" boxes utilize a tuned port to enhance bass response (aka bass reflex, vented, etc.). These boxes are more finicky to design - and aren't too hard to get "wrong" (thin bass, boomy bass, etc.). Diameter and length of the port need to be calculated with a moderate degree of precision - otherwise things can go very badly (don't guess).
Ported boxes tend to be larger (and hence take longer to print). However - they can significantly extend the bass range of smaller full-range drivers - which can make them a good choice for a 3d printed single-driver system.
SpeakerGen can easily produce a speaker box including a bass port of any specification you can print. However - since the math is a bit trickier - I'm leaving it up to other people who know better. To determine the correct dimensions for your vented box and bass port - check out these resources:
Print Tips / Pictured Speaker
The pictured speaker uses an AuraSound NS3-193-8A in a 1.7 liter enclosure with a bass port tuned to 70hz. This provides a calculated F3 frequency of 66hz - not bad for a 3" driver! It sounds great - but falls off a bit over 12khz - so treble adjustment is recommended.
The speaker box weighs about 1lbs - and took about 17 hours to print.
For my first attempt - I printed a box at 10% infill with only 2 shells. The speaker sounded OK - but subjectively seemed a bit flimsy.
For my second print (the one pictured) - I used 20% infill and 3 shells. This produced a solid feeling speaker cabinet. I think these are reasonable settings for smaller speakers (maybe under 1.75 liter). Larger speakers may do better with more infill / thicker walls.
Both prints were at 300 micron with 7mm walls. The inside top of the first print came out a little flimsy feeling (I believe due to having to "bridge" such a large area). For the second print I increased the floor and ceiling thicknesses from the default 0.8mm to 1.5mm - this seemed to address the issue. My gut is this might not be needed for a 200 micron print.
There are lots of great full-range speakers available on parts-express.com in the $10-30 range. A few good candidates:
Cabinet assembly is pretty easy! Jut use wood screws to mount the speaker. Be careful not to over-tighten to avoid cracking. If the screws seem difficult to screw-in - try chasing out the holes with a drill bit.
Stuffing your cabinet with "polyfill" is highly recommended as it can reduce resonances - and slightly increase the effective size of your enclosure.
Upgrade this Thing with Thingiverse AppsCustomization
Edit, personalize, or revise this Thing
SpeakerGen by nothinglabs is licensed under the Creative Commons - Attribution license.
What does this mean?
- You must attribute (give credit) to the creator of this Thing.
- Remixing or Changing this Thing is allowed.
- Commercial use is allowed.
Show Some Love
Say thanks by giving nothinglabs a tip and help them continue to share amazing Things with the Thingiverse community.Tip Designer
We're sure nothinglabs would love to see what you've printed. Please document your print and share a Make with the community.
To post a Make simply visit this Thing again and click I Made One to start uploading your photo. It’s even easier to post a Make via the Thingiverse Mobile app (available via Google Play and Apple App Store).