introduction to HC-06, hc-06 pinout, hc-06Hello friends, I hope you all are doing great. In today’s tutorial, we are gonna have a look at detailed Introduction to HC-06. HC-06 is a class 2 slave Bluetooth module designed for serial communication. Once it is paired to a master Bluetooth device such as PC, smartphones, and tablet, its operations become easier to the user. It sends and receives data in a bidirectional manner.

HC-06 is used in different devices which works on Bluetooth for sending and receiving data. In today’s post, we will have look at its pinout, working, circuit diagram, protocol, etc. I will also share some links of projects where I have interfaced it with Arduino and some other microcontroller. Friends if you have any questions please ask in comments I will try my best to solve your problems and I will give you a comprehensive answer. So let’s start with basic Introduction to HC-06: 

HC-06 Bluetooth Module

  • HC-06 is a Bluetooth module which is designed to work on serial communication. When we paired it with Bluetooth working devices such as smarts phones and tablet, its use becomes easier for device users.
  • Its working depends on the wireless system, for sending and receiving data, it uses transceiver module RS 232 TTL. We do not use any cable for sending and receiving data for this module.
  • The main feature of this Bluetooth module is that it can easily achieve serial wireless data transmission protocol.
  • The frequency band at which it operates is 2.4 GHz ISM frequency.
  • HC-06 adopts famous 2.0+EDR Bluetooth standard. The benefit of this standard is that data can be sent in less time interval. It can send data in 0.5 seconds of an interval. By this feature, the workload on Bluetooth chip can be reduced and a large amount of data can be sent in small time.

Lets discuss some parameters and pin configuration.

PIN Name PIN No Description Pad typeNote
GND13 21 22Ground pot. Vss
1V814Integrated 1.8 V (+) supply with On-chip linear regulator output within 1.7-1.9 V.Vdd
AIO0.9Programmable input/output line.Bi-Directional
AIO110Programmable input/output line.Bi-Directional
PIO023Programmable input/output line,
control output for LNA (if fitted)
PIO124Programmable input/output line,
control output for PA(if fitted)
PIO225Programmable input/output line.Bi-Directional
PIO326Programmable input/output line.Bi-Directional
PIO427Programmable input/output line.Bi-Directional
PIO528Programmable input/output line.Bi-Directional
PIO629Programmable input/output line.Bi-DirectionalCLK_REQ
PIO730Programmable input/output line.Bi-DirectionalCLK_OUT
PIO831Programmable input/output line.Bi-Directional
PIO932Programmable input/output line.Bi-Directional 

Programmable input/output line.

PIO1134Programmable input/output line.Bi-Directional
RESETB11 CMOS Input with
weak intemal
UART_RTS4UART request to send, active low.CMOS output,
tri-stable with weak
internal pull-up
UART_CTS3UART clear to send, active low.CMOS input with
weak internal
UART_RX2UART Data input.CMOS input with
weak internal

UART Data output.

CMOS output,
Tri-stable with
weak internal
SPI_MOSI17Serial peripheral interface data input.CMOS input with
weak internal
SPI_CSB16Chip select for the serial peripheral interface, active lowCMOS input with
weak internal
Vcc12 3.3V


Lets discuss pinout of HC-06.


  • There is four main pinout of HC-06, now we discuss each one by one and their function.
    • Vcc: This pin is used for input supply. At this pin, we provide an input voltage to HC-06.
    • GND: This pin use for ground.
    • TXD: By this pin, data is transmitted by the serial interface.
    • RXD: The purpose of this pin is to receive data by a serial interface.
  • For better understanding lets have a look at the pinout diagram of HC-06.hc-06 pinout hc-06 introduction, hc-06

Let’s discuss some features of HC-06.

Features of HC-06

  • These are some features of HC-06.
    • Bluetooth protocol which we connect with it is Bluetooth 2.0+ EDR.  2.0+ EDR is a standard Bluetooth protocol which is used.
    • It is at the Bluetooth class 2 power level.
    • USB protocol used for it is USB v 1.1/2.0.
    • The frequency on which it operates is a 2.4 GHz ISM frequency band.
    • The modulation mode which is used in this module is Gauss frequency Shift Keying.
    • Its transmitting power is ≤ 4 dBm.
    • Its sensitivity rate is ≤-84 dBm at 0.1% Bit Error Rate.
    • The speed at which it transmits data is 2.1 Mbps (Max)/160 kbps (Asynchronous) and 1 Mbps/1 Mbps (Synchronous).
    • The Safety feature which it provides is authentication and encryption.
    • Its supported configuration is based on Bluetooth serial port (major and minor).
    • Its supply voltage is 3.3 V DC  and operating current is 50 mA.
    • Its operating temperature is 20 to 55℃.
    • The weight of this module is 4g.
    • The dimensions of this module are 36.5*16 mm.
    • Its Default baud rate is 9600.
    • This module can also be used in SMD.
    • This module is made through ROHS process.
    • Board of this module PIN is half hole size.
    • It based upon CSR BC 04 Bluetooth technology.
    • It has a high-performance wireless transceiver system.
    • It is a Low-Cost module.
    • It has the external 8 Mbit flash.
    • It has a built-in 2.4 GHz antenna, the user does not need a test antenna.

Now, let’s discuss the HC-06 Application:

Application of HC-06

These are some applications of HC-06

  • HC-06 is a Bluetooth module, it is used in different electronic devices such as a mobile, laptop, personal computer, etc.
  • It can also use in different industrial projects for sending and receiving data, Let’s see pictures of HC-06 use in projects.

I hope you enjoyed today’s tutorial on the HC-06 module.  If you need any help about this module, please ask in comments. Will meet you guys in the next tutorial. Till then take care…..


  1. hi. this module (HC-06 or HC-05) can connect to bluetooth joystick for PC? I want assemled rc car and control using PC joystick. May be you have some example project with settings for HC-06?

  2. Dear Zahid,

    I am currently working with an HC-06 module that gets sealed up within an upper and lower housing by mean of ultrasonic welding for a hermetic seal. So the HC-06 is permanently assembled within the enclosure. For recharging I use charging coils for wireless charging of the Li-Ion battery that is also within the same enclosure (along with a microcontroller and several other components).

    One of the things that I am having an issue with is when the battery voltage drops below 3.3V. Once this happens, the HC-06 shuts down, I can see this because the red LED stops blinking. If I place the transmitting charging coil against the receiving charging coil (i.e. magnetic field through the plastic housings), the Arduino Pro Mini starts back up, but the HC-06 will not turn back on (and of course the red LED will NOT start blinking). I must completely cut the power supply to the HC-06 before it will power back up.

    I thought about using the microcontroller to send a signal upon startup to a PNP transistor to basically cut power to the HC-06 for about 500ms after the battery power drops below a certain level so that the HC-06 can essentially reset.

    Can this be accomplished using the KEY pin?

    I welcome any suggestions that you may have.


Leave a Reply

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

Post comment