Introduction: AT Command Mode of HC-05 and HC-06 Bluetooth Module

Picture of AT Command Mode of HC-05 and HC-06 Bluetooth Module

UPDATED july 18: You can now enter AT mode of HC-05 using an Arduino board, (arduino uno used in this tutorial)

UPDATED july 7: I had the opportunity to test a HC06 module. This guide now covers HC-06 module too. :)

Having multiple bluetooth modules with the same name can be confusing. Sometimes it may require to change the default settings like baud rate, or master/slave role of the module. This guide shows how to enter AT command mode of HC05/HC-06 bluetooth module with the help of USB to TTL converter. Alternatively for HC-05, you can use an arduino board.

Requirements:

1.HC-05/HC-06 Bluetooth module with breakout board.

2.USB to TTL converter : I used PL2303HX usb to ttl converter. Any other usb to ttl converter will do too./Arduino board, arduino uno used in this tutorial, other boards should work to.

3. Arduino IDE/ Tera Term : It can be downloaded from here or if you don't want to download arduino then download Tera Term from here.

Step 1: Identifying Your Module

Picture of Identifying Your Module

First thing you need to do is identify your module. It can be either HC05 or HC06. Both the modules are same in functionality except the pinout. Also HC05 can act as both master and slave whereas HC06 functions only as slave. It's hard to differentiate between the two only by seeing. One probable way would be checking the back of the breakout board. If it has "JY-MCU" written on the back, it's probably a HC06. Mine has "ZS-040" written and it is a HC05. And the HC06 module I tested had a bluetooth sign behind with three pcb footprints(refer to figure2). To confirm the device identity, you can power up the module, search for new device on your pc or mobile, and look for HC05 or HC06 on found device list.

Step 2: Pinout and Entering AT Mode

Picture of Pinout and Entering AT Mode

PINS: The pins found on the breakout board are,

KEY: This pin has to be pulled high to enter AT mode.
VCC: Indicated range is 3.6 to 6 volt. To be on safer side, you should connect it to 3.3 Volt.
GND: Ground.
RXD: Serial input pin.
TXD Serial output pin.
STATE: May or may not be connected to any pin. Supposedly outputs the Bluetooth connection status. This pin will not be needed.

Some of the breakout boards have EN pin or even WAKE UP pin instead of KEY pin. None of them seem to be connected to any pins of module. But that does not matter because we wouldn't need them anyway.

Once you identified the module, now it's time to enter the AT mode.
For HC05: Connect the Rx pin of the Bluetooth module to Tx pin of USB to TTL converter, and Tx pin of Bluetooth to Rx pin of converter. Also connect their ground but don't connect the Vcc yet. First you'll have to short the key pin with the Vcc. Connect key pin and Vcc together on breadboard, or any other way. After all other pins are connected, connect Vcc of bt module to USB to TTL converter's Vcc. Now the led on the module will blink at the interval of 2 seconds. That means it has entered the AT mode. If the led blinks faster then AT mode was not entered. Disconnect Vcc, check your circuit and try again. If it does not work then there's a chance that your KEY pin of the module is not really soldered to the KEY of the main chip, i.e. the 34th pin. You can check that with the help of multimeter.

If you use an arduino uno, then connect Rx pin of the Bluetooth module to pin 11 of Arduino Uno(supposedly same for arduino mega), and Tx pin of Bluetooth to pin 10 of Arduino. Also connect key pin of module to pin 9 of arduino and ground to ground, but don't connect the Vcc yet. You have to first power up the arduino, and then connect Vcc just like you did in case of USB to TTL converter.

For HC06: Just connect the Rx of module to Tx of usb-ttl converter and Tx of module. Connect ground and Vcc. The module is in AT mode. Didn't see that one coming, right? :P Turns out HC06 module is permanently configured to be slave and it is always in AT mode when not paired to any other device. So there is no confirmation led blinking that it is in AT mode like HC05 has. Just power up the module and pass the AT commands to modify the default settings.

Connection overview:

HC05 USB to TTL Arduino
Vcc Vcc Vcc
Rx Tx pin 11
Tx Rx pin 10
Gnd Gnd Gnd
key Vcc pin 9

HC06 USB to TTL

Vcc Vcc
Rx Tx
Tx Rx
Gnd Gnd

Step 3: If Key Pin Is Not Present or Not Connected

Picture of If Key Pin Is Not Present or Not Connected

Only for HC05: As stated earlier, some models of the breakout board do not have the key pin, instead they have an EN (enable) pin or WAKE UP pin which may or may not be connected to any pin just like the STATE pin. In that case you'll have to solder a wire to the 34th pin of the bt module. I soldered a male header to mine but if you can't solder or don't want to, then you can just hold a wire (the pointy end of a male to male jumper wire would be convenient ) while connecting the Vcc to 5volt. Once the bt module is in AT mode, you can release the wire.

HC06 does not require key pin.

Step 4: Setting Up Connection

Picture of Setting Up Connection

For HC05:

Once the module is in AT mode, open arduino. Go to tools>serial port>select the com port your USB to TTL converter is connected to (to find out, go to device manager of your pc>ports(COM &LPT)) . Now open the serial monitor. The bt module is now communicating at a baud rate of 38400. So change the baud rate to 38400 at bottom right corner of the serial monitor. Also change "no line ending " to "both NL & CR" found just beside the baud rate.

If you don't have Arduino IDE, then download Tera term(which is an excellent terminal emaluator). Open Tera term. A pop up window will open, Select Serial and choose the com port the usb to ttl converter is connected to. Press ok and a connection will be established. Now go to setup>serial port>set the baud rate to 38400. After setting up baud rate go to setup>terminal>change the newline to CR+LF from the drop down menu. Also check the local echo box under newline. Now the set up is complete.

If you use arduino (UNO/MEGA) board, then copy paste the following code, which is just a modification of Software Serial example included in arduino examples.

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

#include <SoftwareSerial.h>

SoftwareSerial mySerial(10, 11); // RX, TX

void setup() {

Serial.begin(9600);

pinMode(9,OUTPUT); digitalWrite(9,HIGH);

Serial.println("Enter AT commands:");

mySerial.begin(38400);

}

void loop()

{

if (mySerial.available())

Serial.write(mySerial.read());

if (Serial.available())

mySerial.write(Serial.read());

}

/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

Upload the code to the arduino board, once the code is uploaded, open Serial monitor, change "no line ending " to "both NL & CR" at the bottom, close it and disconnect arduino board from usb. Now again reconnect arduino to usb,connect vcc of bluetooth module to arduino 5volt, and open serial monitor. The led on the module should blink at the interval of 2 seconds. That means it has entered the AT mode. Now you are ready to enter AT commands.

For HC06:

Now there is a small drawback for HC06, it does not wait for any termination character for each AT command entry. Instead, it acts to whatever character you entered after one second. Hence, if you are not able to complete a command entry within a second, it will be ignored. Because of this behavior, it may be extremely difficult to do manual entry configuration using Windows Hyper-terminal software. Terminal software that allows batch sending of multiple characters must be used. I found that arduino works fine. On the other hand, if you use Tera term you have to write down the AT commands in a notepad, than copy-paste it to Tera term. Right clicking on Tera term console will automatically paste the copied line and execute immediately.

So once the module is connected to usb-ttl converter and powered up, open arduino, select the usb-ttl com port, set baud rate to 38400. No other settings have to be applied unlike HC05. And for Tera therm, select appropriate com port, go to setup>serial port>set the baud rate to 38400, go to setup>terminal>check the local echo box and everything is set.

Step 5: AT Commands

Picture of AT Commands

For HC05: Type "AT" (without the quotes) on the serial monitor and press enter. if "OK" appears then everything is all right and the module is ready to take command. Now you can change the name of the module, retrieve address or version or even reset to factory settings. To see the default name, type AT+NAME. The name will be prompted, by default it is HC-05 or JY_MCU or something like that. To change the name just type AT+NAME=your desired name.

Here is an important note, if the key pin is not high, i.e. not connected to Vcc while receiving AT commands(if you did not solder the wire and released it after the module entered AT mode), it will not show the default name even after giving right command. But you can still change the name by the command mentioned above. To verify if the name has really changed, search the device from your pc/mobile. The changed name will appear. To change baud rate, type AT+UART=desired baud rate. Exit by sending AT+RESET command.

Most useful AT commands are

AT : Ceck the connection.
AT+NAME : See default name
AT+ADDR : see default address
AT+VERSION : See version
AT+UART : See baudrate
AT+ROLE: See role of bt module(1=master/0=slave)
AT+RESET : Reset and exit AT mode
AT+ORGL : Restore factory settings
AT+PSWD: see default password

More detailed AT commands are given in the 1st pdf.

For HC06: On arduino serial monitor type "AT" (without the quotes) and press enter, "OK" will confirm AT mode. Unlike HC05, you can't see the default name or baud rate. You can only change them. To change name type AT+NAMEDESIRED NAME, notice that there should be no space between the command and name. The module will reply OKyour set name. For example, AT+NAMEPROTOTYPE will set the name to PROTOTYPE. To change baud rate, type AT+BAUDX, where X=1 to 9.

1 set to 1200bps
2 set to 2400bps
3 set to 4800bps
4 set to 9600bps (Default)
5 set to 19200bps
6 set to 38400bps
7 set to 57600bps
8 set to 115200bps
so sending AT+BAUD4 will set the baud rate to 9600.

For Tera Term write down the commands somewhere else and paste it on the console by right clicking. No need of pressing enter. The command will be executed immediately and confirmed.

HC 06 AT commands are limited, all I could find are given here.

AT : check the connection
AT+NAME: Change name. No space between name and command.
AT+BAUD: change baud rate, x is baud rate code, no space between command and code.
AT+PIN: change pin, xxxx is the pin, again, no space.
AT+VERSION

More details in 2nd pdf.

Comments

msameer39 (author)2017-09-15

Thanks buddy. Worked fine for me, with USB to TTL +Serial monitor of ArduinoIDE. Putty didn't work(I have no idea why). But I ordered HC06 from ebay, what came was HC-04 (but still worked for my purpose). It responded to only limited commands but atleast I was able to rename my device :-). Thanks

Phimo (author)2016-05-30

Unless I'm missing something in your guide, you seem to be suggesting connecting TTL outputs directly to the HC-05/06 signal inputs. The signal inputs ARE NOT TTL compatible and should only be used with 3.3V logic levels. You need level shifters on the module's signal inputs.

JamesK66 (author)Phimo2017-09-08

Hi Phimo...

Also, in addition to what I said below as a response to rdlockrey's comment, I do have 3 different versions (hardware wise) of the HC-06 with 2 different firmwares - one requiring NL/CR and one none. So I dont know how many hardware boards every Tom Dick and Harry made that sells those modules, but at least my 3 have the level shifters. You can easy check with your meter between pin one of the module and the breakout pin and pin 2 and the breakout pin - if resistance is 0, you are correct you better use a TTL level (3.3v) Arduino OR Serial adapter. Again, all mine had the level shifters + voltage regulators.

Hope it helps someone.

rdlockrey (author)Phimo2017-01-10

hehe "TTL" .... its TTY

JamesK66 (author)rdlockrey2017-09-08

rdlockrey- he's talking about signal levels, not the COM/TTY port - it's TTL when referring to a signal level. You should learn what you are talking about before you try to correct someone.

But to Primo - The breakout boards he is using and that most everyone buys have level shifters AND a voltage regulator - no no need for TTL level, CMOS is fine. But to your point, if you do use the board bare, yes, you must use TTL level! There exists somewhere a schematic I found of those little breakout boards that shows them - I'm sure google could find it if you needed.

Conexus (author)2017-04-22

Note that AT commands sent to the HC-06 must NOT be followed by CR LF.

If you send AT CR LF, then 1 second after receiving the LF, the HC-06 looks at the string and says that "AT CR LF" is not a valid command.

It is necessary to send just AT on its own. The HC-06 will then send OK.

JamesK66 (author)Conexus2017-09-08

I have a couple of these. It seems the ones that reply with version "hc01.comV2.0" will only work with the NO CR/LF. The ones that reply"Firmware version:3.0-20170609" ONLY lf with a CR/LF. It appears to have changed with a firmware update, but I didnt get into them enough yet to see any more differences.

whythelolface1 (author)Conexus2017-07-29

This is not true. The HC06 module I have (Firmware version:3.0-20170609) ONLY responds if you send CR LF after your command.

MahmutA10 (author)2017-08-02

Hi, i need some help. i have hc-05 and cant change password. It says ERROR:(1D). Any ideas whats wrong? (i can change other things like name, baud rate, role,..)

MahmutA10 (author)MahmutA102017-08-02

Working now with quotation marks

AT+PSWD="1124"

ebuddykbdmouse (author)2017-07-31

Nice work Shah, thank you, I can never remember the commands/syntax. Just for your and everyone's info the SPP-C module is an excellent replacement for the HC-06. Just needs the CR+LF set. AT+(NAME/BAUD etc.) will return current setting.

tytower (author)2017-01-13

These modules seem to have a lot of variations in them .The Name problem is discussed in the documentation and depends on the KEY line connection to give it out .Your phone will give the name.

My module which gives Version 2.0 when asked seems fixed on 115200 UART and won't change but is responding to the arduino IDE serial terminal connection at 38400 Baud. Its very confusing .

Well done on presenting this because this is the first time I have been able to get any reply from it and the following do give a respone

AT (IF not already then changes to a slow flash)

AT+UART

AT+UART=9600 (NO CHANGE)

AT+VERSION (Gives 2.0)

AT+ADDR

AT+ROLE (gives 1)

AT+PSWD

AT+PSWD=1234 (seems to reset it but it does not last)

AT+RESET (changes to a fast flash)

whythelolface1 (author)tytower2017-07-29

OMG I've spent hours and hours trying to figure out my module - and you've steered me onto the right track - THANK YOU!

My module is an un-named un-marked HC-06 from AliExpress, cheapest one I could find.

Responds to AT at 9600 baud, AT+VERSION responds with VERSION:3.0-20170609.

The command syntax seems to be different from all the tutorials and blogs I've found online.

It works only if you set Both NL & CR, in arduino com monitor/Tera term.

The syntax for my version:

AT+NAME:DesiredName

AT+UART=115200,0,0

Hope this is helpful to someone

JeetP11 (author)2017-06-02

HOW TO DISCONNECT THE MASTER FROM CONNECTION MODE IN HC-05?

KeithAZ (author)2017-04-11

Thank you for the tutorial! I had trouble at first (fighting my own stupidity) not leaving the KEY pin HIGH all the time, during AT mode leaves you with maybe just read access AT Commands. Without your tutorial I would have probably been stuck for a much longer time

RodyS2 (author)2017-03-02

`_window_func' referenced in section `.text' of C:\Users\Acer\AppData\Local\Temp\ccXDgjDW.ltrans1.ltrans.o: defined in discarded section `.text' of sketch\LED_control.ino.cpp.o (symbol from plugin)

`_window_func' referenced in section `.text' of C:\Users\Acer\AppData\Local\Temp\ccXDgjDW.ltrans1.ltrans.o: defined in discarded section `.text' of sketch\LED_control.ino.cpp.o (symbol from plugin)

`fht_log_out' referenced in section `.text' of C:\Users\Acer\AppData\Local\Temp\ccXDgjDW.ltrans1.ltrans.o: defined in discarded section `.text' of sketch\LED_control.ino.cpp.o (symbol from plugin)

`fht_log_out' referenced in section `.text' of C:\Users\Acer\AppData\Local\Temp\ccXDgjDW.ltrans1.ltrans.o: defined in discarded section `.text' of sketch\LED_control.ino.cpp.o (symbol from plugin)

`_log_table' referenced in section `.text' of C:\Users\Acer\AppData\Local\Temp\ccXDgjDW.ltrans1.ltrans.o: defined in discarded section `.text' of sketch\LED_control.ino.cpp.o (symbol from plugin)

`_log_table' referenced in section `.text' of C:\Users\Acer\AppData\Local\Temp\ccXDgjDW.ltrans1.ltrans.o: defined in discarded section `.text' of sketch\LED_control.ino.cpp.o (symbol from plugin)

`_reorder_table' referenced in section `.text' of C:\Users\Acer\AppData\Local\Temp\ccXDgjDW.ltrans1.ltrans.o: defined in discarded section `.text' of sketch\LED_control.ino.cpp.o (symbol from plugin)

`_reorder_table' referenced in section `.text' of C:\Users\Acer\AppData\Local\Temp\ccXDgjDW.ltrans1.ltrans.o: defined in discarded section `.text' of sketch\LED_control.ino.cpp.o (symbol from plugin)

`_cas_constants' referenced in section `.text' of C:\Users\Acer\AppData\Local\Temp\ccXDgjDW.ltrans1.ltrans.o: defined in discarded section `.text' of sketch\LED_control.ino.cpp.o (symbol from plugin)

`_cas_constants' referenced in section `.text' of C:\Users\Acer\AppData\Local\Temp\ccXDgjDW.ltrans1.ltrans.o: defined in discarded section `.text' of sketch\LED_control.ino.cpp.o (symbol from plugin)

collect2.exe: error: ld returned 1 exit status

exit status 1

anny one can help?

VincentY16 (author)2017-02-13

Hey there Sayem2603, is there anyway that we could actually get into the AT Command mode of the HC-05 pragmatically without holding the button? I'm having a project that which requires every startup of the Bluetooth it requires a brand new 4 pin numeric password. Thanks in advance.

DirtyAxe (author)2017-02-05

Hey there , i tried using this method a few weeks ago using my arduino mega 2560 and my hc05 and it worked fine , suddenly when i tried using it again it didn't work ! i even tried replacing the arduino and the module itself , and it still didn't work , any clue why it doesn't work ?

Stalker94 made it! (author)2017-01-23

With HC-06

chawla_mohali (author)2017-01-15

thank you! life saver!!

Rakinroul (author)2016-11-27

Hi,

i spent whole day trying to get it working. I have some yfrobot bt board v1.2
Tryed like everything and no comunication from board :-/ .
Its feel like it need firmware flash

tytower (author)Rakinroul2017-01-13

I have two identical boards JY-MCU new,but only one responds as it should . Could be the other is a dud in part. Both connect to my phone OK While the LED is flashing quickly. When the AT command is given to the good one the led flashing slows to a long burst on then off. It may be my soldering or perhaps it is connected to my phone at the time or some board fault is at play . Identical connections up to the BT board pins. From there who knows?

João MarcosR (author)2016-12-07

Thank you very much! I needed to rename my module and I got through the documentation.

pmclagan made it! (author)2016-02-20

Thanks for the great tutorial! I managed to do all of this and I could at first check for the name with "AT+NAME" but after I tried changing the name it accepted it but now when I try to check for the name with the AT command "AT+NAME" it never returns a name or acknowledges an entry. I tried other commands like "AT+ROLE" and could view it, change the role and view the role changed and all other commands worked. I even did the factory-reset with "AT+ORGL" and I still can't see name. Stranger still, I can still change the name even though I can't view it. Would you know what the problem is or how to fix it? Also I can't get my phone's Bluetooth to find the HC-05 module, do you know about a good tutorial or source for that in case it's an issue I have to troubleshoot?

MichaelS1030 (author)pmclagan2016-09-20

thats just the same problem i have too

MariaS82 (author)MichaelS10302016-10-03

Same as me. Did you find the solution?

MichaelS1030 (author)MariaS822016-10-06

I flashed the firmware because i wanted a HID anyway.

MariaS82 (author)MichaelS10302016-10-06

How did you flash it? And what firmware version did you have?

Did it finally answer the AT+NAME? command?

Thanks for your help

DELTAWIDEI (author)MariaS822016-11-24

JUST TYPE AT+NAME

MichaelS1030 (author)MariaS822016-10-06

i used a CSR-USB-SPI flasher for about 17bucks ( you can build your own ) - free Blueflash and PSTool software and an alternative firmware.

have a look hier

https://youtu.be/BBqsVKMYz1I?list=PLaCGYJSDl2G_NL3PCnu6B4_t3k4TNy8Bc

dunk8888young (author)2016-10-30

MAKES NO SENCE ARDUINO RX AND TX PINS ARE NOT 10 AND 11 THEY 0 AND 1

Connection overview:

HC05 USB to TTL Arduino
Vcc Vcc Vcc
Rx Tx pin 11
Tx Rx pin 10
Gnd Gnd Gnd
key Vcc pin 9

HC06 USB to TTL

Vcc Vcc
Rx Tx
Tx Rx
Gnd Gnd

Gilbertod2 (author)dunk8888young2016-11-04

The Arduino 0 Rx and 1 Tx pins are connected to serial monitor in your computer. In serial monitor, u can send at commands to HC05, connected to 10/11 with help of softSerial, through Arduino. Arduino will work as a bridge.

Oldeman65 (author)2016-01-02

Thanks!

It turned out that I got one of those HC-05 modules where the KEY/EN pin was unconnected. I soldered a wire directly to KEY34 and connected that to VCC. Then things worked like a charm.

-> The command mode LED really, really, has to blink every 2 seconds. <-
Anything faster means that you are not in command mode and it's useless to try to do any configuration :-)

I did bypass the Arduino and connected the HC-05 directly to a USB-serial cable (voltages were within range). From there I could configure the HC-05 to my own taste using <whatever serial communication package>.

Regards, Willem

MariaS82 (author)Oldeman652016-10-03

Hey! Thanks for your comment. I also got one of those HC-05 modules without a switch for KEY/EN pin. I tried what you suggested, I shortcircuited KEY34 pin to Vcc but it still doesn't work. The thing is that it doesn't blink every 2 seconds neither.

I tried this with my Arduino. I need your help, could you give me some advice?

MariaS82 (author)MariaS822016-10-03

There is another strange issue in here. None of the commands would work except for the AT+NAMEXXX, from which I get the response OKsetname. After that, if I ask him for his name with the command AT+NAME? the answer still is OKsetname.

No idea of what's happening in here. Help please.

xyztw (author)Oldeman652016-03-30

Hi i really need your help i'm stacked for about one week trying to configure my HC-05 with the EN pin instead of the KEY pin . i did the same as you i inshorted pin 34 to VCC and i get the 2 seconds blinking but there is no response when i enter AT coomand can you help me pleaze .....

i didn't understand you:" I did bypass the Arduino and connected the HC-05 directly to a USB-serial cable (voltages were within range). From there I could configure the HC-05 to my own taste using <whatever serial communication package>."

Oldeman65 (author)xyztw2016-03-30

Hi xyztw,

I meant that I did not use an Arduino at all. The HC-05 is connected directly to the USB-serial cable. Before connecting, I measured the voltage on the serial cable against ground, voltages were below 5V. That was safe enough for me.

Make sure that RXD on the HC-05 is connected to TXD on the cable and that TXD on HC-05 is connected to RXD on the cable. Check the settings in your communication tool, it shoud be 38400,8,n,1 (38400 baud, 8 bits, no parity, 1 stop bit). Also make sure that you are connected to the correct serial port, ttyUSB0 in my case (Linux machine).

HTH,

Willem

DewiN (author)2016-05-17

I'm encountering a problem :

I've plug my HC-05 through arduino uno, on the serial monitor it say "ready for AT commands".

Then i wrote "AT" in the monitor but no OK answer

What Should I do ??

Thanks

carloszoom3000 (author)DewiN2016-09-27

Make sure Rx from the module goes to the Tx on the Arduino and Tx (Module) goes to RX (Arduino).

Also ensure you have NL and CR in the dropdown on Serial Monitor.

Regards,

rtuinenburg (author)DewiN2016-06-01

Check parity and or duplex settings

bhuvaneshnick (author)2016-02-12

hi, if u having trouble in making into AT mode of HC-05 (ZS-040)(especiall if one having en/wakeup up pin instead of key pin). Follow they bellow procedure

Power off HC-05 module.

Press and hold small button above EN pin.

Power on and keep pressing small button.

Small LED should start to blink slowly about once every 2 seconds.

for more info visit below site:

http://abratukhin.blogspot.in/2015/04/connect-atmega328-with-hc-05-zs-040.html

that's what a small button is there !!. i was in thought so long for what that button is for, thanks for share...

AzmathM1 (author)bhuvaneshnick2016-07-10

THx man! saved my day!

Worked well for me too! It's important to keep pressing the button while sending the AT commands otherwise some commands might not work!
Before trying to solder any wires as suggested in this instructables, try the button!;)

Mr innovative (author)2016-09-17

thanks for this information

AVSTS (author)2016-08-21

Mine bluethooth module doesnt have a vcc and key . Im having hc05. Plz tell me today tomorrow i have science exhibition

mr_koz (author)2016-08-07

This is brilliant, thanks!

tommo_79 (author)2016-08-05

woohoo great instructable- i've been trying to program my hc05 for days and your method worked first time :-)

vijas (author)2016-05-16

Hi there

I am trying to pair two HC-05 at 38500 baud rate. I configure them as
master and slave and when used in normal mode they pair properly and i
can transmit and receive data.

I use AT mode on master side to retrieve slave address using AT+INQ, i
do get my address in the format 2015:4:90245 which is correct.

However when i try to retrieve name of the slave device using AT+RNAME
?2015,4,90245 nothings happens. The LED on the master board goes to
slow blink .

same happens when i try AT+LINK=?2015,4,90245. Eventually i have to give
up and send AT command again and redo AT+INIT and try again. The
Password on both unit is 1234 and they are set to Original values by
using AT+ORGL

any suggestions

Thanks

JamesW230 (author)2016-05-01

Where is the code for HC06? You put code for HC05, but none for HC06, but then conitnue with the tutorial as if we have code to execute for HC06. I'm confused.