HC05 Bluetooth Module consists of CSR Bluecore 04 outer single-chip Bluetooth system having CMOS (complementary metal-oxide-semiconductor) technology. This module also fulfils the Bluetooth V2.0+EDR technology. So let's get started with Introduction to HC-05.
HC-05 Bluetooth Module
- HC-05 Bluetooth Module is a low-cost, easy-to-operate & small-sized module used for wireless communication in the Bluetooth spectrum.
- It supports Serial Port Protocol (SPP), which helps in sending/receiving data to/from a microcontroller (i.e. Arduino UNO).
- Its default baud rate is 9600 for data communication and 38400 for command mode communication.
- HC05 can operate in master/slave mode and thus multiple slave nodes can be controlled using a single master node (called mesh networking).
- HC-05 supports "AT commands", controlled by TX (transmission) and RX (receiver) pinouts.
- You should also have a look at Arduino Bluetooth Communication using HC05.

HC-05 Pinout
- HC-05 Pinouts are used for powering up the module and sending/receiving data via Serial Port.
- So, let's have a look at HC-05 Pinout, shown in below table:
HC-05 Pinout | ||||
---|---|---|---|---|
Pin# | Pin Name | Working | ||
Pin#1 | Enable Pin | The purpose of this pinout is to set data value at a high and low level. | ||
Pin#2 | Vcc | At this pinout, the input supply is provided to the module. Its operating voltage is plus five volts. | ||
Pin#3 | GND | Ground (0V) | ||
Pin#4 | TX | Serial Transmitting Pin. | ||
Pin#5 | RX | Serial Receiving Pin | ||
Pin#6 | State | This Pin is connected to an LED, shows the operating state of the HC-05 Bluetooth module. |
- Here's the image, where I have labelled HC-05 Pinout:

- In the above figure, I have labelled 7. LED, which tells about different states of Bluetooth module:
- If it's blinking once in two seconds, it has received a command.
- If it's blinking continuously, means the module is waiting for input data.
- If it's blinking twice in one second, means it's connected properly.
HC-05 Datasheet
- You can download the HC-05 datasheet by clicking the below button:
HC-05 Features
- HC05 follows the "Bluetooth V2.0+EDR" protocol (EDR stands for Enhanced Data Rate).
- Its operating frequency is 2.4 GHz ISM Band.
- HC05 uses CSR Bluecore 04-External single-chip Bluetooth system with CMOS technology.
- This module follows the IEEE (Institute of Electrical and Electronics Engineers) 802.15.1 standard protocol.
- Dimensions of HC-05 are 12.7mmx27mm.
- Its operating voltage is 5V.
- It sends and receives data by UART, which is also used for setting the baud rate.
- it has -80dBm sensitivity.
- This module also uses (FHSS), a technique by which a radio signal is sent at different frequency levels.
- This module has the ability to work as a master/slave mode.
- This module can be easily connected with a laptop or mobile phone via Bluetooth.
HC-05 Working
- HC-05 is normally used in embedded projects, where data needs to be transmitted wirelessly over a small distance.
- We can transmit data between two HC-05 modules and can also send data from HC-05 to any Bluetooth appliance i.e. mobile phone, laptop etc.
- In order to do so, first of all, we need to power up our HC-05 module, as shown in below figure:

- As we push the button connected to Key Pin, it will get LOW & HC-05 will start blinking.
- Now, if you check on your mobile phone or laptop, you will be able to find a new Bluetooth device named HC-05.
- Once you connected with this device, you will be able to send and receive data in a serial stream manner.
- This stream is then processed by a microcontroller (i.e. Arduino UNO) attached with HC-05.
- However, do not expect this module to transfer multimedia like photos or songs; you might have to look into the CSR8645 module for that.
HC-05 Arduino Interfacing
- HC-05 has 2 working modes:
- Data Mode: HC05 sends and receives data via Bluetooth spectrum and then further processes it to Serial Pins.
- Command Mode: HC-05 waits for AT (ATtention) commands, acts accordingly & then sends the response in return.
- This module uses SPP (Serial Port Protocol) for the transmission of data so it can be easily interfaced with any microcontroller.
- For HC-05 Arduino Interfacing:
- 5V to Vcc Pin.
- 0V to GND Pin.
- RX (receiver) pin of HC-05 with the TX (transmitter) pin of UNO.
- TX pin of the HC-05 with the RX pin of UNO.

HC-05 Applications

- HC-05 Bluetooth Module is normally used for wireless data transmission among multiple microcontrollers.
- It can also be used to communicate between electronic devices like mobile, laptop, computers for data transmission.
- It also used in different information and data logging applications.
- It's used in robotics for wireless control.
- It's used in autonomous projects for collecting data.
The image of the HC05 pinout is misleading, the arrows point to wrong text.
Thanks Reply