5

Configurando DCC++ EX

Muy buenas a todos!

Como sabéis, ahora mismo en tema de DCC la central DIY que más avanzada es la DCC++EX.

Todos esto gracias a la gran comunidad que hay detrás apoyando el proyecto y aportando su granito de arena.

Y, aunque ahora no disponga de una maqueta, es la central que tengo instalada ahora mismo en mi panel de control y mi central de pruebas para DCCppCab. (Sobre el panel de control haré una entrada más adelante para explicar como funciona.

En entradas anteriores ya vimos como instalarla en nuestra placa Arduino Mega 2560.

Ahora mismo ya la tenemos funcionando y probamos por primera vez….

Después de recibir un montón de datos de la central, tales como:

El estado del Wi-Fi:

<* Wifi Check: [+CIFSR:STAIP\0] *>
<* Wifi Check: [+CIFSR:STAIP\0] *>
AT+CIFSR
+CIFSR:STAIP&lt;* Found in 3ms *>
<* Wifi Check: [0.0.0.0\0] *>,"192.168.1.33"
OK

si tenemos pantallas LCD y cual es su dirección:

<* I2C Device found at x3C *>
<* 128x64 OLED display configured on I2C:x3C *>

El tipo de driver que tenemos instalado:

<* MotorDriver currentPin=A1, senseOffset=439, rawCurrentTripValue(relative to offset)=668 *>
<* MotorDriver currentPin=A0, senseOffset=0, rawCurrentTripValue(relative to offset)=668 *>
<iDCC-EX V-4.0.0 / MEGA / STANDARD_MOTOR_SHIELD G-a26d988>

Bien hasta aquí todo funciona correctamente así que encendemos la central con <1>:

<* PROG TRACK POWER OVERLOAD current=556 max=248 offtime=20 *>
<* PROG TRACK POWER OVERLOAD current=926 max=248 offtime=40 *>
.....

Con esto la central nos esta indicando que hay una sobre carga en la vía de programación.

nos ponemos a investigar partiendo de la base de que no hay vía de programación… pues es exactamente eso, si tenemos instalado un MAX471 no tendremos este error ya su salida de la vía de programación estaría en el pin A1 como indicaba la lectura del driver instalado que vimos al arrancar la central:

<* MotorDriver currentPin=A1, senseOffset=439, rawCurrentTripValue(relative to offset)=668 *>

En mi caso solo dispongo de uno en la vía principal así que tengo que modificar el archivo «MotorDrivers.h». En la linea donde esta definido nuestro STANDARD_MOTOR_SHIELD:

#define STANDARD_MOTOR_SHIELD F("STANDARD_MOTOR_SHIELD"),                                                 \
    new MotorDriver(3, 12, UNUSED_PIN, UNUSED_PIN, A0, 2.99, 2000, UNUSED_PIN), \
    new MotorDriver(11, 13, UNUSED_PIN, UNUSED_PIN, A1, 2.99, 2000, UNUSED_PIN)

y cambiaremos la segunda opción en A1 y lo cambiamos por UNUSED_PIN quedando así:

#define STANDARD_MOTOR_SHIELD F("STANDARD_MOTOR_SHIELD"),                                                 \
   new MotorDriver(3, 12, UNUSED_PIN, UNUSED_PIN, A0, 2.99, 2000, UNUSED_PIN), \
   new MotorDriver(11, 13, UNUSED_PIN, UNUSED_PIN, UNUSED_PIN, 2.99, 2000, UNUSED_PIN)

Otra de las cosas muy interesantes que trae la central es como maneja los puertos de comunicación. Desde el archivo config.h, justo en la parte inferior del texto tenemos:

//#define SERIAL1_COMMANDS
#define SERIAL2_COMMANDS
//#define SERIAL3_COMMANDS

Con esto, en la placa MEGA, nos da la opción para encender o apagar los puertos 2 y 3 para conectar otros dispositivos tales como Bluetoorh o comunicación serial con otro arduino,

Como se ve en el código anterior tengo habilitado el serial 2 para la comunicación con el modulo Bluetooth.

Los puertos 0 y 1 están reservados para la comunicación con el PC (puerto 0) y la conexión Wi-Fi (puerto 1)

Si no tenemos Wi-Fi el puerto 1 también estará disponible.

Para habilitar los puertos solo tenemos que borrar las 2 barras «//» y ya podremos disfrutar de un puerto Rx/Tx para comunicarnos con otros dispositivos.

Comando nuevos:

Para esta central también hay comandos nuevos que merece la pena resaltar como:

<#> Que nos devuelve el número de locomotoras que podemos gestionar con la central (por defecto 50)

<!> Comando de parada de emergencia, para las locomotoras pero no corta la alimentación en las vías

<- nCAB> «Olvida» de lista de locomotoras activas la locomotora nCAB

<-> «Olvida» todas las locomotoras de la lista de locomotoras activas

En el apartado de diagnostico también esta el comando <D CABS> que nos dará una lista con las locomotoras activas su dirección, velocidad y sentido de la marcha.

Bueno hasta aquí todo por ahora, pondré más información según vaya descubriendo nuevas cosas de esta central. Me gustaría poder añadir una linea más al LCD con la información del comando que recibe o del comando que la central manda, pero no tengo muy claro como funciona aún.

Saludos!!

(Visitado 104 veces, 1 visitas hoy)

5 comentarios

  1. Hola, He visto en la web de DCC++Ex que una opcion es poner un motor board de 15 A (IRF 3205) con lo cual ya puedo poner más de cuatro locos.
    Estoy montando una maqueta de 4×2 para aprovechar un cajón de material Marklin H0.
    Gracias y saludos

    • Buenas Arturo!
      Le echaré un ojo a los enlaces esta semana.
      Claro! El Booster es para cuando tienes muchas lo locomotora s en la misma maqueta, pero la DCC++ ya tiene su propio Booster que es el L298.
      En lo personal, en mi maqueta solo tengo la central con una placa MEGA y el motor shield básico. Siempre me ha funcionado bien ya que tengo separas las líneas de DCC y las de alimentación de los accesorios.
      Se puede sacar alimentación de la línea DCC, pero a costa de darle más carga al motor shield.
      En que escala y que dimensiones tiene la maqueta?
      Saludos!!!

  2. Hola, estoy montando una maqueta H0 con el control por medio de Arduino Mega y la Central DCC++ Ex. Toda la informacion de tu web es magnifica y me ayuda mucho pero hay un tema que me tiene parado.
    Con la instalación típica el motor shield suministra 2 A con los que entiendo que se pueden manejar 4 o 5 locos y si hay más es necesario un booster y mi pregunta es ¿Como y donde se acopla el booster?.
    Gracias por la atención y por la información que nos facilitas.

    • Buenas Arturo! Si, como dices, con 2A puedes manejar 4 o 5 locomotoras (también dependiendo de si tiene funciones extra) para añadir un boster he visto que suele hacerse con un modulo LMD18200
      con un circuito creo recordar bastante básico, pongo una chincheta al tema, pero si te puedo dejar un enlace a como se instala, ya que tienen que ir aislados, https://dcc-ex.com/reference/tools/diagnostic-tools.html la explicación está casi al final del todo. Esta en Ingles, pero con las imágenes te puedes hacer una idea de como se conecta.
      Tienes algún esquema o enlace del booster que quieres montar? Buscando no he encontrado mucho sobre el tema.
      Saludos!!

Deja una respuesta

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