Monitor serie no imprime nada

Hola, he estado siguiendo unos tutoriales que a mucha gente le funciona sobre comunicación serie entre monitor serie, arduino y módulo bluetooth hc-05. He probado con arduino UNO y arduino Leonardo y diferentes usb, y no consigo ver nada por el monitor serial, estoy usando la librería SoftwareSerial.

¿Alguna idea? Gracias.

para que usas SoftwareSerial? El monitor Serie usa los terminales físicos que tiene el arduino. Genaralmente son el 0 y 1. Pero no requiere de programa especial, solo escribes algo usando

Este por ejemplo

void setup() {
  // initialize the serial communication:
  Serial.begin(9600);
}

void loop() {
  // send the value of analog input 0:
  Serial.println(analogRead(A0));
  // wait a bit for the analog-to-digital converter
  // to stabilize after the last reading:
  delay(2);
}

lee datos de un potenciometro conectado a A0 y los envía por el puerto serie a 9600 bps. Solo abres el monitor serie de tu IDE y podrás ver las salidas. Pero de ningun modo uses SofwareSerial para ello. Debería en ese caso usar un programa terminal y una iterfaz conectada a los dos pines que definiste con el objeto SoftwareSerial.

Claro, la cosa es que el módulo bluetooth utiliza conexión serie, y el monitor serie también, entonces utilizo el monitor serie en 19200 baud y el bluetooth con SoftwareSerial a 9600 baud, el tutorial lo saqué de aquí, y a la gente parece funcionarle pero a mi no.

Tuve que adaptar un poco el código tal que así:

#include <SoftwareSerial.h>

SoftwareSerial BT1(10, 11); // RX | TX
void setup()
{
  pinMode(8, OUTPUT);       
  pinMode(9, OUTPUT);      
  digitalWrite(9, HIGH);
  delay(500);
  Serial.begin(19200);
  while (!Serial); // For my Leonardo
  digitalWrite (8, HIGH);   
  Serial.println("Waiting AT command:");
  BT1.begin(9600); 
}

void loop()
{
  if (BT1.available()) Serial.write(BT1.read());
  if (Serial.available()) BT1.write(Serial.read());
}

La pregunta está extraída del libro de Perogrullo, pero supongo que has configurado el monitor serie a 19200, ¿no? Si es así, sólo queda, a mi parecer, revisar el cable USB del arduino (doy por sentado que no te está entrando ni el "Waiting AT command") o el propio módulo BT.

noter: La pregunta está extraída del libro de Perogrullo, pero supongo que has configurado el monitor serie a 19200, ¿no? Si es así, sólo queda, a mi parecer, revisar el cable USB del arduino (doy por sentado que no te está entrando ni el "Waiting AT command") o el propio módulo BT.

Hola, quizá me expliqué mal, o yo ya he estado probando cosas nuevas, actualizo y me explico mejor:

  • Uso Arduino Leonardo, tuve que poner while (!Serial); para que saliera el "Waiting AT command".
  • He usado 9600, 19200, y muchos más baud y nada, leo el print del arduino pero no del bluetooth.
  • He simplificado el código y el diagrama parte HC05 y aquí.

También he estado usando el módulo ESP2866 que va de la misma forma de comunicación serie y me sale el mismo problema, entonces ¿puede ser la placa base de mi portátil que no gestione la comunicación serial? Cosa que descarto porque del arduino si leo las cosas. Voy a probar cada baud desde el más pequeño al mayor, que todos todos no los he probado.

EDIT: Ningún baud rate me ha servido, este es mi módulo.

Disculpa. Malentendí tu consulta. La unica manera que veo es que cambies el puerto al que corresponda a donde tienes conectado el BT mas la interface TTL a RS232. Y entonces funcionara cómo programa terminal
Pero busca por ejemplo Termite o RealTerm: Serial/TCP Terminal download entre otros y lograrás lo mismo.

surbyte: Disculpa. Malentendí tu consulta. La unica manera que veo es que cambies el puerto al que corresponda a donde tienes conectado el BT mas la interface TTL a RS232. Y entonces funcionara cómo programa terminal Pero busca por ejemplo Termite o RealTerm: Serial/TCP Terminal download entre otros y lograrás lo mismo.

Gracias por responder, estuve probado eso y otros puertos y demás y no me funciona.

Cuenta como lo has probado?