1. For downloading SimTools plugins you need a Download Package. Get it with virtual coins that you receive for forum activity or Buy Download Package - We have a zero Spam tolerance so read our forum rules first.

    Buy Download Package Now!
  2. Do not try to cheat our system and do not post an unnecessary amount of useless posts only to earn credits here. We have a zero spam tolerance policy and this will cause a ban of your user account. Otherwise we wish you a pleasant stay here! Read the forum rules
  3. We have a few rules which you need to read and accept before posting anything here! Following these rules will keep the forum clean and your stay pleasant here. Do not following these rules will lead to permanent exclusion from this website: Read the forum rules.

DIY FFB Steering wheel (MMosFFB ) (In Progress)

Discussion in 'DIY peripherals' started by Alexey, Dec 10, 2015.

  1. Alexey

    Alexey Active Member

    Joined:
    Sep 23, 2014
    Messages:
    415
    Occupation:
    Electronics Technician
    Location:
    Adelaide, Australia
    Balance:
    7,246Coins
    Ratings:
    +552 / 2 / -0
    My Motion Simulator:
    3DOF, DC motor, Arduino
    Hello all!

    Boy do I have a smile on my dial.

    Introducing my new project, the home build FFB wheel.
    [​IMG]

    What you see before you is my recently deceased Logitech DFGT (my fault) hacked up and now running MMosFFB USB wheel controller.

    Following this project:
    http://forum.virtualracing.org/showthread.php/92420-DIY-USB-Force-Feedback-Controller

    I decided on trying to build my own FFB wheel and ended up killing my logitech one trying to use the logitech board to control a larger motor with a more powerful H-Bridge. It kinda worked for a bit and then fried. After looking on the net for other projects I came across this one and decided to give it a stab. I'm glad that I did.

    Using the carcass of the DFGT I am able to retain the original optical encoder (60 pulse count, 780 per steering wheel revolution), motor, steering wheel and any other pedals and shifters.
    [​IMG]

    The brains and the brawn
    [​IMG]

    The STM32F4DISCOVERY is the brains which controls the FFB PWM and direction of the motor. It can also receive inputs from 3 pedals and up to 16 other control buttons. The beauty of the device is that it is simple enough to set up a simple H bridge or a more complex VFD (argon) style servo motor. So like how I have used it, it is a cheap broken wheel fixer. ($20 for the controller and $7 for the MM).

    The software side of things comes from the link posted above. If you wish to use the software you must sign up to the website, as it is in German you will need to translate the signup page question field as the website translator does not translate that part.

    In the link it contains some pictures about how to connect the device, links to the programming tool and software that tunes the steering wheel and sets its parameters. In my next post I will go over the setup in more detail.

    The FFB feels just as good as the original DFGT only more powerful in some regards and a tad weaker in other areas. This is most likely due to me not really knowing how to tune FFB but I am sure I will get there.

    Now comes the fun part. Being open ended, I can now build a full custom wheel and motor combination. Or I could find another stuffed DFGT and rip its motor out and have a twin/triple/quadruple motor DFGT.
    I am salivating at the opportunity to tinker with this..

    So far I have ordered some shaft encoders from ebay (cant re use encoder from DFGT due to its mounting method and drive mechanism) and am thinking of making a belt drive wheel using a full size racing wheel (SAAS or the likes) with this motor https://www.motiondynamics.com.au/united-my6812-12v-dc-150w-2750-rpm-electric-motor-belt.html and a larger pulley on the steering wheel side to increase torque.

    Price estimation:

    Motor: $35 + shipping
    Controller: $23 from element14 http://au.element14.com/stmicroelec...y&selectedCategoryId=&categoryId=800000002655
    MM driver: $8 from ebay
    Steering wheel: $60 - $80 from local trader
    Shaft encoder $20 from ebay (600 pulse per revolution)
    Hardware (mounting, couplers, main shaft, belt, gears etc) $100 (estimated)

    So this is going to add up to around $300 more or less. If I decide to keep the DFGT wheel and upgrade the drive train I can save more and keep the price just over $200. Since I already have most of the hardware this project is only costing me around $100.

    So if you have a fried FFB wheel, don't chuck it out just yet!
    • Like Like x 12
    • Creative Creative x 5
    • Useful Useful x 2
  2. noorbeast

    noorbeast VR - The Next Generation Staff Member Moderator SimTools 2.0 Beta Tester

    Joined:
    Jul 13, 2014
    Messages:
    11,470
    Occupation:
    Innovative tech specialist for NGOs
    Location:
    St Helens, Tasmania, Australia
    Balance:
    89,558Coins
    Ratings:
    +7,560 / 37 / -2
    My Motion Simulator:
    3DOF, DC motor, JRK
    Now that is creative recycling at its best!
    • Like Like x 1
  3. Archie

    Archie Eternal tinkerer

    Joined:
    Dec 31, 2014
    Messages:
    1,068
    Location:
    Wollongong, NSW, AU
    Balance:
    3,535Coins
    Ratings:
    +1,344 / 4 / -0
    My Motion Simulator:
    2DOF, DC motor, JRK
    "Watch Thread" clicked.....
    • Agree Agree x 3
  4. Alexey

    Alexey Active Member

    Joined:
    Sep 23, 2014
    Messages:
    415
    Occupation:
    Electronics Technician
    Location:
    Adelaide, Australia
    Balance:
    7,246Coins
    Ratings:
    +552 / 2 / -0
    My Motion Simulator:
    3DOF, DC motor, Arduino
    May I introduce my DFGT BFM (Big F#*^n Motor)

    [​IMG]

    The new bad boy:
    57W, 57A stall current! This thing is now an absolute beast.
    [​IMG]

    http://www.jaycar.com.au/Electromechanical-Components/Mechatronics/Motors-&-Gearboxes/Standard-(High-Power)-D-C-Motors-9700-RPM/p/YM2776

    I was getting a bit impatient to start the full custom wheel so I decided to pop down to the local electronics store. In there I found quite a beast of a motor given its relatively small size.
    Of course the tinkerer inside me thought that I could shoehorn the motor in place of the DFGT motor. Boy did it only just fit! After spending most of the afternoon fitting the motor in
    I finally sat down and plugged the wheel in. I didn't bother going into the wheel tuning and just started a game to test out the power. Unknown to me the tuning software re set my wheel to 180 degrees rather than the 900 that it actually is so the steering was extremely sensitive in the game, when i hit the first curb and spun the car out over a curb (intentionally) the wheel just about tore itself from my hands, it was pants shittingly more powerful than I was expecting. Luckily the MM went into thermal shutdown for about 3 seconds which gave me enough time to rip the power cord from the DC supply. It's like a gorilla was fighting me for the steering wheel. After tuning the wheel and setting it's power as low as 30% I was able to give the wheel a few laps and get a feel for it. Boy oh boy is it great. Even at 30% the power is easily double that of the original DFGT motor.

    Unfortunately a few minor things to sort out now, the accelerator pedal isn't registering (think its the pedal side not the controller) and the paddle buttons are't registering on the controller (wiring side, think they need to be pulled high but I set them as pull down to ground). The data provided that I could find from the original project is quite limited and does not explain anything at all. So most of it I have to figure out via trial and error. Fortunately for you guys when I figure it out I shall provide a detailed setup guide, limited to using H-bridge PWM/DIR setup mode. There are a few other modes that can be set to use servomotors like MIGE but I don't have one of those so I cannot try it out :( .

    This is how I modified the DFGT.

    Standard mounting plate stripped bare, ready to modify.
    The original hole for the motor is not large enough to accommodate the new motor so it must be enlarged (17.4mm)
    [​IMG]

    I used a stepped drill bit attached to my cordless drill to enlarge the hole.
    [​IMG]

    It only just clears the bearing retainer:
    [​IMG]

    The mounting holes are almost the same but the larger motors holes are slightly further apart so I slotted the mounting plate holes to fit.
    Once the motor is mounted the original motor sprocket needs to be fitted. The DFGT used a D shape shaft on the motor which means the new motor
    needs to be modified to suit. The original shaft is 3mm and the new motor is 5mm. What I did to fit the gear was I used the mounting plate as a brace and clamped the brace to a bench.

    [​IMG]

    I then attached a grinder bit to my cordless drill then slowly, forcefully and evenly ground the shaft down to about 3.4mm.
    [​IMG]

    Then with the motor stationary I used a file to grind out the flat section for the D slot gear.
    [​IMG]
    [​IMG]

    I then had to make a spacer to go between the motor and mounting plate as the gear stuck too far out.
    [​IMG]

    Next up was soldering connections to the paddle shifter. The buttons share a common connection which is why there are only three wires.
    [​IMG]

    I then fed the wires through the wheel and connected them to the controller. I also connected the original DFGT pedals to the controller. Put it all back together and done!
    [​IMG]

    The new and the old
    [​IMG]

    To do list:

    Investigate pedal wiring
    Investigate button wiring
    Re configure MM to 30A mode (currently only running one side)
    Profit????
    • Like Like x 4
    • Winner Winner x 1
    • Useful Useful x 1
    • Creative Creative x 1
  5. Pit

    Pit - - - - - - - - - - - - - - - - Staff Member Moderator Gold Contributor SimTools 2.0 Beta Tester

    Joined:
    Oct 2, 2013
    Messages:
    2,950
    Location:
    Switzerland
    Balance:
    28,337Coins
    Ratings:
    +2,912 / 28 / -0
    My Motion Simulator:
    DC motor, Arduino, 6DOF
    you are a genius @Alexey ...I would like to upgrade my T500RS - so why not to begin here? :)
    • Like Like x 1
    Last edited: Jan 24, 2016
  6. Alexey

    Alexey Active Member

    Joined:
    Sep 23, 2014
    Messages:
    415
    Occupation:
    Electronics Technician
    Location:
    Adelaide, Australia
    Balance:
    7,246Coins
    Ratings:
    +552 / 2 / -0
    My Motion Simulator:
    3DOF, DC motor, Arduino
    Is there such thing as an upgrade from T500RS? lol
    I think you'd have to go direct drive servo motor!

    What I have made is actually comparable in power with the T500RS, Drive mechanisms are different though.
    I also feel more torque on the wheel as I have smaller motor driver gear, more rpm and a smaller wheel.

    In saying that, I can barely turn my wheel on 100% power and FFB (Center spring power), what does the T500RS do?
    • Like Like x 1
  7. Pit

    Pit - - - - - - - - - - - - - - - - Staff Member Moderator Gold Contributor SimTools 2.0 Beta Tester

    Joined:
    Oct 2, 2013
    Messages:
    2,950
    Location:
    Switzerland
    Balance:
    28,337Coins
    Ratings:
    +2,912 / 28 / -0
    My Motion Simulator:
    DC motor, Arduino, 6DOF
    I agree with you, there is only one point of view: the (non existent) linearity. The t500rs wheel is strong but the clipping starts too early.
  8. Simon_lebel

    Simon_lebel Member

    Joined:
    Feb 10, 2011
    Messages:
    42
    Location:
    Levis, Quebec
    Balance:
    306Coins
    Ratings:
    +34 / 0 / -0
    My Motion Simulator:
    2DOF, DC motor, JRK, 4DOF
    I will be following your thread! My dead g25 has been waiting for something like this for years!
  9. pipis2015

    pipis2015 over-boost

    Joined:
    Feb 18, 2015
    Messages:
    222
    Location:
    Athens, GREECE
    Balance:
    10,244Coins
    Ratings:
    +253 / 1 / -0
    My Motion Simulator:
    2DOF, DC motor, Arduino
    Very nice project @Alexey .


    Just consider upgrading to metal gears as your power increases. The plastic ones may be too weak to handle the forces.
  10. RufusDufus

    RufusDufus Well-Known Member

    Joined:
    Jul 21, 2013
    Messages:
    681
    Location:
    Adelaide Australia
    Balance:
    12,356Coins
    Ratings:
    +833 / 7 / -1
    Excellent work @Alexey. I've had quite a few parts sitting around to build a wheel for quite some time now including the MMos controller and various motors to test. Seeing your results has motivated me to get back to it!

    Great stuff.
    • Like Like x 1
  11. Alexey

    Alexey Active Member

    Joined:
    Sep 23, 2014
    Messages:
    415
    Occupation:
    Electronics Technician
    Location:
    Adelaide, Australia
    Balance:
    7,246Coins
    Ratings:
    +552 / 2 / -0
    My Motion Simulator:
    3DOF, DC motor, Arduino
    Cheers guys, the DFGT upgrade was mostly a test to see if my idea could work and how the FFB would perform.
    Now that the wheel is working (apart from minor issues) I will be looking into a 150W belt driven wheel.

    @pipis2015 I don't expect the gears to survive long and if I was going to use the wheel permanently I would definitely do either metal gears or
    change it over to belt drive.

    @Simon_lebel This controller can definitely bring it back to life! I'm annoyed at myself for throwing away my momo wheel now :(
    • Like Like x 3
  12. Pit

    Pit - - - - - - - - - - - - - - - - Staff Member Moderator Gold Contributor SimTools 2.0 Beta Tester

    Joined:
    Oct 2, 2013
    Messages:
    2,950
    Location:
    Switzerland
    Balance:
    28,337Coins
    Ratings:
    +2,912 / 28 / -0
    My Motion Simulator:
    DC motor, Arduino, 6DOF
    Hmm, i could build a wheel from scratch, I have parts already to use with:

    - Parvalux PM11-0028 motor (24V, 7A, 4000rpm)
    - VNH5019 24V motor driver
    - steering wheels
    - PSU
    - .....
    some parts I need like gears and v-belt, STM32F4DISCOVERY...
    Quasi a lower cost wheel, probably not playing in the leage of DD wheels, but better than a T500RS?

    EDIT: oh, I need an encoder...........
    • Like Like x 1
    Last edited: Dec 12, 2015
  13. Pit

    Pit - - - - - - - - - - - - - - - - Staff Member Moderator Gold Contributor SimTools 2.0 Beta Tester

    Joined:
    Oct 2, 2013
    Messages:
    2,950
    Location:
    Switzerland
    Balance:
    28,337Coins
    Ratings:
    +2,912 / 28 / -0
    My Motion Simulator:
    DC motor, Arduino, 6DOF
  14. Alexey

    Alexey Active Member

    Joined:
    Sep 23, 2014
    Messages:
    415
    Occupation:
    Electronics Technician
    Location:
    Adelaide, Australia
    Balance:
    7,246Coins
    Ratings:
    +552 / 2 / -0
    My Motion Simulator:
    3DOF, DC motor, Arduino
    Yes that encoder can be used. From what I can gather, the encoder must be a 2 phase encoder (A and B channels) with an option of having an index (third "home" channel) as well.

    It is hard to estimate the performance of a set up, the motor you have definitely has more power. Things like gear ratio and belt length (how much it can stretch) will have a part to play.
    I have only ever used budget grade wheels so everything to me is an upgrade. For instance, although I have a very powerful wheel does the MMosFFB controller have as good feedback control as what the T500RS does? Does the FFB feel better or worse? Those questions I will not be able to answer. You can keep upgrading the power of the motor but does the FFB wheel feel good with MMosFFB compared to high end wheels?

    To me the MMosFFB is an upgrade to the DFGT simply because of the power of the system. I can still feel everything else as I would with the DFGT but with more fidelity because of that extra power.

    This is a video of a DD MMosFFB wheel, in case you didn't follow the link in my first post. I will post up other MMosFFB wheels as well.


    A review on the MMos using an OSW


    Another MMos with DD


    Seems as though the MMos is quite popular with the DD style wheels. Heaps of videos.
    • Informative Informative x 1
  15. Pit

    Pit - - - - - - - - - - - - - - - - Staff Member Moderator Gold Contributor SimTools 2.0 Beta Tester

    Joined:
    Oct 2, 2013
    Messages:
    2,950
    Location:
    Switzerland
    Balance:
    28,337Coins
    Ratings:
    +2,912 / 28 / -0
    My Motion Simulator:
    DC motor, Arduino, 6DOF
    I understand well. My vision of a modification is a t500RS motor mod, short said an upgrade of the Bühler motor (56W) to an other one like the mine with 130W (both 24V). Replacing the motor would be no issue, the problem is the motor driver of the t500RS which would be blown away after a short time for sure.
    IMO the FFB of the t500RS is good and quite immersive, my intention is to expand the bandwidth of the FFB. Unfortunately I am not so professional by replacing the motor driver only. At least it would be nice to build a wheel from scratch, and as in the video shown the FFB works great so far.
  16. Alexey

    Alexey Active Member

    Joined:
    Sep 23, 2014
    Messages:
    415
    Occupation:
    Electronics Technician
    Location:
    Adelaide, Australia
    Balance:
    7,246Coins
    Ratings:
    +552 / 2 / -0
    My Motion Simulator:
    3DOF, DC motor, Arduino
    • Agree Agree x 1
  17. Alexey

    Alexey Active Member

    Joined:
    Sep 23, 2014
    Messages:
    415
    Occupation:
    Electronics Technician
    Location:
    Adelaide, Australia
    Balance:
    7,246Coins
    Ratings:
    +552 / 2 / -0
    My Motion Simulator:
    3DOF, DC motor, Arduino
    HOLY SHIT MOTHER OF GOD

    [​IMG]

    I think I might start an MMOs religion.....

    Seriously is that good.

    During my testing phase I have been using LFS because the game was quick to start up and try different changes. I have recently done a complete wipe of my PC since I got a new hard drives
    so I didn't have any games on my system. LFS was like a 300 meg download so I thought it was good enough, I was wrong. I have managed to get both pedals working and shifter buttons are now working too.
    With the pedals and shifter working I thought ok, I'll try the more up to date sims like iracing where the FFB feels better (to me anyway), well that was a waste of time as steam login isn't working for iracing at the moment so I tried Assetto Corsa. Boy oh boy oh boy oh boy!
    The wheel is soooooo loving good I can not believe it! I can not explain my joy with this. The DFGT is a piece of shit compared to this. The things I have felt...... I don't even make constructive sentences at the
    moment. From the strong vibration of the wheel when doing a burnout to the steering getting very heavy on a tight corner and the more pronounced feeling of varying loss of grip around a corner. Curbs feel sensational and really toss about the wheel. I really need to convert the MM to 30A mode as I only get in half a lap before the MM starts burning up. Power settings still only on 30% max too....... I tried it on 100% and the MM goes into thermal shutdown on the takeoff burnout lol... I will make a video as soon as I make some changes to the MM.

    I cannot believe this has worked so well....
    • Like Like x 5
    • Winner Winner x 5
  18. pipis2015

    pipis2015 over-boost

    Joined:
    Feb 18, 2015
    Messages:
    222
    Location:
    Athens, GREECE
    Balance:
    10,244Coins
    Ratings:
    +253 / 1 / -0
    My Motion Simulator:
    2DOF, DC motor, Arduino
    @Alexey you bet this thread will be an inspiration to many people.

    Keep the progress going and keep us up to date .

    Congrats for your attempt.
    • Agree Agree x 4
  19. Pit

    Pit - - - - - - - - - - - - - - - - Staff Member Moderator Gold Contributor SimTools 2.0 Beta Tester

    Joined:
    Oct 2, 2013
    Messages:
    2,950
    Location:
    Switzerland
    Balance:
    28,337Coins
    Ratings:
    +2,912 / 28 / -0
    My Motion Simulator:
    DC motor, Arduino, 6DOF
    @Alexey I assume this is the encoder?
    IMG_0022_zpsz42rz7ff.jpg
  20. Alexey

    Alexey Active Member

    Joined:
    Sep 23, 2014
    Messages:
    415
    Occupation:
    Electronics Technician
    Location:
    Adelaide, Australia
    Balance:
    7,246Coins
    Ratings:
    +552 / 2 / -0
    My Motion Simulator:
    3DOF, DC motor, Arduino
    @Pit Yes that is the encoder. It is still the original encoder from the DFGT.

    Here is a better picture and a picture of the internals.
    [​IMG]
    [​IMG]

    The DFGT encoder is also a two phase encoder which is pretty much standard for any FFB wheel. I counted the slots to 60 slots per encoder revolution and 12 revolutions per steering wheel revolution bringing the encoder PPR to 720. I then traced the circuitry on the DFGT encoder and FFB controller board to determine the two phase channels and the power and GND pins. I plan to use an encoder almost identical to the one you provided a link to earlier.

    In other news:

    Iv'e done it. I've finally blown the MM. I even have it on video. I changed the MM to 30 amp mode and then pumped up the power to 100%.
    That nice firm vibration that is felt during traction loss was then transformed into a desk shaker. In the video at the end you will notice that the wheel goes a bit loose, this is the wheel going into and out of thermal shutdown. At this point the MM is toast.


    So now I am in the process of wiring up two MM with heat sinks and fans and I'll see how I go. Ideally I should see if I can find a motor with half the stall current so that it is not so hard on the MM.
    • Like Like x 6