FFB simracing steering wheel
I have always wanted to have a simracing setup. And wheelbases available on the market are either expensive or not powerful enough. Also every wheelbase on the market is closed-source, and that limits me to the feature it offers out of the box. And after spending some time on YouTube, I decided to build my own Force Feedback simracing wheel base. For cheaper than some wheels on the market, I could build something much more powerful, easy to modify wheelbase. To keep costs low, I decided to go with a direct-drive wheelbase using a hoverboard motor that I could salvage from a broken hoverboard on Marketplace. Being a direct drive setup will give me the best force feedback compared to belt/gear drive, while also being much more silent. This setup can enable me to have 12-15Nm of force feedback. And for comparaison, the Logitech G29, the most popular wheel out there, only offers 2.1Nm, and is a gear drive setup.
Created by
Oussama NAOUAR
Tier 1
6 views
1 follower
Timeline
Oussama NAOUAR
added to the journal ago
CAD Pt.11 ; Steering Wheel Hub
23-12-2025
Today, I decided to take a break from the wheelbase design, and start working on the wheel itself.
For a first wheel, I decided to make things pretty simple and reliable.
I decided to use a Momo steering wheel or similar, like the ones used in drift cars. I still didn't choose the model, but they all have the same 6-screw mounting system.
The wheel will also feature a quick release system.
I spent a lot of time on Aliexpress looking for a reliable and easy to mount quick release system.
A lot of them tricked me since they showed cheap prices at first, but they were all "Welcome deals".
The cheapest decent one that I found is this one.
https://ar.aliexpress.com/item/1005009121231549.html
And bonus : Someone already used it for a simracing setup in the reviews !
With that in mind, I went to design a shaft mount for this quick release module.

Next, I went on to design the hub that will be stuck to the steering wheel. This hub will contain all of the buttons, paddle shifters... and all of the wiring.
First, I designed the back plate that will be mounted to the QR mechanism.

There are 12 holes : 6 for the QR mechanism, and 6 to mount the front plate and the steering wheel.
Here is the front plate, that will house (for now, just as an alpha prototype version) 8 buttons.

The 2 plates will be spaced by about 3.5cm to make space for the wiring inside + paddle shifters mounted on the sides.
The 2 plates will be spaced by using screw spacers.
And to hide everything, I made this enclosure

Then, I made a small cylinder with approx dimensions as a sample for the quick release mechanism, just to tell that it's there.
And finally, I made everything into a sub-assembly :

Oussama NAOUAR
added to the journal ago
CAD Pt.10 ; Some vents + components placement
23-12-2025
I started by adding some vents on the sides, on both the front and back side panels.

Then, since I chose from the beginning, by watching similar setups online, to use ODESC as a control board for FFB, I downloaded this model from Grabcad to place it in the assembly and start making holes to mount each component. (By the way I'll go through the electronics soon, I just need to finish CAD first).
https://grabcad.com/library/odesc-v4-2-bldc-motor-driver-controller-1
The guy did a really good job at making a very detailed model. But unfortunately, my computer only has 8GB of ram, and an iGPU. So here is where the struggle begins :)
Immediately after adding the component to the assmebly to verify dimensions etc... everything started going very very slow on my computer. So from now on, everything I did later was really slow, including some modifications to the back panel to make mounting holes, and making the back enclosure a bit shorter.
But eventually, I placed it along with the included resistor. And I placed them on the far right to make them close to the power supply connector, and to take benefit of a maximum airflow coming from the vents to the fan.
Here is how it is mounted :

Oussama NAOUAR
added to the journal ago
CAD Pt.10 ; Electronics Enclosure
22-12-2025
This time, I made the enclosure for the electronics, that will be mounted at the back, behind the Aluminium back plate.
I used that amazing feature that allows you to design a part within the assembly, and it made my life a lot easier again :)
I first started by designing a very simple enclosure.
Then, I started thinking about the ports that I'll be using for future pedals, shifter, button box... connections.
At first, I thought about making a PCB with RJ45 ports, but then said that making a PCB just to add 4 connectors is really a loss.
So I started searching for available connectors at my local shops and stumbled upon these amazing GX12 connectors.

They directly mount onto the enclosure, so no need for a PCB, screws, whatsoever. I'll just need to solder wires, that's all.
I also decided to add a 120mm fan on the back to cool down the motor driver, and the motor too; that's why I chose a big fan.
And finally, I also decided to put an XT60 connector on the back to power everything on, as the power supply will be separate, so that the wheelbase doesn't get bulkier.

Oussama NAOUAR
added to the journal ago
Cad Pt.9
21-12-2025
1. Front Bearing
To finish with the front plate, I searched for 20mm bearings and found a model called UFL004.
This bearing has a way to mount it with screws to the front plate, thus without needing to make custom brackets...
So I designed a sample model without details, just the important dimensions

Then, I made holes accordingly in the front plate to house this bearing.
https://youtu.be/vjENDQarwxI?si=C9ZFouVhPo-rN4WJ
2. Back Plate
Nothing special here. Saved a copy of the front plate, removed the bearing holes, and added it to the assembly.
3. The enclosure
Since I'm now pretty confident that the front and back plate designs won't change, I made the external enclosure.
This enclosure will be printed in 4 separate parts : Left, Right, Upper, Lower enclosure, so I designed each part on its own to fit flush with the plates and aluminium profiles.
I also kept the bottom aluminium rails exposed since they will be used for the desk mount.
Since the front plate's sketch is very complicated, I tried looking for a way to make the part inside the assembly to make it easier. So this time, I sketched the enclosure parts directly inside of the assembly, thanks to this tutorial :
It is the first time that I make a part within the assembly in Solidworks. And this will certainly help me a lot in this project and in the future project.


Oussama NAOUAR
added to the journal ago
CAD Pt.8 ; Success in making the pulley
20-12-2025
The great thing about me is that I don't give up easily.
So after dinner, I kept looking for ways to make the pulley, and I found this tutorial uploaded by Solidworks :
https://youtu.be/rjmKaswKXUc?si=Y-1p3jga44CPzpXg
So I followed it and made my custom 120-tooth pulley that will be mounted on the back of the motor.

Next, I made a sample 30-tooth pulley to be mounted on the encoder to have a 4:1 ratio to have 4x the encoder resolution.

Next, I mounted everything in the assembly, and here's what it looks like now :

Oussama NAOUAR
added to the journal ago
CAD Pt.7 ; Failed pulley system redesign attempt
20-12-2025
As I said in my previous journal, I found a better way to mount the encoder, that will eliminate the need for a belt tensioner. I got inspired by this design on YouTube :
https://youtu.be/X-Dd3wjQ4uM?si=eNiLrp9AvPEiq4_C
Basically, the encoder is mounted on the back side of the motor, on the same rails as the motor mounting shafts. And this will allow the encoder to slide left and right to get the right amount of belt tension.
But this required a very big pulley that will be mounted on the back side of the motor rotor, and it had to be custom built.
I first made the new encoder mount that will also be 3D printed just like the older one.

Then I added it to the assembly, and everything was looking pretty nice at this point.

Now came the big motor pulley design. And I first thought that I would find ressources and standard dimensions like most normalized parts out there. But I really couldn't find any.
I tried copying the design mentioned earlier, but I couldn't get the STEP file to something that I can reliably get measurements from.
I tried following this YouTube Tutorial, https://youtu.be/6EBqo_BrOmA?si=bFQslmDhV668M_lL but the teeth came out really big, and I couldn't fit 120 teeth in a diameter smaller than the motor's.
So as of now, I think that I will keep the old design, make the wheelbase larger, and design a belt tensioner later.
Oussama NAOUAR
added to the journal ago
3D Design Pt. 6 ; A major redesign !
20-12-2025
Last time, I tried to replicate Moza's wheelbase design. But I went by mind, no visual reference, so I got it very wrong !
This time, I took a closer look at Moza's wheelbase design and got onto redesigning the entire face plate.
I also found a new way to mount the encoder without the need to use a belt tensioner, so this enabled me to make the wheelbase less wide. I didn't design the new encoder mount yet, but I started by removing the old one and narrowing the wheelbase.

Oussama NAOUAR
added to the journal ago
3D Design Pt.5
19-12-2025
Today, I made a very important step-up in the 3D Design.
1. Encoder Pulleys
Yesterday, I chose some pulleys with an 8mm bore diameter. I thought that I'll make a part of the shaft thinner using the lathe, but I didn't think about how I'm gonna slide the shaft pulley in its slot. So I had to look for pulleys with a much bigger bore, and unfortunately, these aren't available in Tunisia.
At first, I thought about building a pulley in the shaft mount which will be 3D Printed, but I didn't wanna rely on 3D Printing for precision. The whole point of the pulley setup is better resolution; 3D printing might ruin that.
After a lot of research, and trying to understand pulley names, I fould on Aliexpress a pulley with 20mm bore diameter. So I made a sample3D pulley in Solidworks to see how it will be mounted. I also switched to a 20mm shaft, which will be sturdier.
I also made a sample pulley design for the encoder.
Since the shaft pulley turned out to be bigger than expected, I made the wheelbase larger to make space for a pulley tensioner. I also slightly modified the encoder mount to sit slightly higher
2. External Design
I completely redesigned the front and back plates.

They are larger now, and feature a nice and dynamic design in my opinion.
I also adjusted the mounting holes positions to make space for the 3D-printed enclosure.
The top aluminium profiles are now mounted at an angle.

Oussama NAOUAR
added to the journal ago
3D Design Pt.4
18-12-2025
This time, I did some adjustments to what I did last time, and modeled 2 new components.
First of all, I had to find a way to mount the shaft onto the hoverboard motor.
I asked my mechanics teacher and he proposed to make a mount on a lathe using a thick tube (I forgot the material's name).
This part will then have 6 holes to mount it on the motor, and a hole to mount the shaft using a bushing. But the thickest diameter he had was only 50mm, and that is really thin, as we have to make the mounting holes as far appart as we can, to avoid drilling into the bearing inside the motor.
At first, I didn't want to use a 3D Printed part for the most critical component of this project. But then, I decided to make a thick part that will be printed in PETG with 100% Infill, and it should work just fine. I saw people doing the same thing, and they didn't have any problems.
So I hopped on Solidworks and drilled some holes on the motor model, and then designed the shaft mount.
At first, I put some approximate shaft dimensions since I didn't decide the shaft diameter.
I tried making it with the biggest fillet possible to make it as sturdy as it can be.
Then I went on the internet, and chose 16mm as shaft diameter, and asjusted the mount accordingly.

Then, I decided to use a traditional rotary encoder, unlike most people on the internet who used magnetic encoders, since it will reduce complication and eliminate the need to drill through the motor.
The encoder will be linked to the shaft using a belt and pulley setup.
I didn't find any good models online of the encoder, so I designed one myself following a datasheet on Aliexpress.

I then proceeded to make the encoder mount.
It took me a lot of prototyping. At first I made a model that should be mounted on the top side of the bottom aluminium profiles. But that would make the encoder really close to the shaft.
I didn't decide the pulleys that I'll be using so I wanted to space them apart, and make space for a belt tensioner.
So I made a mount that will stick from the side of the profile.

And finally, I went back on the internet to choose the pulleys. Since it was already very late at night, I left their 3D design for the next time.
Here's what I achieved up to this time.


Oussama NAOUAR
added to the journal ago
3D Design Pt.3
18-12-2025
Today, since I had 2hrs of free time at school, I decided to make some adjustments to my current 3D design.
First of all, I lowered the middle profile, the one to hold the motor on, to sit right between the bottom side profiles. This will make for a much sturdier mount with screws on the sides, instead of relying on friction generated by the nuts and L brackets.
But this made it mandatory to have a 3D Printed riser underneath the SK16 brackets.
I did a lot of experimenting to make the spacer as short as possible, but the minimum height I could go with was 23mm.
I also made the entire wheelbase height a bit smaller, to have the motor sticking out a bit on the upper side and have better aesthetics when designing the 3D Printed enclosure.
I also made the wheelbase much shorter, as I decided to make a 3D-printed enclosure to go on the back to house the electronics.
Up until now, my design is very inspired from this design made by "Orhan Kökbudak" on Grabcad :
https://grabcad.com/library/direct-drive-wheelbase-1
Here is my design up until now :


Of course the tire will be removed from the motor. It's just that I didn't find a way to do it on that specific STEP file :)
Now the next challenge is to find a way to mount the steering wheel shaft to the motor.
Oussama NAOUAR
added to the journal ago
3D Design Pt.2
17-12-2025
After I took a dinner break, I got back to CAD.
I changed the side aluminium profiles to 2020mm instead of 3030mm since they're a bit cheaper, and will make it easier to link them together using the L brackets. I also corrected the 20*40mm profile sketch.
After doing some research, I found that the most popular hoverboard motor size is 6.5 inches. So I went on Grabcad and imported a motor model.
After importing the motor, I designed the SK16 mounting bracket that I'll be using to secure the motor to the aluminium profile.

After doing the assembly, I noticed that the motor will sit a bit lower than the enclosure, so I needed to raise it.
I designed a riser to go between the middle profile and the SK16 brackets, but I didn't want to put a plastic part in the motor holding assembly. So I changed the bottom aluminium profiles to some 20*40mm to raise the motor higher, and therefore eliminate the need for a plastic riser.
I also squared up the front and back plates to make it easier to understand the dimensions.


Oussama NAOUAR
added to the journal ago
3D Design Pt.1
17-12-2025
Today, I started working on the 3D Design of the wheelbase.
To get some inspiration, I went on YouTube and watched a lot of different designs of wheelbases that used a hoverboard for FFB.
The simplest design is to use aluminium profiles for the frame and motor mounting. And to hold the steering wheel axis, I decided to go with 5mm cnc-cut aluminium sheets for the front and back plates. And for cool aesthetics, I will design some 3D-printed parts to complete the enclosure.
For today, I started by designing the 30*30mm aluminium profiles that will go on the sides between the front and back plates.


I then went on to design the front and back plates.

And after that, I designed the aluminium profile that would hold the hoverboard mounting brackets.

And finally, I put everything inside an assembly to start seeing what the wheelbase will look like.

Up until now, except for the aluminium profiles' sketches, every dimension is roughly entered, just to get a better idea of what the design will look like.
As I get further into the 3D design, and get a better overall idea about the project and components' dimensions, I will enter the right dimensions.
Oussama NAOUAR
started FFB simracing steering wheel ago