Go Down

Topic: HC-05 + RMU900 datos basura... (Read 3483 times) previous topic - next topic

4jay

Dec 06, 2016, 03:45 pm Last Edit: Dec 06, 2016, 09:47 pm by 4jay
Buenos dias Amigos del foro tengo este siguiente problema que me surgio, estoy tratando de conectar un modulo Bluetooth HC-05 con un UHF Reader/writter RMU900, logre el pareamiento, pero el erro surge al tratar de recibir o cachar el codigo que emite el lector cuando pasa por una barra o receptor de datos me arroja codigo basura...

Si alguien podria ayudarme con este falla gracias por su tiempo y espero puedan ayudarme.



cas6678

Si pusieras el codigo te podria ayudar.

A veces no es que sea codigo basura sino codigo diferente, por ejemplo mandas una "A" y segun como leas puede recibir un 6 y luego un 5. A mi me paso en algun proyecto hasta que cai en que recibia 65 que era el numero ASCII del caracter A mayuscula. Y asi otros ejemplos.

Pon el codigo con el que recibes, dime que recibes y que esperabas recibir y lo intentamos resolver.

Lucario448

pero el erro surge al tratar de recibir o cachar el codigo que emite el lector cuando pasa por una barra o receptor de datos me arroja codigo basura...
Con tan escasa información, solo se me ocurren dos cosas:

  • Que los datos sean binarios.
  • Configuración incorrecta (frecuentemente en la tasa de baudios).

4jay

#3
Dec 06, 2016, 09:16 pm Last Edit: Dec 06, 2016, 09:44 pm by 4jay
que raro podria jurar haber dejado unos captures de pantalla mostrando el codigo que me da el lector,


una es el codigo que me arroja el lector RFID Bluetooth y la otra es el modelo del lector que estoy usando.

la cosa es que no estoy utilizando codigo estoy simplemente leyendo por el puerto COM predeterminado del TTL de mi modulo HC-05.

Eh probado todos los Baud para asegurarme, ya cambie un monton de veces el AT+UART. me sigue arrojando los mismos caracteres seguidamente.

Lucario448

Pareces urgido con el tema, porque buscando en Google me encontré con esto

Aparte de eso, ni siquiera el supuesto datasheet me dice nada. Pero también hablan de un SDK en un CD, así que ahí debe de estar la respuesta.


Ahora lo que me pregunto es: seguro que dispositivo debería estar enviando información textual y no binaria?
Los datos binarios es normal que suelan verse como "basura" para un programa que lo que espera son datos textuales.

4jay

Ahora lo que me pregunto es: seguro que dispositivo debería estar enviando información textual y no binaria?
Los datos binarios es normal que suelan verse como "basura" para un programa que lo que espera son datos textuales.
pues fijate que esa fue la conclusion que llegue hace unas horas, ahora lo que quisiera es transformar esos ASCII a HEX y asi tener una idea de por donde comenzar... pero ahora no logro como pasar la data obtenida por el HC-05 hacia el arduino para hacer la conversion, se que con SoftwareSerial logro leer la data obtenida pero algo no me anda bien dado que no recibe ningun dato el arduino.

con respecto al SDK si la tengo, el detalle es que no refleja nada, solo en un PDF muetra es una libreria escrita para VS solamente y un software de prueba de lectura con sus driver solo eso.

pues no es que estoy urgido si no que ya tengo 3 dias enteros y noches en esto y no daba con lo que se podria lograr con esos datos que me arroja, pero comente arriba mi idea ahora es traerme esos ASCII y transformalos que opinas tu con respecto a eso? Gracias por tomarte el tiempo de leer...

Lucario448

pues fijate que esa fue la conclusion que llegue hace unas horas, ahora lo que quisiera es transformar esos ASCII a HEX y asi tener una idea de por donde comenzar...
Code: [Select]
void loop() {
  if (elOtroSerial.available()) {
    Serial.print(elOtroSerial.read(), HEX);
    Serial.write(' '); // Pone un espacio (0x20) entre valores hexadecimales
  }
}



pues no es que estoy urgido si no que ya tengo 3 dias enteros y noches en esto y no daba con lo que se podria lograr con esos datos que me arroja
No no, solo decía :smiley-sweat: ::)

pero comente arriba mi idea ahora es traerme esos ASCII y transformalos que opinas tu con respecto a eso?
Podría ser, quizá sea que haya que interpretar la información de una manera en particular.

Ahora que tocas ese tema (y que desconozco el tema de las tarjetas RFID): qué es lo que se supone que debería leer?
Una secuencia de números? Una cadena de caracteres (texto)?
O acaso es sólo un "volcado" del contenido de la memoria de esa tarjeta, el cuál el programador debe interpretar ya que es una copia "en crudo" de esta?

4jay

Ahora que tocas ese tema (y que desconozco el tema de las tarjetas RFID): qué es lo que se supone que debería leer?
Una secuencia de números? Una cadena de caracteres (texto)?
O acaso es sólo un "volcado" del contenido de la memoria de esa tarjeta, el cuál el programador debe interpretar ya que es una copia "en crudo" de esta?
la verdad soy nuevo tambien en esta area, por eso no tengo idea de mas o menos como funciona... ahora fijate ya como tal el codigo tambien yalo tenia previsto me lei mucho lo que era la libreria SoftwareSerial pero no estoy recibiendo en el arduino los datos entrantes por el modulo...

ahora tengo el siguiente problema, tengo el esquema de coneccion completa y bien pero el arduino no me arroja ningun dato que pase del modulo... corrigeme si estoy equivocado porfa, pero no deberia ver por el munitor serial ver lo que pasa por el modulo bluetooth?

Lucario448

pero el arduino no me arroja ningun dato que pase del modulo... corrigeme si estoy equivocado porfa, pero no deberia ver por el munitor serial ver lo que pasa por el modulo bluetooth?
Usar Arduino como un adaptador USB a serial?

Code: [Select]
// Useful as a "USB to UART TTL converter", BUT NOT FOR SKETCH UPLOADING (unless reset is not auto-triggered)

// #define USING_MEGA // Uncoment only if your are going to upload this on an Arduino Mega

#ifndef USING_MEGA
#include <SoftwareSerial.h> // On some boards (like the Arduino Mega), this library is not necessary. Use Serial1 instead
#endif

#define BAUD_RATE 115200 // Set the baud rate for the serial communication

#ifndef USING_MEGA
SoftwareSerial virtualSerial(10, 11); // virtualSerial(RX, TX)
#endif

void setup() {
  Serial.begin(BAUD_RATE); // USB UART (pin 0 and 1)

  #ifdef USING_MEGA
  Serial1.begin(BAUD_RATE); // External UART only for boards like the Arduino Mega
  #else
  virtualSerial.begin(BAUD_RATE); // External UART
  #endif

}

void loop() {
  if (Serial.available()) {
    #ifdef USING_MEGA
    Serial1.write(Serial.read());
    #else
    virtualSerial.write(Serial.read());
    #endif
  }

  #ifdef USING_MEGA
  if (Serial1.available()) {
    Serial.write(Serial1.read());
  }
  #else
  if (virtualSerial.available()) {
    Serial.write(virtualSerial.read());
  }
  #endif
}

Ya es tarea tuya modificar estas líneas según corresponda:

Code: [Select]
#define BAUD_RATE 115200 // Set the baud rate for the serial communication
Code: [Select]
SoftwareSerial virtualSerial(10, 11); // virtualSerial(RX, TX)

4jay

para explicar mas rapido y simple jejeje...  ;D

necesito pasar los ASCII del puerto COM TTL del modulo al arduino para transformalo a HEX pero no se como hacerlo???

surbyte


Code: [Select]
    #ifdef USING_MEGA
    Serial1.write(Serial.read(),HEX);
    #else
    virtualSerial.write(Serial.read(), HEX);
    #endif

4jay

Code: [Select]
    #ifdef USING_MEGA
    Serial1.write(Serial.read(),HEX);
    #else
    virtualSerial.write(Serial.read(), HEX);
    #endif


claro esto lo entiendo... pero el detalles que cuando conecto el modulo no recibo ningun dato por el monitor serial del puerto del Arduino, solo puedo ver los datos conectado al COM del Modulo por TTL

Lucario448

No aparece nada...

Cómo están las conexiones?

4jay

este es mi esquema... pero al momento de abrir el serial port no recibo nada de nada.

Lucario448

#14
Dec 09, 2016, 08:59 pm Last Edit: Dec 09, 2016, 08:59 pm by Lucario448


  • Este tipo de comunicación serial es uno de los que las líneas de datos NO deben coincidir. TX va con RX y viceversa.
  • Si tienes Arduino Uno de microcontrolador DIP (removible), eso se puede hacer; de lo contrario, para eso es que existe SoftwareSerial.

Go Up