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

2DOF Motion rig for MSFS2020

Discussion in 'DIY Motion Simulator Projects' started by SplitCurve49315, Feb 26, 2022.

  1. SplitCurve49315

    SplitCurve49315 New Member

    Joined:
    Feb 17, 2022
    Messages:
    16
    Balance:
    59Coins
    Ratings:
    +4 / 0 / -0
    My Motion Simulator:
    2DOF
    Hi Everyone. I’ve started my journey down the road of “motion simulation rigs”. I’m attempting to build a 2DOF rig for MSFS2020. I’ve been playing the sim in VR (Valve Index) for well over a year and have been having a complete blast. I had never considered a motion cockpit before (knowing they were several thousands of dollars), but after seeing @Ronan Design passionately describe his experience with his own DIY rig via the MSFS2020 forums, I was inspired to try my hand at it.

    My initial research brought me to this site where I slowly began reading through posts and threads in an attempt to get my head wrapped around this thing. I’m far from where I need to be to get a good, stable working platform for MSFS2020 in VR, but I think I’m on my way… I just need some guidance!

    I’m not one to ask many questions, and usually try to figure things out on my own. But this is project has kicked my butt, and I’ve finally come to a point where I need start asking questions so I can finish (plus my wife wants her sunroom back… it’s became command central for this project since the start of the year!)

    THE CHAIR

    image1.jpg

    Base construction is 2x4s screwed and bolted together on hockey puck feet (also screwed to the base). It’s very solid and heavy (although my motors have easily managed to launch it several inches into the air when they have made severe movements)

    IMG_0973.JPEG


    The motors are from PGSAW on EBay (12V 150/160RPM 25:1 gear ratio). I’m using 2 IBT2 motor controllers from Amazon wired to an Arduino UNO clone.

    image2.jpg

    Some basic measurements.

    Crank arm: 89mm

    Vertical Rod is: 279mm (attached 88mm above the horizontal plain of the moving platform)

    Horizontal distance from center of motor axle to center of U-joint is: 736mm

    Height from center of motor axle to top of the horizontal plain of the moving platform is: 209mm

    The chair itself is a “Playseat Challenge” mounted to a 5/8 plywood platform which in turn is reinforced by inch square tubing. The chair gives me several “built in” mounting options for peripherals and is light weight with its steal tube construction and light weight seat material.

    IMG_0976.JPEG

    INPUTS and OUTPUTS


    So from what I understand, (PLEASE correct me if I’m wrong), I should be configuring my motors by inputting variables onto my Arduino via SMC3. Once I’m happy with the SMC3 configurations and the movement produced by my motors, I should install and configure SimTools using Game Manager and Engine. Once that’s done, I can configure FlyPt Mover to enhance my experience for VR and manage other sources (like a Buttkicker) and interface with MSFS2020. This is how I think it should work? Am I on the right track?

    SMC3

    I followed the SMC tutorial linked here https://www.xsimulator.net/communit...3dof-motor-driver-and-windows-utilities.4957/, and was able to get everything moving properly.

    It doesn’t feel smooth and I don’t know how to configure SMC3 to limit range or smooth out the movement. I’ve searched but have yet to find clear explanations on how to do that inside SMC3.

    This is what it looks like… but again, I don’t know what anything “really” does other then the technical definitions in the tutorial thread (which is beyond me still).



    As you can see, the range is nearly 90 degrees up and down, plus the movement is “steppy” and not smooth. I don’t know enough about the software to fix those things…

    SIMTOOLS (Game Engine)

    Although I’ve not (as far as I know) properly configured SMC3 yet (Do I need to do that? Or is SMC3 only to confirm that my wiring is good and my Arduino/controllers work?), I decided to jump into SimTools with the hope that I would be able to fix my jerky movement and super long range of motion (I’ve read that “less is more” for VR).

    I purchased a DIY license and jumped in. I was able to get the Interface set up easily enough. I copied these numbers from somewhere on this site. My comport changes between COM4 and COM7 depending on what USB port the Arduino finds itself plugged into, but other then that, I think this is good?

    IMG_0980.JPEG

    I installed the MSFS2020 game plugin and patched the game easily enough, and saw that it shows up in my “Game list” under Axis Assignments.

    I’m confused between “Default” and the actual game in the dropdown. Which one do I configure? Both? Just the Default? Just the Game? I don’t know… so I’ve just been duplicating everything on both.

    IMG_0979.JPEG

    As for settings, I’m just guessing here… reading what others are saying... but I don’t really know what I’m looking for… I’m using “Generic 2D Advanced” so that I can check off the “Anti Roll”. Before that, I was going past the range of my motor arm, causing it to shut down and lurching the chair to one side.
    **Even with the Anti Roll checked, I’ve still been able to go past the limit and shut the motor down…not sure why?**

    Under Filter I’ve set smoothing at 100% everywhere… but honestly I’m still feeling the “stepping” during the movement. The jerkiness is more pronounced during Pitch up and Pitch down maneuvers. The Rolls for some reason feel a bit smoother?

    The only other setting I’ve changed is under “Axis Limiting” where I’ve set 40 to 50% movement range in and effort to reduce the movement range on my arms (VR LESS IS MORE?). But I’m not getting good fluid movement. And it seems to reverse direction to early (Anti Roll? Not enough defined Rang of Motion?).

    I’ve "set" the min/max under TOOLS while flying the sim (easy, slow movements) and saved the new settings. Not sure I’m seeing any effect doing this (Can someone explain what effect this should have on the movement?)

    That’s as far as I’ve gotten with SimTools. I’m hesitant on investing to much time on it if I’m not configured properly in SMC3…

    I may be misinterpreting here, but it seems that I’ve read that you can actually skip SMC3 and go directly into SimTools to configure everything and other times it’s the opposite… "don’t touch SimTools because you’re not done with SMC3"… I’ve yet to find a detailed explanation as to why for either method.

    FLYPT MOVER

    IMG_0982.JPEG


    I stumbled on to FlyPT Mover while digging through @Ronan Design ‘s thread. It looks to be a very cool piece of software with some apparently powerful applications for seamlessly integrating different sources to control movement.

    I’ve yet to get FlyPT Mover to have ANY effect on my rig whatsoever. It seems to be connecting (It says CONNECTED under the Outputs window (but the word Connected is RED… shouldn’t it be GREEN??). I’ve defined my Rig under the Rigs window (entering all measurements).

    But I don’t know what else to do with this? MSFS2020 connects and shows movement but doesn’t effect the Rig… I’m using the same output string as SimTools with Brackets, but still nothing… It does say CONNECTED but its red? I wish I could find a basic user manual or basic tutorial that really starts at the beginning….

    IMG_0981.JPEG

    When using FlyPT Mover, do I need SimTools? Is it an either/or kind of thing? Is Mover to be used in conjunction with SimTools or is it stand alone. I’ve not been able to find any info on this.

    All the info/videos/posts seem to assume that the user is up and running and just “fine tuning” their settings. I need BASIC instruction in order to get to that point.

    I hope I can start a conversation with some of you amazing builders here so that I can join your ranks and enjoy this amazing hobby!

    Thank you for any insight you may be able to provide!

    Matt (aka SplitCurve)

    Attached Files:

    • Like Like x 1
  2. seuszok

    seuszok Member Gold Contributor

    Joined:
    Nov 8, 2021
    Messages:
    89
    Location:
    Poland
    Balance:
    465Coins
    Ratings:
    +55 / 0 / -0
    My Motion Simulator:
    3DOF, DC motor, Arduino, Motion platform
    nice job. You have to be sure that Your system is in balance when seat on it.
    Than play with parameters in smc3 sitting in rig. Turn movement sinus is gently for that. You have to find Your setting couse universal one not exsist. when You dont feel any wrong movement thats ok. Your motor arm isl huge. For that motors 50mm arm will be more safety as no motor overload - when Your motor working in their power limit , they movements could be miss many details and worm a lot. Arm can be change later if You want to have more movement and You will have a compare to situation when lack of power was not an issue.
    Regards and wish Your solid construction will evaluate as expect :)
    Last edited: Feb 26, 2022
  3. noorbeast

    noorbeast VR Tassie Devil Staff Member Moderator Race Director

    Joined:
    Jul 13, 2014
    Messages:
    21,029
    Occupation:
    Innovative tech specialist for NGOs
    Location:
    St Helens, Tasmania, Australia
    Balance:
    147,872Coins
    Ratings:
    +10,876 / 54 / -2
    My Motion Simulator:
    3DOF, DC motor, JRK
    Grab a copy of the SimTools manual and keep it handy for reference: https://www.xsimulator.net/community/faq/rtfm-start-with-the-official-simtools-documentation.117/

    The Default profile should be configured first and the rig tested in Output Testing, to ensure everything works and is configured as expected, before messing with individual game profiles.

    If everything is working as expected then see the motion profile tuning tips in the FAQs: https://www.xsimulator.net/community/faq/steps-to-create-a-motion-profile.228/
    • Like Like x 1
  4. SplitCurve49315

    SplitCurve49315 New Member

    Joined:
    Feb 17, 2022
    Messages:
    16
    Balance:
    59Coins
    Ratings:
    +4 / 0 / -0
    My Motion Simulator:
    2DOF
    Ok! So you think my arms are too long? I was wondering about that... I can easily drill out the arm for 50mm. Thanks for the observation!
  5. SplitCurve49315

    SplitCurve49315 New Member

    Joined:
    Feb 17, 2022
    Messages:
    16
    Balance:
    59Coins
    Ratings:
    +4 / 0 / -0
    My Motion Simulator:
    2DOF
    Thanks for the reply! I did read the SimTools manual cover to cover. This is how I was able to get it going as far as I did. I will read the second link for tuning tips! I may shorten my arms to 50mm before doing that. Do you agree that my arms might be a tad long?

    And what do you say regarding SMC3? Do I need to tinker with that before moving to motion profile tuning? or is the SMC3 part of my build done?

    Thank you!
    Matt
  6. noorbeast

    noorbeast VR Tassie Devil Staff Member Moderator Race Director

    Joined:
    Jul 13, 2014
    Messages:
    21,029
    Occupation:
    Innovative tech specialist for NGOs
    Location:
    St Helens, Tasmania, Australia
    Balance:
    147,872Coins
    Ratings:
    +10,876 / 54 / -2
    My Motion Simulator:
    3DOF, DC motor, JRK
    SMC3 controls the hardware and needs to be properly configured and working as expected before messing with SimTools.

    The levers may be a tad long, but you can always try it as they are and see if the motors get warm and if they are able to handle the load.
  7. SplitCurve49315

    SplitCurve49315 New Member

    Joined:
    Feb 17, 2022
    Messages:
    16
    Balance:
    59Coins
    Ratings:
    +4 / 0 / -0
    My Motion Simulator:
    2DOF
    This is where I'm a bit confused... What does "...working as expected..." mean? As you can see in my video, my green line is following the curve, and my arms are moving as a result... is that enough? I'm not sure what else I need to do there...
  8. seuszok

    seuszok Member Gold Contributor

    Joined:
    Nov 8, 2021
    Messages:
    89
    Location:
    Poland
    Balance:
    465Coins
    Ratings:
    +55 / 0 / -0
    My Motion Simulator:
    3DOF, DC motor, Arduino, Motion platform
    Its wery good question :)
    Your upper limit angle its litle to high (almost vertical) - short it to angle as lower one.
    And answer: Try to have same results when You sit in rig with not sharpnes , start from sinus.
    If rig jump some times look on graph - smc3 generate line but some times You can see on graph some steps - so You rig going just like graph generate and ignore that steps. When Your simulator go equally up and down as graph -You done it (You will feel confortable with that movement)
  9. SplitCurve49315

    SplitCurve49315 New Member

    Joined:
    Feb 17, 2022
    Messages:
    16
    Balance:
    59Coins
    Ratings:
    +4 / 0 / -0
    My Motion Simulator:
    2DOF
    Ok! so how to I lower the upper limit in SMC3? and how do I smooth out the "steps" if I feel them when sitting in the chair?
  10. noorbeast

    noorbeast VR Tassie Devil Staff Member Moderator Race Director

    Joined:
    Jul 13, 2014
    Messages:
    21,029
    Occupation:
    Innovative tech specialist for NGOs
    Location:
    St Helens, Tasmania, Australia
    Balance:
    147,872Coins
    Ratings:
    +10,876 / 54 / -2
    My Motion Simulator:
    3DOF, DC motor, JRK
    The second SMC3 post covers its settings: https://www.xsimulator.net/communit...driver-and-windows-utilities.4957/#post-48121

    In particular note the settings and explanations for:

    Clip Input Used to create a band at either limit of the target range beyond which any values sent to the SMC3 are clipped. In addition to this clipping, if the motor feedback does move beyond this range (typically through inertia), the SMC3 will attempt to brake the motors hard by driving them in reverse until they are back out of this limit zone. The value can be anything from 0-255 (however can’t be less than the current limit setting). Reverse braking is applied in the band between the Clip Input and the Max Limit settings. Reverse braking can be disabled - refer to PWMrev.

    Max Limits Used to create a band at either limit of the feedback range beyond which if the motors move (typically through inertia) the SMC3 will automatically shutdown the drivers and keep them disabled until reset. This is essentially a safety mechanism if something goes wrong. The value can be between 0-255 (however can’t be greater than the current clip setting).

    [​IMG]

    PID control is at the core of SMC3 and similar approaches, this gentle PID introduction was written with JRKs in mind, but the basic ideas are generic, and includes links to more technically accurate information, depending on how far down the PID rabbit hole you want to go: https://www.xsimulator.net/community/faq/a-laymans-analogy-guide-to-pids-pid-tuning.219/
  11. seuszok

    seuszok Member Gold Contributor

    Joined:
    Nov 8, 2021
    Messages:
    89
    Location:
    Poland
    Balance:
    465Coins
    Ratings:
    +55 / 0 / -0
    My Motion Simulator:
    3DOF, DC motor, Arduino, Motion platform
    About setting - read carefully what Norbest suggest

    To move upper position litle bit down You change Clip input parameter to lower value, thats shorter movement but on both sides (up and down). Now mechanicaly move pot to have arm horizontal and line from pot in midle position on smc3 graph.
  12. SplitCurve49315

    SplitCurve49315 New Member

    Joined:
    Feb 17, 2022
    Messages:
    16
    Balance:
    59Coins
    Ratings:
    +4 / 0 / -0
    My Motion Simulator:
    2DOF
    Thank you very much @noorbeast and @seuszok for taking the time to try and help me out!

    There is definitely something I’m not understanding or there is something fundamentally wrong with my setup. Adjusting clip input has no effect on my range of motion in SMC3.

    As you can see in the clip below I go from zero to 255 to zero. The orange line stays well above my movement and has no effect on my range of movement.



    I thought I was making good progress and I’m having a hard time getting past SMC3! :(
  13. SteULM

    SteULM Active Member

    Joined:
    Nov 13, 2021
    Messages:
    225
    Occupation:
    Alla ricerca di cose nuove da imparare.
    Location:
    Italy
    Balance:
    612Coins
    Ratings:
    +149 / 0 / -0
    My Motion Simulator:
    2DOF, Arduino
    You can smooth the movement by decreasing the Kp parameter, always check that the green feedback line is always together with the blue of the target
    • Like Like x 1
  14. seuszok

    seuszok Member Gold Contributor

    Joined:
    Nov 8, 2021
    Messages:
    89
    Location:
    Poland
    Balance:
    465Coins
    Ratings:
    +55 / 0 / -0
    My Motion Simulator:
    3DOF, DC motor, Arduino, Motion platform
    In my case I was have to short Clip Input to avoid collision. So only move pot to have same angle on upper and lower position.
  15. SplitCurve49315

    SplitCurve49315 New Member

    Joined:
    Feb 17, 2022
    Messages:
    16
    Balance:
    59Coins
    Ratings:
    +4 / 0 / -0
    My Motion Simulator:
    2DOF
    So I took your advice and shortened my arms to 50mm. It has solved one of my issues!

    My motors kept shutting down when passing a certain point on a roll. The roll side arm that would swing down would go past it’s limit and shut down, not being able to return up again. I think the mechanical force needed to lift the arm with my weight in the chair was too much regardless of settings or axis limitations in software. With my shorter arms, I was not able to shut down my motors in multiple rolls. Ive only had time for limited testing but it looks promising and I am encouraged by this! Thank you!

    Shortneing the arms has changed some geometry and I will have to move my motors back on the base. I think this will even go further in improving the mechanical advantage that shorter arms seems to have given me.

    I’m still at a loss on how to reduce the range of motion via SMC3 using clip limits. But I will do some fine tuning of my pot positions in order to have exactly the same range up and down.
  16. SplitCurve49315

    SplitCurve49315 New Member

    Joined:
    Feb 17, 2022
    Messages:
    16
    Balance:
    59Coins
    Ratings:
    +4 / 0 / -0
    My Motion Simulator:
    2DOF
    ok! Thanks for the tip! I had set my Kp to 400 and left it there for the longest time. I did however start testing lower setting to see how it effected the green line tracking but I did not test it in the chair.

    I thought that I needed a very high kp number in order to help my motors bring the arm up during rolls as they were shutting down on the bottom swing… I’ve since figured out that 88mm for my arms was too long for my configuration and was requiring more force than was available to bring the arm back up. Reducing the length to 50mm has solved that I believe.
    I will now try reducing the kp to help smooth out the movement. More testing this week!

    Thank you all for your tips and advice!
    Matt
    • Like Like x 1
  17. SteULM

    SteULM Active Member

    Joined:
    Nov 13, 2021
    Messages:
    225
    Occupation:
    Alla ricerca di cose nuove da imparare.
    Location:
    Italy
    Balance:
    612Coins
    Ratings:
    +149 / 0 / -0
    My Motion Simulator:
    2DOF, Arduino
    In my configuration similar to yours the distance between the center of the motor pin to the fore of the arm is 35mm and I assure you that the movement is good

    20211219_160235.jpg