Bluetooth CD Changer Emulator

In this project I reverse engineer the interface of my BMW CD changer and replace it by my own Bluetooth PCB to play music from my phone :).

Similar projects worth following

This adapter enables Bluetooth functionality in classic BMW cars while keeping the dashboard and head unit original by reverse engineering and emulating the CD changer interface.

All info can be found in the build logs.

  • Wrapping up

    Maakbaas08/21/2020 at 20:22 0 comments

    After a little bit more than a year I am happy to announce that the project is finally finished. And I know I've said that before, but this time it is really true. The latest version of the circuit board has been running like a charm, no noise, and no thermal shutdowns. Since I received a lot of interest during the development I have added a shop section to my website in case you would like to buy one.

    Full log (

  • Reducing Noise

    Maakbaas06/21/2020 at 13:16 0 comments

    This is just a short update. Remember my last post where I presented the final design? Well, I should not have called it final before testing it in the car itself 😉. While doing so I discovered a whine played over the speakers that rose and fell with the RPM of the car. With more and more cars faking engine sounds over the speakers, you could call this a feature instead of a bug. In any case, it's not what I wanted, so back to the drawing board.

    Full log (

  • The Final Hardware

    Maakbaas05/01/2020 at 12:53 0 comments

    Continuing the journey to implement Bluetooth audio on my old BMW, an updated version of the PCB has arrived. In this post we will take a look at the design of the circuit board, and test if the overheating and sound quality issues are fixed with this latest iteration of the design.

    Full log (

  • Testing the Second Board

    Maakbaas12/25/2019 at 13:40 0 comments

    As discussed in the previous log I removed the ESP32 Pico from my design and replaced it by a conventional ESP32 module. Because I was not yet able to do a lot of testing on my first design, the rest of the PCB remained unchanged. The good news is that thanks to the easier assembly of this second iteration I finally got a working board. So let's see what we can learn from further testing.

    Full log (

  • First PCB Design

    Maakbaas12/25/2019 at 13:39 0 comments

    Even though my prototype was working quite well, there are still some issues. One of them is that the Bluetooth module gives audible pops on pausing and restarting playback. Another one is that I can't communicate to the Arduino if the music is paused or not and therefore can't put this on the head unit display. Partly for these reasons, and partly to learn, I started on my own PCB.

    Full log (

  • From Idea to Prototype

    Maakbaas12/25/2019 at 13:38 0 comments

    Parked in front of my house is an old BMW E36 325i. When I bought it, it came loaded with cassette tapes from the previous owner, like a time capsule from a different era. Although I quite like Johnny Cash and Kenny Rogers, it gets repetitive after a while. So I set myself to work to make my car Spotify enabled.

    Full log (

View all 6 project logs

Enjoy this project?



Similar Projects

Does this project spark your interest?

Become a member to follow this project and never miss any updates