Tutorial: Conectar un dashboard real (BMW E36) para SimRacing

Llevo tiempo queriendo hacer esta entrada pero la he ido retrasando. Me han preguntado varias veces como montarlo porque lo han visto en mis vídeos. Por ello, voy a documentar como usar y conectar al PC un dashobard procedente de un BMW E36. *Eurobeat Intensifies*



IMPORTANTE

Quiero aclarar una cosa. NO soy el autor del proyecto original. Desde hace tiempo, buscaba la forma de conectar un tacómetro, velocímetro... para hacerlo funcionar en los juegos que uso habitualmente (Assetto Corsa, Dirt Rally... etc). Hasta entonces, solo conocía las soluciones que ofrecían fabricantes de hard específico para simracing, y todos sabemos a que precios se mueven. No dudo que funcionen bien, pero buscaba algo que pudiera hacer funcionar yo mismo. Tenia una placa Arduino sin uso así que, comencé a buscar la manera de aprovechar esta y ver si existía alguna forma de usarla como punto medio entre el pc y lo que quería conectar.

Así fue como encontré la web Sim-pc y el proyecto "BMW E36 mit RCC - real cockpit connector" que daba solución a lo que yo aspiraba. El autor documenta (en perfecto alemán) los materiales y diagrama para conectar el dash con arduino y el pc. También provee del software necesario para hacerlo funcionar. Y todo gratis. Como en su día tenia un par de dudas respecto a las conexiones o calibración, le escribí en su misma web y contestó a todas ellas. Así que os animo a que donéis algo en agradecimiento a este proyecto. Me ha ahorrado dinero, tiempo, lo hace uno mismo y encima tienes una parte de un E36 funcionando en casa.

Después de este prólogo, pongámonos con ello.

Materiales

-Dash del E36.  (Compré el mio en Ebay)
-Una fuente de 12V para alimentar el "cuadro" del BMW
-Un Arduino Nano, Uno o Mega

Software

-Descargar RCC (Contiene el sofware para Windows y el código que hay que insertar en arduino)
-Arduino IDE (Para grabar el código en arduino)


El diagrama de conexiones es el siguiente. Como en su día no tenia la Nano, hice el ejemplo con el Uno. Pero vamos, mientras respetéis los pines, da lo mismo. (El código igual, funciona en cualquiera)

dashboard E36 conexiones

Al principio, para probar todo use como fuente de alimentación una fuente ATX de pc. Luego me hice con el típico transformador de 12V (como el que alimenta cualquier router, tenia uno sin uso), quedando todo mas recogido y compacto. Os dejo algunas imágenes de cuando lo monté:

dashboard E36
El cable molex que iba a la fuente
dashboard E36

Como curiosidad, me llegó con una de las luces fundida. En concreto, la que ilumina la zona del combustible. En ebay encontrareis recambios para sustituir fácilmente la luz por otra, en su versión led.

dashboard E36 luces
Antes de cambiar la bombilla
dashboard E36
Después
Como sugerencia final, podéis añadir un interruptor para no ir enchufando/desenchufando la corriente. El mio esta ubicado a un lado del arduino Nano

Una vez terminado nos ponemos con arduino.

Instalar el software de Arduino y el RCC. Cuando arranquéis este último por primera vez el programa, es casi seguro que saltará una actualización o tendréis que instalar un paquete net framework.

Con la placa conectada al usb, abrimos Arduino IDE y en "Herramientas > Placa" seleccionamos la nuestra (en mi caso, repito la Nano. Si tenéis la Uno o Mega, pues la correspondiente)

Seguidamente, pulsamos "Abrir" (o también Ctrl+O) para iniciar la carga del código. Nos dirigimos a la ruta donde hemos instalado el RCC y navegamos hasta la carpeta "BasicInstrumentCluster" 
Dentro de ella, seleccionamos el archivo .ino y lo cargamos.
Pulsamos el botón "Verificar" para comprobar que está correcto y finalizamos pulsando el botón "Subir". Escribirá en la placa durante unos segundos hasta que termine de cargar.

Ya podéis cerrar el programa o desinstalarlo si queréis.

Volviendo al RCC. Con el arduino conectado, abrimos el programa, elegimos el puerto COM donde tengamos nuestro arduino y pulsamos "OPEN". Quedara automáticamente conectado. Las pestañas "Graphic" o "Hardware" son para calibraciones, pero en esta ultima versión del programa no me ha hecho falta usarlo. Respeta el limite de 7000 RPM (bueno, la aguja baja un poco mas, como si llegase a cerca de 8000) pero funciona perfectamente. 
Obviamente si el vehículo que llevamos llega hasta las 11.000 RPM, no saldrá reflejado. Quiero decir, marcaría casi siempre el tope, osea 7000 RPM, porque lo que hace el programa es "compesar", osea adapta el rango de RPM para mostrar. Con los vehículos que tienen el corte a 7000 o 8000 la representación es fidedigna.

Para usarlo, si por ejemplo vamos a jugar a Dirt Rally, marcamos la casilla de este y el RCC quedará  pendiente a que arranquemos el juego. No hay que tocar nada más.

Es compatible con Assetto Corsa, Project Cars, rFactor 1 y 2, Dirt 3, Live for Speed... en la web del autor tenéis toda la compatibilidad o en el README.txt
Si tenéis alguna duda o no os queda claro algo, no dudéis en escribir. ¡Espero que lo disfrutéis tanto como yo!

Después de tantísimo texto, os dejo algunos vídeos para que veáis como funciona:






61 comentarios:

  1. Este comentario ha sido eliminado por el autor.

    ResponderEliminar
  2. Buenass esto serviría con cualquier dashboard o tiene que ser con el del bmw e36??

    Un saludo

    ResponderEliminar
    Respuestas
    1. Buenas

      Solo sirve específicamente para un dashboard de E36

      Un saludo!

      Eliminar
    2. Hola buenas tardes,

      Soy nuevo en esto de programar este tipo de artículos, He instalado tanto el arduino como el RCC y las agujas se mueven pero al querer iniciar el juego, me da un error indicando error en la telemetria del juego Euro Truck Simulator. No se como solucionar este tema, por favor, si podéis ayudarme estaría encantado por vuestra parte, ya que me estoy volviendo loco jejeje. Tengo otra pregunta y es la siguiente, ¿¿funcionaria el cuadro de bmw con el juego need for spped shift??

      Espero vuestras respuestas.

      Muchas gracias, un saludo

      Eliminar
    3. Buenas! Antes de seguir con el RCC, te recomiendo que saltes a Simhub. Lo descubrí hace año y pico y actualmente es lo que uso junto al cuadro y varias cosas mas que he montado. La conexiones del cuadro del BMW al arduino varían ligeramente, pero una vez lo tengas cambiado, la configuración y uso del otro es mucho más fácil e intuitiva.

      Aquí tienes los esquemas: https://github.com/SHWotever/SimHub/wiki/BMW-E36-Cluster-Setup

      Un saludo!

      Eliminar
  3. nice to see my project in spain :)
    great... rcc works with all speedometer where you can conrol with an arduino.
    Golf 3, BMW e36, Ford Mondeo must be work. you can also use led, servos and much more.
    now i will make some test with can-bus for newer instruments.
    best regards from germany... by SimPc

    http://www.sim-pc.de
    https://www.facebook.com/simpc.rcc

    ResponderEliminar
    Respuestas
    1. Great!
      Thanks for the development.

      Greetings from Spain

      Eliminar
    2. Lot of thank's for all. Could it work with an e60 speedometer? I hope yes like last answer.

      Eliminar
  4. Boa tarde, quantos amperes devo usar no dashboard do bmw e36?

    ResponderEliminar
  5. Boa noite tentei tudo mas apenas o ponteiro rpm funciona. Mas no jogo nada funciona. Ajuda

    ResponderEliminar
  6. Este comentario ha sido eliminado por el autor.

    ResponderEliminar
  7. Buenas ,vale tambien para Eurotruck y AmericanTruck Simulator???Hay que soldar algo con un Arduino uno?Gracias

    ResponderEliminar
  8. Y la fuente de alimentacion la salida es normal, donde la conecto ,en el cuadro ??

    ResponderEliminar
    Respuestas
    1. Buenas.

      Sí, es compatible también con ETS2 y ATS.

      La fuente de alimentación tiene que ser de 12V y 2-2.5A, con eso tendrás suficiente. Conectas los cables indicados con 12V al terminal positivo de esta y los indicados con GND al terminal negativo.
      No hace falta soldar, tanto el arduino como el cuadro tiene pines que puedes conectar con cables de cabezal hembra, que ahorra cualquier soldadura.

      Un saludo

      Eliminar
  9. Gracias pero aun asi no me he enterado,podrias poner un video para ver como se hace?Saludos

    ResponderEliminar
    Respuestas
    1. Buenas.
      Es muy fácil, quizás no me haya explicado bien. Para alimentar el cuadro (ya que el arduino se alimenta directamente del USB), mira el esquema de conexión y todos los pines marcados como GND (negativo) los conectas al pin/conexión negativa de la fuente de 12V.
      Posteriormente, todos los pines marcados como +12V, los conectas al pin/conexión positiva de la fuente de 12V.

      Agrégale en medio un interruptor para apagar y encender rápido. Espero haberme explicado claro ahora :)

      Un saludo!

      Eliminar
  10. Hola! He realizado todas las conexiones correctamente. Mi problema viene cuando conecto el arduino al pc, es un Arduino UNO clon. El PC me lo detecta pero a la hora de meter el archivo.ini me salta error. No se si será problema de la versión V2. Tienes alguna version anterior a esta? Por que el autor solamente tiene la V2. Un saludo!

    ResponderEliminar
    Respuestas
    1. Me da error de "libreria inválida" hay que instalar alguna libreria?

      Eliminar
    2. Vale, ya he podido escribir el programa. Ahora tengo otro problema en el RCC V2. Cuando le doy a Test, la aguja de las revoluciones baja al tope, a unas 11000 rpm, tengo limitado a 7000rpm pero aún así lo hace. No se si tengo que cambiar algo por que la de la velocidad va bien. Si tuvieras alguna version anterior a la V2 te lo agradeceria, un saludo!

      Eliminar
    3. Ya lo tengo todo! Lo has probado en Dirt 3? es que he visto que hay que cambiar unos parametros pero aún cambiándolos no me funciona. En cambio en Asseto Corsa y Project cars va perfectamente

      Eliminar
    4. Por cierto, que bombillas le pusiste? Por que el cuadro que yo tengo tiene varias fundidas o ni si quiera están. Sobre todo no encuentro las que son de 1.2w que son muy pequeñas, no veo para comprarlas en ningun sitio

      Eliminar
    5. Buenas Félix.

      Veo que ya has solucionado los problemas. Funciona también bajo Dirt 3 y Dirt Rally. CREO recordar que para Dirt 3 tienes que tocar una configuración. En el software, ve a "Settings/Dirt3.../Info" y ahí te viene la configuración que debes aplicar en estos juegos.

      Los recambios de las luces los compré en Ebay o también puedes mirar en Amazon. En mi caso, las sustituí por luces led.

      Un saludo!

      Eliminar
    6. ¿Me podrías pasar el enlace de las bombillas? He cambiado los parámetros que dice la aplicación pero aún así no me lo coge. ¿tú lo has probado en ese juego?, Un saludo Crack

      Eliminar
    7. En Dirt Rally funciona al 100% porque lo he probado siguiendo los pasos. No recuerdo haberlo probado en Dirt 3, pero tiene que funcionar si o si.

      Las grandes (T5) son estas https://www.amazon.es/SODIAL-Bombilla-Salpicadero-Encendedor-Cigarrillos/dp/B00K67YM2Y/ref=sr_1_1?s=lighting&ie=UTF8&qid=1495717224&sr=1-1&keywords=bombilla+t5

      Eliminar
  11. Hola qué tal, me encanta el "artilugio" que has creado y yo me quiero hacer otro jejeje. El plano de la conexión es para el Arduino Uno pero el que tienes puesto es el del Nano, podrías poner las conexiones pero para el Nano o decirme donde.
    No estoy seguro si lo haré al final con el "marcador" del BMW E36, seguramente vaya a por uno más barato del grupo vag y que el coche fuera de gasolina a poder ser, si has hecho un blog con esto me interesaría he visto algo por aquí y por allá algo pero el modo de explicarlo tuyo me parece más correcto.
    Un saludo , gran trabajo.

    ResponderEliminar
    Respuestas
    1. Buenas.

      Las conexiones son las mismas tanto para el Uno como para el Nano, Me refiero a que uses el mismo numero de pin tengas el arduino que tengas y debería funcionar sin problemas.
      ¿me estas diciendo que mi dash es de un E36 diésel? No me digas eso que estaba seguro que era el de gasolina. Lo guardo en el fondo del cajón, en serio... jaja

      He probado a montar otro con un dash de golf (este si era diesel) pero la aguja de la velocidad no funcionaba (rpm, fuel y todo lo demás sí)

      Me gustaría montar el del Rx-8 cuando tenga más tiempo. Lo han probado y funciona perfectamente.

      Saludos!

      Eliminar
    2. Ey qué tal.

      No, no es diésel tu marcador, estoy casi seguro que no, lo que pasa que vi un vídeo con alguien que ha usado el marcador del golf de la caja 3 diésel, porque tuve yo un golf igual el "cl" y el marcador hasta 5.000 RPM... el tuyo es gasolina, y por eso lo remarqué.

      Otra cosa, ya que has hablado de un marcador de un coche con motor rotativo supongo que es por las revoluciones ya que a estos motores les gusta la "alegría" y el marcador supongo que leerá muy alto las RPM que es el único defecto que se le podría sacar al o a los Dashboard. Bueno, el otro día te lo iba a poner, un marcador "barato", por lo menos más barato que el del Mazda, seria el de un Civic Type R, ese es otro coche que le gusta la alegría, tiene que ser el del atmosférico, tiene un buen rango de revoluciones por si quieres revisarlo. Y el de las motos del tipo analógico, las de turismo, son marcadores que pueden tener la zona roja a partir de las 10.000 o las 11 o las 12 según la moto que sea, con 12.000 de max te abarca casi todos los coches.
      No me quería extender pero me has empujado, gracias por tu atención y espero tu siguiente trabajo. Un saludo.

      Eliminar
    3. La verdad es que quedaría realmente bien con el del Civic, otro que le gusta apretar también (de heco, me gusta más que el dash del RX-8).
      Sin embargo no he visto un datasheet o diagrama para hacerlo con otros cuadros que no sean los citados. En tal caso, habría que "vaciarlo" y colocar unos servos controlados por arduino, etc... pero claro, esa no es la idea: seria muy costoso y un lío. Sin decir la compatibilidad con la api, etc...

      Si me hago con un dash barato del Mazda, mi intención es probarlo. Me hice con un dash del Golf pero la aguja de la velocidad no funcionaba. Desconozco si venia averiado pero todas las demás si lo hacían

      Un saludo!

      Eliminar
  12. Hola ,valeria para un cuadro de kadett gsi?

    ResponderEliminar
  13. Hola, gracias por compartir!!
    He seguido tus pasos correctamente (creo..)
    Veo que no llega a las 7000 rpm ni descansa la aguja en 0 rpm.. falta calibrar algo?
    te estaría muy agradecido si pudieras darme alguna pista.
    un saludo y gracias nuevamente!

    Victor.

    ResponderEliminar
    Respuestas
    1. Buenas.

      En teoría, viene preparado para funcionar de forma predeterminada con el cuadro del E36, por lo que los valores deberían ser iguales.
      Comprueba en la pestaña "hardware" que tienes estos valores. Son de mi configuración.

      http://i.imgur.com/Q1IpVHH.png

      Saludos

      Eliminar
  14. Bueno, con 233 en rpmmax y seleccionando el cuadro de 9000 rpm va mejor.. ya no se van al quinto pino las rpms... pero hay un desfase de aprox 500-800rpms de más..
    si selecciono el cuadro de 7000 (el mio) la aguja parece que se quiere suicidar... para unas risas está bien pero sufro por la integridad del cuadro XD
    también observo que hay una mínima diferencia en los km/h de en torno a unos 5-7km/h...
    empiezo a dudar del cuadro...
    el autor del fregao lleva un vdo de tapa trasera negra.los hay motometer también y vdo de tapa trasera azul. como el tuyo... no sé si tendra mucho que ver..

    ResponderEliminar
    Respuestas
    1. No sabría decirte si tiene que ver eso, pero casi seguro que lo puedes afinar más tocando los valores y haciendo pruebas. En mi caso cuando lo monte, la calibración brillaba por su ausencia, y ese era el problema

      Eliminar
  15. Hello, do you know where to find the datasheet pins of other cars tachometer?

    ResponderEliminar
    Respuestas
    1. Hi

      Well, some datasheet are included in the download of the RCCv2 (E36 and Golf only)

      Regards

      Eliminar
  16. Hola buenas. Vereis tengo el cuadro del e36 la arduino el programa rrc y rfactor el tema es que no me hace nada el cuadro a la hora de configurar la arduino buscaba la carpeta que se menciona que dentro lleva el archivo .ino pero no está sin embargo hay otra que dentro lleva un .ino llamado Basic v2 y ese es el que está cargado no se si ese será el problema o no pero por favor aver si me podéis echar una mano si queréis podéis mandarme un correo sergiopuig29@gmail.com
    Gracias y un saludo

    ResponderEliminar
    Respuestas
    1. Te lo digo de memoria.
      ¿Has añadido la librería "ToneLibrary.zip" al IDE? Una vez hagas eso, carga el BasicV2.ino al arduino. En el software RCC deberías seleccionar el puerto COM de tu arduino y conectarlo.
      Revisa también las conexiones, los cables... En cuanto pulsas conectar en el RCC, verás que las agujas se mueven un poco y podrás proceder a la configuración

      Eliminar
    2. Este comentario ha sido eliminado por el autor.

      Eliminar
  17. Podrias hacer un esquema mas fácil para conectar al dashboard por favor

    ResponderEliminar
  18. Gran post!!! muchas gracias el que se haya tomado tanta molestia en la explicación y las imágenes con los esquema son de gran ayuda para mi proyecto, muy agradecido

    ResponderEliminar
    Respuestas
    1. Me alegra que haya gente que le sirva y mucho mas que agradezca! Gracias a ti por comentar :)

      Eliminar
  19. Hola compre de un desguace el salpicadero del e36 segun epodido conprobar es del 1998 o 1999 , solo alimentandolo tal y como sale en el esquema se enciende todo la aguja de la temperatura se pone al maximo y da igual que este conectado ala electronica siempre nada mas conectarse se sube al maximo, el indicador de gasolina se queda a mitad, me daba el error del aceite pero ya solucione, despues conecto al arduino nano,mega,uno los e probado todos y solo e conseguido hacer que funcione el velocimetro.

    pense que podia ser que el velocimetro este mal asi que lo abri y conecte en el lugar del velocimetro el tacometroala electonica del propio salpicadero y lo probe y la aguja se movia asi que funciona.
    en 2 dias le echado 12h y e echo muchas pruebas y conexiones. e mirado los manuales de los bwm desde el 1995 hasta el 1999 y nada basicamente las conexiones son las mismas.
    el modelo es bmw 62118381858.
    cualquier ayuda se agradecera mucho.

    ResponderEliminar
    Respuestas
    1. *pense que el tacometro este mal asi que lo abri y conecte en el lugar del velocimetro el tacometro ala electronica del salpiacdero y funciona .(que lo e puesto mal antes)
      el pin 20 del conector blanco no recibe la señal para el tacometro , tambien e echo pruebas en todo los pinesy nada las RPM no se mueven.

      Eliminar
  20. una idea que se me ocurrió seria pasar de la electronica del salipadero solo alimentar la iluminacion y conectar directamente el velocimetro y demas a arduino , pero supongo que no es conectarlo directo y ya seria con resistencias y demas que no tengo idea xD.

    ResponderEliminar
    Respuestas
    1. Me parece muy raro tu problema porque solo con alimentar los pines GND y 12V que ves en la imagen, debería encenderse sin problemas. Aparte, el arduino. ¿has comprobado que tengas las librerías instaladas?
      En su dia me daba error porque no seleccionaba el tipo de placa que usaba (uso la uno y por defecto tenia otra puesta), y el código se cargaba mal. El indicador de gasolina es normal que suba al encenderse por los 12V. Al menos el mio también lo hace y ya luego se pone bien.

      Eliminar
  21. hola buenas estoy teniendo bastantes problemas para compilar el programa . no se donde esta el archivo que debo encontrar ...

    ResponderEliminar
    Respuestas
    1. Desde que monte esto no toco el ide del arduino, pero intentaré ayudarte. ¿que problema te dá?

      Eliminar
  22. Hola buenas. Tengo el mismo problema. Me funciona el velocímetro la temperatura no me va ni la gasolina y rpm tampoco lo probé también con simhud y me pasa lo mismo. No sé cuál será el problema. Pero uff me tiene un poco quemao jejeje. Si pudieras echarme una mano. Gracias

    ResponderEliminar
    Respuestas
    1. Buenas. No he usado nunca simhub, ¿funciona sin tocar el esquema del arduino de esta versión? No tenia ni idea.
      Lo que si te puedo decir es que lo de la gasolina y aceite no era en todos los juegos. En las notas del programa (RCC me refiero, y te lo digo de memoria) decía que esas skills solo eran soportadas en iRacing y CREO que rfactor 2 o uno muy parecido. No tengo ninguno y no puedo corroborarlo pero vamos, que por conexiones no es. El problema, si lo hay, es el software.

      Un saludo!

      Eliminar
    2. Gracias por contestar. Perdona mi ignorancia ....pero al software te refieres a lo que se carga en el arduino?. Uso el rcc y va bien el velocímetro pero las rpm no se mueven. He metido la librería de tone library y nada.... Haciendo el test en rcc funciona el velocimetro. No sé si de tanto salsear la he liado. Estoy por desinstalar todo y volver a empezar.que me recomiendas?. Un saludo y gracias de nuevo

      Eliminar
    3. Me refería a que si, en vez de usar el RCC, habías probado el software simhub. Hay otra versión de este que funciona con ese software y DESCONOZCO si funciona mas fino o no. Sería interesante mirarlo, todas las alternativas son bienvenidas.
      Realmente, cuando haces el test, que yo recuerde solo se movían RPM y velocidad. En mi caso se encendía la luz de reserva del combustible pero no recuerdo un movimiento "de prueba".

      ¿En Project Cars no te funciona? Mira en la carpeta RESOURCES del RCC y lee el .txt en la carpeta pCars. Como ves, hace la referencia al aceite, agua, combustible...

      Ya nos cuentas!

      Eliminar
    4. Tanto con el software de rcc y el simhud solo me funciona el velocímetro todavía no lo he podido hacer funcionar las rpm y no sé cuál es el problema. En rfactor2 funciona bien el velocímetro tanto con rcc como con el simhud. Mi problema sigue siendo el.mismo., no puedo hacer funcionar las rpm, no sé decirte todavía si va mejor en uno o en otro....espero que alguien haya tenido el mismo problema y me saque de este atolladero jejeje

      Eliminar
  23. se puede hacer con el cuadro de un e39 bmw?

    ResponderEliminar
    Respuestas
    1. Hasta donde he encontrado, solo es factible hacerlo con este de un E36

      Eliminar
  24. Hola,Gran trabajo y sobre todo agredecerle todo lo que está haciendo de manera desinteresada para ayudarnos.
    Me he comprado un tablero de una mazda RX8 pero no encuentro un esquema de conexion para la placa Can bus shield.
    Tengo entendido además que hay que colocar una resistencia en paralelo entre el cluster y el can bus shield.Tampoco
    se que sketch de arduino usar el Rcc basic o uno que especifica can bus rx8,He probado con el de can bus RX8 y no funciona.
    A ver si me puede iluminar un poco sobre el tema.Muchas gracias,

    ResponderEliminar
    Respuestas
    1. Buenas Alex. Me encantaría ayudarte pero nunca probé con este tablero. Lo único que se me ocurre es si las conexiones son las correctas.
      En esta imagen de la web del autor https://www.sim-pc.de/wp-content/uploads/2017/02/rx8-pins.jpg aparecen cual es cada una. Revisa el código que cargues, para cerciorarte de que cada pin se corresponde a la imagen.
      En cualquier caso, hace ya casi dos años que no uso este programa. Ahora uso SimHub que tiene más soporte para hardware y toda la documentación esta en linea en el propio programa.

      Un saludo!

      Eliminar
  25. Buenos JeFe_RoJo. Tengo una fuente 12v 1.5A lá conecte y las luces se encende bien pero las agujas nada. ¿Cambio el fuente para 2A ou 2.5A? Saludos desde Brazil

    ResponderEliminar