This is a breakout for the BC127 Bluetooth Module. The BC127 is a highly flexible, low power, small form factor Bluetooth Version 4.0 Certified Audio module. This is an ideal module for developers who want to quickly and cost effectively integrate Bluetooth functionality into their products.
The BC127 Breakout board provides basic access to all the pins on the BC127 module, along with a six-pin serial header with the same pinout as the FTDI Basic boards, allowing it to connect to boards like the Arduino Pro, Pro Mini, and LilyPad. It also includes voltage regulation, serial data level shifting circuitry, and support for the built-in battery charge circuitry.
This skill defines how difficult the soldering is on a particular product. It might be a couple simple solder joints, or require special reflow tools.
Skill Level: Competent - You will encounter surface mount components and basic SMD soldering techniques are required.
See all skill levels
If a board needs code or communicates somehow, you're going to need to know how to program or interface with it. The programming skill is all about communication and code.
Skill Level: Competent - The toolchain for programming is a bit more complex and will examples may not be explicitly provided for you. You will be required to have a fundamental knowledge of programming and be required to provide your own code. You may need to modify existing libraries or code to work with your specific hardware. Sensor and hardware interfaces will be SPI or I2C.
See all skill levels
If it requires power, you need to know how much, what all the pins do, and how to hook it up. You may need to reference datasheets, schematics, and know the ins and outs of electronics.
Skill Level: Competent - You will be required to reference a datasheet or schematic to know how to use a component. Your knowledge of a datasheet will only require basic features like power requirements, pinouts, or communications type. Also, you may need a power supply that?s greater than 12V or more than 1A worth of current.
See all skill levels
Based on 5 ratings:
1 of 1 found this helpful:
I bought this breakout bd to test the audio output. Without a headphone amplifier the 8670 cannot drive earphones. This was a cheap quick way to prove if a headphone amplifier was needed.
1 of 1 found this helpful:
Good break out board for the bc127. It comes with melody v.5 you'll want to update it to melody v.6
Also download coolterm for your serial monitor as the arduino serial monitor does not recognize carriage returns (it sends them but doesn't interpret them)
I'm using a generic USB to serial contest for testing, works great.
All in all very convenient solution. Thanks a bunch for putting this together, it's been a big help. Hit me up if you need help with it.
The rest of the board is exactly what I expected and required. I thought it would be cool to use the 4 broken-out CAP_SENSE pins to drive the playback functionality, but unfortunately BC says that's not going to happen. Overall a very good BOB.
Edit: the sound quality coming off of this and the media info coming in as alerts is awesome. moving to 5 stars.
Would not recommend this. I purchased one of these for use with a very simple retrofit of an old 50's radio. Hooked it up to a mono audio amplifier and 20W speaker, and heard a ton of high pitched whining, static, and clicks and pops. After doing everything I could to make sure it wasn't some other problem (hooking up the amp and speaker to an aux input, checking and double-checking and triple-checking for ground loops, connecting to multiple phones) I confirmed it was the board. To Sparkfun's credit, they sent me a warranty replacement, saying it was a defective board. But lo and behold, I wire up the replacement board and.... same problem. It's a shame, because the BC127 chip is great and has lots of configurability, but the noise makes this unsuitable for anything other than basic audio projects.
Sorry to hear that the BC127 breakout did not function for your purposes. I've asked our support department to contact you to see if they can help you out with this issue.
This was very easy to set up and get running on the bench. It was practically a turnkey drop-in for my project. No firmware setup was necessary. Just hookup the power, the amp, pair and play.
The audio quality was (is) really great and combining it with any of SFE's audio amps completed the package.
I think it suffered from two things (neither the fault of the BoB): a lack of marketing and incomplete documentation. The hook up guide included the BC127 in three different form factors, which made it hard to follow and didn't cover enough of the features of this breakout. Like, there was no description about using the battery charging circuit or how to hook that up. The other problem is that it wasn't clear that the BC127 and the RN52 are the only two BT AUDIO solutions. Sparkfun should've been shouting this from the rooftops like this: Are you tired of being laughed at? BUILD YOUR OWN SONOS OR ALEXA with the BC127 breakout board from SFE!
The only downside was the size. The SoC package is too small to work with for the home hobbyist but the breakout too large, too inconvenient for, say, wearable projects. I would have liked to see a much smaller form factor that left out the wackier and redundant features, like half the IOs, capacitive sensors, and (for me) mic inputs -- basically the whole left side of the board and most of the right.
Looking for answers to technical questions?
We welcome your comments and suggestions below. However, if you are looking for solutions to technical questions please see our Technical Assistance page.
Log in or register to post comments.
does anybody know the audio voltage output at the SPKR_L,SPKR_LN,SPKR_R, SPKR_RN? It's not in the datasheet
-------------------- Tech Support Tips/Troubleshooting/Common Issues --------------------
Connecting the BC127 Breakout Board to a Serial Terminal
Don’t expect to directly connect the 5V FTDI breakout board to the bottom FTDI header pins on the BC127 breakout board. The Eagle board layout & schematic files show that the Tx pin would connect to your Tx on the FTDI and the Rx to the Rx pin on the FTDI. This was due to the design of the BC127 Breakout board so that you can connect it directly to an Arduino Pro, Pro Mini, and LilyPad. If you place it on a breadboard or wired the pins appropriately from Tx to Rx and vice versa, you are able to go into command mode with the BC127 through the serial terminal (with settings 9600 8-none-1-none) after entering “$$$$”.
As I wanted to avoid using a voltage regulator in my project, I tried to push the embedded voltage regulator to its limits. As seen in the schematics, the board uses a MIC5219 from Maxim to get 3.3V. I found its datasheet, which tells us that the maximum input voltage is 12V. Bingo ! Alas, the board couldn't take more than 9V from the VCC (V_FTDI) and stopped working immediately, but worked fine again when fed acceptable voltage. My greatest mistake would have been trying one last time with another 12V power supply; since then, the board is dead :(
Could you tell me why, knowing that theorically the 12V should have been converted to 3.3V ? Maybe something else broke ? If anyone has a clue, just let me know !
Do you have an idea of how much current you were drawing?
The power dissipated by the regulator is (VIN-3.3V)*Iout; at, say, 100mA, that's nearly one watt! It has some protection against that but it's not foolproof.
On the bright side, I'd be willing to bet the downstream stuff survived, so you could probably provide 3.3V directly to the 3.3V pin and power the board that way, bypassing the dead regulator altogether.
I used a multimeter to see if the regulator still worked; and it did, outputting a steady 3.3V. You gave me a little hope, but providing 3.3V to the power pin didn't work. Should I try something else, or just wait until Sparkfun makes that board again ?
I am currently using a 5V 16MHz Arduino Pro Mini to communicate with the BC127, is 5V or 3.3V Arduino recommended? Every time I send a command to the BC127, I receive an ERROR message prior to receiving an OK and am not sure why.
Did you try the RESET command ? Does it work? It should tell you the version of the software, at least. You could start from that.
Are you using the println() command? That command sends a newline AND a carriage return; the BC127 expects only a newline. To fix it, use print() instead, and to the end of your string that you print, add \n. That will inform the BC127 that you're done sending WITHOUT causing the error.
I'm using one of the Arduino library functions to send a command, for example "BTModu.stdCmd("DISCOVERABLE OFF")". I then receive an ERROR then OK message. I can send commands to the BC127 no problem with an FTDI, the problem I'm having is using the Arduino.
Also, what is the best way to observe the responses from the BC127 when using the Arduino? Is it ok to use an FTDI to read the responses (via a serial monitor) while programming it with the Arduino?
Eesh, I don't know, then.
As for watching the responses, I usually just hook up one or more RX pins from other FTDI basic boards and open serial windows on each. That allows you to see what's going across on each pin. Timing is an issue, but for verifying the formatting of the strings it can't be beat.
Hoping someone from Sparkfun tech support can help me with this.
Bought the BC-127 breakout module a few weeks ago. Soldered on some header pins, and after some struggles with the FTDI connection (wish I had spotted these comments sooner!) was able to get it configured.
I'm getting an issue though with a roughly 800hz hum over the audio channel, which I've determined is originating from the BC127 module. When everything is hooked up, but no audio is playing, there's no hum. When I begin playback though, the hum is overlayed on the output audio coming from the BC127. Pausing playback on the BT connected phone results in the audio stopping, but the hum continuing for several seconds, followed by a loud pop, and then the hum stopping.
It seems to me that it's an issue internal to the BC127 or breakout board. Is this a defective board? Or is there some way I can remove this hum without affecting the audio quality? I've confirmed that it's not a result of a ground loop, and tried adding some filtering to the audio output, but can't remove the hum without cutting out audible range frequencies on the output. Any suggestions would be appreciated.
Other than supporting BLE, how does this module differ from the RN-52?
It supports a bunch of other protocols including SPP, and can switch between them easily.
Does anyone have information about enabling the aptX low latency codec for Melody v5.2 or v5.5? They mention it has these capabilities in a press release (https://www.bluecreation.com/article.php?nid=24) and demo it on youtube (https://www.youtube.com/watch?v=msGC38ahpYM). However, enabling this feature is not mentioned in the v5.2 or v5.5 manual. Using the aptX codec with the v5.0 software, I've measure the latency to be 150ms. This is still too high for my project. Any help would be great.
Were you able to figure this out? Also, how are you telling it to connect with aptX instead of SBC? I have CODEC set to 001, which means aptX is enabled, but when I connect with OPEN [address] A2DP, it automatically uses SBC. Incidentally, I'm getting about 150ms delay with SBC.
As far as I've been able to determine, using aptX doesn't affect the latency. I measure nearly 200ms using SBC or aptX. Also, it appears that there's no way to initiate an aptX connection from the BC127. The audio source has to do it. My testing was done using two BC127 devices with one set as an audio source, as my apple devices don't support aptX.
Has anyone who is on a firmware capable of iBeacon, had any trouble with the format of UUID? I can't find my iBeacon, but when I give the same UUID to another iBeacon, I can discover it.
I saw this module supports BLE, but I can't find anything mentioned about supporting GATT, service discovery, custom profiles, and notifications/indications. Is this supported? I'd like to interface it to my BLE remote.
Don't expect to directly connect the 5V FTDI breakout board to the bottom FTDI header pins on the BC127 breakout board. The Eagle board layout & schematic files show that the Tx pin would connect to your Tx on the FTDi and the Rx to the Rx pin on the FTDI. If you place it on a breadboard or wired the pins appropriately from Tx to Rx and vice versa, you are able to go into command mode with the BC127 through the serial terminal (with settings 9600 8-none-1-none) after entering "$$$$".
Inquiry: I enjoy taking old cell phones (a few I put back for safe keeping) and turning them into bluetooth handsets. However, they are limited to "push a button, talk to voice dial, hope it gets your request correct." What I was curious, can this be used to make, lets say a Microtac function as though it was actually a cell phone?
Well, that depends. You can use it to send a phone number, so if your handset can generate a number somehow, you can certainly capture it and send the command to the phone. No guarantee that older phones will respond to that datastream, however.
Judging from the datasheet, which didn't say yes or no, I am assuming a microcontroller, such as the ATMega chip. May be worth checking out, though. Thanks.
Just purchased this and the PTJ. I wanted to update mine. Wired my FTDI Rx to Tx and Tx to Rx as well as vcc and gnd. The melody update tool ran and updated until about 97%. Froze for a minute where no more lights were blinking. And then said completed. Now, the LEDs on my bc127 breakout just blink in synch to the ftdi where it outputs "BlueCreation Copyright" infinitely. Tried bringing PIO_0 high when booting, but nothing. If anyone has any idea on how to get this stable again, I'd really appreciate it. .
Although this breakout board is designed for audio purposes, can it make use of the message access profile (MAP)? I would like to have a microcontroller use my phone to send and receive texts.
Don't think so. It's not listed in the datasheet as a supported protocol, at least.
Just received this board. I can confirm it DOES support both aptX and AAC. There are serial commands to enable these codecs which are extensively documented in the BlueCreation Melody software manual. I connected my Mac to the device and played audio through iTunes. Both MacOS and the device reported aptX codec in use. There is some documentation about how to enter an aptX license key, but it seemed to work without it. I also connected my iPhone 6, and confirmed it playing AAC audio from iTunes Match. I was told by a BlueCreation employee that AAC only requires licensing if you're going to sell a product, and that I was free to use it as I like for personal projects.
Anyone know if this module can do A2DP and SPP at the same time? Both profiles active on the same bluetooth connection at the same time? Is this even possible?
Yes, it can, although you can't remotely control the device via SPP.
Well, that's not entirely true...if you tie RX and TX together on the remote device, it should see the strings you pump across SPP echoed right back into it...
I should try this.
Can Anybody tell me whether I can Transmit MUSIC from this module? I have doubt about Term Melody?
Is this module can transmit Audio SONG?
Yes, although you may be better off looking at the Purpletooth Jamboree, which includes the necessary hardware to accept a standard line-level input and an amplifier to convert the output to single-ended.
I can't figure out how to connect a mic to this. I got the Sparkfun electret microphone breakout and the mems microphone breakout , but the pins don't really match. The mic breakouts have VCC, GND, and AUD, whereas BC127 has MIC_RN, MIC_RP, and MIC_BIAS (and GND) which probably means the BC127 expects balanced audio input? Anyway, with VCC 3.3V, AUD connected to MIC_RP and GND connected to either MIC_RN or to GND, all I get is excruciating noise. Does anybody know this?
ok, maybe it was because I used 3v3 from an FTDI basic board to power the mic, because when I used a 1.5v battery it worked much better.
Hmm. I still only get good signal when I power the Mic and the BC127 from separate sources. Does anybody know how to hook up a SparkFun MEMS Microphone and the BC127 on a single battery?
OK solved it but I did have to upgrade firmware. Connect mic breakout GND to BC127 GND and to MIC-. Connect AUD to MIC+. Connect VCC to MIC_BIAS. Mic is now powered by same battery and there is less noise. MIC_BIAS cannot be set in Melody 5.0. I upgraded to Melody 5.7RC4. MIC_BIAS is set using command 'CODEC'.
Thank you so much!!! I was getting horrendous noise on my microphone and your comment solved my problem. In retrospect it was a really stupid mistake, but in case anyone has this same problem, the noise coming across the line of the MIC (and speaker) came from the fact that I connected the mic GND straight to the arduino's GND through the breadboard, when in fact I should have connected it to the BC-127 breakout board GND instead.
Can someone explain the differential audio output. If I wanted to connect this to a headset speaker (mono), do I need a amplifier or can I do this with discrete parts?
This is obviously quite late, but figured I would respond for the benefit of anyone finding this later.
You can configure the module to output in mono by adjusting the codec setting. The default codec setting is 0 0 1, with the third digit representing stereo/mono output. If you set that last integer to be zero, then the module will output in mono over the left channel output.
Hi All, just to clarify a few things. AAC and APTX are royalty-based codecs. Typically, you pay the royalty per part. I assume SF did not sign up for this. You may be able to contact BC and ask to purchase FW with AAC and APTX codecs, let us know how it goes if you do!
Setting the codec to APTX (or AAC) does not guarantee that it will be used. It just "requests" to use it. Both devices must support it. If they don't, it will default to SBC.
Also, you can communicate with iOS via BTLE without MFi (as well as streaming audio via A2DP), but you will need MFi if you want to use SPP. You can, however, use SPP with Android.
as this supports BLE can it communicate w the iphone, no need for MFi?
That is correct.
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
Hey, does anyone have the mechanical dimensions for this unit? Thanks.
The ideal method for figuring this out is to download the free version of EAGLE from CadSoft and figure it out yourself; that way, when you need another, different measurement (say, the exact location of a header pin relative to the lower right corner) later, you don't need to ask again.
That said, it would appear to be 2.5" by 1.3", although the module hangs off the end by a smidge (less that .05 inches).
Does this module come with AAC codec support? I'm trying to find a chip that can provide high quality audio from an iPhone. I don't care about APT-x if it can do AAC.
It does not support AAC.
Actually it might! On page 13 of the Melody manual, it says you can select one of several codecs, including AAC. It has a footnote that says they're not included by default with Melody, and that you need to ask BlueCreation for them, but in theory then you would have AAC.
Hi? I need Bluetooth module that can be master role like as PBAP profile support smartphone. Can be support Master Mode on BC127 Breakout Board ?
Has anyone tried using the event notifications? I can't seem to get them read from the Arduino. Specifically I want to get the song information out of the notifications.
When I had the BC127 directly connected to my computer and was playing music from my phone to the BC127, I could see the AVRCP song info automatically being printed from the BC127 to the computer. If you haven't already, try to get that working and see the printouts to confirm that the BC127 is doing its job with that. You might not be reading the printouts properly with the Arduino.
Hi, I was trying to connect the breakout board to the pc, I used Hercules, Putty, Tera Term nothing works!!!! I had the right setting but still cant get the "READY" prompt, can anyone help? BTW I am using FTDI 6 pin board.
maybe your pinout of the ftdi isnt well matched... don't match it by its colour, but its actual configuration... find gnd and go down from there... I suggest CoolTerm i think thats what its called. In the settings select the ftdi cable as the connection and set it to 9600 baud! thats it!
When using a microphone with the BC127, it 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 noticed the same thing as well. One thing that helped a bit was 'set input_gain=15'. You have to do that every time you use the mic though. When read, you get input_gain=15 but for some reason, the back end register gets reset to something like 7 or 8, and has to be rewritten back to 15 to get the microphone sensitivity back up. It's a little annoying. I suppose some of that also has to do with mic sensitivity or bias voltage. Maybe try lowering the bias resistor value to get more current across the mic? Is your filtering attenuating your signal?
I'm getting tons of noise when I try to connect the audio outputs (which are differential) to a non-differential audio amplifier. I'm using an op amp to convert the differential signal to a non-differential one, but I'm sure that I must be missing something. What are all of you using?
Take a look at the Purpletooth Jamboree schematics: It's basically a reference design. I found it helpful for figuring out how to do the audio stuff on this chip.
Yeah, I've discovered that too. The Jamboree's design uses a TPA6138A2 headphone amplifier to go from differential to single-ended, and they've used the reference design from its data sheet. My project originally was going to use a small amp that had differential inputs and everything was fine. After switching to a larger amp which was single-ended, I eventually also switched to a Jamboree to make things easier.
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.
There's a voltage shifting circuit on the board, so it can be used with 3.3V or 5V processors. It also has an onboard 3.3V regulator, so it can be powered from 5V as well.
to add to this answer, the max ratings of this module are up to 4.2V, that means that if you want to power your circuit with the li-on batteries they sell here you can do it with minimim hardware modifications (directly although not recommended)
Thanks. Is the 3.3V regulator just for the power supply or does that also apply to the UART TX/RX lines? I.e. can I directly connect the TX/RX lines to a 5V Arduino, or does that need to be level-shifted down to 3.3V externally?
There is level shifting circuitry on the board to protect it from being damaged by 5V data signals.
Thanks again. Last question, I promise: Is this level shifting circuitry on the Purpletooth Jamboree board as well?
Yes. In fact, it's pretty much a standard feature on most modules that we sell that run on 3.3V. Smaller breakout boards don't usually get it, however, to keep the size down.
Has anyone tried using the Melody Updater? I can't get it to run on any of my Windows machines. I would post this question on the Bluecreation forums, but I've been waiting a couple of days for them to activate my account.
Resolved. It appears to have been missing VC++ libraries and possibly the order in which they were installed. The Melody Updater comes with the 2005 and 2012 redistributable libraries, but I also ended up installing the Windows 7 SDK. Now I have Melody v5.5 running on my BC127.
Did you use a FTDI bridge (and have you connected all the pins, including CTS and DTR)?
I tried the upgrade but it bricked the BC127, and now it seems to be stuck on DFU mode, I was using a PL2303 with TX RX only (well 70 bucks to the trash bin, time to order a new jamboree board).
did you flip tx to rx and rx to tx? $70 bucks is quite a lot of money you could use towards other hardware!
I used the SparkFun FTDI Basic Breakout, and didn't connect CTS or DTR - just VCC, GND, TX, and RX. I've just gotten a PurpleTooth Jamboree and am about to upgrade it as well. Hopefully it works.
CTS and DTR should not be required for the updater (earlier versions did need it, but not any more). I did a lot of upgrades but never saw a bricked board...I wonder if it's something with the PL2303?
But the PL2303 did work great for a month with the jamboree (bc127).
Wondering if this (pl2303) has something to do with phonebook downloading that never completes (the PBAP_PB OK event is never signaled by the BC127, but the phone book list size seemed complete)
But it seemed more like a firmware bug than a UART bridge issue (all other command and events did worked great). That is why I wanted to update to the latest firmware.
It is bricked (really really bricked it seems) as it outputs a series of BF FF (in several combinations) when powered, in what probably is the DFU mode sending a "ready" header hex string.
Now if there is a pin that can be tied low (or high) at power up to unbrick it (like in similar BT IC's), THAT will be great (not holding by breath for that though)
From BlueCreations BC127 page:
"Additionally the DFU process is a reliable upgrade protocol. If this upgrade fails or is not completed the device still functions and allows the upgrade to be restarted."
Yeah, right ;)
I think I did read about it in the datasheet, I think you do pull high a pin for one second or more for switching mode/profile
Yes, but only to "restore to factory settings" (gpio0) but for that you need a working firmware.
Actually there is no way to recover from a half firmware write. Tried almost all of the possible ways to recover it (short of using the konami code ;) ), no repsponse fromBlueCreations, no activation to post on their forums, and a "you should contact BlueCreations" from sparkfun "support".
Actually there might be a way to recover it, using the usb port on the BC127, but then again it is undocumented and it seems that it will continue to be that way.
Already ordered a new unit, but not really sure that I will risk it with a firmware update again (even with the ftdi ic)
I have implemented a BC127 emulator in software and I can reproduce the firmware update error every time (just a few bytes are sent continously to the unit after entering in DFU mode, but the updater reports update completed ok, thus bricking the module), so it has nothing to do with being PL2303 or FTDI, it is an updater issue or a DFU process issue. Definetely it is not "unbrickable" as claimed.
BlueCreation's Battery Schematic http://www.bluecreation.com/userfiles/BC127%20Battery%20Fast%20Charge(2).pdf shows a 150mAh Li-Ion battery and notes that an R2 of 0.4 ohm provides a 500mA fast charge. However, in the BC127 Breakout and Purpletooth Jamboree schematics, this resistor (R11) is 0.75 ohm. Was it chosen to provide a slower charge? Can I use a much larger battery - like a 2500mAh Li-Polymer?
Am I correct in assuming that Blue Creation will eventually include in the firmware commands to configure the cap_sense pins?
Just so you know the link to your "Understanding the BC127 Bluetooth Module" Module Datasheet.pdf is giving a 404 error. Correct link is >> http://dlnmh9ip6v2uc.cloudfront.net/datasheets/Wireless/Bluetooth/DataSheet-BC127(10).pdf You left the last part off.
Fixed. Apparently the close paren around the (10) was messing up the markdown link. Thanks!
Will this device allow me to stream audio from Arduino Due connected to it to BT speakers?
will this sync with a phone?
Define "sync". It will connect to phones; I've streamed audio to it from my Android phone.
Question for anyone that's played with one of these, how do you connect a microphone from a standard phone headset through a TRRS connector? I have tried hooking up MIC_RP to the sleeve, with MIC_RN to Ring 2, MIC_LP -> S MIC_LN -> R2; MIC_RP & MIC_LP -> S, MIC_RN & MIC_LN -> R2, and nothing seems to work. I can hear audio just fine, but nothing goes through the mic. Am I missing an amplifier or do I have to do something with MIC_BIAS_A? I have FORCE_ANALOG_MIC set to ON, but still nothing. I realize that I have probably bit off more than I can chew with this, but any help is appreciated.
Never mind. I'm an idiot, and an internet search about microphone bias is your friend if your like me and don't know what your doing.
I was wondering if the gods of sparkfun know of any documentation on how to use the programmable io pins and/or the capacitive touch. have they even implemented this in the current firmware? i have searched for ages and can't find a thing.
The IO pins are fairly easy to use; check the command set manual, page 6, under PIO. Note that you'll need to disable GPIO control first; see page 15 of the manual.
At this point, however, the cap sense is not supported by the Melody firmware that ships with the device. If that changes, we'll update the product description.
Im having a difficult time with this device. It seems the UART is very unreliable when sending commands via Hercules. I send music commands, and it might work ONCE, then I get the ERROR response when I send any other commands. The GPIO buttons always work and if I use them, I can send another command via UART before it breaks again. Whats up with that?
Edit: I have found out that the module expects a return carrage '\r' after the command. When I used Hercules, I was pressing enter after commands, which sends a '\n\r'. The module does not like the '\n' before the '\r' and it will cause problems... Just an FYI!
Also, how does one obtain the firmware upgrade software and upgrade tool??
thanks! I was having this problem with coolTerm!
Ummmmmmm.... What's up with Rx and Tx not being swapped on the FTDI port?? I tried direct connecting my FTDI and realized that Rx on the FTDI goes to Rx on the breakout board. Same with Tx. What gives??
It doesn't fit your FTDI board, but it will connect to your Pro Mini. Its always a toss up as to which we want things to connect to, but we figure its going to end up in a project connected to something like a Pro Mini and not your FTDI board.
Just to clarify, does the TOGGLE_VR command activate the voice assistant on iPhone/Android phones (e.g. Siri or Google Now or whatever the phone has configured)? This is supposedly part of the A2DP profile, but I couldn't make it work on the RN-52 and it'd be great if it was that easy on the BC127. Let me know, and thanks!
Yes, I was just playing with the module and it does kick in the voice commands on the phone (siri, gnow) when you send it TOGGLE_VR. Sending TOGGLE_VR a second time has it cancel.
The Blue Creation web site mentions a Melody 5.2 interface [announced August 2013] and the linked pdf says 5.0. Is there a planned upgrade? Does this already have the new firmware and just an old document? I'm interested in the multiple SPP/audio connection feature that is supposed to be in 5.2.
The DFU file for Melody 5.2 is available on the BlueCreation website. I assume the BC127 that's equipped with the PurpletTooth Jamboree can be upgraded from 5.0 to 5.2 using their DFU upgrade tool. The only problem is I asked BlueCreation for the 5.2 Manual (command set, etc.), and I was told it is currently only provided to those who purchase their Discovery dev kit ($$).
So, Sparkfun, can YOU get the 5.2 manual?
I'll see what I can do. Watch this space.
Any update here?
Yup. Hit this link.
You're the man. Thanks!
Can we create custom BLE services with this chip? For example, could I make an iBeacon with it, or is it limited to the serial BLE service like most other Arduino BLE modules?
It is, at this time, limited to serial data exchange.
So, any way you guys can publish what the serial command set for the interface is? I ask because in the library tutorial, you guys say:
To make things easy for the advance user, we’ve also included three additional functions that allow you to send any command in the datasheet, and to alter or retrieve any parameter setting.
But if you look at the datasheet(http://dlnmh9ip6v2uc.cloudfront.net/datasheets/Wireless/Bluetooth/DataSheet-BC127(10).pdf) linked here, there are no such commands listed.
Will this work to send data to an iOS device or is it a purely audio profile?-Keith
It can send data to iOS devices, although we didn't test that.
See the hookup guide for more information about the BLE data link mode.
is it a simple BLE module or does it have an embedded uC? like a 8051 or something similar? Interesting product, looking forward to trying it out
It does have an embedded uC to handle the stack; data transactions are handled through simple streaming to and from the onboard UART.
maybe this is a stretch but do you have the eagle file for people who want to develop their own circuits with this module?
There's a link to the EAGLE files above; you can also find them in the GitHub repository. The BC127 module footprint is in the SparkFun EAGLE library, also available on GitHub.
Awesome! one LAST question I promise!, will you carry the actual ble modules themselves (no breakout) available anytime? I see they're from Cambridge and shipping to the America's is quite expensive...
+1 for a module only option!!!
Possibly; I expect that will depend on the demand we see. As an engineer, I am (thankfully) spared decisions of that type. ;-)