HC-05 BT Issues

I have 2 HC-05 BT modules I want to use between 2 arduino boards for serial communications. I have successfully set up a connection previously on 2 different HC-05 modules per these instructions:

However with the 2 new modules I cannot seem to enter AT mode on one of them now, there is 0 response when it should be in AT mode. If I simply replace the non-responding module with the responding module and leave everything the same the responding module enters AT mode with the press of the button when powering on correctly and works properly and communicates via the Arduino and serial port as expected.

The non-responding module (set up as slave) appears to connect to the responding (set up as master) when both are powered on. I can also connect to the non-responding module (slave) with my phone via BT. The interesting part here is I can send serial data to the phone via the Arduino serial monitor, but there is nothing displayed in the serial monitor when I send the HC05 data from the phone, so the HC05 transmits but does not receive.

I entered AT mode successfully at least once previously in order to get the address to add to the master. I have tried all of the available baud rates in the serial monitor, and every combination of powering on and resetting the serial monitor etc. It blinks slowly maybe once every 2 seconds as if it were in AT mode but it doesn't respond to any commands there is no output on the serial monitor at all. Does anyone have any suggestions for how to fix this, or if it can be hard-reset somehow?

Thanks

Are the new modules the same as the old? I just bought an HC-05 and programming took some finesse. There was a small button on mine that had to be pressed during power up (and pressed when changing the module name).

Not sure this helps...

Thanks, the modules are similar and they have the button to enter AT mode. One actually burnt up a few minutes ago so I'm working with my remaining boards, I have a different issue though. When I send a single character over BT and print it to the serial monitor I am getting 2 extra blank lines printed after the character is printed. I double checked the baud rates. It appears that the sending module is sending 2 extra characters that are null. Do you know what could cause this? See the following code and results:

SENDING CODE:

#include <SoftwareSerial.h>

char a = '1';

SoftwareSerial mySerial(12, 13); // RX, TX

void setup() 
{
  mySerial.begin(9600);
}

void loop() 
{
  mySerial.println(a);
  delay(1000);
}

RECEIVING CODE:

#include <SoftwareSerial.h>

SoftwareSerial mySerial(4, 5); // RX, TX

char c;
void setup() 
{
  mySerial.begin(9600);
  Serial.begin(9600);
}

void loop() 
{
  if (mySerial.available()) {
    c = mySerial.read();
    Serial.print("bt serial received = ");
    Serial.println(c);
  }
}

PRINTED RESULTS:

bt serial received = 1
bt serial received = 
bt serial received =

I've had this working perfectly before but I'm not sure what's happening now.

the blank lines are characters 10 and 13 (nl and cr). These are added when using println rather than print.