HC-05 Bluetooth Module

HC-05 Bluetooth Module: A Comprehensive Guide

The HC-05 Bluetooth module is a widely used and versatile wireless communication module that enables Bluetooth connectivity in electronic projects. Manufactured by various suppliers, this module is popular among hobbyists, engineers, and developers for its ease of use, cost-effectiveness, and compatibility with microcontrollers like Arduino.

Key Features HC-05 Bluetooth Module:

Bluetooth Standard:

The HC-05 Bluetooth module operates on Bluetooth version 2.0 + EDR (Enhanced Data Rate), supporting reliable and efficient wireless communication.

Operating Modes:

The module can operate in both Master and Slave modes. In Slave mode, it can pair with other Bluetooth devices, while in Master mode, it can initiate connections.

Communication Range:

The HC-05 is classified as a Class 2 Bluetooth device, providing a communication range of approximately 10 meters (33 feet). This makes it suitable for short to medium-range applications.

Serial Communication:

It communicates with other devices using a serial communication interface, making it compatible with microcontrollers like Arduino. The module typically supports standard baud rates like 9600 bps.

AT Command Configuration:

The HC-05 Bluetooth module can be configured using AT commands, allowing users to customize various parameters such as the device name, pairing code, and operating mode.

Voltage Compatibility:

The module operates within a voltage range of 3.6V to 6V, making it compatible with a variety of power sources.

Security Features:

The HC-05 supports basic security features, including the ability to set a PIN code for pairing and configuring security modes.

HC-05 Pinout Configuration

Pin Number Pin Name Description
1 Enable / Key This pin is used to toggle between Data Mode (set low) and AT command mode (set high). By default it is in Data mode
2 Vcc Powers the module. Connect to +5V Supply voltage
3 Ground Ground pin of module, connect to system ground.
4 TX – Transmitter Transmits Serial Data. Everything received via Bluetooth will be given out by this pin as serial data.
5 RX – Receiver Receive Serial Data. Every serial data given to this pin will be broadcasted via Bluetooth
6 State The state pin is connected to on board LED, it can be used as a visual feedback to check if Bluetooth is working properly.
7 LED Indicates the status of ModuleBlink once in 2 sec: Module has entered Command ModeRepeated Blinking: Waiting for connection in Data ModeBlink twice in 1 sec: Connection successful in Data Mode
8 Button Used to control the Key/Enable pin to toggle between Data and command Mode

HC-05 Technical Specifications

  • Serial Bluetooth module for Arduino and other microcontrollers
  • Operating Voltage: 4V to 6V (Typically +5V)
  • Operating Current: 30mA
  • Range: <100m
  • Works with Serial communication (USART) and TTL-compatible
  • Follows IEEE 802.15.1 standardized protocol
  • Uses Frequency-Hopping Spread Spectrum (FHSS)
  • Can operate in Master, Slave, or Master/Slave mode
  • Can be easily interfaced with Laptop or Mobile phones with Bluetooth
  • Supported baud rate: 9600,19200,38400,57600,115200,230400,460800.

Where to use HC-05 Bluetooth module

The HC-05 is a popular module which can add two-way (full-duplex) wireless functionality to your projects. You can use this module to communicate between two microcontrollers like Arduino or communicate with any device with Bluetooth functionality like a Phone or Laptop. There are many android applications that are already available which makes this process a lot easier. This HC-05 Bluetooth module finds utility in a wide range of applications across various domains due to its versatility, ease of use, and cost-effectiveness. Here are some common areas where the HC-05 Bluetooth module is frequently employed:

Home Automation:

The HC-05 module can be integrated into home automation systems to enable wireless control of lights, appliances, and other devices using a smartphone or tablet.


In robotics projects, the HC-05 Bluetooth module facilitates wireless communication between the robot and a remote control device, allowing for tasks such as remote operation, data logging, and sensor monitoring.

IoT (Internet of Things):

The HC-05 enables IoT devices to communicate wirelessly with each other and with cloud services. It can be used in smart home applications, environmental monitoring systems, and wearable devices.

Vehicle Diagnostics:

Automotive enthusiasts and professionals can use the HC-05 Bluetooth module to build Bluetooth-enabled diagnostic tools for monitoring vehicle performance, reading error codes, and performing diagnostics.

Wireless Data Transfer:

The HC-05 facilitates wireless data transfer between electronic devices such as microcontrollers,  Arduino boards, and Raspberry Pi computers. It can be used for transmitting sensor data, commands, and firmware updates.

Healthcare Monitoring:

In healthcare applications, the HC-05 can be used to transmit vital signs and other health-related data from wearable sensors to smartphones or medical monitoring systems.

Remote Control Systems:

The HC-05 module enables the development of remote control systems for various applications, including home entertainment systems, drones, and industrial machinery.

Education and Prototyping:

The HC-05 Bluetooth module is widely used in educational settings and prototyping environments for teaching and experimenting with wireless communication concepts, Bluetooth protocols, and IoT technologies.

Security Systems:

The HC-05 can be integrated into security systems for remote monitoring and control of surveillance cameras, access control systems, and alarm systems.

Environmental Monitoring:

Researchers and environmentalists use the HC-05 module to develop wireless environmental monitoring systems for measuring parameters such as temperature, humidity, and air quality.

How to Use the HC-05 Bluetooth module

The HC-05 has two operating modes, one is the Data mode in which it can send and receive data from other Bluetooth devices and the other is the AT Command mode where the default device settings can be changed. We can operate the device in either of these two modes by using the key pin as explained in the pin description.

It is very easy to pair the HC-05 module with microcontrollers because it operates using the Serial Port Protocol (SPP). Simply power the module with +5V and connect the Rx pin of the module to the Tx of MCU and Tx pin of module to Rx of MCU as shown in the figure below:

HC-05 Bluetooth Module Circuit Connections

During power up the key pin can be grounded to enter into Command mode, if left free it will by default enter into the data mode. As soon as the module is powered you should be able to discover the Bluetooth device as “HC-05” then connect with it using the default password 1234 and start communicating with it. The name password and other default parameters can be changed by entering into the


1. Wireless communication between two microcontrollers

2. Communicate with Laptop, Desktops and mobile phones

3. Data Logging application

4. Consumer applications

5. Wireless Robots

6. Home Automation

Share this Post

Leave a Comment

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

Scroll to Top