Hacky Headphone Mixer

Every once and a while I come across a problem which has a fairly expensive solution where a much simpler and cheaper one will do. In this post I’m going to try to give a quick summary of one such problem, the project I undertook to solve it, and how I saved around $30 while learning a thing or two about circuitry and product design along the way. I also hope that anyone trying to build a similar project will be able to find this post and gain some info to help them along their way.

What did I need?

In my apartment I have one speaker system and two devices which I use for audio playback: my desktop computer and my Echo Dot. When I wanted to switch between the two devices I’d need to move the speaker input jack manually from one device to another. This practically negated the convenience of controlling my music (which I have constantly playing when I’m home) through Alexa. After some time, I got fed up and decided to begin looking for a solution.

After a quick search, I determined I could solve this problem with an audio mixer which accepts input from two or more 3.5mm headphone jacks and outputs audio through another 3.5mm jack. A quick search of online retailers revealed that I’d have to pay at least around $35 for such a device. All of the devices had features which I did not need (like balance and gain, which I can adjust on my input devices), and many of them used 1/8” jacks rather than 3.5mm, making adapters necessary.

I’m pretty familiar with electronics and circuitry work, but audio signal circuits were something which I was quite unfamiliar with. However, given that audio is transmitted by analog signal over 3.5mm connections I intuitively figured I should just be able to merge the two signals together.

I started doing some research, and quickly came across a number of projects which use amplifier circuits and ICs in order to perform signal mixing (largely for the purpose of controlling the gain of each channel), but remember, the name of the game here is cheap. I wanted to try and get this done with as simple a circuit as possible. So I narrowed my search to include only circuits using passive components. I came across a very helpful Instructable (here) and several posts on the subject (here and here) which all suggested that the passive mixer circuit I envisioned would work just fine, so long as there were resistors on each audio channel going into the mix.

The major drawback of this setup is that as we increase resistance in the circuit we will reduce the output gain (volume) of the mix. Because I am feeding my audio signal into a speaker system with its own built-in amplification circuits, however, this was not at all a problem.

The build

I settled on building a mixer with two 3.5 mm inputs and one 3.5 mm output (just enough for what I needed). I used the following parts and tools for this build:

  • Parts
    • 3 x 3.5mm jacks ($3 for 20 on ebay)
      These come in many different shapes and sizes, so you may need to adjust the case model
    • 4 x 1k Ohm resistors
    • 1 x Screw
    • Wire
    • Solder
    • PLA Filament
  • Tools
    • Soldering Iron
    • 3D Printer

After I received the 3.5mm jacks in the mail, I was able to get to work designing a 3D printed enclosure to encase the circuit and protect it from damage. I constructed a case in two parts: a base which has slots for each of the headphone jacks and a lid which holds the headphone jacks in place (secured using a screw) with a space for the wiring to run. You can find the STL files for the print here.

After the print was finished it was time for the wiring, by far the most difficult part of this project. Each 3.5mm headphone jack needs 3 terminals (though extra pins may be included on the jack): the left + right audio channels, and a common ground.

Image from CircuitBasics

The goal was to pass the signal of each audio channel (left or right from each input jack) through a 1KΩ resistor into a common line to the respective pin on the output audio jack. The ground lines are simply connected by a wire. This is not too difficult to diagram, but soldering it together proved a bit more challenging.

The trick with constructing the circuit is connecting all of the resistors, wires, and pins together without allowing them to contact one another and short out. I quickly began to wish I had left myself a bit more room to work with when designing my case, as it got rather cramped in there. In the end I used a combination of heat shrink tubing and hot glue to insulate the solder joints and strengthen the internal structure against drops or vibration (which the device might encounter while in daily use).

My final circuit looks a bit unruly, but it’s completely functional, and I love it! I screwed the lid on and gave it a test drive…

Concluding Notes

I was a bit worried when first testing the device (remember, I’ve never worked with audio circuitry before), but it worked fantastically on the first try. Additionally, the audio quality is excellent, I have observed no noticeable difference with and without the device.

It’s been 3-4 months now since I first built this prototype, and I still use the mixer daily. It sits on my desk and serves as a really nice reminder that, when I get creative and inspired, I can express myself and build some nifty (and occasionally useful) projects. As I move forward into my Clerkship year of medical school and beyond, I hope to keep making the time to get creative and build something. It’s an outlet of mine that never ceases to satisfy.

Creative Half-Year in Brief Review

It feels like the past 6 months of school have flown by. I’ve dedicated innumerable hours to my studies, and learned such an incredible breadth and depth of medical knowledge in my lectures. I feel empowered to start my work on the wards in the new year. That said, and despite the weight of all of my academic responsibilities, I’ve made sure to take the time to
get creative, express myself, and build some cool stuff.

In a series of posts to come, I hope to tackle my back-log of projects without write-ups. I’ll try to explain a bit about my process and how my work can be replicated.

Highlight: 3D Printing + Hardware Design

On a rainy evening this past summer I found a 3D printer discarded in the trash on a street in NYC. Seeing that it was structurally intact, and being the ambitious maker that I am, I took it back to my apartment, slowly repairing it to good working order. In the subsequent months I’ve learned so much about everything 3D printer related: the design of 3D parts using tools like Fusion360, OpenSCAD, and FreeCAD; slicing parts effectively for
FDM printing; finishing 3D printed parts; repairing printers; and driving stepper motors.

3D printing has allowed me to design some room-automation hardware that I’ve wanted to build for a very long time. It allowed me to build cases for some of my existing projects, and even produce some more whimsical objects like self-watering plant pots, skull cacti, and marble machines!

I’d previously written a blog using a Ruby framework called Jekyll, hosting for free on Github Pages, but I’ve found the process cumbersome and time consuming. I’ve got so many projects in my back-log to write up, and I’ve learned a lot about docker for web application hosting, so I’m switching over to using this dockerized WordPress instance running on my personal server. I hope it’ll facilitate my writing process (and thus help me more readily express myself).

Thanks for reading, and stay tuned for more posts!