viernes, 8 de septiembre de 2017

Controlar DFPlayer Mini con Android por Bluetooth Parte 2

Buenas Arduineros y Arduineras!!!

Para que no se hiciera una entrada un poco larga, he decidido hacerlo en dos partes, la parte 1 que es la parte del programa para Android DFplayer Mini BT y la parte de Arduino con las conexiones y programación que es esta segunda.

Para que todo el proyecto funcione tenemos que habilitar varios puertos seriales ya que DFPlayer utiliza la comunicación serial, con lo que tenemos que habilitar otro puerto serial adicional, es decir si antes usábamos dos puertos seriales para comunicación PC==Arduino==DFPlayer ahora también necesitamos otro puerto serial para el Bluetooth HC-06.

¿Como tener más de dos puertos seriales con Arduino?

Esto lo conseguimos con la librería SoftwareSerial un ejemplo muy claro es el que aparece como ejemplo mismo de la librería llamado "TwoPortReceive.ino", y lo único que hay que hacer es poner el puerto en escucha con la función listen():


nombre_del_puerto.listen();

Para este proyecto los puertos se tienen que configurar de la siguiente manera:

  • Serial PC pin 0 y pin 1
  • Módulo Bluetooth HC-06 pin 2 y pin 3
  • Módulo DFPlayer Mini pin 10 y pin 11

Aquí podemos ver como se crean los objetos seriales con la librería "SoftwareSerial:


#include <softwareserial.h>

SoftwareSerial btSerial(2, 3); // RX, TX
SoftwareSerial mySerial(10, 11); // RX, TX

En la imagen esta el esquema para las conexiones entre el módulo DFPlayer Mini, el módulo bluetooth HC-06 y un arduino NANO:

Para cambiar de canción, reproducir, etc... mandaremos una serie de comandos que serán los encargados de estas funciones, estos comandos están compuestos por letras.

  • P = Play
  • S = Stop
  • D = Pausa
  • N = Canción Siguiente
  • F = Canción Anterior
  • H = Canción Siguiente Automático (Cable Busy tiene que estar conectado)
  • U - Z = Ecualización

El pin Busy en el modulo manda un pulso HIGH al pin 4 del Arduino y esto lo utilizaremos para el cambio de canción y 2 bits de control, uno que nos indica que la repetición esta activada y otro que nos indica si la reproducción esta activada.

Tenéis más información relacionada con el DFPlayer mini en la siguiente entrada de este blog: Arduino: Reproducir MP3 con DFPlayer Mini

Y en este enlace al reproductor: Descargar DFPlayer mini BT Arduino desde GitHub

 

 Espero que os guste el contenido un saludo a todos!!

5 comentarios :

  1. Hola! Estoy haciendo un proyecto como este, pero cuando conecto el Bluetooth, se empieza a reproducir un ruido muy molesto. No se si habrás tenido algún problema parecido o si sabrás por qué puede ser.

    Muchas gracias de antemano!
    Y gracias por este blog, es muy instructivo.

    ResponderEliminar
  2. Los ruidos vienen por problemas de la alimentación en 5V, asegurala usando la alimentación desde una fuente externa y entrala por VIN. Como mínimo podes probar con un condensador electrolitico de 470 a 1000uf sobre la alimentación 5V al DFPlayer lo más proximo, seguramente se corrige.

    ResponderEliminar
    Respuestas
    1. Si lo alimento por VIN no me funciona, pero si alimento el Arduino por el cable USB y con una fuente distinta a la del DFPlayer se reduce muchísimo el ruido, casi inaudible.

      Muchas gracias por la ayuda!

      Eliminar
    2. tienes q poner si es carpeta anteponerle dos numero ejem 01carpeta1
      si es solo archivo cuatro numeros 0002salsa.mp3

      Eliminar
  3. Hola, tengo un problema con la librería me da un error al intentar ponerla en arduino, como puedo solucionarlo

    ResponderEliminar