HC-05 Bluetooth Module In-depth Description


  • It is used for many applications like wireless headset, game controllers, wireless mouse, wireless keyboard and many more consumer applications.
  • It has range up to <100m which depends upon transmitter and receiver, atmosphere, geographic & urban conditions.
  • It is IEEE 802.15.1 standardized protocol, through which one can build wireless Personal Area Network (PAN).
  • It uses frequency-hopping spread spectrum (FHSS) radio technology to send data over air.
  • It uses serial communication to communicate with devices. It communicates with microcontroller using serial port (USART).

HC-05 Bluetooth Module

HC-05 is a Bluetooth module which is designed for wireless communication. This module can be used in a master or slave configuration.

HC-05 Bluetooth Module - Alpha Electronz
HC-05 Bluetooth Module

Pin Description

HC-05 Bluetooth Module Pin Description
HC-05 Bluetooth Module Pin Description

Bluetooth serial modules allow all serial enabled devices to communicate with each other using Bluetooth.

It has 6 pins,

Key/EN: It is used to bring Bluetooth module in AT commands mode. If Key/EN pin is set to high, then this module will work in command mode. Otherwise by default it is in data mode. The default baud rate of HC-05 in command mode is 38400bps and 9600 in data mode.

HC-05 module has two modes,

  1. Data mode: Exchange of data between devices.
  2. Command mode: It uses AT commands which are used to change setting of HC-05. To send these commands to module serial (USART) port is used.

VCC: Connect 5V or 3.3 V to this Pin.

GND: Ground Pin of module.

TXD: Transmit Serial data (wirelessly received data by Bluetooth module transmitted out serially on TXD pin)

RXD: Receive data serially (received data will be transmitted wirelessly by Bluetooth module).

State: It tells whether module is connected or not.

HC-05 module Information

HC-05 has red LED which indicates connection status, whether the Bluetooth is connected or not. Before connecting to HC-05 module this red LED blinks continuously in a periodic manner. When it gets connected to any other Bluetooth device, its blinking slows down to two seconds.

This module works on 3.3 V. We can connect 5V supply voltage as well since the module has on board 5 to 3.3 V regulator.

As HC-05 Bluetooth module has 3.3 V level for RX/TX and microcontroller can detect 3.3 V level, so, no need to shift transmit level of HC-05 module. But we need to shift the transmit voltage level from microcontroller to RX of HC-05 module.

Bluetooth communication between Devices

E.g. Send data from Smartphone terminal to HC-05 Bluetooth module and see this data on PC serial terminal and vice versa.

To communicate smartphone with HC-05 Bluetooth module, smartphone requires Bluetooth terminal application for transmitting and receiving data. You can find Bluetooth terminal applications for android and windows in respective app. store.

Bluetooth PC Communication
Bluetooth PC Communication – Source

So, when we want to communicate through smartphone with HC-05 Bluetooth module, connect this HC-05 module to the PC via serial to USB converter.

Before establishing communication between two Bluetooth devices, 1st we need to pair HC-05 module to smartphone for communication.

Pair HC-05 and smartphone:

  • Search for new Bluetooth device from your phone. You will find Bluetooth device with “HC-05” name.
    Click on connect/pair device option; default pin for HC-05 is 1234 or 0000.
  • After pairing two Bluetooth devices, open terminal software (e.g. Teraterm, Realterm etc.) in PC, and select the port where we have connected USB to serial module. Also select default baud rate of 9600 bps.

In smartphone, open Bluetooth terminal application and connect to paired device HC-05.

It is simple to communicate, we just have to type in the Bluetooth terminal application of smartphone. Characters will get sent wirelessly to Bluetooth module HC-05. HC-05 will automatically transmit it serially to the PC, which will appear on terminal. Same way we can send data from PC to smartphone.

Command Mode

  • When we want to change settings of HC-05 Bluetooth module like change password for connection, baud rate, Bluetooth device’s name etc.
  • To do this, HC-05 has AT commands.
  • To use HC-05 Bluetooth module in AT command mode, connect “Key” pin to High (VCC).
  • Default Baud rate of HC-05 in command mode is 38400bps.
  • Following are some AT command generally used to change setting of Bluetooth module.
  • To send these commands, we have to connect HC-05 Bluetooth module to the PC via serial to USB converter and transmit these command through serial terminal of PC.





Checking communication



Set Password

e.g. AT+PSWD=4567



Set Bluetooth Device Name

e.g. AT+NAME=MyHC-05


AT+UART=Baud rate, stop bit, parity bit

Change Baud rate

e.g. AT+UART=9600,1,0



Respond version no. of Bluetooth module

+Version: XX OK

e.g. +Version: 2.0 20130107   OK


Send detail of setting done by manufacturer

Parameters: device type, module mode, serial parameter, passkey,etc.

Also See

Arduino Interfacing with Bluetooth Module