The Google Home Mini can be a useful home assistant device. It can set reminders, tell you the weather, and even play you music. [Brian] had a few lying around, and decided he wanted to hook one up to a beefier set of speakers. Thus, he installed a headphone jack into the Google Home Mini.
The quick and dirty approach to such a task is to solder a jack to the speaker connections. However, this is an amplified signal, rather than a line level signal suitable for feeding to an amplifier. It’s also mono only. The Google Home Mini uses the TAS5720L mono digital amplifier chip, and some investigation with a logic analyzer and a datasheet allowed [Brian] to figure out the format of the I2C digital audio signal.
With this knowledge in hand, [Brian] hacked in a PCM5102A digital amplifier chip to the Google Home Mini. It can accept audio data in the same format as the TAS5720L, and is readily available on eBay for use with the Raspberry Pi and other maker platforms. With a 3D printed baseplate and some careful soldering, [Brian] was able to integrate the stereo amplifier and a headphone jack neatly into the Google Home.
Unfortunately, the audio output is only two mono channels rather than true stereo, as the device outputs the same data on both left and right channels in the I2C data. Regardless, the hack works, and [Brian] now has a high-quality voice assistant that he can hook up to a decent pair of speakers.
19 thoughts on “Google Home Mini Gets A Headphone Jack”
Does anyone have any use for the old audio->serial stuff in this case? I have some code I just need to post it.
Or does the google home mini already have serial output?
Don’t you mean I2S instead of I2C?
He definitely does. Sounds like Lewin needs to read Jenny’s article from a couple weeks back: https://hackaday.com/2019/04/18/all-you-need-to-know-about-i2s/
you do the control via I2C and the audio via I2S
Yes, but in this case the author of the article only mentions digital audio data. Should say I2S in both cases.
Also seems like a good way to hook up a subwoofer to your home speaker system.
But if it only outputs as mono on both the left and right channels, why not still use the speaker hack with a resistor and output that to both the left and right channels?
Because when I started I didn’t know it was outputting the same data on both channels. I was hoping that they relied on the amp to combine them. But now we know :-)
Your solution still produces the best audio option from these tiny devices, thanks again for coming up with a more hi-fi option. Also good discovery! At least we know now what the mini is capable of.
Yep, works just fine . and as I am over 25 I don’t notice anything negative in the sound.
What resistance resistor did you use? attemptong this with very little equipment and going to order some resistors but cant measure output or anything.
A great learning exercise for sure. 6 or half a dozen, that’s all. I have run across young people that listen to music that don’t know what stereo is or what it means. Sad but it’s human entropy. Anything and everything will be lost if not learned. I want to use those football and hockey puck shaped noise things with their crappy blurtooth in real sports action, whack! Scoooorrrre!
There is nothing wrong with attenuating the level of audio post amplification and running it to another amp, IF the amp is not crap. With headphone level the voltage is around a volt or less. With a line level the voltage is the same or somewhat less. The impedance is much lower on the headphone out than line. This makes the headphone more robust to run around in wires no shielding needed. There is some audiofool meme here, waiting to pop.
For decades I have sent power amplified stereo audio thru the extant legacy house telephone wiring to a pair of speakers in the bath, the volume of that amp is left at one setting fed from the tape out of the prime audio sources. Elsewhere the same low impedance telephone line goes to line inputs of three other amps in other rooms, including the music studio. I have never had hum, clipping, or interference thru this system. I never had to run expensive coax either. Now that I have 4 channel sound at the prime location I am ready to drive all 4 channels to the studio which is 4.0 as well. There are 6 conductors in those telephone wires, redundant grounds.
effin click bait
Every time I see ugly solder joints, I hear Obi-Wan say “Use the flux, Luke!”
I’m always happy to learn, got any tips? I was using flux for soldering to the QFN; I thought I did ok with those. For the ground joint I just couldn’t get enough heat in there to really get it molten. I was alternating hot air and iron, because I only have two arms. Is there a trick?
If you find a joint that doesn’t look nice, usually you can just smear flux on it and then hit it for a second with a clean, tinned soldering iron tip, and it will reflow and come out looking nice and smooth.
Keeping the tip clean and tinned is key, and I find the “metal wool” tip cleaner preferable over the sponge, since it’s always ready and doesn’t have to be moistened first.
For soldering fine joints like in your article, you want the wire and the component lead to both be tinned first. The lead, even though it has the factory solder on it, you’ll want to re-tin with lead solder, since it flows so much more easily. Then tape the wire down such that it’s making contact with the lead, dab some flux over both, and after checking alignment again, touch with the iron tip. The solder that was already on the wire and the lead from the tinning should then just melt together.
If you have a good heat-regulated soldering iron, the ground joints shouldn’t be a problem for tacking on a wire. I used a Radio Shack 25W pencil iron for a long time before I picked up a used Weller solder station. I’ll never the the pencil iron again as long as I can avoid it.
Yes, there are many tricks. Not all of them are useful in all situations, however.
The job of the flux is to protect the molten metal from atmospheric oxygen, and remove some that is already dissolved. Oxygen forms compounds with the metals and alters their properties. Usually in an unwanted way. You can go full Louis Rossmann, and literally flood the board with flux. Or frequently drip some as you heat up the parts.
Remove all old solder you can, and apply fresh after to remove oxides with it. Sometimes it is useful to do it multiple times, “rinsing” the joint.
Use the right iron tip for the job. I personally like the angled flat type, almost universal: large surface on the flat side, edge with a slight curve, sharp point(enough for me).
Select a good temperature for the job. Sometimes the parts (e.g. big ground planes) suck the heat like a heatsink, and to compensate the low throughput caused by the small conducting surface, you crank up the temperature. But for small parts, the high temperature means that the flux degrades faster, and the oxygen gets absorbed faster.
Don’t just preheat a small area with heatgun. You need to heat it up in about 3-4 cm radius. With a small board like that it is easier to heat up the whole PCB to a temp you can barely touch it. But that is rarely needed, and easy to screw up. Proper iron, with good tip is more important.
tl,dr: get a good iron, use more flux, practice more to get the right settings first try.
I have one for you, m’boy, just one word: Chromecast.
Trouble soldering onto ground planes and similar big items?
Use a bigger iron. I have one that is basically a 3V transformer with a loop of 16SWG copper on the end of two 5mm sq. bars, it can solder quite big tags onto metals or similar jobs.
Buy a heavier bit for yours.
Get a tiny blowtorch.
TRY (I haven’t) a pad of glassfibre or rockwool round the iron tip to insulate it as it heats up
The portable gas irons can get very hot, if you turn them to maximum.
Solder at a corner of the ground plane, not an edge or in the middle.
Sandpaper both connections, tin them both.
Use lead/tin solder, not the “safe” stuff. Lead/tin melts at a lower temperature, it’s not going to kill you, you’re not using it every minute of every working day.
Hope this helps.
Please be kind and respectful to help make the comments section excellent. (Comment Policy)