Hm… seems I have solved this problem and return baud rate to default when uploaded this sketch:
#include <SoftwareSerial.h>
#define RxD 0 // 2
#define TxD 1 // 3
SoftwareSerial blueToothSerial(RxD,TxD);
void setup()
{
// Serial.begin(9600); //Serial port for debugging, Comment this line if not required
pinMode(RxD, INPUT);
pinMode(TxD, OUTPUT);
setupBlueToothConnection();
}
void loop()
{
if(blueToothSerial.read() == 'a')
{
blueToothSerial.println("You are connected to Bluetooth Bee");
//You can write you BT communication logic here
}
}
void setupBlueToothConnection()
{
// Serial.print("Setting up Bluetooth link"); //For debugging, Comment this line if not required
blueToothSerial.begin(38400); //Set BluetoothBee BaudRate to default baud rate 38400
delay(1000);
sendBlueToothCommand("\r\n+STWMOD=0\r\n");
sendBlueToothCommand("\r\n+STBD=38400\r\n");
sendBlueToothCommand("\r\n+STNA=UMPT12\r\n");
sendBlueToothCommand("\r\n+STAUTO=0\r\n");
sendBlueToothCommand("\r\n+STOAUT=1\r\n");
sendBlueToothCommand("\r\n+STPIN=0000\r\n");
delay(2000); // This delay is required.
blueToothSerial.print("\r\n+INQ=1\r\n");
delay(2000); // This delay is required.
// Serial.print("Setup complete");
}
void sendBlueToothCommand(char command[])
{
char a;
blueToothSerial.print(command);
// Serial.print(command); //For debugging, Comment this line if not required
delay(1000);
/*
while(blueToothSerial.available()) //For debugging, Comment this line if not required
{ //For debugging, Comment this line if not required
Serial.print(char(blueToothSerial.read())); //For debugging, Comment this line if not required
} //For debugging, Comment this line if not required
*/
}