DIY Bookshelf Speakers

May - July 2020


First, a small disclaimer. The world of DIY speakers is an endless rabbit hole where the sky's the limit in terms of both the knowledge that is available and the money that one can spend on components. Many internet sources on DIY speakers will recommend to start with a "proven design," where an experienced designer has specc'ed out all the components for a particular build. There's a lot to learn taking such a proven design and simply putting it together.

My design is based on the Overnight Sensations, a bookshelf speaker design by Paul Carmody. His blog page on this design was a valuable resource for important specifications like length, size, and electrical schematics. Also note that my build was not perfect and I will have notes on what I would do differently next time.


My first step was to build the box, or cabinets, that the drivers would be installed into. Most speaker building blogs recommend MDF as the material since it is readily available and acoustically damp, meaning it won't interfere with the sound of the drivers.

I knew I wanted to machine all the panels for the cabinets using a CNC router, so I needed a 3D model of the cabinet panels, which I have done here in Fusion 360.

Here I laid out the panels and programmed toolpaths for the CNC router to cut the panels, using the Fusion 360 Manufacture environment

Here I cut the panels using a CAMaster CNC Router. I couldn't cut all the way through so I had to cut through the rest manually and then flush trim the edges.

Here I ran into a problem. I forgot that the bed of the CNC router was not flat relative to the its axes, so all the rabbets turned out skewed and not the correct depth.

I thought of a quick fix. I cut a pocket into a piece of scrap wood that I could sit the panels into, making a fixture plate. Then I could run an operation to cut the rabbets again to the correct depth.

And here is the result. Because the panels were sitting inside the pockets, which had already been cut by the router, they were flat relative to the cutting bit and the rabbets turned out flat.

Here's what the cabinets look like assembled. The rabbets really help everything to go together easily. I simply glued them together with some wood glue and plenty of clamps. One mistake I made was I glued on the back panels, when I meant for them to be removable. It was simple to cut the back panels free with a bandsaw, however.

Front Panels

One of my panels had a void in it, which I had to fill in for the cabinets to be properly sealed. I taped off the bottom with some packing tape, taking care to smooth it out carefully. Then I filled in the void with some epoxy resin, which I dyed black with some acrylic paint.

After waiting 3 days for the curing process, I was quite pleased with the result.

I also cut the panels on the CNC router. Like before I had to cut them free and trim the edges manually, as well as cut through the holes where the drivers would be installed. I also added rabbets to the driver holes so the drivers would sit flush and be well secured

I could do a quick test fit of the front panels to the cabinets. Here you can also see I painted the cabinets white and black. More on that below

A Quick Rant on Painting MDF

If there's one thing that I sunk way too much time into, it was painting the MDF cabinets. I was trying to use the spray paints we had in our campus makerspace but most of them were empty or not the right kind. One thing I should've done even prior to painting the cabinets was sealing the cut edges with some diluted wood glue. Specifically the parts of the left and right panels that show through the top. Since those edges are cut, they no longer have the sealant on them from the factory, and they absorb paint differently. Because I didn't seal them, I instead had to lay down lots of coats of primer in an attempt to cover them up, otherwise the seams were visible. After priming the cabinets, I was trying some of the paints we had in our makerspace, but they weren't laying down uniformly or densely enough. I ended up buying my own semi-gloss black and white paints, which I then sealed with a semi-gloss clear coat.

Cabinet Assembly

I could finally glue the front panels onto the cabinets. I also added a chamfer to the front edges. Finally seeing everything come together, I was happy with the way it was turning out!

Here I oiled the front panels with some mineral oil and glued them onto the cabinets. It never gets old seeing the wood grain come to life when adding finish, especially oil.


The crossovers are electrical circuits that divide the incoming sound into two sets of frequencies. The lower frequencies go to the woofer driver, and the higher frequencies go to the tweeter driver. This way, each driver is only producing sounds that are within it's frequency range, and the overall sound quality is superior than using one driver to cover the entire frequency range.

I laid out the crossover components on some perfboard and soldered them together according to the schematic found online. It's especially important to place the inductors (the ones that look like copper coils) orthogonal to each other such that their axes don't intersect. Doing this reduces any chance of crosstalk, which is when the inductors' magnetic fields interfere with each other's electrical signals.

Here is the underside of a crossover board. I labeled the solder nodes according to what component connected to it, which was a big help when adding the wires.

Finishing Touches

Here I prepared the port tubes that install into the back panel. I glued them to the correct length using some hot glue.

On the back panels, I cut the appropriate holes for the port tubes and installed the banana plugs, which are a bridge between the internal wires and external wires of the speakers. I also added some poly fill stuffing at the recommendation of some other builders, which I secured with a bit of hot glue. This apparently improves the lower frequency response.

After installing the drivers, screwing on the back panels, and finishing the wiring, the speakers were finished! All that was left was to wire them up to my amplifier on my desk.

And here they are on my desk! After plugging them in, I was super happy with how they sounded. They had a rich sound quality, enough bass without being overpowering


Funding for this project was provided by the Invention Studio at Georgia Tech student organization and the project was built in the Flowers Invention Studio space