Found couple of fairly inexpensive Bluetooth modules based on CSR chipset that do Bluetooth 2.1 + EDR, and connect to uC over TTL, however the cheaper variety supports only "slave mode", which the more expensive (almost double the price) variety supports user selectable "slave" or "master" modes.

My use case is to transfer information (bi-directionally) between a uC performing data-logging and an Android phone. Preferably, a pairing should be done once, or very infrequently. Following that, a connection should be established automatically, everything Android phone and the uC+BT-module are in range. Once connected, I'd like an application on Android to pull the data from the uC, and send back few commands, s.a. clear the SD-card, place "read-time" and "reader-signature" in a access-log on the uC.

I've read somebit about Bluetooth, but probably not enough. My present challenge is to know for sure, if a "slave" module will serve my purpose, or I should go for one which can switch to "master" mode, as an option.

Also, wondering if the module should be able to support RFCOMM and SPP, or is it that RFCOMM alone would suffice?


2 Answers 2


I know this is an old thread, but it might still deserve some attention...

Bluetooth on Android is mainly used for connecting to wireless headsets. Wireless headsets are slave (not master) devices. This means you'll be able to connect to your slave-only cheap-o Bluetooth module. In fact, I have one of those modules ($6 on Ebay), and I just successfully paired with it from my Nexus S.

It also seems like you can program your Android phone to do anything you want with a Bluetooth link (see this question on StackOverflow for instance). The slave-only Bluetooth module should be sufficient for your needs: you do not need Master mode to transfer data bi-directionally.


Common bluetooth modules like the hc05 or hc06 that can be found everywhere for 5 to 10 bucks (ebay for example) are often used for exactly what you describe. Only thing you need to worry about is that the bluetooth module AND your phone support the Bluetooth Serial Port Profile (SPP), which is essentially a two way RS-232 over bluetooth protocol. Not all android phones support it, it depends on if the manufacturer (or 3rd party rom creator if you have something like cyanogenmod) has enabled it in it's bluetooth drivers.

As for slave vs master, your phone would do the pairing, you only need a slave device.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.