Hardware & Technical CH Pro Throttle

I've yet to play with the config program(s) to any great degree, but they do look powerful... But I have to say they also look somewhat old and unfriendly. I mean it took me a while to realise I have to clock on "Download" to program the changes to the controller for example...

CH's software is pretty awesome.

It's rather powerful, especially once you start dabbling in the scripting stuff (which I have only touched upon...I use it for my forward/reverse thruster override with my toe breaks); I can't measure any increase in input latency when using mapped mode; and the minimalistic UI is very resource light.

Love the CH stuff and the software is awesome. Best thing I like about it is you can make a map up for any game/sim using the its default settings as your template and you can then re-install/delete as much as you want and all you gotta do to make the game work is load the map. Especially useful in ED if you spark the game up without your controllers plugged in, you lose all your settings and have to put em back in again )p[ain) not with a map just start the map in CH manager and viola !

Yeah, the profiles are pretty easy to work with.
 
Still have to say I prefer my old throttle itself. I find the flat slide movement of the CH Throttle hard to determine where it is. With a typical "over" throttle you can feel just from the angle of the throttle (& your hand) where in its movement/range it is. But with the CH Throttle I often find I get lost on where it is on its position. I have a centre detent too, and I even find sometimes I'm on the complete wrong side of it too by accident.


I guess what you gain from the flat movement is all the controls are always in the same place/angle.


I also find the mini-joystick needs a huge deadzone too as it doesn't centralise well.
 
Last edited:
I agree with both Morbad and NeilF. I guess nothing is perfect, but the CH throttle is pretty good overall.

pros
- the configuration and programming software is indeed awesome
- the button layout and switch quality is great
- the analog mini-stick is fantastic for lateral thrusters
cons
- as NeilF said, it can be hard to know just from feel where the throttle is due to its flat profile, but all the are buttons easily accessible in any throttle position

I think the deadzones on my mini-stick are set to around 10-12 (in the CH software).
 
Here's how I handle the CH Pro's lack of tactile feedback (GlovePIE script):

Code:
   var.s0 = roundTo(((Joystick2.z * -0.5) + 0.5), -2) * 99          // scale 0-99


      if ((var.s0 > 98) && (var.lastSay != 90)) {
            say "full ahead"
         var.lastSay = 90
      } else if ((var.s0 >= 80) && (var.s0 < 84) && (var.lastSay != 80)) {
         say "ahead"
         var.lastSay = 80

      } else if ((var.s0 >= 73) && (var.s0 < 77) && (var.lastsay != 70)) {
         say "blue"
         var.lastSay = 70
      } else if ((var.s0 >= 63) && (var.s0 < 67) && (var.lastsay != 60)) {
          say "slow ahead"
          var.lastSay = 60
      } else if ((var.s0 >= 54) && (var.s0 <= 56) && (var.lastSay != 55)) {
            say "dead slow"
            var.lastSay = 55
      } else if ((var.s0 >= 48) && (var.s0 <= 52) && (var.lastSay != 50))
            say "stop"
            var.lastsay = 50
      } else if ((var.s0 < 47) && var.lastSay != 0) {
            say "reverse"
            var.lastsay = 0
      }

The voice feedback is invaluable to me. My set up is full range and I only have detailed feedback for the forward segment, obviously it could be extended to reverse too, I just don't need that fine control in reverse.
 
Here's how I handle the CH Pro's lack of tactile feedback (GlovePIE script):

Code:
   var.s0 = roundTo(((Joystick2.z * -0.5) + 0.5), -2) * 99          // scale 0-99


      if ((var.s0 > 98) && (var.lastSay != 90)) {
            say "full ahead"
         var.lastSay = 90
      } else if ((var.s0 >= 80) && (var.s0 < 84) && (var.lastSay != 80)) {
         say "ahead"
         var.lastSay = 80

      } else if ((var.s0 >= 73) && (var.s0 < 77) && (var.lastsay != 70)) {
         say "blue"
         var.lastSay = 70
      } else if ((var.s0 >= 63) && (var.s0 < 67) && (var.lastsay != 60)) {
          say "slow ahead"
          var.lastSay = 60
      } else if ((var.s0 >= 54) && (var.s0 <= 56) && (var.lastSay != 55)) {
            say "dead slow"
            var.lastSay = 55
      } else if ((var.s0 >= 48) && (var.s0 <= 52) && (var.lastSay != 50))
            say "stop"
            var.lastsay = 50
      } else if ((var.s0 < 47) && var.lastSay != 0) {
            say "reverse"
            var.lastsay = 0
      }

The voice feedback is invaluable to me. My set up is full range and I only have detailed feedback for the forward segment, obviously it could be extended to reverse too, I just don't need that fine control in reverse.

WOW! That look interesting! Can you give me a quick heads up how/where I would apply that to mine? I'm just using it as plug'n'play at the moment!

I assume you need the CHProManager( is that what it's called ?) running for that to work?
 
Last edited:
WOW! That look interesting! Can you give me a quick heads up how/where I would apply that to mine? I'm just using it as plug'n'play at the moment!

I assume you need the CHProManager( is that what it's called ?) running for that to work?

You just need to download GlovePIE Free, install it (see my sig if you need instructions), paste the script into GlovePIE's script window, adjust it in case the throttle is something other than "joystick2" for you, and run it. It's hardware-independent and should essentially work with any USB joystick that has a slider.

Incidentally, I purchased a voice pack from Ivona (Emma) which sounds much better than Microsoft Anna (or whatever the bundled voice is called).
 
You just need to download GlovePIE Free, install it (see my sig if you need instructions), paste the script into GlovePIE's script window, adjust it in case the throttle is something other than "joystick2" for you, and run it. It's hardware-independent and should essentially work with any USB joystick that has a slider.

Incidentally, I purchased a voice pack from Ivona (Emma) which sounds much better than Microsoft Anna (or whatever the bundled voice is called).

Ahh! So it's like an alternative to JoystickCurves?
 
Ahh! So it's like an alternative to JoystickCurves?

The two programs have different purposes and I use both ... GlovePIE to handle scripting such as the speech feedback for the throttle position, and Joystick Curves to tweak the joystick response on my tm16000m (only because it works better for me than the bundled TARGET software).

There is also a program called FreePIE that is supposedly similar to GlovePIE and has ongoing developer support, which GlovePIE lacks. But GlovePIE has documentation :)
 
The two programs have different purposes and I use both ... GlovePIE to handle scripting such as the speech feedback for the throttle position, and Joystick Curves to tweak the joystick response on my tm16000m (only because it works better for me than the bundled TARGET software).

There is also a program called FreePIE that is supposedly similar to GlovePIE and has ongoing developer support, which GlovePIE lacks. But GlovePIE has documentation :)

Ahh so GlovePie (as your using is) is only reacting to the joystick values, and not manipulating them as JoystickCurves would do? So I assume where you're using JoystickCurves it's its output that's going into GlovePie and ED?



BTW is there any magic than can be worked on the mini-joystick? I find quite often I simply want to go straight up or down (eg: when landing) but find it very hard to not also apply some lateral movement too.

In an ideal world the HUD would show vert/hori thrust so you could gauge it. As this doesn't exist, can GlovePie do anything that might help? Can it display something?
 
Last edited:
Exactly, GlovePIE can read the values and do all kinds of stuff depending on the readings, but it can't modify axis values or map them onto a different axis, that's where JS Curves comes in handy of course. You're right in saying that Joystick Curves sends its output to ED but I'm not 100% sure about GlovePIE ... if I recall correctly it doesn't work with the vjoy device that JSC uses. This doesn't bother me because I use the CH config software to modify the throttle curves, so am not relying on vjoy for that.

With the mini joystick I configured the central parts of the curves to be less responsive. I used the CH configuration tool to do this too, you only have to do it once and then the system remembers it even when the config tool isn't running. Flattening the central response of the mini stick is much more responsive than using a pure on/off dead zone.
 
With the mini joystick I configured the central parts of the curves to be less responsive. I used the CH configuration tool to do this too, you only have to do it once and then the system remembers it even when the config tool isn't running. Flattening the central response of the mini stick is much more responsive than using a pure on/off dead zone.

OK... I'll give that a go...

Shame GlovePIE can't introduce a visual onto the screen that you can control. ie: So you could display the mini-joys position/suage on the screen (in game) somewhere. Even just a circle with a dot.

That said, maybe you'd like to read my associated suggestion? - https://forums.frontier.co.uk/showthread.php?t=174937
 
I sometimes have the GlovePie "Variable" tab open on a second screen, since I capture axes into variables I can then see them change. (I've just done this, and with the response dampening (see attachment) there was no change at all in the "other" ministick axis).

Another way is to use the CH management software in its Calibration mode, which has the "circle with a dot" that you want ... obviously not in-game, but it can help your hand muscles learn how the mini stick actually responds.
 

Attachments

  • chpro.png
    chpro.png
    19.7 KB · Views: 142
I sometimes have the GlovePie "Variable" tab open on a second screen, since I capture axes into variables I can then see them change. (I've just done this, and with the response dampening (see attachment) there was no change at all in the "other" ministick axis).

Another way is to use the CH management software in its Calibration mode, which has the "circle with a dot" that you want ... obviously not in-game, but it can help your hand muscles learn how the mini stick actually responds.

I've done this now, and I was suprised how limited the curves were that you could use. ie: Only the shape shown in the imahge, and not a more traditional exponential shape.



It's also interesting that the mechanics of the mini-joy do not allow anything approaching max X and max Y at the same time, because it's working withing a circle surround.
 
Here's how I handle the CH Pro's lack of tactile feedback (GlovePIE script):

Code:
   var.s0 = roundTo(((Joystick2.z * -0.5) + 0.5), -2) * 99          // scale 0-99


      if ((var.s0 > 98) && (var.lastSay != 90)) {
            say "full ahead"
         var.lastSay = 90
      } else if ((var.s0 >= 80) && (var.s0 < 84) && (var.lastSay != 80)) {
         say "ahead"
         var.lastSay = 80

      } else if ((var.s0 >= 73) && (var.s0 < 77) && (var.lastsay != 70)) {
         say "blue"
         var.lastSay = 70
      } else if ((var.s0 >= 63) && (var.s0 < 67) && (var.lastsay != 60)) {
          say "slow ahead"
          var.lastSay = 60
      } else if ((var.s0 >= 54) && (var.s0 <= 56) && (var.lastSay != 55)) {
            say "dead slow"
            var.lastSay = 55
      } else if ((var.s0 >= 48) && (var.s0 <= 52) && (var.lastSay != 50))
            say "stop"
            var.lastsay = 50
      } else if ((var.s0 < 47) && var.lastSay != 0) {
            say "reverse"
            var.lastsay = 0
      }

The voice feedback is invaluable to me. My set up is full range and I only have detailed feedback for the forward segment, obviously it could be extended to reverse too, I just don't need that fine control in reverse.

OK, got this working...

I found a way to delay the speech for a fraction of the second via some code. Reason being, if you slide the throttle up or down, you can get the odd/annoying effect of a number of announcements starting for a fraction of a second, until the final one is then said.

eg:-

Code:
var.s0 = roundTo(((Joystick1.z * -0.5) + 0.5), -2) * 99          // scale 0-99
var.d = 30                                                       // Delay

if (var.s0 > 98){
  if (var.lastSay != 90) {
      var.say = "full ahead"
      var.lastSay = 90
      var.cnt = var.d
  }
} else if (var.s0 >= 80 && var.s0 < 90) {
  if (var.lastSay != 80) {
      var.say = "ahead"
      var.lastSay = 80
      var.cnt = var.d
  }
} else if (var.s0 >= 73 && var.s0 < 80) {
  if (var.lastsay != 73) {
      var.say = "blue"
      var.lastSay = 73
      var.cnt = var.d
  }
} else if (var.s0 >= 63 && var.s0 < 73) {
  if (var.lastsay != 63) {
      var.say = "slow ahead"
      var.lastSay = 63
      var.cnt = var.d
  }
} else if (var.s0 >= 54 && var.s0 < 63) {
  if (var.lastSay != 54) {
      var.say = "dead slow"
      var.lastSay = 54
      var.cnt = var.d
  }
} else if (var.s0 >= 48 && var.s0 < 54) {
  if (var.lastSay != 48) {
      var.say = "stop"
      var.lastsay = 48
      var.cnt = var.d
  }
} else if (var.s0 < 48) {
  if (var.lastSay != 0) {
      var.say = "reverse"
      var.lastsay = 0
      var.cnt = var.d
  }
}

if (var.cnt > 0) {
   var.cnt = var.cnt - 1
   if (var.cnt = 0){
      say var.say
   }
}

QUESTION: In your original coding why are there gaps between the range checks? eg: If the throttle is 60?
 
Last edited:
Hopefully your's won't be faulty like mine :(

Should be a nice combo :)

Hi Neil,

If you fire up Contro Manager and hit the Calibrate button you should be able to set the calibration for the throttle fore & aft positions and for the mini-joystick.
If it is NOT calibrated then odd things happen like you start going forwards/backwards even if your throttle is at Zero etc.
If you can see travel and movement in the calibration utility then the throttle isn't faulty (and vice-versa).

Hope this helps.

I got my CH HOTAS setup only a few weeks ago and I'm loving it.
 
Hi Neil,

If you fire up Contro Manager and hit the Calibrate button you should be able to set the calibration for the throttle fore & aft positions and for the mini-joystick.
If it is NOT calibrated then odd things happen like you start going forwards/backwards even if your throttle is at Zero etc.
If you can see travel and movement in the calibration utility then the throttle isn't faulty (and vice-versa).

Hope this helps.

I got my CH HOTAS setup only a few weeks ago and I'm loving it.

It was broken... It's been replaced now...

I like the stick. The only downside is the slide motion gives little/no "feel" of where in the travel you currently are. With my previous up and over throttle controller, you sort of knew where the throttle was by the subtle angle of your wrist etc.

That said, the flat slide means the buttons/pots are always accessible in the same position etc. So it's give and take I guess.

ps: Are you using it full movements, or with a zero detent in the middle?
 
I as well have this throttle ( in addition to a Fighterstick and pro pedals). i have my throttle setup as forward only /with/ a button for reverse.

not gonna go through how i have mine setup for button layouts as thats a personal preference except for the mini-stick as strafe. with just a tad of deadzone for it as its spring doesnt always return dead center.

You will never regret the purchase as its a quality bit of kit.
Hey Togg. Since my last unfair probation from the SC forums I decided to check it out over here. It's nice. I think I'll stay.
On topic, I have the same CH HOTAS - (w/out pedals) and love it for ED. I have my strafe on the pointer finger four way hat and use the mini stick for yaw, with pitch and roll on the Fighterstick.
 
Last edited:
OK, got this working...

QUESTION: In your original coding why are there gaps between the range checks? eg: If the throttle is 60?

To stop jitter; my throttle reports different (but very close) values even when not moved, leading to an occasional announcement even when the throttle is at rest unless this measure is taken.

I don't get a problem with spurious starts, I wonder if this is a "benefit" of having a relatively slow computer :)
 
Last edited:
To stop jitter; my throttle reports different (but very close) values even when not moved, leading to an occasional announcement even when the throttle is at rest unless this measure is taken.

I don't get a problem with spurious starts, I wonder if this is a "benefit" of having a relatively slow computer :)

Funny you mention that. Every now and then I notice my throttle bar (in the game) juddering up and down a "line"...
 
Just a question regarding calibration. I have the Fighterstick and Pro Throttle and have used CH gear for many years in flight sims. Long before it had a USB interface and you had to use the gameport. However I have never had to use the CH software and only ever used whatever is in game to map things out. The idea of curves and better calibration sounds like it may be an idea to try the CH software though. Does the CH calibration software replace/popup in place of the standard Windows joystick calibration window or is that there too.

Are calibration values stored in NV ram in the throttle/stick? Also are any compiled map files uploaded. I must admit, I thought these would either be translated from key presses in the computer with constantly running routines as most controller software does or at best upload from a resident driver every time and be lost at power off.
 
Back
Top Bottom