I do everything the guy says. I used the normal RX and TX connections, switched them before powering the board and completely removed them on multiple trials. But no luck.
I even soldered a 3.3V power supply to the pin #34 as told in the following link. Still no luck.
I wrote a small tutorial about putting the HC05 into AT mode. This works for me. It wrorks for every one of the 8 HC05 modules that i have. Here it is: >> Setting HC05 (ZS-040) to AT mode
Tried both. No wiring on Pin34 as of now, just trying the pushbutton game.
I also have a HC-06 which went straight into the command mode as soon as I delivered 5V to its EN pin, with the same Arduino board. On the other hand, nothing happens when I plug the EN pin of HC-05 to either 3.3V or 5V.
Put KEY pin to HIGH and after that turn power on. Or actually you put KEY and power ON simultaneously if powerizing those pins from the same power source. I work this way when I manually set the HC-05 to the slave or to the master. It would also be good to put unused input pins to some voltage level so that unused input pins won't work as antennas.
Edit Later : I remembered wrong when I mentioned to put EN pin to high before turning power on. Correct name for the pin is KEY on my HC-05 modules.
Edited Later 2:
Before using HC05 module for programming pursposes I manually configure it using usb to serial converter and some terminal program (e.g. Putty, CuteCom). It means, that I send AT-commands manually written with keyboard to terminal program. HC-05 receives those commands from usb-to-serial converter. When HC-05 is correctly configured, it can be used in real environment. Sure there are other ways to do configure HC-05 modules like Arduino seems to have. Here is the link how this non-Arduino way happens:
Putting 5V on the EN pin can damage the HC05. Though the supply voltage is 5V, the inputs are not 5V tolerant. Same with the HC05 RX pin. There should be a voltage level shifter between 5V Arduino TX pin and the 3.3V HC05 RX pin.
No it didn't. An HC-06 goes into AT mode as soon as you deliver 5v at VCC. Further, and while HC-05 and HC-06 can use the same breakout board, I have never seen an HC-06 with all six pins provided, i.e. one at EN, so each of the above suggests you actually have an HC-05 operating in the normal manner.
I suggest you forget about AT mode for the moment, consider if you really need it anyway, and pair all your Blueteeth with your phone and see how they identify, this to ensure that nobody is any doubt as to which is which. A kosher HC-06 identifies as LINVOR.
If you find that what you think is an HC-06 isn't, you might find that what you think is an HC-05 also isn't, or it is suss.
I might also point out that an HM-10 is in AT mode by default, just like an HC-06. Further, there are HM-10s on ZS-040 breakout boards, complete with buttons that don't do anything.
My HC-06 does NOT have 6 pins provided, the empty pin which corresponds to EN on HC-05 is hollow, to which you can simply put your jumper in! My HC-06 blinks in 2 s intervals only when I do this.
As for the late sections of your comment, the HC-05 (and not the HC-06) does NOT appear on my phone's Bluetooth search. Please inform me if your detective skills has a solution for that one as well.
Here is a picture. I added some info. Hope it is clear. The blue arrow points to what I figured to be Pin#34 and soldered a 3.3V and 5V power supply on different occasions. Didn't lead to a result.
Thank you for taking the time. Looking forward to hearing from you.
// Uses hardware serial to talk to the host computer
// and software serial for communication with the
// Bluetooth module
// Intended for Bluetooth devices requiring
// line end characters "\r\n"
//
// Pins Arduino BT
// 5V VCC
// GND GND
// D9 RX (via voltage divider)
// D8 TX
//
// When a command is entered in the serial monitor
// (on the computer) the Arduino will relay it to the
// bluetooth module and display the result.
//
#include <SoftwareSerial.h>
SoftwareSerial BTserial(8, 9); // RX | TX
const long baudRate = 38400;
char ch =' ';
boolean NL = true;
void setup()
{
Serial.begin(19200);
Serial.print("Sketch: "); Serial.println(__FILE__);
Serial.print("Uploaded: "); Serial.println(__DATE__);
Serial.println(" ");
BTserial.begin(baudRate);
Serial.print("BTserial started at "); Serial.println(baudRate);
Serial.println(" ");
}
void loop()
{
// Read from the Bluetooth module and send to the Arduino Serial Monitor
if (BTserial.available())
{
ch = BTserial.read();
Serial.write(ch);
}
// Read from the Serial Monitor and send to the Bluetooth module
if (Serial.available())
{
ch = Serial.read();
BTserial.write(ch);
// Echo the user input to the main window. The ">" character indicates the user entered text.
if (NL)
{
Serial.print(">");
NL = false;
}
Serial.write(ch);
if (ch == 10)
{
NL = true;
}
}
}
If you use the pushbutton method then you lose the use of one hand,
but here goes -
Upload the sketch (Do Not Connect +5 to HC05, yet)
Open Serial Monitor (config for 19200, "Both NL&CR")
Press and hold (and do not release) HC pushbutton
Connect +5
Serial Mon -- Type AT and click Send (Result OK)
Serial Mon -- Type AT+VERSION? and click Send (Result +VERSION:4.0-20190728)
I don't have my HC05 stuck in the breadboard. I have jumper-leads going from it to a breadboard (which has the resistors on it). That made it easier to work the pushbutton.
Before i started using the EN to 3.3V to enter AT mode I would use a small alligstor clip to hold the button down the whole time. That would allow at least partial use of AT mode.
Really....
And you are just playing at being cryptic.
None of this alters the fact that an HC-06 is in AT mode by default - no extra wires needed anywhere. What you seem to describe, not necessarily fact, is an HC-05 working exactly as it should, but on a board meant for an HC-06.
And you still haven't mentioned how any Blueteeth have identified on the phone.
I also used the EN method with an HC05 w/o a pushbutton. It has a pin labelled 'KEY' and its own on-board 3V. I jumped KEY to 3V and with SerMon ready, conn'd 5V and it was in AT mode.
Since it allowed me to change ROLE from 0 to 1 (and back) then it must be a HC05 (+VERSION:2.0-20100601)