18

DCC++ con Bluetooth HC-06

Otra de las cosas que tenia pendiente era conectar la central DCC++ al ordenador por bluetooth con el módulo HC-06 y ha sido realmente fácil.

Primero hemos de configurar el módulo HC-06 con el baudrate de la central que es 115200 así que tendremos que cambiársela por que generalmente vienen configurados a 9600. En Arduino: Menú de comandos AT para configurar HC-06 esta completamente explicado como configurar el módulo con el monitor serial y un amigable menú.

Una vez lo tengamos con el baudrate correcto tenemos que conectarlo a la central a los pines 0 y 1, Tx y Rx respectivamente. Este HC-06 funciona a 5V pero es conveniente revisar esto ya que hay algunos que funcionan a 3,3V.

Conexión DCC++ con módulo bluetooth HC-06

Para comprobar que todo ha ido bien puedes probar a conectar con el bluetooth del móvil y un terminal serial tipo Bluetooth Terminal Una vez instalado emparejamos el móvil como cualquier bluetooth normal.

Cuando ya esta sincronizado para comprobar podemos probar encendiendo la central con el comando <1> o pulsando el botón de reset de Arduino.

Captura de pantalla DCC++ conectado por bluetooth a un móvil Android

También he probado la conexión con Rocrail cambiando en la configuración de DCC++ la dirección del adaptador en mi caso es /dev/rfcomm0  Hay que reiniciar Rocrail para que los cambios tengan efecto. La configuración del adaptador dependerá del adaptador y del sistema operativo en mi caso Ubuntu. Si no funciona a la primera en Rocrail pero si en el Terminal Serial de Android revisa la conexión entre el modulo y el PC por que debería funcionar sin problemas.

Configurando Rocrail para central DCC++ con Bluetooth HC-06

Y hasta ahora esto es todo, si alguien tiene alguna duda la caja de comentarios esta abierta a todos, Saludos!!!

(Visitado 1.824 veces, 1 visitas hoy)

18 comentarios

  1. Buen día, primero que nada felicitarlos por tan extenso trabajo.. les cuento.. hace un tiempo tenía guardada una locomotora a la que le instale un deco “econami” con sonido, tengo una central Dcc que la puede manejar, hasta ahí todo bien.. Anda sin problemas sus sonidos luces etc.. Cuando vi que se podía manejar con este desarrollo, comencé a juntar material ya que lo encuentro estupendo.. pues así llegué a esta página y comencé hacer todo para echarla andar. descargué la APP, tengo el arduino uno más el Shield, realice todos los pasos que ya leí en su web, y le conecte vía bluetooth con una HC-05, configurado a 115200. Conecto con la central, la puedo encender y apagar sin problemas, sin seleccionar una locomotora puedo encender las luces el sonido y la campana de la máquina, por el control de fábrica que tenía, que solo tiene botones, números y el control de velocidad.. se que esta seleccionada en el botón Numero 3, así que trate de configurarla en la APP, pues lo que ocurre es que al tratar de echarla andar, la app se cae y se desconecta de la central, a veces anda un poco y se cae.. retomo conexión y vuelve a funcionar hasta que trato de mover o cambiar de sentido la dirección de la locomotora, cambie el modulo bluetooth y lo mismo.. instale en un tablet y en 3 celulares la APP y ocurre exactamente lo mismo.. se me ocurre que no está tomando bien la locomotora.. pero no tengo como saber datos específicos de ella.. el arduino está alimentado por 5V, y el shield entre 12 y 15 Volt. el modulo bluetooth funciona en otras aplicaciones por lo que creo que no es el problema. No se si me podrían ayudar al respecto.. baje de su web la «BaseStation-1.2.1» que es la que funciona a medias… pero no he podido compilar con la nueva version de librería 1.4.1.. por qué no está muy claro, como hay que cargarla. un saludo desde Chile
    J.Lezana

    • Buenas J.Lezana! Por lo que comentas es un problema de la app, por que si has probado otros controles y la locomotora funciona, la podemos descartar.
      Si la central apaga y enciende desde la app, la central y bluetooth esta bien, ya que envía y recibe los comandos.
      ¿Cuantas locomotoras tienes almacenadas en la base de datos? si solo tienes una, prueba a añadir una locomotora más, no importa la dirección DCC que le pongas, es solo por tener una más. Si funciona, por favor hazmelo saber para revisar esa parte del programa y subsanar el error con una actualización. Si continua pasando, puedes mandarme una captura de la pantalla principal y otra de el registro de esa locomotora? Así podría ver si hay algo mal configurado. Si, como dices, la 1.4.1 es un poco más «experimental», pero debería funcionar correctamente al menos en su configuración más básica (Texcommand y Bluetooth).
      Saludos desde España!!!

      • Gracias por tu pronta respuesta.. te cuento.. he creado hasta 9 locomotoras.. de las cuales en la ventana Sel, solo aparecen 4, que puedes reemplazar por cualquiera de las 9 creadas.. en la pestaña CAB también aparecen solo 4 de todas las creadas, me imagino que esto es normal, ahora con las nuevas locomotoras creadas, al momento de hacer la conexión vía bluetooth, y mover la velocidad o el cambio de giro..de cualquiera de las creadas.. se cae.. intuia que podría ser la app, y pude hacer una prueba más interesante.. deje abierto el monitor serial de arduino, mientras enviaba códigos a la central, y pude ver unos caracteres que se anteponían a los códigos, tengo la captura de pantalla si me das tu correo o si tu me escribes te las puedo enviar.. por ejemplo: cuando enciendo la central o la apago el codigo mostrado es correcto o segun sea el caso… Si prendes luces ok si tocas la bocina ok. Si tocas la campana ok todo dentro de la locomotora seleccionada, Los códigos no se me muestran en el serial pero se ejecutan bien, al momento de mover la velocidad y justo al momento de cerrarse la APP, me dejo ver el código que alcanza a enviar antes de cerrarse y apareció lo siguiente:
        me puse a estudiar los códigos DCC++ y entendí que el T es devuelto por la central, 4 por el DCC de la loco, 10 es la Velocidad y 1 es avance.. en otros intentos me dio y luego el comando correcto.. y asi sucesivamente.. por lo que asumo que alguna respuesta desde la central hace que de error la APP y se cierre.. para asegurarme que no existe problema con mi máquina.. comencé a enviarle códigos desde el monitor serial y pude hacer avanzar, retroceder, activar funciones y todo normal.. así que descartamos que algo este mal en el arduino, shield, o bluetooth. Por la respuesta que me dio la central y leyendo tu traducción pude saber que la respuesta esta sin el CAB de la locomotora, es el programa original, no el de la librería.. no se si esto tendrá que ver en algo.. pero busque otro programa para cargar en mi arduino uno y no lo encontré.. después de saber esto, también cambie en la configuración de la APP en “Tipo de central” de Librería a Original, y el error persiste..
        Espero aportarte con la mayor información posible lo que ocurre.. y agradezco enormemente tu pronta corrección o alguna sugerencia más, por el momento esperare alguna actualización, porque encuentro tu APP excelente… sobre todo para los que no tenemos tantos accesorios ni locomotoras y disfrutamos de algo pequeño y funcional….. ha y se me olvidaba decirte solo tengo 1 sola locomotora (ya sé que el número DCC de mi locomotora es la 3) , pretendo a futuro instalar desvíos y una locomotora más.. gracias y Saludos desde el otro lado del charco..

  2. Hola, yo tambien tengo una pega con el HC-06, no responde ni con el programa terminal bluetooth

  3. Hola, me llamo Javier y estoy motando una DCC+, la shield que he adquirido es una L298P motor shield https://leantec.es/tienda/l298p-motor-shield/ de este modelo, que ya incorpora la conexión para bluetooth. Me funciona a través del PC y sin necesidad de puentear los pines 5-13 10-12.
    Pero cuando le conecto el modulo HC-06 ya sea en la conexión que incorpora o como se muestra en tu web me da fallo al hacer la prueba con el programa terminal bluetooth, ni aparece el dialogo inicial ni responde al código .
    Esta solo alimentado por usb (con el Vin sacado) y sin conectar aun a las vías.
    He probado la conexión bluetooth usando otro código y con al Shield asi montada y alimentada y va bien. Gracias de antemano

    • Buenas Javier, es la placa Arduino UNO? estás usando la librería o el programa original? Has probado cambiando el TX por Rx? imagino que el módulo también está configurado a 115200.. podrías hacer un pequeño vídeo y mandarlo a mí correo? Gracias por visitar la web y a ver si le sacamos punta!!

      • Gracias por tu respuesta, si, es Arduino y estoy usando el programa que tienes en tu web. Tengo que tener averiado el modulo bluetooth porque ahora entro con el programa de los comando AT y no recogía. A ver si adquiero uno nuevo y pruebo. Gracias

  4. Hola, he montado cómo indicas el módulo bluetooth y conecta bien cuando alimento el conjunto por USB solamente, pero al alimentar también el motor shield externamente se desconecta y ya no hay manera de volver a conectar (utilizó una placa Arduino mega y dos motor shields).
    Mi duda es si puede ser porque sea de 3,3V o porque tengo dos motor shield en paralelo, cómo tiene un usuario del foro escala n, porque creo que lo demás lo he montado correctamente aunque el motor shield sea distinto al que utilizas.
    Gracias y saludos

    • Buenas Jose, cuando conectas la alimentación de las SHIELD la placa también está conectada por USB? Es decir estas usando el pin Vin para alimentar la placa? Con este módulo no hay problemas como con el de Wi-Fi. Solo necesita unos 8-10mA y la alimentación de 3.3V entrega creo recordar 150mA. Prueba conectando tanto la alimentación como el USB y debería funcionar, si lo hace, añade una fuente de 5v para alimentar la placa Arduino y el adaptador de 12-15v para los SHIELD. El módulo sólo se alimenta con 3.3v? Uno de los que tengo, la señal Tx-Rx si que funciona a 3.3v pero la alimentación me deja entre 3.3v y 5. Si no Si esto no funciona podemos veras opiniones… Saludos!!!

      • Hola, alimento todo al mismo tiempo pero puede ser que las conexiones del módulo bluetooth no estén bien hechas ya que he visto que tienen otra disposición en el artículo que tienes sobre la placa mega, y seguramente el error esté ahí. Ya comentaré si es así.

        • Bueno, parece que lo he solucionado. Efectivamente el fallo estaba en las conexiones porque no eran las que correspondían a la placa Mega. De todas formas gracias por todo.

          • Como lo has arreglado?. A mi me pasa lo mismo. Pinchando rx y tx al o y al 1. Me tumba la alimentación del motor shield.

  5. Buenas Sergio! Lo que comentas es un problema de hardware entre el modulo HC-06 y android, El LED que lleva el modulo HC-06 sigue parpadeando? o se queda fijo pero no hace nada mas?. el HC-06 tiene que estar configurado a 115200 bauds y los pines Tx y Rx del HC-06 son los pines Rx y Tx de Arduino. Por lo demás no hace falta ninguna librería, salvo que te lo diga el Ide de Arduino a la hora de compilar el programa. Prueba a emparejar con otro smartphone. Para emparejar el modulo, los pines Rx y Tx no son necesarios. haz algunas pruebas a ver que tal, pero en respuesta a tus preguntas, no hay que hacer nada especial, salvo la configuración y no necesitas ninguna libreria para ese modulo.
    Si sigues teniendo problemas cuéntame a ver si puedo echarte una mano, Saludos!!!

  6. Hola sabes que seguí todos los pasos y no me reconoce el modulo hc 06 desde el cel no lo puedo encontrar y ya no se que mas tocar… tengo que cargar algo especial en la central o alguna librería???

  7. Y serviría igual el módulo wifiESP8266 para la aplicación en vez del módulo del bluetooth?

  8. Entiendo que serviría para poder conectar la central DcC++ con la aplicación DCC++CAB,no?
    Un saludo

    • Si, esta preparando para poner el módulo directamente a la central en los pines 0 y 1 (Rx/Tx) lo único es que el módulo tiene que estar configurado a 115200 bauds por lo demás, enchufar y listo. Para WiFi hay que programar el módulo antes en este mismo blog tienes información sobre eso, Saludos!!!

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *