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

Tutorial SMC3 Arduino 3DOF Motor Driver and Windows Utilities

Discussion in 'SimTools compatible interfaces' started by RufusDufus, Dec 1, 2013.

  1. Talesgc

    Talesgc New Member

    Joined:
    Jul 15, 2025
    Messages:
    4
    Balance:
    38Coins
    Ratings:
    +0 / 0 / -0
    My Motion Simulator:
    Motion platform
    Not working here too: upload_2025-7-31_21-57-27.png
  2. noorbeast

    noorbeast VR Tassie Devil Staff Member Moderator Race Director

    Joined:
    Jul 13, 2014
    Messages:
    21,687
    Occupation:
    Innovative tech specialist for NGOs
    Location:
    St Helens, Tasmania, Australia
    Balance:
    151,766Coins
    Ratings:
    +11,048 / 56 / -2
    My Motion Simulator:
    3DOF, DC motor, JRK
    SMC3 is written for the Arduino Uno R3.
    • Like Like x 1
  3. Mistake

    Mistake New Member

    Joined:
    Aug 3, 2025
    Messages:
    4
    Balance:
    14Coins
    Ratings:
    +1 / 0 / -0
    My Motion Simulator:
    2DOF, 3DOF, Arduino, 4DOF
    Good afternoon everyone, I have a question, if I build 2 2dof circuits separately from each other, will they work in SimTools and in the game as 4dof? I want to try to build a 4dof in this way.
  4. noorbeast

    noorbeast VR Tassie Devil Staff Member Moderator Race Director

    Joined:
    Jul 13, 2014
    Messages:
    21,687
    Occupation:
    Innovative tech specialist for NGOs
    Location:
    St Helens, Tasmania, Australia
    Balance:
    151,766Coins
    Ratings:
    +11,048 / 56 / -2
    My Motion Simulator:
    3DOF, DC motor, JRK
    Yes SimTools can handle 2 Arduinos.
    • Like Like x 1
  5. Mistake

    Mistake New Member

    Joined:
    Aug 3, 2025
    Messages:
    4
    Balance:
    14Coins
    Ratings:
    +1 / 0 / -0
    My Motion Simulator:
    2DOF, 3DOF, Arduino, 4DOF
    Thank you very much for the reply, as soon as I get the parts I will start assembling, I will also share my experience on assembly
    • Like Like x 1
  6. Michail

    Michail Member Gold Contributor

    Joined:
    Jan 5, 2022
    Messages:
    171
    Location:
    Germany
    Balance:
    727Coins
    Ratings:
    +28 / 1 / -0
    Is there a list where all compatible smc3 controller are?
    Only know, ibt2, vnhsp30, cytron md13s, sabatooth.
    I installed yesterday a rc filter = 1k ohm resistor with 1μF capacitor on each analog input. And after switch in on motor does not move. In smc3 the hall sensor reacts, but the motor does not move. So I suggest, that the ibt2 again broken. so is there another alternative for mode2, that I don’t have to change the wiring and smc3 script but is way more durable?

    Another question is, that why when I increase the Ki value the motor is jumping up and down like hell? On real pump with inverter does not reacts so in my PLC life.. I can increase ki to 90s and leave usually kp below 10. This behavior I mentioned above overshoot and return is only when add Kd. And with only KP the actual value usually will never reach the set point. It has to be an PI controller at least. So I am a bit confused.
  7. noorbeast

    noorbeast VR Tassie Devil Staff Member Moderator Race Director

    Joined:
    Jul 13, 2014
    Messages:
    21,687
    Occupation:
    Innovative tech specialist for NGOs
    Location:
    St Helens, Tasmania, Australia
    Balance:
    151,766Coins
    Ratings:
    +11,048 / 56 / -2
    My Motion Simulator:
    3DOF, DC motor, JRK
    The SMC3 variants for various hardware are listed in the FAQs:
    https://www.xsimulator.net/community/faq/arduino-code-for-use-with-various-hardware-and-simtools.31/

    Many members have reported quality issues with IBT2s, some have suggested reducing the voltage may help.

    With respect to SMC3 settings please post a picture of those running the Sine test.
  8. Michail

    Michail Member Gold Contributor

    Joined:
    Jan 5, 2022
    Messages:
    171
    Location:
    Germany
    Balance:
    727Coins
    Ratings:
    +28 / 1 / -0
    I not new in the game. The smc3 was very well targeted tracked with with kp400, ki 0, kd 80 and Ks 3, fPWM 15 KHz. But I have had jittering and strange movements in idle mode. So I installed the rc filter for the analog inputs of the arduino. Pam max is set to 200 and voltage 21,5V.

    I will look into the smc3 faq. Thank you
    Last edited: Aug 12, 2025
  9. Joe Cortexian

    Joe Cortexian Active Member Gold Contributor

    Joined:
    Sep 8, 2021
    Messages:
    186
    Balance:
    1,111Coins
    Ratings:
    +44 / 0 / -0
    My Motion Simulator:
    3DOF
    SMC is a scaled integer solution. At the end of the calculation there is an “arbitrary” shift (divide) to get the output into -255 +255 range so it isn’t always clipping. So the values of say kp will not necessarily scale to numbers in other algorithms. I think that number was actually chosen carefully.

    Late in the faq there is a modification noted which is a fix for the PID algorithm. You should consider that update. It’s actually discussed in detail in this thread just back up a page or two to see it. The D term is just wrong. I don’t think that’s a direct effect on I but even though D is the derivative term you can think of it as the Damper term.
  10. Michail

    Michail Member Gold Contributor

    Joined:
    Jan 5, 2022
    Messages:
    171
    Location:
    Germany
    Balance:
    727Coins
    Ratings:
    +28 / 1 / -0
    Ok I found the issue. A missing wire was off. I have installed for the two arduinos SMC3 Version 1.0.
    Do I have to update to Sebastian2’s ID zip?

    for safety reasons, that no overheat pwm max is set to 200 and fPWM to 15kHz of the max rated 25kHz
  11. Joe Cortexian

    Joe Cortexian Active Member Gold Contributor

    Joined:
    Sep 8, 2021
    Messages:
    186
    Balance:
    1,111Coins
    Ratings:
    +44 / 0 / -0
    My Motion Simulator:
    3DOF
    I ran the unmodified stuff for years. The sebastian2 fix smooths out flight simulator. I think it’s better but I doubt that many people have updated.
    • Like Like x 1
    • Informative Informative x 1
  12. Michail

    Michail Member Gold Contributor

    Joined:
    Jan 5, 2022
    Messages:
    171
    Location:
    Germany
    Balance:
    727Coins
    Ratings:
    +28 / 1 / -0
    How does it possible? The hall sensor is directly to motor shaft mounted in a ratio 1:1. How it can drive so often 360 degrees and do a wundefull sine curve in smc3ustils? I want this to implement for my surge axis in the future and not to use other controller. May someone explain me.

  13. Joe Cortexian

    Joe Cortexian Active Member Gold Contributor

    Joined:
    Sep 8, 2021
    Messages:
    186
    Balance:
    1,111Coins
    Ratings:
    +44 / 0 / -0
    My Motion Simulator:
    3DOF
    SMC does not support multi-turn. Position input and output is 255-512+256. If you have a software knack you can change the software to keep track of turns (harder than it sounds). The somewhere in the software you scale the incoming and outgoing positions depending on how many turns you support (easier than it sounds).

    I have done this but the device I used (AS5600) didn’t transition smoothly from 0-1023 or 1023-0. So you get for example 1017-9. This is a bit random based on the noise so you start drifting.

    Consider what happens when the destination happens to be in that region. Or you have ringing that crosses back and forth and now you are loosing track of turns.

    I could make great demos but I never got it working very well. I was using an A5600 not this more expensive device.
    • Informative Informative x 1
  14. Michail

    Michail Member Gold Contributor

    Joined:
    Jan 5, 2022
    Messages:
    171
    Location:
    Germany
    Balance:
    727Coins
    Ratings:
    +28 / 1 / -0
    But he is using smc3utils for the sine curve.
  15. Joe Cortexian

    Joe Cortexian Active Member Gold Contributor

    Joined:
    Sep 8, 2021
    Messages:
    186
    Balance:
    1,111Coins
    Ratings:
    +44 / 0 / -0
    My Motion Simulator:
    3DOF
    He modified the code. I modified the code.
  16. Mistake

    Mistake New Member

    Joined:
    Aug 3, 2025
    Messages:
    4
    Balance:
    14Coins
    Ratings:
    +1 / 0 / -0
    My Motion Simulator:
    2DOF, 3DOF, Arduino, 4DOF
    I’ve built a 2DOF setup. In SimTools GameEngine the motors work fine in Output Testing — they react to the sliders.
    But when I start GameManager, it shows “Connected”. I set up the IP, patched the game, and GameManager shows the game is running.
    The problem is: the motors don’t move at all in the game.

    Has anyone faced this issue? Any advice would be appreciated.
  17. noorbeast

    noorbeast VR Tassie Devil Staff Member Moderator Race Director

    Joined:
    Jul 13, 2014
    Messages:
    21,687
    Occupation:
    Innovative tech specialist for NGOs
    Location:
    St Helens, Tasmania, Australia
    Balance:
    151,766Coins
    Ratings:
    +11,048 / 56 / -2
    My Motion Simulator:
    3DOF, DC motor, JRK
    Please post pictures of all of your settings.
  18. Mistake

    Mistake New Member

    Joined:
    Aug 3, 2025
    Messages:
    4
    Balance:
    14Coins
    Ratings:
    +1 / 0 / -0
    My Motion Simulator:
    2DOF, 3DOF, Arduino, 4DOF

    Attached Files:

  19. Joe Cortexian

    Joe Cortexian Active Member Gold Contributor

    Joined:
    Sep 8, 2021
    Messages:
    186
    Balance:
    1,111Coins
    Ratings:
    +44 / 0 / -0
    My Motion Simulator:
    3DOF
    simtools.jpg

    It should look like this. Also, you should probably use SimtTools 3 because thats where the latest games are supported plus it has additional features.
  20. noorbeast

    noorbeast VR Tassie Devil Staff Member Moderator Race Director

    Joined:
    Jul 13, 2014
    Messages:
    21,687
    Occupation:
    Innovative tech specialist for NGOs
    Location:
    St Helens, Tasmania, Australia
    Balance:
    151,766Coins
    Ratings:
    +11,048 / 56 / -2
    My Motion Simulator:
    3DOF, DC motor, JRK
    You should not need to mess with the IP @Mistake.

    Live For Speed does need to run in first person mode before patching, so unpatch it run it as in the FAQs then repatch LFS: https://www.xsimulator.net/communit...run-in-first-person-mode-before-patching.365/

    @Joe Cortexian is right, if you are just starting out use SimTools v3 instead: https://www.xsimulator.net/community/faq/simtools-v3.401/

    In addition to the v3 Manual and Quick Start guide also see the motion profile tuning tips: https://www.xsimulator.net/community/faq/steps-to-create-a-motion-profile.228/