HC-06 Module can only receive but not sending

Hi:
I recently trying to doing something with hc06 with arduino, as i tried to send data from serial monitor to android it works fine. but when i tried to send stuffs through the terminal on phone to serial monitor, it does not work at all.
Here is my code:
#include <SoftwareSerial.h>
SoftwareSerial BTserial(0, 1); // RX | TX
// Connect the HC-06 TX to Arduino pin 2(as RX).
// Connect the HC-06 RX to Arduino pin 3 (as TX) through a voltage divider.

char c = ’ '; //initializes to a space

void setup()
{
Serial.begin(9600);
Serial.println(“Arduino is ready”);

// HC-05 default serial speed for communication mode is 9600
BTserial.begin(9600);
Serial.println(“BTserial started at 9600”);
}

void loop()
{
// Keep reading from HC-05 and send to Arduino Serial Monitor

if (BTserial.available())
{
c = BTserial.read();
Serial.write(c);
}

// Keep reading from Arduino Serial Monitor and send to HC-06
if (Serial.available())
{
c = Serial.read();

// Copy the serial data back to to the serial monitor.
// This makes it easy to follow the commands and replies
Serial.write(c);
BTserial.write(c);
}

}

Your comments in the following snippet suggest (very sensibly) using pins 2 and 3 for Software Serial so why are you using pins 0 and 1? They are the pins for HardwareSerial

SoftwareSerial BTserial(0, 1); // RX | TX
// Connect the HC-06 TX to Arduino pin 2(as RX). 
// Connect the HC-06 RX to Arduino pin 3 (as TX) through a voltage divider.

Leave pins 0 and 1 free for printing debug messages and for uploading programs.

...R

@OP

1. The diagram of Fig-1 depicts the scenario of your present connection among BT06, UNO, and Serial Monitor.
hc06-1x.png
Figure-1: BT06 connection using hardware UART Port

2. Based on the directives of Post#1, you should switch over to the following connections of Fig-2.
hc06-2x.png
Figure-2: BT06 connection using software UART Port (SUART Port)

3. Upload the following sketch (your posted codes with slight modifications)

#include <SoftwareSerial.h>
SoftwareSerial BTserial(2, 3); // SRX = DPin-2, STX = DPin-3

char c = ' '; //initializes to a space

void setup()
{
  Serial.begin(9600);
  Serial.println("Arduino is ready");
  BTserial.begin(9600);
  Serial.println("BTserial started at 9600");
}

void loop()
{
  if (BTserial.available())
  {
    c = BTserial.read();
    Serial.write(c);
  }

  if (Serial.available())
  {
    c =  Serial.read();
    Serial.write(c);
    BTserial.write(c);
  }
}

hc06-1x.png

hc06-2x.png

Hi:
I just tried your connections, but when i switched it it became that the phone can send info to my arduino and when arduino sends infos the phone is not receiving and is not even able to be shown on the serial monitor

wzc5242:
Hi:
I just tried your connections, but when i switched it it became that the phone can send info to my arduino and when arduino sends infos the phone is not receiving and is not even able to be shown on the serial monitor

You need to post the revised program in your next Reply and also describe clearly how everything is connected. A photo of a simple pencil drawing showing all the connections will be best. See this Simple Image Guide

...R

wzc5242:
I just tried your connections, but when i switched it it became that the phone can send info to my arduino and when arduino sends infos the phone is not receiving and is not even able to be shown on the serial monitor

I have executed the setup/codes of Post#2 in my UNO-HC05-Android; everything works fine. A was sent to Android and Q received from Android.

Screenshot:
SMBt-2.png

SMBt-2.png