The Guide to 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.

  • HC-05

    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.

  • BlueSMiRF

    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).

  • JY-MCU

    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.

  • Posted in: Robot Parts

40 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.

Leave a Reply to Calin Dragos-George Cancel reply

Required fields are marked *.