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.

SMC3 Sabretooth TEST version

Discussion in 'SimTools compatible interfaces' started by RufusDufus, Jan 25, 2015.

  1. Pit

    Pit - - - - - - - - - - - - - - - - Staff Member Moderator Gold Contributor

    Joined:
    Oct 2, 2013
    Messages:
    2,985
    Location:
    Switzerland
    Balance:
    29,051Coins
    Ratings:
    +2,975 / 29 / -0
    My Motion Simulator:
    DC motor, Arduino, 6DOF
    ok, Ki must not be zero...

    PS: no success. If I raise th Ki value the PWM feedback line shows some power but independent from the motors.
    Last edited: Nov 21, 2015
  2. BlazinH

    BlazinH Well-Known Member

    Joined:
    Oct 19, 2013
    Messages:
    1,904
    Location:
    Oklahoma City, USA
    Balance:
    13,840Coins
    Ratings:
    +1,620 / 30 / -1
    Were you sure to do this?
    Could this be the problem?
    I don't or haven't used SMC3 myself so I can't tell you how I set it up. But from what I can see @RufusDufus sketch for the sabertooth just takes the PWM variable and divides it by 4 to get a value that works for the sabertooth. So I don't know why its not working for you now considering you were already using it successfully in the past.
  3. wannabeaflyer2

    wannabeaflyer2 Well-Known Member

    Joined:
    Jun 12, 2015
    Messages:
    498
    Location:
    london uk
    Balance:
    6,171Coins
    Ratings:
    +667 / 4 / -0
    My Motion Simulator:
    2DOF, Arduino, Motion platform, 6DOF
    Hi @RufusDufus.. Finally got a chance to load SMC mode 3 version for the Sabertooth and having a minor issue so need some assistance when you get a chance Please,
    So Ard code loaded, Coms Checked with SMC Code for Mode 3 and SMC utility Program & confirmed as OK,
    I can see the Pot value Line changing as i alter it manually , and Got PWM signal visible in SMC utility .

    Have set up the Parameters as suggested in the Initial setup section of your tutorial ( see attached Pic ) and the DIP switch settings (1-6) are 100001 , i have tried Hall sensor For feedback and now fitted standard 10K ohm rotary Pot , ( PS for the these initial tests, i Grounded the unused A1 Input to stop it floating ,,

    No smoke yet :) but once i power up my sabertooth 2x32 the motor is spining ??? when it should be stationary .. All the Values are set to Zero as per instruction but as always i may have missed something silly ,,

    I have had this situation before with the sabertooths and its typically to do with wrong dip switch settings ..

    later on during testing i bumped up the KP value to the recommended 400 and upped the PWM Max , now the motor goes Loopy ( very rapid back and forth) fighting i suppose for direction ( now i smell Burning at the motor but least no smoke ) so quickly stop the test ( tried with 2 different motors same result , so im thinking controller setup issue!) ..

    am i right in thinking that once i get the motors running i should be able to control speed and direction based on where the POT is set? and its only once happy with this level of control would i link the pot Physically to the Motor..

    you guys know me always with the long posts but just trying to explain where i am with this trial at the moment ..
    DSCN0333.JPG DSCN0331.JPG SMC3-Capture.JPG
  4. BlazinH

    BlazinH Well-Known Member

    Joined:
    Oct 19, 2013
    Messages:
    1,904
    Location:
    Oklahoma City, USA
    Balance:
    13,840Coins
    Ratings:
    +1,620 / 30 / -1
    Yep! That's at least one of your problems. The newer 2x32 has some nice new features but they broke backwards compatibility with older sabertooth models to do it. Therefore, I suggest you start reading up on the documentation for your model. http://www.dimensionengineering.com/datasheets/Sabertooth2x32.pdf
    2x32_serial_dip_settings.jpg

    Note: The SMC3 sabertooth sketch uses Simple Serial, now called Legacy Simplified Serial.
    • Like Like x 1
    • Useful Useful x 1
  5. BlazinH

    BlazinH Well-Known Member

    Joined:
    Oct 19, 2013
    Messages:
    1,904
    Location:
    Oklahoma City, USA
    Balance:
    13,840Coins
    Ratings:
    +1,620 / 30 / -1
    Also,
    The SMC3 Sabertooth is set up to use a 38400 baud rate. In order to do that on a 2x32 you must use Describe to program the "user-defined setting" to 38400 and then set dip 5 OFF.

    Or, for initial testing, set dip 5 to ON and change the baud setting in the SMC3 sketch to 9600.
    • Informative Informative x 1
  6. wannabeaflyer2

    wannabeaflyer2 Well-Known Member

    Joined:
    Jun 12, 2015
    Messages:
    498
    Location:
    london uk
    Balance:
    6,171Coins
    Ratings:
    +667 / 4 / -0
    My Motion Simulator:
    2DOF, Arduino, Motion platform, 6DOF
    Hi @BlazinH thanks for the tips , had messed around with different dip switch settings and adresses and baud rates but you have given me a few more options to look Into, so just saying thanks for the assist, and will try these options tomorrow cheers ,
  7. wannabeaflyer2

    wannabeaflyer2 Well-Known Member

    Joined:
    Jun 12, 2015
    Messages:
    498
    Location:
    london uk
    Balance:
    6,171Coins
    Ratings:
    +667 / 4 / -0
    My Motion Simulator:
    2DOF, Arduino, Motion platform, 6DOF
    OK Mini Update , Thanks for the tip @BlazinH had a play this morning double checked DE settings and Once again changed the DIP switch Settings ..also changed some of the SMC utility parameters and Voila :) she lives LOL

    OK so my setup is as Follows
    Ardunino Uno
    SMC Utility V0.7
    SMC Code With (Mode 3 Revision)
    12Vdc Car Battery ( as temporary Test Supply )
    Sabertooth 2x32 ( Dip Switch settings 000011) Describe Baud rate set as 34800,
    Ard TX ref pin 13 to Sabertooth RX S1 & Ard Gnd to 2x32 0v Terminal
    10K pot connected to Ard as per Standard SMC Config . Will Try Hall effects sensor later today

    Good News is i now have the whole lot Running ( No Smoke , No Dodgy Motor Movements, and Motor direction /speed now under full pot control ( Phew) , so i just need to do fine tuning to get the optimum settings for SMC Utility Testing ,,

    See Attached screen shot of my Sortta Working parameters ( all of which will need to be refined ....

    Once i understand how to get the best out of SMC Setup , my intention is to use SMC to test my Linear actuator Project ..

    Once again i'd like to Thank you guys for getting me this far with and the promise of good things to come ,, Special thanks to@Rufusdus & @BlazinH For this Sabertooth Controller Option , Early days in testing at moment but looking good even with my rough and ready test setup :) Cheers Guys


    DSCN0336.JPG SMC3-Capture working default 2x32.JPG
    • Like Like x 2
    • Informative Informative x 2
  8. wannabeaflyer2

    wannabeaflyer2 Well-Known Member

    Joined:
    Jun 12, 2015
    Messages:
    498
    Location:
    london uk
    Balance:
    6,171Coins
    Ratings:
    +667 / 4 / -0
    My Motion Simulator:
    2DOF, Arduino, Motion platform, 6DOF
    Hi Guys not meant as double post but had some good test results today check out my DIY Linear Actuator design post for the update :) And Thanks For the assist guys im on my way again ..
  9. Pit

    Pit - - - - - - - - - - - - - - - - Staff Member Moderator Gold Contributor

    Joined:
    Oct 2, 2013
    Messages:
    2,985
    Location:
    Switzerland
    Balance:
    29,051Coins
    Ratings:
    +2,975 / 29 / -0
    My Motion Simulator:
    DC motor, Arduino, 6DOF
    Hi all, thank you @wannabeaflyer2 for your suggestions and sharing your results. I am happy to say that I got SMC3 also working on my Sabertooth, did not yet test in a game because when I test the SimTools DOF output the simulator stands not still while not moving the slider. SimTools Interface baud rate is set to 500000, tried 115200 but it did not work for me, there was no moving any more...any suggestions?
  10. BlazinH

    BlazinH Well-Known Member

    Joined:
    Oct 19, 2013
    Messages:
    1,904
    Location:
    Oklahoma City, USA
    Balance:
    13,840Coins
    Ratings:
    +1,620 / 30 / -1
    Since my previous posts helped get wannabeaflyer2 going, but apparently none of them have been helpful to you, then I have no further suggestions other than to read this thread again. ;)
  11. Pit

    Pit - - - - - - - - - - - - - - - - Staff Member Moderator Gold Contributor

    Joined:
    Oct 2, 2013
    Messages:
    2,985
    Location:
    Switzerland
    Balance:
    29,051Coins
    Ratings:
    +2,975 / 29 / -0
    My Motion Simulator:
    DC motor, Arduino, 6DOF
    It could be a SimTools 2 bug...by accident I tested this SMC3 code the first time with Beta 11. SMC3 works like a charm. Thank you anyway ;)
  12. Pit

    Pit - - - - - - - - - - - - - - - - Staff Member Moderator Gold Contributor

    Joined:
    Oct 2, 2013
    Messages:
    2,985
    Location:
    Switzerland
    Balance:
    29,051Coins
    Ratings:
    +2,975 / 29 / -0
    My Motion Simulator:
    DC motor, Arduino, 6DOF
    Today tested SimTools 1.3 and no issues after 2 hours fiddling with all the sliders and buttons ;). @RufusDufus I can also confirm that your code is working and there are no issues so far. Thank you for your great work.
  13. RufusDufus

    RufusDufus Well-Known Member

    Joined:
    Jul 21, 2013
    Messages:
    681
    Location:
    Adelaide Australia
    Balance:
    12,804Coins
    Ratings:
    +933 / 7 / -1
    Thanks for the info, when I find some time I will release it in the main SMC3 thread.
  14. Pit

    Pit - - - - - - - - - - - - - - - - Staff Member Moderator Gold Contributor

    Joined:
    Oct 2, 2013
    Messages:
    2,985
    Location:
    Switzerland
    Balance:
    29,051Coins
    Ratings:
    +2,975 / 29 / -0
    My Motion Simulator:
    DC motor, Arduino, 6DOF
    I help you if you like. I would summarize all known facts and write a few lines which you can copy to the SMC3 thread.
    • Winner Winner x 1
    Last edited: May 30, 2016
  15. Pit

    Pit - - - - - - - - - - - - - - - - Staff Member Moderator Gold Contributor

    Joined:
    Oct 2, 2013
    Messages:
    2,985
    Location:
    Switzerland
    Balance:
    29,051Coins
    Ratings:
    +2,975 / 29 / -0
    My Motion Simulator:
    DC motor, Arduino, 6DOF
    Mode3: Design for Sabertooth. The common Sabertooth 2x32 is a dual channel motor driver capable of supplying 32 amps to two motors, with peak currents up to 64 amps per motor. It can be operated from radio control, analog, TTL serial or USB inputs. It uses regenerative drive and braking for efficient operation and supports baud rates up to 115 200 baud.

    Important: When SMC3 is in MODE3 it can only drive two motors.

    Installation:
    1. Wiring details for Sabertooth 2x32. Pin 13 on the Arduino is the Tx serial line that connects to the Sabertooth
      sabertooth_arduino_wiring.png
    2. Set the DIP switches on the Sabertooth to 000011
    3. Use the default Windows SMC3Utils software to configure the PID parameters
    4. Set Fpid / 5 so that it does not overload the serial comms to the Sabertooth
    5. Set PWMmin to 0
    6. Set PWMmax to 255
    7. Set the Sabertooth to simplified serial mode using 38400 baud (Describe software):
      sabertooth_describe.png
    8. More Describe Settings:
      sabertooth_describe_settings.png
      1) Current Limit: This setting sets the maximum current for the motor output. If the system tries to draw more current than the setting, the output duty cycle will be reduced. For Sabertooth 2x32, each motor output can be limited individually in a range between 0A and 64A. This is a soft current limit, and will slow acceleration but allow motor motion to continue. There is also a fixed hard current limit above approximately 70 amps which protects the Sabertooth from a shorted motor.
      2) Current Limit Smoothing: This setting changes how quickly the current limit responds. More smoothing will cause the Sabertooth to ignore small overcurrent spikes for smoother operation.
      3) Dead Time or Deadband: no changes needed.
      4) Ramping (can be useful for less aggressive movings):Changing the selection to Customallows for a pre-defined, fixed ramp speed. The Ramping time is the time it would take to go from a full reverse command to a full forward command. Try values between 0 and 0.2s if needed)
      5) Reverse Direction: This check box will reverse the motor output for this channel. No need for rewiring!

    Attached Files:

    • Like Like x 2
    • Informative Informative x 1
    Last edited: May 30, 2016
  16. BlazinH

    BlazinH Well-Known Member

    Joined:
    Oct 19, 2013
    Messages:
    1,904
    Location:
    Oklahoma City, USA
    Balance:
    13,840Coins
    Ratings:
    +1,620 / 30 / -1
    To clarify a couple of points, Mode3 of SMC3 (sabertooth mode) will work with any Sabertooth controller. SMC3 communicates with it by means of TTL serial only.
    While this information is only pertinent to the 2x32 model (as of now), the rest of the information in the post holds true for any Sabertooth model used.
    • Informative Informative x 1
  17. Pit

    Pit - - - - - - - - - - - - - - - - Staff Member Moderator Gold Contributor

    Joined:
    Oct 2, 2013
    Messages:
    2,985
    Location:
    Switzerland
    Balance:
    29,051Coins
    Ratings:
    +2,975 / 29 / -0
    My Motion Simulator:
    DC motor, Arduino, 6DOF
    @BlazinH honestly if you would like to update the thread please feel free to do it!
    • Like Like x 1
  18. Intruder

    Intruder Member

    Joined:
    Dec 16, 2015
    Messages:
    74
    Location:
    Germany
    Balance:
    435Coins
    Ratings:
    +24 / 0 / -0
    Hi there
    A few questions regarding a sabertooth 2x60
    Will the sketch from the first post work?
    And are the dip switch settings the same as with the 2x32?

    And about the USB connection to the pc... I have to use S1 and S2 for that because the 64a version has no USB port, will changes with the dip switches and baud rate affect the connection to the pc?
    Sorry for asking such stuff but I didn't receive my sabertooth yet and it isn't clear to me


    Ps: is the 38400 baud the way it works ? And do I have to change it in the sketch or somewhere (I know in describe )
    Last edited: Oct 4, 2016
  19. BlazinH

    BlazinH Well-Known Member

    Joined:
    Oct 19, 2013
    Messages:
    1,904
    Location:
    Oklahoma City, USA
    Balance:
    13,840Coins
    Ratings:
    +1,620 / 30 / -1
    On a 2x60 set dips as follows and use the sketch posted as is; on, off, on, off, off, on. That's it! Purchasing a Usb converter and using Describe software is not a necessity.
    • Like Like x 2
  20. Intruder

    Intruder Member

    Joined:
    Dec 16, 2015
    Messages:
    74
    Location:
    Germany
    Balance:
    435Coins
    Ratings:
    +24 / 0 / -0
    Great thanks!
    So you mean I can use the 2x60 of the shelf without editing parameters?