I have made a number of projects using HC-05 Bluetooth modules. They draw relatively low current and are pretty fast (I typically run them at 115,200 Bauds) and there are no issues pairing them with any of my Android devices.
I have been frustrated by the AT command set of the HC-05 though, particularly the command to change the module name. Since all modules have, by default, the same name, it can be very confusing if you have more than one device associated with your phone or tablet as they show up under the same name.
It is fairly easy to change the name using AT commands but I have found that while you can change the name to anything you want, making it longer than the default name (HC-05), even by one character will cause the command AT+NAME? to return nothing, so the only way to make sure the command worked is to try to associate the module with your phone after you have changed the name.
It is not a major problem since the modules otherwise work very well, but it is annoying.
Another annoyance is the need to connect the KEY pin to ground to place the chip in AT command mode.
In my quest for a better replacement, I came across the JDY-30 (also sold as JDY-31, they seem to be the same).
It is a single chip Bluetooth module (the HC-05 has two chips) that is even cheaper so I bought a few to experiment. Another advantage is the row of holes ready to receive 0.1" headers so you can breadboard with them right away without having to buy a carrier board, but the castellated holes on the sides are compatible with the HC-05 carrier boards if you want to run the module from 5V.
Even though the seller on Alibaba says the modules are replacement for the HC-05, that is only true of their physical form factor and pinout. They do not use the same command set and the protocol to place the module in command mode is different.
So the first task was to find a datasheet. I only found one in Chinese but it was easy enough to translate:
The JDY-30 modules seem to fix the annoyances with the HC-05 and do not bring new ones, which is a pretty good deal considering they are even cheaper.
The module is automatically in command (AT) mode when not paired, and it enters the serial emulation mode automatically when paired, so you do not need the KEY pin as you do with the HC-05.
To buy one of these modules, simply enter JDY-30 in any of your favorite electronics shopping sites (it works on Amazon, eBay, AliExpress and Banggood). It is also available from a number of Arduino vendors like Adafruit and Sparkfun.