Bluetooth Modules for Arduino

This article was last updated on February 2018.

Wireless communications become a key driver of innovation for roboticists. Today, more than ever, you can easily use mobile devices to control and receive data from a robot.

A Bluetooth module and a development board are basically what you need to create a wirelessly communication channel with a robot. Since Arduino is the most used board to send and receive data over Bluetooth, in this post, I explore the best and cheapest Bluetooth modules compatible with this one.


The HC-05 Bluetooth module

The HC-05 Bluetooth module

If you watch on YouTube a movie with a Bluetooth-controlled robot, most likely the wireless communication is done with an HC-05 module. The HC-05 module is familiar, cheap (Amazon) and designed for transparent wireless serial connection setup with Bluetooth SPP (Serial Port Protocol).

Another very important aspect, especially if you are at the beginning and want to use a Bluetooth module, you can find on the Internet a whole series of tutorials and guides to introduce you into wireless communication with robots.

This Bluetooth module covers 9 meters (30ft) of signals and works both as a master or as a slave. For example, a robot can be designed to be a master connected to a slave Bluetooth module or as a slave board to make a wireless connection with a PC.

HC-06 RS232 TTL

The HC-06 RS232 TTL module

The HC-06 RS232 TTL module

On the second place after HC-05 is the HC-06 module(Amazon). This is also popular and very simple to set up with an Arduino board.

The module is suitable where wireless data transmission is needed in slave mode. The board can be accessorized with a USB to TTL serial cable to connect to your PC. Like the HC-05, the HC-06 module can reach a range of up to 9 meters (30 ft).

If you need a Bluetooth module to talk to your smartphone and an Arduino board, the HC-06 would work fine. But if you want to talk with another Arduino development board, the HC-05 module is the way to go.

BLE Link Bee
Added on February 2018

BLE Link Bee

BLE Link Bee

The BLE Link Bee is a new entry in the range of Bluetooth modules compatible with the Arduino board. The module supports the master-slave switch. It has a transmission range of up to 60 meters in free space and makes it one of the most powerful Bluetooth modules.

It is a serial to Bluetooth 4.0 module and designed to adopt the compact form of an XBee socket. This is one of the few modules that integrates a voltage regulator that supports both 5V and 3.3V MCUs.

If you plan to use an iOS or Android smartphone to control a robot, you can use the Play Bluno application to start communicating between phone and Arduino immediately.

BLE Mini

The BLE Mini Bluetooth 4.0 Low Energy (BLE) module

The BLE Mini Bluetooth 4.0 Low Energy (BLE) module

If you want to control easily a robot with an iPhone, iPad or iPad mini, or the latest iPod generation, you have to use a BLE Mini board. Also, the module is compatible with any Android devices with BLE hardware.

The Bluetooth module is easy to setup with an Arduino board and has a range of 50 meters (164ft).

You are allowed to develop your own iOS application using the open-source SDK provided by the Red Bear company.

The module includes the Bluetooth 4.0 Low Energy (BLE) technology and requires only a serial port for communication. Like almost any other Bluetooth module, this one is compatible with some of the most popular prototyping boards such as the Arduino, Raspberry Pi, or BeagleBone Black.


The BlueSMiRF and Bluetooth Mate

The BlueSMiRF and Bluetooth Mate

Connecting with other devices through Bluetooth technology does not take much and it is truly simple.

The BlueSMiRF from Sparkfun (Amazon) is one of the Arduino compatible Bluetooth modules that have a transceiver on it. This means that the Bluetooth module can send and receive data from up to 100 meters (328ft).

The BlueSMiRF worked right out of the box and is compatible with other Bluetooth devices that support SPP. The wireless module is perfect for applications that require a distance up to 100 meters (328ft).


The JY-MCU module

The JY-MCU module

The JY-MCU module (Amazon) can connect devices and robots that generate massive amounts of data. Compatible with any Android device, the Bluetooth module covers a distance of 9 meters (30ft) between the master and slave devices.

Designed for faster connections between an Android device and an Arduino board, the Bluetooth module can be up and running in minutes. In addition, you can find many step-by-step tutorials that show you how to interface the module with the Arduino microcontroller.


The ITEAD BT Bluetooth shield

The ITEAD BT Bluetooth shield

The BT Bluetooth module is a stackable shield with serial ports based on the HC-06 module. The shield can be connected directly to the Arduino UART port for wireless communication. Without obstacles or other interference, the Bluetooth shield can communicate in a range of 10 meters (32ft).

Shield Bluetooth with RN-42

The Bluetooth Shield with RN-42

The Bluetooth Shield with RN-42

The RN-42 Bluetooth shield is what you need for any project you would like to use an Arduino microcontroller. But unlike the HC-05 and HC-06, it has a price of 28.00€. The shield is fitted on top of the Arduino board and works in a range of maximum 20 meters(65ft).

Bluefruit EZ-Link

The Bluefruit EZ-Link module

The Bluefruit EZ-Link module

The Bluefruit EZ-Link is a combination of all of the modules described above. With a range of 10 meters (32ft), the Bluetooth module doesn’t need additional software or custom hardware to communicate wirelessly with another Bluetooth system.

The Adafruit module is designed to work on a serial console or using a sort of FTDI-like cable.

Unlike other Bluetooth modules, the EZ-Link is featured with automated detection of the COM port.

43 comments » Write a comment

  1. Thank you for the review,

    which Bluetooth module has the capability to change its output Bluetooth signal power?

  2. Hello, I’m looking for a Classe 1 bluetooth module which will fit on my arduino uno.
    Does anyone know if the BlueSMiRF is the chip I’m looking for?


    Lloyd (I’m French…)

  3. hello , i want a BT device which can give me a range just about 10 meters and give me a decent data rate . currently im using a HC 05 module of which the rage specified is around 9 meters but i hardly get 2 meters ! can it be because of the high data rate im generating ? can u suggest be a good BT module for my requirements ?

  4. Hello, I’m Yusron Fadhli from Indonesia.
    I’m in progress for final project in one of Electronic Institutes in Surabaya. I need to excerpt some sentences from this article. May I get your permission for it ?

  5. Which Bluetooth module is best suited for wearable applications, in fact a wearable wireless air qaulity monitor ? And is there Bluetooth modules with boards combined

  6. Hi,
    Even after reading several documents about BT and BLE, I still have problems understanding some things about their roles. From this modules, could you tell me which ones would work as slave, while using a PC as master? I think maybe the idea of central and peripheral device is better for BT. I just want to send commands from my PC using BT (with a BT dongle, for example).

  7. Hi

    Consider buying a HC-05 module.

    I want to send data from my MPPT charge controller to my notebook via a comport.

    Is this possible or must this module be programmed for this.

  8. Hello, I just want to send data to my phone which will be no more that 2 meters from my arduino. the data will be a time value and a description which will be sent no more than 10 times / minute. Is this acheivable? If it is, can you recommend a module to suit? Thanks in advance.

  9. Hello

    I’ve noticed that some of these modules are sold with a reference 3.6v-6v for VIN. Can I safely apply 3.5v to the VIN?

    What’s the voltage regulator on a HM-10?

    Kind regards

  10. hello
    this module, can work under water? what distance is can to Receive and Transmit data?

  11. Hi, i would like to connect 1 master with 3 slaves at least 50m in open area. Will be using Arduino Uno so which module is suitable for this project

  12. Hi everyone here
    I have a project to finish and I need a good arduino with a Bluetooth for the project

  13. Which Bluetooth module can be used to connect with earphones and can be programmed using Arduino

  14. Is it also available to send analog data ‘from’ my arduino ‘to’ my smartphone using hc06 module?

  15. hey, i want to use a bluetooth module, which can detect both BLE and the general bluetooth that is commonly available in android phones. which module should i buy in order to serve my purpose? i want the range to be small enough for a person present in an apartment and communicating only when being on the same floor.

  16. i want to send and receive data from and to Android devices(better if it can be ios also) with an arduino. I dont care for the range, but i want to take very little power. I want to send/take very small data packages. No media, just some json files for example…what should i buy? thanks

    • Hello David,
      Thank you for your comment. From what I know doesn’t exists any bluetooth board that can have many slaves connected in the same time. You can try xBee or NRF24L01.

  17. Great summary! Which would you recommend for this project? Simple IR transmitter to turn on/off and set volume on stereo. Arduino will be only 10 feet from stereo, but I want to control it via BT with my smartphone. The signal will need to travel through the first floor to the basement. As the crow flies, the distance is only be about 15 ft but don’t know how much the floor will take out of it.

  18. Hi, thanks for the review.
    I built a hearing aid without any micro controller, now i want to add a Bluetooth module to my hearing aid so that it it can communicate with my phone. thanks

Leave a Reply

Your email address will not be published. Required fields are marked *