Arduino – Logitech G27 Shifter a USB

Vamos a convertir un shifter del g27 a usb con una placa arduino.

NOTA Importante: Compilar con la versión 1.6.9 del IDE de Arduino.

Dejo el link a continuación.

https://www.arduino.cc/download_handler.php?f=/arduino-1.6.9-windows.zip

Cuando compré el thrustmaster t300 alcantara me quedé sin poder utilizar el cambio de marchas que tenia con el Logitech G27 y la opción de comprar la Thrustmaster TH8A pues como que no me apetecía por su precio y por que tenia la del g27 tirada por ahí.

Pensé en la opción de comprar el adaptador de Leo Bodnar para el shifter, de hecho iba a comprarlo hasta que entré en la pagina y lo tenían fuera de stock, en ese momento me puse a rebuscar un poco por Internet y encontré la solución, para variar con un Arduino.

Voy a explicar paso a paso como he hecho para tener este adaptador por menos de 13€.

Antes de nada voy poner los links a las páginas en las que me basé para hacer el aparato, ya que lo único que hice yo es montarlo.

La primera de las paginas se basa en el proyecto de la segunda pagina, el cual utiliza dos db9 y mete con una controladora el shifter mas los pedales. Yo como ya tenía el adaptador Leo Bodnar para los pedales solo quería la parte del Shifter.

https://www.xsimulator.net/community/threads/g27-shifter-and-buttons-standalone-usb.9654/

https://github.com/functionreturnfunction/G27_Pedals_and_Shifter

Los componentes necesarios para el proyecto son los siguientes:

Pro Micro ATmega32U4 5V 16MHz (Sparkfun clone) Link a Amazon.es

La peculiaridad de este arduino es que se puede configurar como un mando de juegos, el Windows lo detecta como un mando.

Conector DB9 Macho

Caja de electrónica de plástico

Tanto la caja como el conector DB9 y los cables se pueden conseguir en cualquier tienda de electrónica a un precio bajísimo, el DB9 creo recordar que me costó 0,40€ y la caja no llegó al euro.

Las soldaduras quedarían de la siguiente manera:

Quedaria asi:

Igual que a la persona del primer post en el que me basé, mi clon del promicro de sparkfun tiene los pines 0 y 1 intercambiados, osea que hay que intercambiar los pines 0 y 1 del gráfico anterior por el lado del pro micro. El 1 del db9 va al 1 de la pro micro y el 2 del db9 va al 0 de la pro micro.

Ahora tocaría soldar, con la ayuda de mi compañero de trabajo, yo soy penoso soldando, la cosa quedó así.

Después, simplemente coger la cajita y hacerle los agujeros para el DB9, ya sea con limas, dremel o lo que querais.

Lo siguiente sería instalar el Arduino IDE de la siguiente página:

Nota: con versiones superiores a la 1.6.9 puede dar problemas al compilar.

https://www.arduino.cc/download_handler.php?f=/arduino-1.6.9-windows.zip

Despues instalamos las librerías de sparkfun en el IDE de arduino. Está perfectamente explicado en la pagina de github de sparkfun que os dejo a continuación.

https://github.com/sparkfun/Arduino_Boards

Una vez está correctamente instalado el IDEy las librerias de sparkfun lo único que hay que hacer es meter en las librerias de arduino los siguientes ficheros:

https://www.racingsimulator.es/wp-content/uploads/G27PedalsShifter.cpp

https://www.racingsimulator.es/wp-content/uploads/G27PedalsShifter.h

Creáis una carpeta en las librerías de arduino llamada G27_SHIFTER_USB y metéis esos 2 ficheros dentro. (La carpeta de las librerías suele estar en “mis documentos\arduino\librarys”)

Despues se crea un nuevo proyecto y agregais el codigo del siguiente fichero:

https://www.racingsimulator.es/wp-content/uploads/G27_Shifter_USB.ino

Configuramos el Hardware en el IDE. Vamos a herramientas y elegimos la placa sparkfun micro 5v 16mhz y el puerto serie que está utilizando.

Compilamos el proyecto y lo subimos al Arduino y ya queda listo.

Enchufamos la Palanca de cambios y ya la podemos configurar en los juegos. El pc nos la detecta como un dispositivo de juegos nuevo.

En la siguiente foto meto primera marcha y pulso botones al azar, funcionan todos los botones de la palanca.

Un Saludo, espero que le resulte de utilidad a alguien.

Cualquier duda podéis dejar comentarios o contactarme vía twitter.

17 comentarios sobre “Arduino – Logitech G27 Shifter a USB”

  1. Muchas Gracias, he seguido el proceso y se puede usar para el shifter del G29 aplicando algunas modificaciones en el código. Básicamente eliminando los botones aparir del 7 y ajustando el SHIFTER AXIS THRESHOLDS
    #define SHIFTER_XAXIS_12 350 //Gears 1,2
    #define SHIFTER_XAXIS_56 500 //Gears 5,6, R
    #define SHIFTER_YAXIS_135 750 //Gears 1,3,5
    #define SHIFTER_YAXIS_246 200 //Gears 2,4,6, R

    1. For my G29 Shifter This Value are Best with Arduino Pro Micro:

      // SHIFTER AXIS THRESHOLDS
      #define SHIFTER_XAXIS_12 400 //Gears 1,2
      #define SHIFTER_XAXIS_56 550 //Gears 5,6, R
      #define SHIFTER_YAXIS_135 800 //Gears 1,3,5
      #define SHIFTER_YAXIS_246 200 //Gears 2,4,6, R

  2. Hola, muchas gracias por el tutorial y enseñar que existe la posibilidad de utilizar los pedales y el shifter separado de la base del G25/27/29 por poco dinero. Lo que no termino de entender es el orden de soldadura de los cables. Podrias poner un diagrama o esquema que se vea claramente los cables donde van?

    Un saludo y gracias de antemano

    1. Siento responder tan tarde, últimamente estoy liadisimo. Cuando tenga tiempo saco una foto decente del cacharro y edito con los pines para que veáis claramente las soldaduras. A ver si en un par de días puedo tenerlo listo.
      Un Saludo.

  3. buen día mi querido amigo
    desde ya te felicito por este tutorial
    Tengo un shifter g25 y me gustaría usalo junto a mi drive force gt
    pero como soy laico en arduino tendría como hacer un video paso a paso sobre esa adaptación
    otra pregunta qué tipos de placa arduino sirve para ese proyecto?
    desde ya agradecer la atención
                                             ¡Felicidades !!!!!

    1. Siento haber tardado tanto en contestar ando liadillo.

      Te dejo un link de la pagina original donde se trata ese problema.
      https://github.com/functionreturnfunction/G27_Pedals_and_Shifter/issues/3

      Al parecer, pasa esto si te está detectando el Arduino como un “Arduino nano” y el Windows te lo tiene que detectar como un Pro micro instalando los drivers de Sparkfun
      También mira de estar compilando con la versión antigua de Arduino (la 1.6.9)
      En casa de un amigo nos diera fallos de compilación también (no recuerdo cuales) y fue instalar todo desde cero en otro ordenador y funcionar a la primera.
      Un Saludo y espero soluciones el problema.
      Cualquier cosa ando por aquí.

  4. hola buenas alguien que haya conseguido programarla , no soy capaz dado que no pones imagenes de como meter en la carpeta “Creáis una carpeta en las librerías de arduino llamada G27_SHIFTER_USB y metéis esos 2 ficheros dentro. (La carpeta de las librerías suele estar en “mis documentos\arduino\librarys”)”
    No explicas como hacer eso y crero que me da eror por que solo le meto para compilar el ultimo link que deja” Despues se crea un nuevo proyecto y agregais el codigo del siguiente fichero:
    https://www.racingsimulator.es/wp-content/uploads/G27_Shifter_USB.ino

    SI ALGUIEN SABE COMO HACERLO Y LE HA FUNCIONADO SE ACEPTA AYUDA; GRACIAS

    1. Lo siento, no, no las vendo.
      Las soldaduras son fáciles de hacer, pillas el soldador mas básico y prueba antes en cualquiera placa vieja.
      Ya verás que con un poquitín de practica sale adelante.
      Un Saludo.

Deja un comentario

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.