Weekend Hack:Echo Dot


Getting better Audio out of an Amazon Echo Dot…

I’ve got some Amazon Echo Dot spying devices in my apartment, and I actually like them to switch some lights or to listen to Spotify. In my living room I had an Onkyo Receiver with some decent Pilot CD800 Speakers. As I only used the spotify connect function on this Receiver my idea was to retire that thing and connect the speakers to an Echo Dot using a small SMSL SA-50 Class-D amp. This has several advantages:

So far, the small SMSL Amp does it’s job very well. To be honest, it sounds much(!) better than the Onkyo Amp for a fraction of the Onkyo’s price. Sadly, you can’t say this about the Echo Dot. The DAC Amazon used seems to be the cheapest (and worst) they found on the market. Frequency seems to fall of above 12khz, dynamic seems to be compressed somehow and it just sounds bad. So the Idea was to replace the DAC with a better one.

Short search on Google revealed that someone did it successfully (https://hackaday.io/project/28109-hi-fi-digital-audio-from-the-echo-dot) but left no description at all. At least the DAC he used seems to be a good start, and so I ordered one (3$) from ebay (search for ‘I2S PCM5102A DAC’). That board was meant to be as an upgrade to a Raspberry PI which also does not meet any audiophile standards on its default sound output. The 5102 has been designed by Burr Brown which were known for very good DAC’s. Texas Instruments bought them years ago and they are now making them. Fun fact is that they are still branded Burr-Brown.

So here’s a small line up.



Opening the Dot

(btw.: you will definitely void your warranty when doing this…)

Put the Dot upside down and peel of the adhesive stickers. Be more careful than I have been, then you possibly can reuse them. Open the Dot

Unscrew the Screws (Torx T-9) and open the Device. It now should look like this: Echo Dot, disassembled

The original mono Speaker is in the bottom part (top of the picture). Remove it, its not screwed anywhere. (just knock the plastic speaker unit out by dropping the reversed case on the desk. We need the room the speaker occupies for the new DAC)

Removing the old DAC

Now we need to get rid of the TLV320 Dac. It’s a small 4x4mm chip marked with ‘V13’ on the visible side of the board. Heat it up with the the reflow station, take care of not accidentially removing any resistors around it and finally remove it with the forceps. Now it shoud look like this: old DAC removed

Connecting the new DAC board

Now we need to connect the new DAC board with the SMD pads on the Board. You can see 4 corners on the silkscreen on the Board, one is printed bold and marks Pin1 (there’s a small black smd resistor next to it).

I made a table on how to connect the 5102 Board to the SMD pads. Some connections need to be made only on the board to pull-up/down some inputs. (make sure you don’t forget them, otherwise you will hear only distortion or nothing at all - all inputs are free floating and NEED either gnd or vcc3.3) Some connections need to be made to test points on the board (Vcc and GND).

PCM5102 Board TLV320/Echo Dot Pin Description
VCC Test Point near USB Plug - DN1 +5V VCC from USB
3.3V NC Used as logical high for other pins on PCM5102 board
GND Test Point TM14 GND
FLT NC Connect to GND on PCM5102 Board
DMP NC Connect to GND on PCM5102 Board
SCL NC Connect to GND on PCM5102 Board
BCK Pin 2 Connect to BCLK on TLV320 Pad Pin - Bit Clock
DIN Pin 4 Connect to DIN on TLV320 Pad Pin - Digital In
LCK Pin 3 Connect to WCLK on TLV320 Pad Pin - Word Clock
FMT NC Connect to GND on PCM5102 Board
XMT NC Connect to 3.3v on PCM5102 Board

That’s how it should look like on the board. wires Don’t get confused by the yellow wire on Pin 1 - it’s unnused and does not need to be soldered. That is the System Clock which runs at 9.56 MHz. Unfortunately, the 5102 is incompatible with that system clock. Luckily the 5102 can regenerate that frequency from the other clock signals. It does so when SCL on the 5102 is connected to GND.

Btw.: The Bitclock is at 48khz and the wordclock runs at 1.5MHz, so the Echo Dot has a fixed output of 48khz and 16bit stereo audio, which is absolutely ok.

wires on the board

Cut the rca cable in half, extend the original 3.5mm jack hole on the Dot’s housing to pull the cable through the hole and connect it to the L-G-R pins on the board.

Now something important: I wondered why I only got mono audio, took me one hour to find it out: The original audio jack socket from the Dot has a jack detection switch. As long as no jack is inserted, the Echo mixes the audio down to mono, as it only has a mono internal speaker. By simply unsoldering the whole jack socket we automatically override this jack detection, as it is an NC switch. We need the space anyway to route the rca cable out of the device.

The Socket has some torx (t-7) screws on the other side of the Board, remove them. screws

I used some double-sided adhesive tape to fix the board and used the remaining holes of the jack socket and a small ziptie to fix the rca cable result1

Final result :)


Bottom line

Improvement in quality cannot be described in words. That thing is now a whole different story. Costs were around 10$ (and only $60 when including the amp!), so what should I say.