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

DIY 2DOF Budget Build

Discussion in 'DIY Motion Simulator Projects' started by Deane, Sep 5, 2018.

  1. MarkusB

    MarkusB Well-Known Member Gold Contributor

    Joined:
    Jun 30, 2015
    Messages:
    552
    Location:
    Germany
    Balance:
    4,212Coins
    Ratings:
    +594 / 2 / -0
    My Motion Simulator:
    2DOF, 3DOF, DC motor, Arduino, Motion platform
    Hi @Deane,

    about adjusting the pot position: The answer to your question is "YES".
    Here is a step-by-step procedure that shows how I do this:
    1. Make sure that your motors can make a 360° turn without hitting anything (like the pots).
    2. Start SMC3 Utils.
    3. Turn one motor on.
    4. Turn on the manual mode.
    5. Move the slider to the middle position.
    6. Decouple the pot from the motor.
    7. Slowly turn the pot a tiny bit by hand, so that the motor starts moving. (Since the pot is decoupled, the motor should continue moving with the same speed. The more you turn the pot, the faster the motor moves. However, a slow movement is sufficient.)
    8. As soon as the motor axis reaches its neutral (home) position, turn the pot in the other direction, until the motor stops moving.
    9. Nor connect the pot to the motor again.
    10. Repeat this procedure for your second motor.
    This home position will now also be applied in SimTools. Please verify this with the SimTools Output Testing.

    Now about the motor movements in LFS:
    In one of your posts I saw a screenshot of the Tuning Center, which shows zero-values for all DOFs.
    Please note that it is mandatory to capture the max/min values for each game you are using.
    With the Tuning Center max/min values set to zero (like in your screenshot), the motors can perform unpredictable movements (or don't move at all).

    For doing this, start Game Manager, Game Engine, and your game (e. g. LFS).
    Start a race and then open the Tuning Center and press the button "Capture Max Min".
    Now drive some laps and do some hard curves, acceleration, and braking, but avoid a crash. The purpose of this is to adjust the motor movements to this particular game.
    After this, press "Save New Settings" and stop capturing.
    (Note: The higher the Tuning Center values, the less motor movements you have.)

    I hope this helps.

    Best regards,
    Markus
    • Like Like x 1
  2. Deane

    Deane Old Fart

    Joined:
    Aug 25, 2018
    Messages:
    212
    Occupation:
    Retired
    Location:
    Wirrina Cove, South Australia
    Balance:
    793Coins
    Ratings:
    +89 / 3 / -0
    My Motion Simulator:
    2DOF
    Update 2.
    I have figured out and adjusted the pots so they are now in sync and start from a common home position.
    I had to bend one lever out a bit to get clearance as it jammed against it.
    I also think I need to redo the balance point of the rig as it's a bit nose heavy, but luckily I allowed for this and I have two extra positions that I can go forward to which will hopefully take some of the nose heavy attitude out and better balance it.
    Am I going the wrong way with the axis values as in the pic ?
    I started at 80 and have gone up to 140 to see if that made it work better as my pitch and roll are doing bugger all, but that is probably what you just told me top do with the axis directions.
    I'm slowly getting there

    Attempt8.jpg L Plate.jpg
  3. MarkusB

    MarkusB Well-Known Member Gold Contributor

    Joined:
    Jun 30, 2015
    Messages:
    552
    Location:
    Germany
    Balance:
    4,212Coins
    Ratings:
    +594 / 2 / -0
    My Motion Simulator:
    2DOF, 3DOF, DC motor, Arduino, Motion platform
    • First thing: Did you capture the max/min values via the Tuning Center? This is really needed. Otherwise your motor movements inside games are unpredictable.
    • Second: The overall axis movement (Roll + Pitch + ...) should not go over 100%. Otherwise SimTools is not able to correctly mix the axis movement.
    • Third: Wither Roll or Pitch must have one check box orange and the other white.
    • And as @noorbeast always suggests: You should start with one DOF first and then go to the next.
    • Like Like x 1
    Last edited: Nov 8, 2018
  4. Deane

    Deane Old Fart

    Joined:
    Aug 25, 2018
    Messages:
    212
    Occupation:
    Retired
    Location:
    Wirrina Cove, South Australia
    Balance:
    793Coins
    Ratings:
    +89 / 3 / -0
    My Motion Simulator:
    2DOF
    Getting there slowly. I just moved the balance point to even it up so it is not so nose heavy.
    I have been capturing data, but I will start it all over again as it is getting late and I have had too many late nights recently with this sim and my problems with it which is all about learning and eventually I will get there.
    • Like Like x 2
  5. MarkusB

    MarkusB Well-Known Member Gold Contributor

    Joined:
    Jun 30, 2015
    Messages:
    552
    Location:
    Germany
    Balance:
    4,212Coins
    Ratings:
    +594 / 2 / -0
    My Motion Simulator:
    2DOF, 3DOF, DC motor, Arduino, Motion platform
    Have a good and relaxing night. I am sure you will get your sim running, and then the fun part will start. :thumbs
  6. Deane

    Deane Old Fart

    Joined:
    Aug 25, 2018
    Messages:
    212
    Occupation:
    Retired
    Location:
    Wirrina Cove, South Australia
    Balance:
    793Coins
    Ratings:
    +89 / 3 / -0
    My Motion Simulator:
    2DOF
    Thanks,
    Still at it and it's just after 3.00am and I was going to have an early night !
    I have been capturing data from LFS but I think my axis settings are still way off as I'm only getting limited movement so far.
    The most reactive is the surge if I get rammed which then pitches the nose down and it doesn't or can't return to level once it had stabilized from the impact.
    These are my screen shots of the settings that I am trying atm.
    Thanks.

    Testing more.jpg

    Testing more2.jpg

    Testing more3.jpg

    Testing more4.jpg
  7. BlazinH

    BlazinH Well-Known Member

    Joined:
    Oct 19, 2013
    Messages:
    2,145
    Location:
    Oklahoma City, USA
    Balance:
    16,575Coins
    Ratings:
    +1,831 / 32 / -1
    Your axis settings are reversed from what they should be. On a 2dof you normally use only axis1a and axis2a. The you put the dofs on each of those.

    BTW this is BlazinH and I don't live any where near ya mate so I have no idea what a noorbeast is if there is such a thing ;).
    • Like Like x 1
    • Agree Agree x 1
  8. Deane

    Deane Old Fart

    Joined:
    Aug 25, 2018
    Messages:
    212
    Occupation:
    Retired
    Location:
    Wirrina Cove, South Australia
    Balance:
    793Coins
    Ratings:
    +89 / 3 / -0
    My Motion Simulator:
    2DOF
    Thanks for your input BlazinH, but it is late and i'm tired.
    So you meant to put Roll, Pitch, Surge and Heave on 1A & 2A or Roll, Pitch on 1A &2A and Surge and Heave on 1B & 2B :think:think

    " I have no idea what a noorbeast is if there is such a thing " A Noorbeast is a mythical Moderator from the land past Down Under, Tasmania




    Devil.jpg Devil love.jpg
  9. Kranky Pantz

    Kranky Pantz Active Member

    Joined:
    Sep 9, 2018
    Messages:
    354
    Location:
    Canada, Eh!
    Balance:
    1,248Coins
    Ratings:
    +290 / 0 / -0
    My Motion Simulator:
    2DOF, DC motor, JRK, Motion platform

    I agree that it's difficult to both sit in your rig & drive as well as analyze hardware/software at the same time.

    If you have one available, try using a gamepad such as an XBox controller so you can sit comfortably wherever you need to and just watch what's going on.

    That's what I did with mine before I even installed it into the rig, it helped a lot and was far less frustrating.

    I've added a short video to my build thread which shows the rig moving during a replay of pCARS 2, which is also a good way to just sit back and analyze how everything is moving.

    I'd love to help you out in the other areas, but since I've used JRK's in my setup I know nothing about that Arduino + Sabertooth one, sorry.

    Good luck! :thumbs
    • Like Like x 1
  10. MarkusB

    MarkusB Well-Known Member Gold Contributor

    Joined:
    Jun 30, 2015
    Messages:
    552
    Location:
    Germany
    Balance:
    4,212Coins
    Ratings:
    +594 / 2 / -0
    My Motion Simulator:
    2DOF, 3DOF, DC motor, Arduino, Motion platform
    Hey @Deane,

    today is the day for you to get your simulator running. But a precondition for achieving this goal is that you follow the following steps precisely.

    Pre-work:
    1. If you are still awake since your last post, shut down your computer immediately and get at least 8 hours of sleep.
    2. For writing this I got myself a self-brewed beer. Before reading on, get yourself a self-brewed coffee.

    Now let's start.
    I am sorry to say this, but your settings are really confusing.
    I confess that I am far from being an expert, but there are several obvious mistakes you need to correct.

    1. At first about the Interface Settings:
    In your Interface Output, you have defined [A<Axis1a>][B<Axis2b>]
    Please change 2b to 2a, so that you then have: [A<Axis1a>][B<Axis2a>]
    Some background information: SimTools supports two sets of axis: set <a> and set <b>.
    You only have 2 axis, and for this reason you should only use one of the axis sets. Otherwise, the Axis Assignment becomes more complicated, because you would have to permanently switch between Axis Assignment (a) and (b) tabs in Game Engine.
    Delete what you have entered in Startup - Output and Shutdown - Output. As I said, I'm not an expert, and thus I don't know what these lines do in your case. But since I don't have anything entered there in my settings and it works, just try without them.
    01_InterfaceSettings.jpg
    2. Your (b) Axis Assignment
    After following the previous step, you only have Axis1a and Axis2a left. No need for configuring the (b) Axis Assignment.
    Delete everything you have configured here.
    02_AxisAssignment_b.jpg
    3. Your (a) Axis Assignment
    The first issue with your Axis Assignment is that the overall value for each axis is way too large.
    With your current configuration it is 90 + 90 = 180, but it should not be larger than 100.
    OverallAxisValue180.jpg
    Some background information:
    Each Axis represents one motor, and with the Axis Assignment you define how SimTools shall distribute the different forces (DOF) onto the motors.
    You have defined that Axis1a shall get 80% pitch plus(!) 80% roll. Now imagine that the game's telemetry output reaches maximum pitch and maximum roll at the same time. What shall SimTools do in this case? It cannot assign more than 100% to the motor. The result is that the motor movement will not be correct, because a large part of the telemetry output cannot be assigned to the motor.
    So as a simple rule of thumb: Give each Axis (i. e. each row in the Axis Assignment sheet) less than 100%.
    Example: Roll = 40%, Pitch = 40%

    The second issue with your Axis Assignment is that you have set the orange boxes incorrectly.
    Some background information:
    04_MotorInversionBoxes.jpg
    These orange check boxes (see the red arrowe above) define the motor direction.
    Example: When the motor rotates clockwise with the check box set to "orange", then the motor will rotate counter clockwise with the check box set to "white".
    For "pitch" you want the motors to rotate in the same direction, while for "roll" you want the motors to rotate in opposite direction.
    That means: Either for pitch OR for roll both check boxes need to have the same setting (orange or white). But it is definitely wrong to have both check boxes "orange" for both "pitch" and "roll".
    Now let's start to get your settings sorted.

    1. Keep your Interface Settings (with the corrections I described above), but delete your entire Axis Assignments.
    05_DeleteAxisSettings.jpg

    After this, there should be no orange-colored highlights, and all selection fields should look like this:
    06_EmptySettings.jpg

    Set all Output Types from "Rotational" to "Linear". I know you have rotational motors, but let's experiment with this new parameter at a later stage. This may help to narrow down problems.
    2. Configure your first DOF.

    You have previously configured multiple DOFs (pitch and roll) at the same time, and that makes it very hard to tune your system.
    Since you are testing with LFS, I propose to start with surge (instead of pitch or roll, because these are not so relevant for car racing).

    Go to the tab "(a) Axis Assignments" and configure the "Surge" force in the following way. Leave everything else empty.
    08_Surge.jpg

    Go to "Output Testing", press "Turn On", an move the "Surge" slider.
    Now you will see one of the following three things happen:
    • Both motors are moving into the same direction, and the seat leans backwards when you move the slider to the right.
      In this case everything is fine.
    • Both motors are moving into the same direction, but the seat leans forward when you move the slider to the right.
      In this case, press "Turn Off" and select the orange check boxes on both axis:
      09_SurgeInvertedForBothMotors.jpg
    • Both motors move in different directions. In this case, press "Turn Off" and only make one of the check boxes "Orange".
      09_SurgeInvertedForOneMotor.jpg
      Now repeat the Output Test: Does the seat now move backwards when moving the "surge" slider to the right? If so, perfect. If not, reverse the orange boxes:
      10_SurgeOtherMotorInverted.jpg
    Now it is time for starting LFS and test your first DOF (surge) inside the game.
    Does accelerating lean the seat backwards as expected? If not, exit the game, go back to the Axis Settings, and reverse both orange check boxes.
    Is the amount of "surge force" to strong or too weak? Correct this by changing the percentage values.
    Further fine tuning can be done later.
    3. Configure your second DOF.
    For racing games, this should be "Sway".
    Important: Remember your "Surge" settings or make a screenshot from the Axis Settings. Then delete these settings, so that you can focus on "sway" now without getting distracted by the "surge" component. After you are done with all DOFs, you re-enter all the previous settings again.

    Configure "Sway" in the 2nd DOF column:
    11_SwayInitial.jpg

    Go to the Output Settings and test the "sway" force with the "sway" slider.

    Start LFS and drive some laps. Does "sway" feel right? Or does the seat lean to the wrong direction? In this case exit the game, go back to the Axis Settings, and reverse the orange check boxes.

    @Deane, my beer is empty and my wife is calling for me. I really hope that this walkthrough helps you to get your rig moving in the right way.
    At least we should have eliminated some of the eror sources and reached a starting point for going forward.

    Good luck (and good night, since now it is nearly bed time in Germany),
    Markus
    • Like Like x 3
    • Informative Informative x 2
    • Agree Agree x 1
    Last edited: Nov 8, 2018
  11. Deane

    Deane Old Fart

    Joined:
    Aug 25, 2018
    Messages:
    212
    Occupation:
    Retired
    Location:
    Wirrina Cove, South Australia
    Balance:
    793Coins
    Ratings:
    +89 / 3 / -0
    My Motion Simulator:
    2DOF
    G'day Markus,
    Well I have just arisen after calling it a night at 4.00am this morning and I have had one heart starter already as write this post.
    Before I start thank you for your time and help to help me get movement as to me the software is very illogical. I have built five CNC machines machine so far and I thought that the last one a CNC Plasma cutter was a hard task to get running correctly because of the Torch Height Controller and it's many adjustments, but the simulator has beaten that for a pain the arse.
    So the plan is to do everything you have suggested, cross my fingers and hit the start button.

    BTW my German friend says G'day Gday.JPG
    • Like Like x 1
  12. Deane

    Deane Old Fart

    Joined:
    Aug 25, 2018
    Messages:
    212
    Occupation:
    Retired
    Location:
    Wirrina Cove, South Australia
    Balance:
    793Coins
    Ratings:
    +89 / 3 / -0
    My Motion Simulator:
    2DOF
    Somehow I my pots decided to play up and I had to readjust both of them as I was getting nothing from Simtools when I was following your steps.
    So it is back to start again I go
    Dunce.jpg
  13. BlazinH

    BlazinH Well-Known Member

    Joined:
    Oct 19, 2013
    Messages:
    2,145
    Location:
    Oklahoma City, USA
    Balance:
    16,575Coins
    Ratings:
    +1,831 / 32 / -1
    I don't know if it's your issue right now or not but you shouldn't underestimate the fact that your using an unsupported controller with the sketch you are using. To be absolutely sure it's not that you will need to use the simple serial test sketch but that's almost like starting all over again.:(
    Last edited: Nov 9, 2018
  14. BlazinH

    BlazinH Well-Known Member

    Joined:
    Oct 19, 2013
    Messages:
    2,145
    Location:
    Oklahoma City, USA
    Balance:
    16,575Coins
    Ratings:
    +1,831 / 32 / -1
    At least change 1000 to 2000 in the sketch you are using now as I suggested previously because it can't hurt and it will give your arduino more time to process serial data.
    Last edited: Nov 9, 2018
  15. Deane

    Deane Old Fart

    Joined:
    Aug 25, 2018
    Messages:
    212
    Occupation:
    Retired
    Location:
    Wirrina Cove, South Australia
    Balance:
    793Coins
    Ratings:
    +89 / 3 / -0
    My Motion Simulator:
    2DOF
    It can't hurt I suppose.
    I thought Sabertooth's were all supported with the 2X25 V2 having a different Baud Rate being the main difference.
    I have the pot's readjusted and they are moving in the SMC utility to any mode, Sine , Manual etc if that makes any difference ?
  16. BlazinH

    BlazinH Well-Known Member

    Joined:
    Oct 19, 2013
    Messages:
    2,145
    Location:
    Oklahoma City, USA
    Balance:
    16,575Coins
    Ratings:
    +1,831 / 32 / -1
    At the beginning of the smc3-sps thread it's clearly stated sabertooth 2x60 and 2x32 are the only supported controllers.
    What everyone seems to just brush off everytime I mention it is the sketch is optimized for baud rate 115000. That means there's not much overhead left. 38400 is 3 times slower so takes longer to process. Get it? That's one main reason these aren't supported with the sketch as written. However they may work with modifications but it's virgin territory. :D
    • Informative Informative x 2
    Last edited: Nov 9, 2018
  17. Deane

    Deane Old Fart

    Joined:
    Aug 25, 2018
    Messages:
    212
    Occupation:
    Retired
    Location:
    Wirrina Cove, South Australia
    Balance:
    793Coins
    Ratings:
    +89 / 3 / -0
    My Motion Simulator:
    2DOF
    So as far as you know no one on this forum has ever had success with the 2X25 ?
    That would leave me in a bit of a pickle as I don't want to flush $200 down the toilet as I'm sure that you can appreciate that.
    It seems that I have worn out my welcome with you so it seems and I thought you would be a little more tolerant of newbs who are just after advice and not everyone gets it first
    time around including me.
    • Disagree Disagree x 1
  18. BlazinH

    BlazinH Well-Known Member

    Joined:
    Oct 19, 2013
    Messages:
    2,145
    Location:
    Oklahoma City, USA
    Balance:
    16,575Coins
    Ratings:
    +1,831 / 32 / -1
    I believe a couple of people have used them with other sketches just not smc3-sps. The retail price on the supported 2x32 is the same as the 2x25 so most buy it instead.
    I do appreciate you can't afford to flush money down the toilet or I wouldn't be responding and trying to help you in the first place.
    Sorry for being harsh but the fact is we don't know if it's a serial coms issue or hardware issue and people don't keep going around in circles forever when using supported controllers. So it's hard to help you when we don't know for sure the root of your problem and when you don't have the expertise to be trailblazing an unsupported controller.
    That said the issue with smc3-sps coms is uno support because it has limited serial options. The mega does not but I've keep the same sketch for both to simplify things.
    But if you can afford to purchase a mega which is much less than another controller I'll write up a mega only version for you and others which should completely eliminate the issue.
    :popcorn
    • Like Like x 3
    • Agree Agree x 2
    Last edited: Nov 9, 2018
  19. T R Para

    T R Para i make stuff up

    Joined:
    Oct 18, 2018
    Messages:
    385
    Occupation:
    Retired
    Location:
    Cincinnati, Oh
    Balance:
    2,436Coins
    Ratings:
    +357 / 2 / -0
    My Motion Simulator:
    AC motor, 6DOF
    I have read this entire thread. I am interested in understanding as much as I can about the SMC3_packet_serial_beta8_softstart.ino.... Is it outputting simple serial in mode3 or is it serial packet in mode 3??

    BTW. Deane, nice workmanship on your rig.
  20. Deane

    Deane Old Fart

    Joined:
    Aug 25, 2018
    Messages:
    212
    Occupation:
    Retired
    Location:
    Wirrina Cove, South Australia
    Balance:
    793Coins
    Ratings:
    +89 / 3 / -0
    My Motion Simulator:
    2DOF
    BlazinH, most of my problems are due to my plain ignorance of all things electronics but that does not deter me from having a go, and if you haven't already worked it out I am pig headed
    stubborn and I won't stop until I get it beat.
    My ignorance of electronics made me pick the 2X25 sabertooth as I thought it matched the requirements of my motors, but had I asked or knew that you can use a higher amperage version I would have been fine.
    But unless I could sell my 2X25 for a reasonable price and then get a 2X32 I am pretty much stuck with it because of my limited available funds living on a disabilty pension.

    Anyhow it's a new day so let the fight commence.
    Don't forget 11/11

    anzac.jpg