Here are all the solutions to plug your SRT pedals. Two philosophies: connect the pedals to your steering wheel, or connect the pedals directly to the computer.

Table of contents

  1. Logitech (G27, G29, G920)
  2. Simucube 1
  3. Simucube 2
  4. Arduino
  5. Leobodnar
  6. Thrustmaster

The vast majority of pedal sets use potentiometers. As the accelerator is based on a potentiometer, and the hydraulic pressure sensor also behaves like a potentiometer, you can connect this pedal sets to most of the steering wheel bases (logitech, Simucube, Thrusmaster…).

Alternatively it can be connected to a Leobodnar or Arduino card which is then connected to the PC via a USB cable.

1) LOGITECH (G27, G29, G920…)

You can connect the SRT pedal set to a G27 or G29 steering wheel. To do so, use a VGA male connector with the following pins:

1 – Ground (0v)

2 – Accelerator

3 – Brake

4 – Clutch

5 –

6 – VCC (+5v)

7 –

8 –

9 – VCC (+5v)

 

2) SIMUCUBE 1

The pedals can be connected to the X11-upper port. See details on the Simucube documentation.

Pin 1 is the rightmost one. A RJ45 (8P8C) cable must be used.

1 – Brake

2 – Throttle

3 –

4 – VCC ( +3,3V)

5 – Clutch

6 –

7 –

8 – Ground (0V)

 

3) SIMUCUBE 2

There is a “SC accessory port” on which there are pins to connect pedals, it’s female vga db15.

See the documentation available here. You can use this type of male connector. The pins you are interested in :

2 – Ground (0V)

6 – Throttle

7 – Clutch

8 – VCC (5V)

13 – Brake

15 – Ground (0V)

4) ARDUINO

If you don’t want to plug the pedals into your steering wheel, using an arduino card is the cheapest solution. The following code allows you to manage from one to three pedals. It only works with Arduino Leonardo and Micro cards (fitted with ATmega32u4 CPU). The Joystick library can be downloaded here.

// V1.0 : ajout du mode verbose
// V1.1 : correction
// Disable verbose mode once you have calibrated your pedals to make work at full speed !
// comment either out to disable || Mettre en commentaire pour désactiver

#define USE_ACCEL
//#define USE_BRAKE
//#define USE_CLUTCH
#define VERBOSE_MODE   //allow to tune min and max

int AcceleratorPin = A0;
int BrakePin = A1;
int ClutchPin = A2;

int minAccelerator = 210;
int maxAccelerator = 595;
int minBrake = 0 ;
int maxBrake = 1023;
int minClutch = 0;
int maxClutch = 1023;

int lastAcceleratorState ;
int lastBrakeState;
int lastClutchState;
int currentAcceleratorState;
int currentBrakeState;
int currentClutchState;

#include "Joystick.h"
Joystick_ Joystick(JOYSTICK_DEFAULT_REPORT_ID,
                   JOYSTICK_TYPE_MULTI_AXIS, 4, 0,
                   true, false, false, false, false, false,
                   false, false, true, true, false);

void setup() {
#ifdef VERBOSE_MODE
  Serial.begin(9600);
  Serial.println("Verbose mode activated");
#endif

  Joystick.setXAxisRange(minClutch, maxClutch);
  Joystick.setAcceleratorRange(minAccelerator, maxAccelerator);
  Joystick.setBrakeRange(minBrake, maxBrake);
  Joystick.begin();
  lastAcceleratorState = analogRead(AcceleratorPin);
  lastBrakeState = analogRead(BrakePin);
  lastClutchState = analogRead(ClutchPin);
  delay(1000); //safety delay to flash the code
}

void loop() {






#ifdef USE_ACCEL

  int currentAcceleratorState = analogRead(AcceleratorPin);

  if (currentAcceleratorState != lastAcceleratorState)
  {
    Joystick.setAccelerator(currentAcceleratorState);
    lastAcceleratorState = currentAcceleratorState;
  }
#ifdef VERBOSE_MODE
  Serial.println("acceleration ");
  Serial.println(currentAcceleratorState);
  delay(500);
#endif
#endif

#ifdef USE_BRAKE
  int currentBrakeState = analogRead(BrakePin);
  if (currentBrakeState != lastBrakeState)
  {
    Joystick.setBrake(currentBrakeState);
    lastBrakeState = currentBrakeState;
}
#ifdef VERBOSE_MODE
    Serial.println("frein ");
    Serial.println(currentBrakeState);
    delay(500);
#endif
#endif

#ifdef USE_CLUTCH
  int currentClutchState = analogRead(ClutchPin);
    if (currentClutchState != lastClutchState)
    {
      Joystick.setXAxis(currentClutchState);
      lastClutchState = currentClutchState;
    }
#ifdef VERBOSE_MODE
    Serial.println("embrayage ");
    Serial.println(currentClutchState);
    delay(500);
#endif
#endif

    delay(10);
  }
Arduino code.

 

5) LEOBODNAR

This adapter allows you to connect the SRT pedals without having to manipulate a code. Indeed, Leobodnar provides an easy to use software that allows to calibrate the pedals.

I created a junction box: a male VGA connector on one side, and three output cables (diameter AWG22, it’s the one indicated in the pedals stroke list. There is an anti-tearing system that ensures reliable operation. The 3D files are on Thingiverse. The male connector can be ordered here on Amazon, or Aliexpress.

6) THRUSTMASTER

The Thrustmaster T-GT, T300, T150, TS-XW, TX and TMX steering wheels are connected to the pedal sets though an RJ12 6P6C (6-wire) cable. If you don’t know where the 1 is on your cable, look at the color codes on Google.

1 – Brake

2 – Throttle

3 – Clutch

4 – VCC ( +5v)

5 – Ground ( 0v)

6 – Ground ( 0v)