First project: Racing wheel

Racing wheels are overpriced in Brazil. What to do when you love race games and don’t have enough money to buy a pro racing wheel? You build one! Or try at least.

I begin to work in this project almost two years ago, beginning of 2015 , and changed two times the hardware until find a satisfactory result. Here are the three ideas that I try:

Fist idea: I bought an incremental enconder and wired it to an Arduino uno. The Arduino reads the encoder using interruption and generate pwm signals. I disassembled a Xbox controller and ripped the left analog stick from the board. I have measured the maximum DC voltage that supply the potentiometer, and used a low-pass filter attached to the pwm output of the Arduino to regulate and convert the signal to DC. The output from the filter is solder to the x-axis of the left analog stick.

The encoder was attached to a steering wheel. I found some pedals from an old racing wheel. It just has throttle and brake, and it’s basically two potentiometers. Then soldered the wires of the pedals on the holes from the potentiometers from the triggers of the xbox controller. I did not finish this project, but I will try to write a post.

Second idea: Use the library UnoJoy[1] on an Arduino uno with the encoder and the pedals. I just thought and did some search about. I think this is the easiest method. I will try to make to compare the efficiency with the third idea.

Third idea: I loved to make this. I saw a project from Zachery Littell when I was searching about HID. He made a fight stick, emulating a xbox controller in a Teensy LC microcontroller [2]. This is amazing. I ported his library, and HID descriptors to a stm32f103c8t6 microcontroller. Moreover, I need to turn it on a racing wheel.

This method is the most difficult, but I learnt a lot. In this project, I worked with HID, ADC, GPIO, interruptions.

The next posts I will explain and discuss how to implement which of the 3 ideas.

Ps. I would appreciate it if you read the first post of the blog [3], where I talk about the objectives of this blog, and help me to achieve them.


[1] UnoJoy-

[2] FightStick xinput –

[3] First post – 


Autor: Daniel Nesvera

Apaixonado por engenharia e gambiarras!

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do

Você está comentando utilizando sua conta Sair /  Alterar )

Foto do Google

Você está comentando utilizando sua conta Google. Sair /  Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair /  Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair /  Alterar )

Conectando a %s