Bluetooth Audio Mod on Car Cassette Player

Bt Audio Banner
My daily commute to and fro college is a long one. Coupled with bad traffic jams in KL, I spend a lot of time in my car.

I needed to play my music in the car but that would mean upgrading my old cassette player to a new one.

The only feature that I’m looking for is Bluetooth Audio. Most low end players will play CDs and songs from a USB thumb drive but that is not really convenient as I have to constantly bring it back home to transfer new songs into it. With Bluetooth Audio I can play songs from my phone, and since my phone auto-syncs with my computer, I’ll always have the latest music in my car.

Unfortunately, players with Bluetooth Audio are rather expensive, costing north of RM 500.

I thought to myself, there must a be cheaper way to do this. Lo and behold, I bought this bluetooth module chip for around RM 30.

IMG_1553

It’s called the BLK-MD-SPK-B and it uses the OVC3860 BT A2DP IC usually found on bluetooth headsets or portable bluetooth speakers.

Since this is a surface mount device, I need to make a PCB to convert it into through hole and standard 2.54mm pitch.

The usual steps, printing the layout, ironing it on a copper PCB and etching the copper.

IMG_2460

IMG_2463

IMG_2465

IMG_2467

IMG_2471

IMG_2483

Soldering the surface mount chip on it is quite easy as the pitch is quite big.

IMG_1559

Plugged it into the breadboard following the recommended circuit.

bt-sch

IMG_2485

It worked and it can be discovered on my phone.

2013_12_21_23.13.26

I didn’t like the default name so I had to change it.

Tried AT command but didn’t worked. A quick online search revealed that I have to re-program the built-in EEPROM chip.

That meant I have to de-solder the tiny TSSOP EEPROM chip from the bluetooth chip. TSSOPs have a pin-pitch of 0.65mm. That’s half of a millimeter gap between each pin!

IMG_2533

Soldered it on a breakout board for easier interface.

IMG_2540

I used an Arduino to get a dump from the EEPROM chip.

IMG_2544

rom_dump

The bluetooth ID is located in 1C7 to 1D0. The line of 42 54 2D 53 70 65 61 6B 65 72 (ASCII) translates to “BT-Speaker” which is the default bluetooth ID.

I replaced it with “WaiHung-BT” which is 57 61 69 48 75 6E 67 2D 42 54 (ASCII).

writing_new_name

And it worked!

changed_name

With this done, it’s time to take out the cassette player from my car.

IMG_2550

IMG_2552

IMG_2553

IMG_2554

IMG_2557

The model number for this cassette player is PW547897. Made in 2004, a decade old. Unfortunately I can’t find any service manual or schematic on this model. That would mean it is harder to reverse engineer it.

IMG_2562

Taking it apart…

IMG_2565

Mostly through hole components with the exception of two SMD ICs. Expected from a decade old electronic device.

IMG_2568

The cassette mechanism.

IMG_2573

IMG_2576

I intend to remove the cassette mechanism and inject the bluetooth audio signal through the cassette signal input.

I took down the names of all the ICs on the circuit board and searched for all their datasheets.

I found the chip which handled the signal of both the cassette tape and FM radio. It’s called PT2311 and it sits in the middle of the circuit board.

Below is the connection diagram found in the datasheet.

pt2311_inject

Pins 9 and 13 is the audio input for the cassette tape after some filtering circuit. Therefore I cannot inject the bluetooth audio straight into it. I’ll have to find the point before the filtering capacitors.

With the circuit on the breadboard, I used a jumper pin to poke around to find the injection point until I get the sound from the player.

IMG_2628

With the injection point found, it’s time to make an enclosure for the bluetooth chip.

IMG_2639

The chip fit snugly into the enclosure.

IMG_2641

IMG_2646

The next hurdle is to tap some power from the circuit board to power the bluetooth chip. It requires 4.2V.

I’ve measured which pin which will give me 12V when the car is turned on and tap the power from the corresponding pin on the circuit board.

IMG_2582

The problem with this bluetooth chip is the power ground cannot be shared. If the power ground and audio ground is shorted, it will produce noise.

I’ve found some DC to DC isolators from element14 and they’re like voltage regulators except that the output have a separate ground.

dc2dc

dc2dc_pinout

They are expensive. RM 10 each. For comparison, the typical voltage regulator will only cost RM 0.50.

IMG_2755

IMG_2757

To power it at home for testing, I’ve soldered a temporary power connection to a 12V lithium polymer battery to simulate it being in a car.

IMG_2585

The complete test rig.

IMG_2665

After verifying that everything works, it’s time for some cosmetic touches.

I’ve detached the cassette flap from the front plate.

IMG_2644

Drilled a hole for a LED indicator.

IMG_2763

Sticked a bluetooth logo on it and test the indicator LED.

IMG_2766

Assembled the front plate back.

IMG_2770

Mounted the additional bluetooth circuit on the existing circuit board by hot glue and lots of electrical tape.

I know it looks messy >.<

IMG_2769

Screw everything back together and install it back in the car.

IMG_2777

The phone detects it fine.

2014_01_27_22.07.39copy

I set my phone to automatically resume playlist upon bluetooth connection so I can keep my phone in my pocket while the songs are being played.

2014_02_13_17.54.25

I might update this post with a video demonstration later on.

Until then, thanks for reading 🙂

  1. Utkarsh Verma10-19-2017

    For changing the name, why go through the trouble of desoldering and resoldering EEPROM when you can do it only through UART.
    Here’s how you can do it!
    https://www.instructables.com/id/Change-Bluetooth-HeadsetSpeakerAdapters-Name-or-Ot/

  2. Terry08-28-2015

    Hi,
    Can I ask for the hex file of the OVC3860 eeprom?
    Thanks

  3. Alove05-25-2015

    Can you send for me the library of bluetooth module?

  4. jctjepkema05-09-2015

    Hey i’m not sure, but how did you exactley read out the eeprom. I got it connected to my arduino right now, but i really would like to know how to read it like a .bin file in HxD. Thank you!

  5. Alex06-17-2014

    Can you send the proejetc (code + Eagle) for me ??

    ales-vidal@hotmail.com.

    Att.,

    Alex Vidal

  6. MadToha06-03-2014

    Hello! Do you know how to turn off “programmable low voltage monitoring function” of that module? To power it from 3.3V without “low voltage” alert.

  7. Hiten05-02-2014

    Hi

    So, does this mean that the cassette player no longer works?

    • waihung05-02-2014

      Yeah but the FM radio still works.
      I removed the bulky cassette mechanism to make way for the bluetooth circuit.
      No one listens to cassette these days anyway.

  8. Chun Kit02-14-2014

    Wow Wai Hung this is really a impressive work! GOOD ONE HAHA!!

  9. Zx lee02-13-2014

    Thumbs up for your hardwork. I really impressed on how you modified you CD player and saves up the money to upgrade the bluetooth feature.

    • Wai Hung02-14-2014

      Thanks 🙂

Leave a Reply to Terry Click here to cancel reply.