I have an HC05 Bluetooth module on a breakoutboard with pins for STATE/RX/TX/GND/+5V/EN.

Some tutorials say I need to use a voltage divider with two resistors, like this tutorial.

Others say I don't.

(I only posted 2 tutorials but there are many others.)

I am using it without a voltage divider, and it appears to be working fine. Do I need to use a voltage divider? Why do some say to use it, and others not?

The HC05 baud rate is 9600. It is being used to transmit very little data.

  • 1
    \$\begingroup\$ You better read the specs about the TX/RX pins on both your arduino and the HC05 and see if they can work in the range 3.3-5v. If they can't - the guys who use without voltage divider are wrong, and potentially going to break their HW.. \$\endgroup\$
    – Eugene Sh.
    Aug 22, 2016 at 18:29
  • \$\begingroup\$ Yes, the breakout board the hc05 uses can be powered w/5V. And I'm not using an arduino, I'm using a tty cable and communicating through my PC (although eventually I will use arduino). Are you saying even if I powered the hc05 breakout board w/5V I still need a voltage divider? \$\endgroup\$ Aug 22, 2016 at 18:34
  • \$\begingroup\$ It's not about power, but about the signal levels on the interface pins \$\endgroup\$
    – Eugene Sh.
    Aug 22, 2016 at 19:39

2 Answers 2


It looks they do that as a simple form of level shifting between 5V and 3.3V. If you have a device with 5V tolerant inputs, you don't need to do anything special. Check your data sheet for details on what is supported -- it's usually a nice selling point for 3.3V devices and is often called out on the first page / marketing material.

Check out the tips here in Chapter 8: http://ww1.microchip.com/downloads/en/DeviceDoc/01146B.pdf for more ways of doing level conversion.

  • \$\begingroup\$ Yes the hc05 supports and I power it w/5v, but in those tutorials I posted it's being powered w/5v too and they still use a voltage divider. Does not using a voltage divider make it consume more battery or something? \$\endgroup\$ Aug 22, 2016 at 18:31
  • \$\begingroup\$ It's not the HC-05 that matters, it's what what you connect it too. If you mate it to a 3.3V-tolerant micro, you need to level shift. \$\endgroup\$ Aug 22, 2016 at 18:32
  • \$\begingroup\$ I don't know if you've worked with the hc05 breakoutboard as shown in those tutorials, but the chip is on a breakoutboard. The breakoutboard has some kind of voltage converter, allowing 5v's for a normally 3.3v only chip. The breakout board is being powered w/5v.... is that clear? \$\endgroup\$ Aug 22, 2016 at 18:37
  • 1
    \$\begingroup\$ Got it -- the tutorials are worried in the other direction, about the Arduino 5V I/O affecting the 3.3V I/O on the HC-05. In this case, the only time you need to be concerned is if the device outputting into the HC-05 is not 3.3V. \$\endgroup\$ Aug 22, 2016 at 18:39
  • \$\begingroup\$ OK, so lets say my arduino is powered w/3.3V and the hc05 breakoutboard powered w/5v (or vice versa) - if I understand right - then I have to use a voltage divider on the UART? However, if both my arduino board & hc05 breakoutboard are powered w/5v, then I can connect the rx/tx lines directly to each other w/no additional resistors/voltage dividers, and no negative side effects? This isn't going to make it consume more battery or anything like that? \$\endgroup\$ Aug 22, 2016 at 18:43

Was looking into same issue, this explanation clarified it for me: https://www.arxterra.com/hc-05-bluetooth-module-analysis/

In short, Arduinos run 5 V, hc05 runs 3.3 V logic, that requires resistor bridge to drop the Arduinos TX line down to 3.3 V, but due to the Arduino input accepting 3.3 V as a pass, there is no need to boost the hc05 TX line up to 5 V into the Arduino.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.