Our team has gotten a set of DSD Tech bluetooth boards -
DSD Tech Units:
We are using the Arduino reference demo, which works fine for the HC-08 & HM-19 @ 9600 baud.
This demo does not work for the HC-05 @ 38400 baud, we have tried with & without pressing the mode button. We are trying the "AT" command, getting 'OK' from the HC-08 & HM-19 but no response from the HC-05, how can we get the HC-05 to work here?
God only knows what an HM-19 board is, and I wouldn't touch an HC-08, but the instructions are for HC-05, so I guess it's probably something silly going on, like wiring the wrong way round.
Having 3.3v on the EN pin is just an option to using the button. Hold the button down while applying the power.
If you are OK with using BT2 SPP boards, I suggest you stick with HC-05s.
I just tried holding the button while applying power, did not work.
We have Vcc=5V with EN tied high to Vcc, is this ok?
I only use the button but I understand En can be operated by a Uno pin, therefore 5v.
Cool! Thanks for your help Nick, much appreciated.
New Unit:
The HC-06 also works. I have picked up two more HC-05s and they don't work either, will reach out to the mfg. next (DSD Tech) - will post update when I hear back!
I believe the only manufacturer of HC-0x is Guangzhou HC Information Technology. DSD is just a seller, and they clearly haven't the faintest idea of what they are talking about, so don't expect too much from them.
Indeed, I am now getting a signal that DSD might be the root cause of your problems, and probably should be avoided like the plague. So, this is your opportunity to make a significant contribution to heal the suffering of many current Bluetooth users.
-
The ONLY reason why your stated demo can work with HM-19 and HC-08 is because it is code suitable for those devices, which means it is NOT suitable for HC-05. The former are BLE devices. This is something I have just learned, by looking at the pictures, not reading the words. BLE devices are in AT mode by default, and no amount of fartarsing around with buttons or EN pins will do anything for you. It so happens that HC-06 is configured the same way as BLE, hence your success there.
-
I suggest you check the Martyn Currey website about configuring the HC-05. he does know what he is talking about, and has clear instructions to prove it. You may find that all your HC-05s are fine.
-
BEFORE you change ANY settings on HC-05, please check which VERSION they are. This is vital, as they may be a version 3, which are sort of fake and have been causing grief. If they are v3, read anything he has to say about that - twice. Note that I understand that these devices are fine, so long as you don't try to reconfigure them, and may even be OK with some AT commands.
-
Under no circumstances should you send AT+ROLE=2. I bet you have no good reason to do so - ever - and, if you send it, you deserve all the grief you will surely get.
-
If you want to talk to DSD, one thing you should ask is what version of HC-05 are they selling
-
I, and others, will be glad to hear of all your findings.
Nick it is late and I will be back tomorrow but wow - this rocks thank you!!
talk soon 
Hah, it's a nice sunny winter's afternoon down here in Godzown.....
Testing procedures for HC-05 with default Bd = 9600.
1. Connect HC-05 BT with UNO as per following diagram of Fig-1.

Figure-1:
2. Pair your Android Phone's BT with HC-05.
3. Upload the following sketch inUNO.
#include <SoftwareSerial.h>
SoftwareSerial SUART(2, 3); // SRX = 2, STX = 3
#define ledpin 13 //built-in L of UNO
void setup()
{
pinMode(ledpin, OUTPUT);
digitalWrite(ledpin, LOW); //L is OFF
Serial.begin(9600);
SUART.begin(9600);
}
void loop()
{
while (SUART.available())
{
char x = SUART.read();
if (x == 'Y')
{
digitalWrite(ledpin, HIGH); //L is ON
}
if (x == 'N')
{
digitalWrite(ledpin, LOW); //L is OFF
}
}
}
4. Send Y from Phone and check that L of UNO is ON.
5. Send N from Phone and check that L is OFF.
