Creative Commons images are CC BY-NC-SA 3.0

Description: This is the PurpleTooth Jamboree a full-function board, designed to provide audio bridge support through the A2DP, HFP, and AVRCP Bluetooth Classic profiles. The module is also dual mode which means it can operate as Bluetooth 2.1 or Bluetooth 4.0 (BLE). It includes circuitry for converting single-ended audio inputs and microphones to balanced inputs for the module, and converting the module’s balanced audio output to an amplified single-ended signal suitable for line-input and headphones. The PurpleTooth also includes buttons for pairing and sending audio commands to remote devices, battery charge circuitry, and six-pin serial headers pinned out for connecting to either FTDI basic boards or boards like the Arduino Pro, Pro Mini, and LilyPad.

Each PurpleTooth Jamboree comes standard with a BC127 Bluetooth module, an extremely competent and easy-to-use dual-mode Bluetooth radio. In command mode, any data coming in on the serial port is treated as commands and will be parsed accordingly by the module’s command interpreter. In data mode, any data arriving over the serial port will be directly piped out over the Bluetooth link, assuming that the module is connected to another device using the Serial Port Protocol.

The PurpleTooth is equipped with one Mic in / LINE in 3.5mm jack (with additional 4-pin through-hole mic adapters), one Headphone / LINE out 3.5mm jack (with additional 4-pin through-hole L/R speaker adapters), seven button volume, track, play and pair control, serial to micro and FTDI support, and a USB micro port for power and updating the firmware (you will need a 5V FTDI for serial commands).


Recommended Products

Customer Comments

  • Hi, Can I feed direct Audio song to its input or some type of conversion is required?

    • You can connect this directly to an audio source for streaming over Bluetooth, or you can stream audio via Bluetooth to this and dump the output out to headphones or a single-ended line-in (like the aux port on most stereos or computers, for instance).

  • Hi, Is BC-127 can Transmit Audio song? I want to use this module as follows.

    1:When I send it command, It must scan nearby devices and show all addresses or names at Serial 2: I will select one of the available device address to make pair with. 3: Module must get paired with that device which will operate as SINK and support A2DP. 4: Then I will Transmit Audio using BC-127. This Audio must play there at other end.

    Is this module fulfll all above mentioned points?

  • Is it Possible to connect BC 127 with different phone using different profile. e.g. I connect BC 127 to one phone using HFP profile same I connect BC 127 to another phone with SPP profile.

  • I need to know how many simultaneous connection possible with BC 127. Is it possible to connect 5 phone with BC 127 using SPP? Can we connect 7 link using same profile?

    • You can’t connect them simultaneously- this is a one-to-one communication channel. It’s possible to round-robin, of course; there’s nothing stopping this device connecting, sending data, and connecting to a different device.

  • It seems like the RESET button just powers down the chip and it never powers back up until the VREGEN button is pressed. Is there a different pin that would be better to use for the purpose of powering up and down?

    • That should not be the behavior of the device. RESET should, well, reset the module, causing it to reload its saved settings and drop all connections.

      Perhaps you’ve a bad board, with a cold solder joint on the reset pullup resistor?

  • I tried to power this board from the 3.3v source on a teensy 3.1, but it doesn’t seem to want to power up. I measured 3.35v at the power input (pin 33) to the bc127, so it’s getting the right voltage. If I supply 5v to the FTDI VCC pin, then everything runs fine. In this case, the regulator on the board is supplying 3.27v, slightly less than the teensy.

    The other obvious potential problem is that maybe there’s not enough current to run the board. The teensy output is rated for 100mA, and the bc127 is spec’d to consume 15mA. I tested that the teensy can successfully supply 70mA across a resistor. The LED’s on the jamboree consume about 15mA each. Not all of them are on when pairing, but even if they are, I still don’t see how the jamboree can be drawing too much power, unless there’s an undocumented momentary inrush current at start.

    Any thoughts as to what might be going on here?

    • Contact tech support and see what they can do for you. I think this will take a little back-and-forth to troubleshoot.

      • I’m noticed exactly the same thing on my board when powered through the FTDI VCC Pin. Actually, to be able to talk with the board, I had to provide it with power via USB. This morning I thought on the same solution, using a FTDI Cable supplying 5v… Glad to know that the board get powered with the cable. Yet, 3.3v should be enough… even using a FTDI Breakout Board.

  • Is it possible with this module to send custom AT commands using the provided UART when in HFP?

  • Hi All,

    anyone has some advice how to correctly hook up an I2S Codec to the BC127/8 ?

    I’m not sure which clocks to connect to which signal on the module since they only use non standard designators in the datasheet. Especially I am curious if I have to provide the bitclock of the I2S or the Master Clock of the codec? ( to the SPI_Sync? ) Wordclock goes to SPI_CBS?!?

    Help :-)

  • Hi. I am a little bit confused so I would like to ask you. Does anybody know if this BC127 or BC127 DEV KIT support codecs aptX, AAC ? On BlueCreation site is written that Melody is the same software running on BC127 modules. /Melody offers these features/. I would like to high quality audio, so better safe before buying than sorry THNX John

    • I just bought two of these. When I type “version”, one of the things it says is “A2DP Codecs: SBC”, which indicates to me that it only includes SBC. The module supports aptX, AAC, and MP3, but it does not come with them. In theory you could contact BlueCreation and they would ship you a firmware update that has the codecs. I just emailed them on Friday, so we’ll see if they get back to me.

      Edit: I was wrong! You just have to enable the additional codecs (on both devices). For example, to enable aptX (in addition to SBC), enter “set codec=1 0 1” (aptX, default sample rate, stereo). Then when you connect using A2DP, it will automatically use aptX. If you enable all the codecs, it says they’re all available, but I can’t figure out how to tell it which codec to use in a given A2DP session.

      • Hi. Thnx for reply. I have not bought my device yet, cos I was hesitating if it will be working with A2DP, aptX without extra money. I wrote to BC and they have not replied me yet.I need goot quality of music transfer. Have u measured a latency between devices yet ? just note: dont forget that if u need A2DP /aptX/ both devices need set this codec properly.

        • Yeah, latency is about 150ms, same as SBC. And yes I had to set both devices to enable aptX before it would work. I have also written to BlueCreation asking about aptX Low Latency, which is what I need for my wireless mic project.

          • Hi Scrofulus. Have you tried som audio stream between two BC127 ? How was it ? what about noise or interferences ?

          • Hi Scrofulous, thnx for reply. pls let me know if u get som info from BlueCreation. I am waiting for acount access confirmation on their forum. :-( Just know i got info from Sparkfun and i sound : “I’ve looked through Blue Creations documents for the BC127 and can not find any mention of the ACC or aptX codecs. It looks like they are not supported. You would need to contact Blue Creation to see if they can be added to an existing BC127 or if an entirely different module is required.” so….. what to add :-) It look likes that you are strugling with the same project like me (wireless mic). funny :-)

            • I haven’t gotten a reply from BlueCreations. I’m guessing neither of us will unless we get a friend who works somewhere like Apple to email them for us.

              As for the audio stream between two BC127s, it’s really good. The analog input on this board is okay but not amazing, but the actual digital link is good. As for aptX, my boards say they are using it when I pair them and use the status command. I don’t know enough beyond that to tell if they’re lying or not :p Good luck with your project!

              • Hi, what do u mean by “The analog input on this board is okay but not amazing,” ? I think i will probabbly need some pre-amp, or base on your own experince is there any hidden problem ?


    Getting partially garbled text from serial output when receiving song track meta data like artist, title, and album. I’m using a Purpletooth Jamboree with a Arduino Pro Mini 328 - 3.3V/8MHz and during playback when the Arduino receives AVRCP media info over a 9600 baud serial connection, I’m finding that the arduino is only receiving about 80 characters worth of legible notification data per track. Here’s some output with the character length after each notification:

    AVRCP_MEDIA TITLE: American Idiot    (length: 33)
    AVRCP_MEDIA ARTIST: Green Day    (length: 29)
    MM5_OB3_EcC G    (length: 32)
    AVRCP_MEDIA TITLE: Amber    (length: 24)
    AVRCP_MEDIA ARTIST: 311    (length: 23)
    AVRCP_MEDIA ALBUM: From Chaos    (length: 29)
    MTE    (length: 7)
    AVRCP_MEDIA TITLE: Andy, You’re A Star    (length: 40)
    AVRCP_MEDIA ARTIST: The Killers    (length: 31)
    AVRCP_MA:sC  C U7CA ADI(4    (length: 25)
    AVRCP_MEDIA TITLE: Anna Molly    (length: 29)
    AVRCP_MEDIA ARTIST: Incubus    (length: 27)
    AVRCP_MEDIA ALBUM: Lig sPN9PTM3P R    (length: 34)

    Any clue what’s going on here? Some form of serial buffer overflow maybe?

  • Any chance this could also be offered with the BC127-APTX?

    It includes a license for the APTX codec, but I’m not going to pretend that I understand the logistics of that. It would be awesome to have though.

    • That would be really awesome. I have a theory, based on a forum thread about Bluegiga’s WT32, that BC127s without a license will still function with aptX for a few minutes, then turn to garbage until you reset them. So at least we can see if aptX works for what we’re trying to do. Then in theory we could buy the BC127-APTX and make our own boards for it. Or get a really precise heat gun and desolder the one on the Purpletooth Jamboree, then swap in the aptX version.

      Edit: I got my boards, and they have the aptX codec!! There’s even a license code. I’ve been streaming audio between two Purpleteeth using aptX for over 10 minutes with no issues. You just have to enter “set codec=1 0 1” (or 7 0 1, which says it enables AAC and MP3 as well, although I can’t figure out how to choose which codec to use when connecting).

  • Price drop and low stock? Does that mean a new respin is coming (that hopefully switches the left and right channels on the audio input and output jacks)?

    • Good guess, but not this time. Low stock is just a result in fluctuation of stock. Price drop, well, just don’t complain. Seriously though, just trying to make a few of our boards more competitive in price.

      • Thanks for clarifying! Definitely not complaining. I was also just worried that it might have been getting phased out since I plan to keep buying more of these. I built one into my car and plan to do it to more cars as needed.

  • Can it pair with a Bluetooth headphone or speaker?

  • Dear. I´d like to produce a wireless microphone using this module. The goal is record voice to a DSRL photography camera which record video as well. Using these modules with Arduino can be done? The range won´t pass 10m from the camera, and I want control volume and maybe some channel in order to avoid interference. is there any tutorial about it???

  • Hi,

    does anyone know if I need both Inputs for the Line in? I have a a MONO analog signal (line and Gnd) do I really need to have a stereo in order to use Mic_Rn, rp, ln, and lp? or can I just make use of one?

    I guess I could put a jumper for it, but I was wondering if it only has one signal and I don’t “jump” the second one will it receive “noise”?


    • For phone calls, it only uses the audio signal coming into the left mic channel (which would normally be the tip of a 3.5mm connector, but it’s switched with the right channel on the connector on the board). When I was testing it, I used a mono to stereo adapter to plug a mic into the board so that the mic signal would be connected to both the left and right channels. It didn’t seem to add any significant noise, but my mic signal was very weak/quiet so it was hard to tell. Not sure how you’re planning on using the line in, but I hope this helps a little!

      • awesome! thanks for the advice on the reversed connector. By significant noise do you mean you can actually hear some noise being added? I’m trying to send an audio signal (MONO) via Bluetooth and do some DSP with Matlab… It surely helped! I appreciate it

        • I don’t think it was adding any noise. However, it was hard to tell because the only way I was listening to it was on the other end of a phone call, so the audio quality is bound to be terrible because it has gone through a phone call. I would probably just run the audio into both the left and right input channels on the BC127 just to make sure that it gets through. But if the BC127 is ever listening to only one of the two channels, I think it’s always the left channel.

          • Yeah that’s what I was planning on doing… you can’t go wrong with putting it to both channels…

  • Hello, I can’t send or receive anything from the board with FTDI basic, I’ve tried everything, I’ve read everything here and on blue creation’s website. Can somebody send me the exacts steps to connect the board on my computer ? I have the FTDI basic board 3,3V. Thank you very much.

    • Hi, I had the same problem with discovering this board. When using an FTDI TTL compattible board like the FTDI Basic or a FTDI cable only the recieve line to PC will work. When you check the schematics there is a resistor (R8 for Rx and R9 for CTS) of 10k in series with the bluetooth Receive lines. This will not work in a pull-down system. When changed to 100Ohm it will work perfectly. Normaly when all chips are 3.3V no resistors are needed.

      • Hi, are you certain that this is the only way to send and receive serial data via FTDI ? I mean sparkfun create this bc127 custom board to simplify user experience, so why the FTDI header need a different resistor ? Sorry but I just want to be sure ;-)

        • Hi, All I can say is that the FTDI connector was only working for the Tx side. Getting any data into the board was not possible. After investigation and a quick check at the Rx input with a scope of the BC127 module I found out that the signal was not low enough pulled down. just above critical level. So I changed the 10k resistors to 1k. Problem solved. Design flaw! I’m working with FTDI USB/TTL interface cables for years on all kind of projects. Also use it as an program and config cable (mini jack type). Always working well. only 3.3V and 5V compatebility can couse problems.

          • Hi, I’ve just tried what you said, by changing the 10K resistor to 1K but it’s still not working for me… I’m sure that I have no hardware problems because I bought 2 purple and 2 FTDI Basic, and I’m not receiving anything on each board. So maybe I’m doing something wrong with coolterm on Mac or Putty on Windows… Can you send me your configuration ? Thank you so much for your help.

            • Hi,

              I checked both purple and basic schematics but these units look the same. Do you have any comminication On the Rx side. As you turn on the bluetooth you should receive a message from the board. If not first check your FTDI basi module by connection the Tx to the Rx pin and chech for echo signal if you push any button in your terminal window. If that is working well you should reconnect the bluetooth modulre. (Tx to Rx and Rx to Tx. Leave the contol lines CTS and DTS. Use these later for better data control. Success.

    • Make sure you’re connected to the right header. There are two headers on the board; one to connect a PC and one to connect an MCU device.

      If that’s not working, I suggest contacting tech support. They’ll help you figure out whether it’s a configuration issue or perhaps a problem with one of your pieces of hardware.

  • I can pair devices but can not open connections, this result happens with all three android devices I have. A samsung S3, and two generations of Nexus7’s

  • When I’m making phone calls, the other person can’t hear a single thing I’m saying. No audio is making it from my microphone to the other end of the call. The microphone does work, however, for all other voice inputs to the phone such as voice commands. Is anybody else having this issue? I emailed BC to ask them about it.

    • Looks like no audio was getting through because plugging a mono mic into the connector on the board doesn’t connect to the left microphone input. The mic needs to be plugged into at least the left channel input.

      However, the microphone is very quiet and not sensitive enough. I have to have the mic ON my mouth for it to work. The bias circuit that I built worked great for the RN-52, but the same exact circuit yields very low mic sensitivity with the BC 127. What can be done to fix this?

      • I recommend a class AB op-amp amplification stage, with a 100 ohm variable resistor for audio “volume”…. Works great!

  • Has anyone had any luck disabling the iOS battery indicator? I get an error when I try to read/write enable_battery_ind. Also, does the purpletooth jamboree design limit the chip antenna performance? I’m not getting the greatest reception, and wondering if the receiver/chip antenna just isn’t very sensitive.

    • I have finally figured this one out: a typo was made by either the programmers or the manual writers. The manual shows “ENABLE_BATTERY_IND”, but “ENABLE_BATT_IND” is what actually works. I have tested it with Melody 5.0 RC11 and 5.5 RC3.

      • How did you get Melody 5.5?

        • You can get the the latest version of Melody (5.5RC11) and the updater application from the BC127 page of the BlueCreation website. As with any firmware updates, be careful when performing the update.

  • I am a bit of a novice when it comes to audio inputs and the like. In the data sheet it claims that is supports SPI, Audio In, Mic In, PCM, I2S, SPDIF, I2C however it doesn’t give much detail as to what is what.

    First pass this looks like a lot of “good” marketing speak. Is the PCM port the I2S protocol? How is SPI and/or SPDIF exposed and utilized? As I said, I am fairly new to audio formats and processing and would like to be able to inject audio from an Arduino into the purpletooth to play out over bluetooth.

    • Someday, we need to put together a good tutorial on audio formats. Which is to say, someday, one of us will need to learn more about those features so we can write them up.

      I’m pretty sure I2S, PCM, and SPDIF can be used on this module, and details on using them are in the user’s guide linked above. That said, the easiest thing is almost always just to use the audio input. Especially with an Arduino.

  • Are the right and left audio outputs reversed on the board?

    • Looks like it, at least on the 1/8" connector. The tip should be the left channel and the ring should be right. We’ll try and fix that on the next rev.

  • Can this be used with both 3.3V and 5V Arduinos (or other controllers)? Both a 3.3V and 5V Pro Mini are used in the hookup guide. The supply voltage in the BC127 datasheet is listed as 3.3V to 4.7V, so 5V should be fine, right? I wanted to ask because the RN-52 Bluetooth module that is also sold on a breakout board by Sparkfun is very specifically only a 3.3V chip, so I don’t know how strict that is with this one.

  • Can I connect BC127 to iPhone in BLE mode and A2DP mode. Simply Can i play music from iPhone via bluetooth and the same time send some data via BLE?

  • If we take this and combine it with spectrum analyzer I could have a music source some where that sends the music over bluetooth to this and have an Arduino so something with the spectrum analyzer? Or is there a more simple way to accomplish the same idea but keep the Arduino wireless from the music source?

  • Hi, The device does not respond to any command I am sending via terminal. I do receive status notifications from it. It is connected via FTDI. Any suggestions please?

    • Have you tried bridging tx and rx? Or opening a second terminal from your connected device (for ex. Macbook pro) and using the bc127 bluetooth port to see if and what it receives? Your problem may be that you’re disabling echo, so you don’t see what you’re sending and you’re connecting your terminal to the ftdi port and not the bluetooth port

  • Will this device allow me to stream audio from Arduino Due connected to it to BT speakers?

    • Currently the tones only are sent out over the audio out jack. I played around with them and found that they are mixed in the output only and not sent over Bluetooth which would have been helpful. I have asked Blue Creation for this feature in the future.

    • That depends on the nature of the audio; however, it can be used to transmit PCM, I2S, or analog audio signals, so the odds are good that the answer is yes.

      • Thanks. Is there a command in the Arduino library provided that will allow me to send a sound or a tone via this BT module to another device?? Or how can I actually do it? I want to send any sound, tone, even a simple sine wave…

  • Do these by default support more than just SBC in terms of codec? I read in the command set that if AAC and MP3 were desired to contact BlueCreations. I assume I would have to contact them to get that support? Assuming by default this doesn’t support them.

    For the AptX codec, is the license they are referring to something that would have to be requested from CSR?

    thanks, -Dan

  • So when will the BrownTooth and YellowTooth board be out? Hmm, somehow just doesn’t have the same ring to it, does it? :P

  • Q: RE: Hookup - Is there a way that you could use RCA connectors to hook this up? I am worried about the hum that ¼ inch jacks can add to your music.

    • These are 1/8" jacks, but that doesn’t fix that problem.

      The single-ended output signals are available on a .1" header right next to the audio jack. The differential signals are available on a header up at the top edge of the board. Either way, you can definitely pull the signals out to whatever other device you want to use.

  • Hi SFUptownMaker. Before purchasing a couple boards, I’d like a confirmation that this video is applicable to the Jamboree board. Specifically, the board enumerates as a COM port and will allow for a Melody upgrade?

    • You’ll need a serial-to-usb bridge, such as the FTDI Basic. The board in the video includes that part on the board, so it doesn’t require the external USB adapter.

      Otherwise, it should work. During development, I had no trouble updating the firmware on my BC127 modules using an FTDI basic hooked up to the header on the Jamboree board. I never tried the 5.2 upgrade, and I haven’t played with 5.2- you’re moving into unknown (and unsupported!) territory here.

      • Understood. Also, the schematic above seems to be missing two pages. Any chance the full schematic can be made available?

        • I’ll see what I can do. In the meantime, the full schematic is available in the EAGLE files; I think the conversion to PDF just missed the other two pages.

          • Can you please export this again, I’d really like use this schematic as a reference for a design, and the missing two pages are kind of important.

  • Has anyone used these with a Blue Tooth Speaker with this?

    • I have not; however, I have connected two BC127 modules together and streamed audio from one to the other.

      It’s not a slam-dunk that it will work with all Bluetooth speakers, but since it can act as an A2DP source, I would expect any A2DP sink speaker system to work with it.

Customer Reviews

No reviews yet.