1. Do not share user accounts! Any account that is shared by another person will be blocked and closed. This means: we will close not only the account that is shared, but also the main account of the user who uses another person's account. We have the ability to detect account sharing, so please do not try to cheat the system. This action will take place on 04/18/2023. Read all forum rules.
    Dismiss Notice
  2. 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 Now a Download Plan!
  3. 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
  4. 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. Do not follow these rules can lead to permanent exclusion from this website: Read the forum rules.
    Are you a company? Read our company rules

Budget Compact 6DOF Universal VR Flight / Racing rig - MSFS, SMC3, FlyPT, Transducers, Controls

Discussion in 'DIY Motion Simulator Projects' started by Ronan Design, Oct 11, 2024.

  1. Josh_Possa

    Josh_Possa Active Member

    Joined:
    Jan 25, 2021
    Messages:
    124
    Location:
    Catalunya
    Balance:
    578Coins
    Ratings:
    +35 / 0 / -0
    My Motion Simulator:
    2DOF, 3DOF, DC motor, Motion platform
    As damper I mean a gas spring, sorry. It maybe can"cheat" the motors to work a little bit hardly (upwards and downwards) and help with the coging. It will be a relatively cheap test and if it not work easly removable.

    My problem with the communication was related with the Sabertooth (ST) drivers configuration. To work properly with the Arduino sketch I'm using (designed to work specifically with ST drivers) and the ST2x60 is needed to add a jumper to configure the comm speed to a lower value. After do that the noisy problem was gone.

    Try to configure both Arduino and drivers to a lower speed, also increase the Fpid to see if it will get better.

    Cheers!
  2. eightK

    eightK New Member

    Joined:
    Jan 5, 2025
    Messages:
    4
    Balance:
    39Coins
    Ratings:
    +0 / 0 / -0
    Would you be willing to share STP files of your concept as well as current cost?
    I'm extremely interested in this design and have been tossing around the idea of trying it myself.
  3. eightK

    eightK New Member

    Joined:
    Jan 5, 2025
    Messages:
    4
    Balance:
    39Coins
    Ratings:
    +0 / 0 / -0
    I have a lot of 1" steel square tubing and a bit of stock car roll cage tubing that I would make it out of. I'm at a very beginner level with CAD programs, so I'm looking for a strong starting base to work from. I think this would be adaptable to the materials I would be using.
  4. Ronan Design

    Ronan Design Roman Design - Custom MSFS Scenery

    Joined:
    Jun 4, 2021
    Messages:
    241
    Occupation:
    Web Designer, MSFS Scenery Designer
    Location:
    Toronto, Canada
    Balance:
    1,565Coins
    Ratings:
    +111 / 1 / -0
    My Motion Simulator:
    2DOF, DC motor, Arduino
    There are 3 Arduino boards running modified SMC3 firmware, which takes care of the PID/control loops. The parameters for the PID are set in SMC3Tools software and written to the Arduino EPROM. Each board controls 2 motors.

    I do have a gas strut installed in the middle of the rig, rated at 54kg. When I'm not sitting on the rig the frame can barely hold the force of the strut and starts buckling a bit, so I can't add more gas struts. I haven't tried without a strut because I was planning to use it from the beginning to take part of the weight from the motors and smooth out the movement.

    SMC3 Tools is set for 50000 comm speed for communication between PC and Arduino, and 25kHz for PWM motor control, which are the default settings as far as I understand, and what worked for me in my 2DOF. I've seen one person use 20kHz and i tried it in one of my experiments but didn't notice any difference in cogging.

    I just did a calculation of the total cost of all parts, hardware and lumber and it's only $771. This does not include the power supplies that I got for free, the motor arms that a friend made from my design (but could be crudely made from cheap steel corners), and the motor brackets / rod brackets I cut and drilled from steel corners I had lying around. 24V 1500W PSU is ~$100 on Amazon, and steel angle should be around $20, so the total cost with electronics, parts, hardware and materials comes to ~$900 USD. This is mind-boggling cheap, which was the idea :) Most parts are from Ali Express, Motors from Amazon, Motor Drivers from RobotShop, Lumber is from a local Home Depot hardware store.
    • Like Like x 1
    Last edited: Jan 7, 2025
  5. Josh_Possa

    Josh_Possa Active Member

    Joined:
    Jan 25, 2021
    Messages:
    124
    Location:
    Catalunya
    Balance:
    578Coins
    Ratings:
    +35 / 0 / -0
    My Motion Simulator:
    2DOF, 3DOF, DC motor, Motion platform
    Can you modify the comunicatoin speed between the Arduino and the drivers? Can you try to test it without the gas strut? Try it to see how it performs if it is not a huge amount of work
  6. Ronan Design

    Ronan Design Roman Design - Custom MSFS Scenery

    Joined:
    Jun 4, 2021
    Messages:
    241
    Occupation:
    Web Designer, MSFS Scenery Designer
    Location:
    Toronto, Canada
    Balance:
    1,565Coins
    Ratings:
    +111 / 1 / -0
    My Motion Simulator:
    2DOF, DC motor, Arduino
    I can force certain speeds in Windows driver properties, where I can also force IRQ number. Interestingly, it does not have 50000, but there is 57000 for example. Though FlyPT Mover and my 2DOF usually use 50000 and there were no problems with that, so I think it's not the problem. I might try it, and also I can remove the strut easily so I can try without it.
  7. Qui

    Qui New Member

    Joined:
    Sep 22, 2023
    Messages:
    7
    Balance:
    - 124Coins
    Ratings:
    +1 / 0 / -0
    My Motion Simulator:
    2DOF
    What is the crank length you have set?
  8. Ronan Design

    Ronan Design Roman Design - Custom MSFS Scenery

    Joined:
    Jun 4, 2021
    Messages:
    241
    Occupation:
    Web Designer, MSFS Scenery Designer
    Location:
    Toronto, Canada
    Balance:
    1,565Coins
    Ratings:
    +111 / 1 / -0
    My Motion Simulator:
    2DOF, DC motor, Arduino
    Right now it at 100mm. Didn't try other options yet.
  9. Josh_Possa

    Josh_Possa Active Member

    Joined:
    Jan 25, 2021
    Messages:
    124
    Location:
    Catalunya
    Balance:
    578Coins
    Ratings:
    +35 / 0 / -0
    My Motion Simulator:
    2DOF, 3DOF, DC motor, Motion platform
    What I modified is the communication speed between Arduino and the drivers (instead of the com speed between PC and Arduino) from 500000 to 115000 and it improves the performance in my case.

    I have to say that the Arduino sketch I'm using is one specially writed for Sabertooth drivers and it that option is implemented there.
    • Like Like x 1
    Last edited: Jan 14, 2025
  10. Ronan Design

    Ronan Design Roman Design - Custom MSFS Scenery

    Joined:
    Jun 4, 2021
    Messages:
    241
    Occupation:
    Web Designer, MSFS Scenery Designer
    Location:
    Toronto, Canada
    Balance:
    1,565Coins
    Ratings:
    +111 / 1 / -0
    My Motion Simulator:
    2DOF, DC motor, Arduino
    I had to swap one of the Arduino boards because it seems to be defective - it often loses connection with the PC, even when flashing it from Arduino IDE it often flashed then timed out not getting a response from the board. After some resoldering, I tested the rig without the strut. It does work - and by "work" I mean there is enough power in the motors to carry my weight and move the rig around, but the cogging sensation was much worse. I could feel the stepping much more and I could even hear it very distinctly now! Yes, I could actually hear the gears in the motors going "tick-tick-tick" quickly. So I can say that a strut actually helps with cogging in a significant manner. We'll see if cogging remains noticeable in an actual sim, once I get vibration transducers installed, with everything that's going on on the rig.

    - I have constructed an attachment platform and mated my DIY pendulum yoke to it, and it will also mount a joystick and a steering wheel on demand.
    - Painted whatever needed to be painted or touched up.
    - Mounted left HOTAS button box, wired the USB hub etc.
    - Mounted keyboard
    - Mounted power amp for the vibration transducers
    - I'm working on the right console now - the Arduino Leonardo based switch box with gear lever and encoder, and Arduino Mega based MCP/GPS/Autopilot panel powered by MobiFlight software.

    upload_2025-1-14_11-45-2.png
    upload_2025-1-14_11-47-28.png
    • Like Like x 2
    Last edited: Jan 14, 2025
  11. Ronan Design

    Ronan Design Roman Design - Custom MSFS Scenery

    Joined:
    Jun 4, 2021
    Messages:
    241
    Occupation:
    Web Designer, MSFS Scenery Designer
    Location:
    Toronto, Canada
    Balance:
    1,565Coins
    Ratings:
    +111 / 1 / -0
    My Motion Simulator:
    2DOF, DC motor, Arduino
    I can't believe it, but my motion simulator is finally complete, in a yoke/rudder pedals form. The joystick/HOTAS combo and Steering wheel/shifter/pedals combo will come a bit later.
    Now, I need to configure everything to work correctly in MSFS2024, which was a bit of a nightmare on the first attempt — but not because of the rig's fault. MSFS2024 just kept crashing the moment I activated VR. I finally solved it, and although I still need to tweak and configure a bit more, I was finally able to have a 10-minute flight without crashing (in both literal and figurative sense). It's working!

    As soon as I approach an acceptable motion profile, I will do a video.

    The few minutes I could have an actual honest flight it felt great! I took off in a C152 from Toronto Island and after completing a few turns landed, then repeated the flight a couple of times. With all the constant motion that was happening in the air in a small plane such as micro-turbulences, control feedback, and engine vibrations induced through 2 vibration transducers the cogging was not noticeable at all, and I was expecting to feel it. Maybe in a calmer larger plane, but not in C152.

    The motors seem to be always busy, even when the rig is motionless and not receiving any data. They are silent, but when I touch them I can feel a bit of a "buzzing" of the micro-movements. I think they heat up from that and I measured the temperature of up to 40C after maybe 30 minutes of motors powered up, including test flights. It doesn't seem excessive, but I wonder if I can calm the motors a bit with SMC3 settings tweak.

    Here are a few photos of the finished rig, complete with strobes, nav lights and a blue aura: I wanted to make sure everyone around knows it could be moving and stand back (because I'd be in a VR HMD so couldn't keep my eyes on bystanders), so I needed some bright lights - why not do it in style?

    upload_2025-1-26_23-35-16.png
    upload_2025-1-26_23-38-2.png
    upload_2025-1-26_23-38-23.png
    upload_2025-1-26_23-39-7.png
    upload_2025-1-26_23-40-11.png
    upload_2025-1-26_23-40-34.png
    upload_2025-1-26_23-40-54.png
    upload_2025-1-26_23-41-13.png
    upload_2025-1-26_23-41-36.png
    upload_2025-1-26_23-41-55.png
    upload_2025-1-26_23-42-16.png
    • Winner Winner x 3
    • Like Like x 1
    • Friendly Friendly x 1
    Last edited: Jan 27, 2025 at 05:55
  12. michel123

    michel123 Member

    Joined:
    Jan 12, 2024
    Messages:
    77
    Occupation:
    cadre sncf
    Location:
    lezignan-corbieres
    Balance:
    188Coins
    Ratings:
    +33 / 0 / -0
    My Motion Simulator:
    2DOF, AC motor, Arduino, Motion platform
    Ho my god !!! it's crazy !

    Raaa now you made me want to make one!!!! ;)

    The work is remarkable, for the PC to manage 4 arduino cards (if I followed correctly...), it goes smoothly??

    Always surprised to see the motor axles on the outside, and not on the inside, which would have avoided the problems you had with the pedals in front, why not have them returned?

    I move 2 identical motors with a 600 w power supply (the motors are supposed to take 250 each), why 1500 w?? or maybe I followed it wrong (that must be the case.....), or maybe I underestimated the peak loads??

    I always admire your complete work, IT, DIY, detail and finishing, frankly I consider myself a good handyman but now, I admit that I am on edge!
  13. Josh_Possa

    Josh_Possa Active Member

    Joined:
    Jan 25, 2021
    Messages:
    124
    Location:
    Catalunya
    Balance:
    578Coins
    Ratings:
    +35 / 0 / -0
    My Motion Simulator:
    2DOF, 3DOF, DC motor, Motion platform
    Yeeeeeeessss Congratulations men! Don't worry about the temps if it does not rise up more than 40º. Hope to see a video soon!
  14. Ronan Design

    Ronan Design Roman Design - Custom MSFS Scenery

    Joined:
    Jun 4, 2021
    Messages:
    241
    Occupation:
    Web Designer, MSFS Scenery Designer
    Location:
    Toronto, Canada
    Balance:
    1,565Coins
    Ratings:
    +111 / 1 / -0
    My Motion Simulator:
    2DOF, DC motor, Arduino
    Thanks!

    It's 3 Arduino Uno boards for the motion, each handling 2 motors. FlyPT Mover controls them just fine. On top of that, there is an Arduino Mega for the MCP/GPS/AP panel (controlled via MobiFlight software), and for the other panels and peripherals, there are 3 Arduino Leonardo boards and 1 Arduino Pro Mini. Windows sees them as normal joysticks.

    The goal was a compact rig, turning the axles inwards would mean a much larger frame and footprint. As far as I can see, most rigs have shafts outwards like mine.

    6 x 250W = 1500W of total motor power. I run modified server PSUs, making a 2 x 750W 24V PSUs = 1500W again. Plus an additional 12V 460W PSU to run the lights and accessories.

    Thanks! Will do!
    • Like Like x 2
  15. Ronan Design

    Ronan Design Roman Design - Custom MSFS Scenery

    Joined:
    Jun 4, 2021
    Messages:
    241
    Occupation:
    Web Designer, MSFS Scenery Designer
    Location:
    Toronto, Canada
    Balance:
    1,565Coins
    Ratings:
    +111 / 1 / -0
    My Motion Simulator:
    2DOF, DC motor, Arduino
    OK, I have sorted out MSFS2024 problems and it seems to be stable now. After some testing and tweaking I got the motion dialed in acceptably well. I'm ready for the video.
    But I hit a problem I need to take care of first:
    After an hour or so, the motors really overheated. I started smelling a "warm motor" smell - not a burning smell, thankfully, but still not something that should be happening. I measured the temperature a couple of times during testing and it was hovering around 45C, but after some robust motion testing, when I sensed the smell, I measured 66C on the side surface of the hottest motor. I need to get this under control...
    • Agree Agree x 1
  16. adgun

    adgun Active Member

    Joined:
    Jan 28, 2008
    Messages:
    527
    Occupation:
    mechanic
    Location:
    Netherlands
    Balance:
    5,739Coins
    Ratings:
    +134 / 4 / -0
    If you put youre pushrods more straight up like DR does you need less force
    regards Ad
    • Like Like x 1
  17. Aerosmith

    Aerosmith Active Member

    Joined:
    May 30, 2024
    Messages:
    339
    Occupation:
    self employed
    Location:
    Germany
    Balance:
    1,987Coins
    Ratings:
    +192 / 0 / -0
    My Motion Simulator:
    3DOF, AC motor
    There are 3 possibilities
    1. It's the static current that causes most of the heating (the motors have to fight gravity)
    2. Backlash or imperfect tuning of the control loop parameters causes "dithering", the motors are moving forth and back a little bit all the time
    3. The actual mechanical work of moving the rig consumes the most energy
    Testing if 3 is the case is easy. Just let it stand still while powered up and look if the motors also get hot after a while. To distinguish between 1 and 2 I'd measure the average DC currents and voltages at the motors. The static power of each motor is voltage times current. The total power is the current at the supply times the voltage. The total power is always higher than the sum of the static power of the motors. This is caused by eddy current losses in the motor iron and heat produced by the power electronics. But if those losses are higher than, say, 1/3 of the total power I'd suspect that there are unnecessary losses due to dithering.

    So if 2 consumes the most energy, try to optimise the tuning. If it's 1 than you could consider adding gas springs. Only as last resort I would add fans. DC motors produce most of the heat in the rotor so blowing air around the stator doesn't help much when the motor is not turning at high speed.
    • Like Like x 1
  18. Ties

    Ties New Member

    Joined:
    Apr 6, 2020
    Messages:
    5
    Balance:
    - 8Coins
    Ratings:
    +1 / 0 / -0
    My Motion Simulator:
    2DOF
    Wow. Nice work! I followed this project from the beginning. Glad it's finally complete. And curious about the video :)
    • Friendly Friendly x 1
  19. Ronan Design

    Ronan Design Roman Design - Custom MSFS Scenery

    Joined:
    Jun 4, 2021
    Messages:
    241
    Occupation:
    Web Designer, MSFS Scenery Designer
    Location:
    Toronto, Canada
    Balance:
    1,565Coins
    Ratings:
    +111 / 1 / -0
    My Motion Simulator:
    2DOF, DC motor, Arduino
    It's definitely #2, or at least it's the root of the problem. The motors heat up even when the rig is sitting idle and empty but under power. Naturally, they heat up more under load, but they heat up to 40C-ish even on idle. It's not audible, but when I touch the motors I can feel the "buzzing" or dithering as you called it going on constantly, even though there is no visible movement. So my guess is that the tuning needs to be adjusted, but I'm not sure how exactly. Here are my current settings:
    [​IMG]

    Should I increase the Kp and reduce PWMmax? Increase the deadzone? Reduce Fpwm to 20kHz (I say it at 25 on a similar rig, but most use 20 and it should be less pulses I guess, while still enough for precision)?
  20. michel123

    michel123 Member

    Joined:
    Jan 12, 2024
    Messages:
    77
    Occupation:
    cadre sncf
    Location:
    lezignan-corbieres
    Balance:
    188Coins
    Ratings:
    +33 / 0 / -0
    My Motion Simulator:
    2DOF, AC motor, Arduino, Motion platform
    Pwmax on 240 for security for me (the motor max 250w ?)... pwmrev at 40.
    • Like Like x 1