GBA Bluetooth Audio Support

by JadeNode in Circuits > Electronics

6611 Views, 5 Favorites, 0 Comments

GBA Bluetooth Audio Support

GBA Bluetooth.PNG

This guide will show you how I was able to get Bluetooth Audio working on an AGB-001 in case you'd like to have your Bluetooth headphones work with your favorite handheld.

While you can get away with minimal parts, I would suggest that you try this out either with a spare GBA or with spare parts at hand in case you make any mistakes. I made a handful and while I was able to fix them, your mileage may vary.

Overall I'm really happy with how this turned out, and am enjoying stereo BT audio out of my GBA.

Supplies

  • Bluetooth Transmitter Module (I use the Muson MK1 in this guide)
  • Soldering Iron
  • Solder
  • Wire
  • Switches (I use a 2 DIP switch)
  • Tweezers
  • Something to cut plastic: Flush cutters, knife, etc.
  • Kapton tape or Heat Shrink Tubing
  • Tape/glue
  • (Optional) 805 10uf and 1uf Capacitors
  • (Optional) GBA Power Cleaner
  • (Optional) Aftermarket/Replacement AGB-001 Shell
  • (Optional) Aftermarket/Replacement AGB Buttons

Decide How You Want to Support BT Audio: RN52 or Off-the-shelf

There's two real options that I'm aware of for this mod. The first (and covered by this guide) is using an off-the-shelf Bluetooth Transmitter device. Any BT transmitter that receives audio in via a 3.5mm TRS jack and can run off of either 3.3v or 5v power will do.

The second option is using a Bluetooth chipset like the RN52. If you decide to go this route, you will ultimately end up with a smaller mod but will have more work ahead of you. The RN52 needs to be flashed with the SRC firmware so that it can act as a master device, and then you'll need to either pair your devices ahead of time via an FTDI or will need to work out how to enable proximity-based pairing. While this would be really neat, it's much easier for most people to go with the first option as laid out in this guide.

Silencing Audio Out

GBA Headphone Jack.PNG
Headphone Jack Silenced.PNG

The GBA handles audio-switching to the 3.5mm jack via disconnecting pins 1 and 5 of P3. If you look inside the jack, you can see a small bit of plastic that is pushed to the side when headphones are connected. This breaks the connection between these pins inside the jack, silencing the speaker on the GBA.

After disassembling your GBA, grab a small and thin bit of plastic or paper (I used some wax-coated paper I had lying around from the back of double-stick tape) and your tweezers. Push aside the metal connection in the headphone jack, and insert your paper. When you're successful, you should hear no audio coming out of the GBA even when at max volume. Don't worry, we'll restore the connection later on so you can choose when to silence the speaker yourself.

If you don't do this step properly, then your audio will come out of the GBA no matter what, even when Bluetooth is connected.

Cleaning Up the Audio (Optional)

The GBA by default puts out audio with a hum and general background noise. To help mitigate this, RetroSix sells a dehum/dehiss kit with additional capacitors that help filter out the noise caused by other components. With space at a premium however, I instead opt for the GBA Power Cleaner that was whipped up by Helder on OshPark: https://oshpark.com/shared_projects/E4LWZeoy.

Note that you can go with either one of these, or choose to not perform this step at all. If you perform this step, you will end up with cleaner audio out. Both RetroSix and Helder have an explanation of how to install their mods, so I won't go over the same information here.

Soldering

DIP Switch.PNG
Headphone Jack Wiring.PNG
Power Diagram.PNG
Transmitter Wiring.PNG

Now the fun part. I chose to make all of my audio solder connections to the headphone jack, as that made the most sense to me. You could also try to make your connections at the volume wheel (similar to a DMG GameBoy), but ymmv.

First, determine where you want your audio switch to go. I stole the lanyard hole on the left side as the perfect spot to put my switch, as there's even a little cutout and it's out of the way of other things I'd normally interact with. Grab 2 wires long enough to stretch this distance comfortably and 2 about 1/3 as long and tin the ends. Next, locate the headphone jack on the front of the board. It's labeled as P3, with pins 1-5 labeled as well.

Solder one wire each to pins 1, 2, 3, and 5 as seen in the picture. Pin 1 is the audio ground, Pin 2 is the Left channel, Pin 3 is the Right channel. I recommend using a different color wire for each of these to help keep things orderly, but if you can keep track without color coding that's fine too.

Solder pins 1 and 5 to position 1 on your switch. Now when you want audio to come out of the GBA speaker, all you need to do is turn this to the on position and make sure the volume is turned up. If you want to silence the GBA, turn the switch off and you're all set. Note: if you elected to not silence the speaker or didn't do it properly as noted in a previous step, this action is pretty useless.

With the headphone jack wires soldered, you can now grab your Bluetooth Transmitter. Make sure it's set to Transmit, and give it a quick test to make sure it works. Once you know that it functions and pairs with your target headphones without issue, it's time to take it apart.

Pry open the casing, and cut or desolder the leads heading to the battery. Keep track of which wire is the positive (usually red) and the negative/ground. If your device runs off of 5v power (like the MK1 that I'm using), you can power it by running the positive to C56 on the GBA and the negative to the negative side of CP3. These two are right next to each other on the power-switch side of the board, as seen in the image. If instead your device runs off of 3v power, you can grab battery-voltage from the unregulated negative and positive on the power switch. If your device runs off of 3.3v power, you can grab positive from bridged C50 & C51 near the headphone jack, and negative to CP4 (this is the exact same process used for GBA Audio Amplifier mods). Note: I initially thought my device could use 3.3v power if I used a step-up/boost converter to go from 3.3v to 5v. While this works fine on a breadboard, as soon as I bridged C50 & C51 my GBA would no longer start. If this happens to you, worry not, you can still get your GBA to work again. What most likely happened is that you blew a fuse, namely fuse F1. If this fuse is blown, you can search for a replacement and replace the fuse. Alternatively, you can just jump the fuse with a wire or just connect the two pads with solder. While your GBA will no longer have a fuse for power, it will bring the GBA back to life and let it keep working. I had two GBA's to test this on and blew the fuse on both of them when bridging C51 & C51, so while many people have success with this while doing the Amp mod, try that at your own risk.

With power going to the BT transmitter, now we need a way of turning it on and off while it's inside the GBA. Find your power button, and grab two lengths of wire that will run from the headphone jack side of the GBA to where you've decided to place your switch. Solder a wire to both sides of the power button on the transmitter, and then solder those wires to the second position on your switch.

Finally, we need to hook up the actual audio lines. Desolder the headphone jack on your transmitter and expose the pads. Grab one more length of wire and solder GBA Pin 1 (your audio ground) to the audio ground of your transmitter. I chose to do this from the switch, as I didn't want to expose the board to more heat than necessary. For the MK1, audio ground is the red wire in the photo. Next solder your left and right channels to the left and right of your transmitter. For the MK1, that's the Purple (Left) and Orange (right) wires in the image.

Seal everything up with kapton tape or heat-shrink tubing so you don't end up shorting anything inside the GBA.

Cutting the Shell

Switch Location.PNG
Shell Cutting.PNG

We've got audio working, now we need to make it all fit. If you haven't already, grab your flush cutters and cut the slot for your switch so that it's accessible from the outside. If you chose to use the lanyard location as I did, you also need to cut the side plastic to make room for the switch. Note: it's always easier to cut more plastic if needed. Cut a smaller hole than you'll actually need, and then expand it as needed if it's too small.

Slide your switch into place, and stick it down with tape or glue. Next, determine how much space you'll need for the transmitter. If you used an RN52, you can close up the case without further cutting by positioning it at just the right angle. If you used a transmitter such as the MK1, you may need to cut some of the support plastic. I removed the two supports circled in the image.

Stick your transmitter down so it doesn't move around.

Wrapping Up

Give everything a test fit by closing up the shell without any screws. If you did it right, you should be able to close the GBA and slot in a game and some batteries for testing. If you wired everything the same way, switch 1 now controls the GBA speaker turning on/off and switch 2 controls the transmitter on/off. Assuming it all works screw everything back together and enjoy your Bluetooth audio on your GBA!