VSA Software Servo reversing and Joystick Programming

@Cyril Wichers

I played around with VSA 5.0 Pro (Win7 64 bit) this morning and figured out the servo reverse feature. It is not done on the SETTINGS page (the page where you define the servo range of motion, default position, comm port & type of control board). It is done on the TRACK ADJUSTMENT page. To keep the normal settings of movement, the SCALE VALUE should be set to 0. To reverse a servo, the SCALE VALUE should be set to -1. I just tested it and it works.

As for joystick programming, I have found that plugging in the joystick before booting works best for VSA to see it. You have to define all the servo settings before programming and make sure your servo controller is powered up and connected to the servos.  VSA 5.0 Pro can program (capture) up to 4 servos at one time (Ultimate can do 16). I have programmed two at a time for eyes (Up/Down) and neck (left/right). You could also use two joysticks at time to program 4 axis at a time. Under the EXECUTION menu, select CAPTURE EVENT. On the CAPTURE EVENT page: select which track you want to program, select which axis or button on the joystick you want to use. I'd keep the ACTIVE BUTTON the default (Typically it is the fire button on the joystick). If you want to add another programming track, select ADD then go through the above process again only changing to another axis of the joystick. There are some other settings you can play with. KEEP IN MIND: once you click OK, VSA will immediately go into programming mode. ALSO, remember the ACTIVE BUTTON selection under the setup? (typically the FIRE button) You have to press that button to "activate" the writing of the joystick info. If you don't press the button while capturing, moving the joystick does nothing. Also, multiple channel programming was not available in previous versions.

As for a "mix rate", not sure. Will play around with that next.

I hope this makes sense. If you have any questions, just ask! I've been using VSA for a while and for my purposes it works great. And the newest version added some really nice features.




  • Options
    Another handy trick is to use digital servos.  They can be programmed to adjust their range, or even reverse their direction by connecting them to a digital servo programmer (small box with a screen and a few potentiometers) and defining custom settings.

  • Options
    @David DeMattia
    Thanks for figuring this out, I'll have a look as soon as I can find some time.
    I've found some reference to the track adjustment, but couldn't get it to work as I wanted. I could only reverse the movements after I had recorded them.
    Up 'till now, I've only been using the demo version of VSA, as I haven't had any use for it except from playing around with it. As far as I know, there's no real difference with the pro version, except you can't save or load program files?

    @Chris Ellerby
    You're right, digital servos offer a lot of options that come in handy for use in animatronics. I haven't fiddled with them a lot, as I try to do most of my hobby projects on a budget. I do have a pair of Herkulex servos laying around that I haven't gotten round to properly test yet. Maybe I should look in to those in the near future!

  • Options
    Hi All, yes I know the benefits of Digital servos. However, in my application, I would like one place to adjust servo settings, not distributed. I do recognize the benefits. But I do more pre-programmed shows to a set soundtrack.
  • Options
    Cyril WichersCyril Wichers ✭✭✭
    edited August 2017
    Well @David DeMattia , I tried to get it to work, but it seems that I'm just not seeing it. I've got two servos set up, servo 1 and servo 2, on address 2 and 3, connected to output 2 and 3 of the maestro. Maximum, default and minimum positions are set up as 2000, 1496 and 992 (both in Maestro control center and VSA)
    I have both servos configured in the record setup and connected to my input device (a Logitech game controller). I can program them both using the joystick, but I can't for the life of me get the servos to reverse.
    When I go in to "track adjustment" The scale is set to 100% and the offset to 0 by default. When I change the scale to -1% as you suggested (or to -100% for that matter), I'm no longer able to program the servo, as it sets the maximum, default and minimum values (in the settings menu) to 64.
    When I change the offset to -1 instead of 0, it changes the maximum, default and minimum values to 1999, 1495 and 991 (which would be expected). I can still program the servos, the only difference is that, ofcourse, the target position sligtly changes.
    What does work though, is when I load an audio file and do a wavemotion analysis with the scale set to -100% instead of 100%. The servo that is selected to apply the analysis to moves in the reverse direction as compared to when I do the analysis with the scale set to 100%. But that is not what I meant by being able to reverse a servo, so that it's direction is reversed whilst live puppeteering / programming.
    Any idea on what I'm doing wrong?
    Post edited by Cyril Wichers on
  • Options
    Cyril WichersCyril Wichers ✭✭✭
    edited August 2017
    Ok, I did some more testing and now I can get the servo movements reversed. The answer is in the FAQ: https://www.brookshiresoftware.com/vsa_faq.htm#q19

    So if I want to reverse the values (1000 -> 2000 and 2000-> 1000) I get the following:
    1000(new position) = m*2000(old position)+b
    2000(new position) = m*1000(old position)+b

    In this case I get -1 for m and 3000 for b
    So the scale has to be set to -100% and the offset to 3000

    The only thing is, that it looks like the software can only apply this to existing data. If this is true, it's only possible to do the programming first and offset the values afterwards.

  • Options
    I'll have to take a peek at it tomorrow. @Cyril Wichers  Are you saying that if there is no data in the track, you cannot access the TRACK ADJUSTMENT?
    By the way, I emailed Brookshire software last week and have not heard anything yet. I really like their software but am growing concerned for future projects if they are not more forthcoming in their support.
  • Options
    No, you can access the track adjustment. It's just that it seems you can't reverse the direction of a servo as a default. Take the neck mechanism we made for Jim Kundig's course for instance. The servo's that control te tilt are mounted mirrored relative to eachother. Which means that, if you want to program the mechanism using a game controller with two joysticks, you'd have to move one joystick forward and the other one backward to make both servos move in the same direction. That's a huge pain.
  • Options
    I get it. That is a pain.
  • Options
    It seems that the servo reverse should be under the servo setup, not the track.
Sign In or Register to comment.