arduino mega HC-05 (SOLUCIONADO)

Encontre este codigo para configurar el modulo bluethoo HC 05, ya que perdi un archivo con apuntes y codigo, pero este no me funciona, el modulo entra en modo AT al mantener apretado el boto y alimentarlo con+ 3.5

#include <SoftwareSerial.h>

#define RxD 19
#define TxD 18

SoftwareSerial BTSerial(RxD, TxD);

void setup(){
  BTSerial.begin(38400);
  Serial.begin(9600);
  BTSerial.print("AT\r\n");
  Serial.println("Si a continuacion pone OK ->> El dispositivo esta listo.");
  Serial.println("En caso contrario ->> El dispositivo no esta en modo AT.");
  Serial.println("Realice el siguiente procedimiento:");
  Serial.println("- Pulse el boton y mantengalo.");
  Serial.println("- Quite VCC del modulo.");
  Serial.println("- Vuelva a alimentar el modulo.");
  Serial.println("- Suelte el boton.");
  Serial.println("- El modulo parapadeara lentamente, indicando que esta en modo AT.");
  Serial.println("- Resetee Arduino.");
  Serial.println("-------------------------------------------------------------------");
}

void loop(){

  if (BTSerial.available())
    Serial.write(BTSerial.read());

  if (Serial.available())
    BTSerial.write(Serial.read());

}

y este es otro, que creo era en el que una epoca iba bien

char serialByte = '0';
const byte LEDPIN = 13;
void setup()
{
pinMode(LEDPIN, OUTPUT);
// communication with the host computer
Serial.begin(9600);
Serial.println("Do not power the BT module");
Serial.println(" ");
Serial.println("On the BT module, press the button switch (keep pressed, and at the same time power the BT module");
Serial.println("The LED on the BT module should now flash on/off every 2 seconds");
Serial.println("Can now release the button switch on the BT module");
Serial.println(" ");
Serial.println("After entering AT mode, type 1 and hit send");
Serial.println(" ");
// wait for the user to type "1" in the serial monitor
while (serialByte !='1')
{
if ( Serial1.available() ) { serialByte = Serial1.read(); }
}
// communication with the BT module on serial1
Serial1.begin(38400);
// LED to show we have started the serial channels
digitalWrite(LEDPIN, HIGH);
Serial.println(" ");
Serial.println("AT mode.");
Serial.println("Remember to to set Both NL & CR in the serial monitor.");
Serial.println("The HC-05 accepts commands in both upper case and lower case");
Serial.println(" ");
}
void loop()
{
// listen for communication from the BT module and then write it to the serial monitor
if ( Serial1.available() ) { Serial.write( Serial1.read() ); }
if ( Serial.available() ) { Serial1.write( Serial.read() ); }}

me olvide de comentar, si quiero que se vincule con el telefono lo hace, ya que la contraseña es la de fabrica

Te comento lo alimento con 3v pero probé con 5v y colocando resistencia como un esquema que encontré, el mega no precisa software serial, y tiene varios tx dx, y después probé con software serial en el 9 y 10, el módulo entra o por lo menos parpadea muy lento, cuando mantengo pulsando el botón y conecto el positivo, pero no toma los comandos AT

El módulo funciona bien, lo que no permite y no sé porque es configurar por comandos AT

tengo un arduino mega el cual tiene 4 puertos serial, ademas hice pruebas en otros pines usando softwareserial.

problema solucionado, para el que le sirva. placa arduino mega 2560, IDE 1.8.5, modulo blutho HC-05 que posee el botoncito para entrar en modo AT (funcion del interruptor es la de unir pin 34 con 3vcc), conectado en los pines 18 y 19 (serial1), el la modificacion que le hice es anular el while, ahora funciona perfecto :) :)

// wait for the user to type "1" in the serial monitor
//while (serialByte !='1') // este era el problema, coloque las // barras de comentario y listo,
 lo podia haber eliminado tambien.
char serialByte = '0';
const byte LEDPIN = 12;
void setup()
{
pinMode(LEDPIN, OUTPUT);
// communication with the host computer
Serial.begin(9600);
Serial.println("Do not power the BT module");
Serial.println(" ");
Serial.println("On the BT module, press the button switch (keep pressed, and at the same time power the BT module");
Serial.println("The LED on the BT module should now flash on/off every 2 seconds");
Serial.println("Can now release the button switch on the BT module");
Serial.println(" ");
Serial.println("After entering AT mode, type 1 and hit send");
Serial.println(" ");
// wait for the user to type "1" in the serial monitor
//while (serialByte !='1')
{
if ( Serial1.available() ) { serialByte = Serial1.read(); }
}
// communication with the BT module on serial1
Serial1.begin(38400);
// LED to show we have started the serial channels
digitalWrite(LEDPIN, HIGH);
Serial.println(" ");
Serial.println("AT mode.");
Serial.println("Remember to to set Both NL & CR in the serial monitor.");
Serial.println("The HC-05 accepts commands in both upper case and lower case");
Serial.println(" ");
}
void loop()
{
// listen for communication from the BT module and then write it to the serial monitor
if ( Serial1.available() ) { Serial.write( Serial1.read() ); }
if ( Serial.available() ) { Serial1.write( Serial.read() ); }}

La única explicación que le encuentro al primero es que esta en. 38400 y ahora que puedo ejecutar AT+UART veo que está a 9600