The HC-06 Bluetooth Module is one of the most widely used wireless communication modules for short-range serial data transfer. Designed with simplicity, affordability, and compatibility in mind, it bridges the gap between microcontrollers and Bluetooth-enabled devices such as smartphones and computers. This article will talk about the HC-06 Bluetooth Module’s overview, pin configuration, specifications, features, applications, advantages, and more.

The HC-06 Bluetooth Module is a cost-effective and easy-to-use device that enables wireless serial communication between microcontrollers like Arduino and Bluetooth-enabled devices such as smartphones or PCs. Operating on Bluetooth 2.0 + EDR at 2.4 GHz, it provides a stable connection within a range of up to 10 meters. The module supports UART communication with a default baud rate of 9600 bps, making it simple to integrate into existing serial systems for remote data transmission or control applications.
Designed to function exclusively in Slave mode, the HC-06 is ideal for projects that require a microcontroller to receive commands or send data wirelessly. Its LED indicator shows connection status, and with a small footprint and low power consumption, it is perfect for embedded systems. Common uses include robot control, wireless sensor data transmission, and home automation.

| Pin Name | Description | Function |
| KEY | Pull HIGH in AT command mode | Used to enter AT command mode for configuration |
| VCC | Power Supply (3.6V to 6V) | Connect to 5V (or 3.3V) power source |
| GND | Ground | Connect to system ground |
| TXD | Transmit Data | Connect to RXD pin of microcontroller (3.3V logic) |
| RXD | Receive Data | Connect to TXD pin of microcontroller (3.3V logic, use voltage divider if MCU is 5V) |
| STATE | Connection Status | Outputs HIGH when connected; can be connected to status LED |
| Module | Bluetooth Version | Mode | Default Baud Rate | Voltage | Range |
| HC-02 | Bluetooth 2.0 + EDR | Slave only | 9600 bps | 3.3V – 6V | ~10m |
| HC-03 | Bluetooth 2.0 + EDR | Master & Slave | 9600 bps | 3.3V – 6V | ~10m |
| HC-04 | Bluetooth 2.0 + EDR | Slave only | 9600 bps | 3.3V – 6V | ~10m |
| HC-05 | Bluetooth 2.0 + EDR | Master & Slave | 9600 bps | 3.3V – 6V | ~10m |

The diagram illustrates a typical application circuit for the HC-06 Bluetooth Module, demonstrating how it interfaces with external components for communication and control. The module operates at 3.3V, with pins for UART communication (TXD and RXD) connected to a microcontroller’s serial interface. This allows the HC-06 to send and receive data wirelessly over Bluetooth.
A KEY pin is used to enable AT command mode, which allows configuration of parameters like baud rate or name. The KEY pin is controlled by a push-button switch (S1) and associated resistors (R4, R5, and R6), which form a simple pull-up and current-limiting network to ensure stable logic levels. An LED (D2) connected through resistors (R6, R7) acts as a status indicator, lighting up to show module activity or Bluetooth connection status.
This setup ensures reliable communication and easy configuration, making the HC-06 suitable for wireless serial data transmission applications.