Scope
This document is made for those of you with low-level programmable controllers.
To the best of my knowledge the following products:
• Thrustmaster Cougar, TM Warthog
• CH series
• Saitek Flight series
I have also tried to simplify a bit which some Warthog owners with script-skill can see.
Over the years, I have been programming Thrustmaster F22, TM TQS, TM Cougar and now the TM Warthog.
Symptom (Problem):
Buttons pressed on controller will result in:
• no response in the sim
• Wrong response in the sim
• Wrong response in the controller test program
The problems usually start after the user have been tabulating (shifting) between sim and other programs, like TeamSpeak.
Reasons?
- Unfinished key press from the controller
- Stuck key
Unfinished key presses - Explained
Due to the lack of available keys for our sims we often have to combine several keys in order to generate a simple key press.
Such a combination can look like this:
Like Ctrl+Shift+u. Such a command consist of :
‘Ctrl’ key pressed down -> ‘Shift’ key pressed down -> ‘u’ key pressed down -> ‘u’ key released -> ‘shift’ key released -> ‘Ctrl’ key released
If such a command stops after enabling the CTRL or SHIFT it might have catastrophic consequences on all other key presses weather it has been done by a controller key press or by pressing a key on the keyboard, because all future key press will be corrupt due to corruption of the keyboard buffer.
The only solution I know are usually a reboot. Something you don’t want to do In the middle of a SEOW mission ;-(
Solution (Thrustmaster Target)
Solution in Thrustmasters Target software it would look like this:
[i]L_CTL+SHIFT+’u’[/i]
This command will be vulnerable to interruption and will be keep generating key presses as long as it is pressed.
To protect it from interruption Thrustmaster packs it in like this:
[i]LOCK+L_CTL+SHIFT+’u’+LOCK[/i]
The LOCK command prevents any other key press before all are in the buffer.
But I am quite sure CH products have a similar function or use of brackets ()[].
Stuck Key
CH and TM might do it differently. In TM software a controller which press ‘u’ will generate ‘u’ as long as the key is pressed. Example: “‘u’‘u’‘u’‘u’‘u’‘u’‘u’‘u’‘u’‘u’‘u’‘u’‘u’‘u’‘u’‘u’‘u’‘u’”
Solution - TM Target
If a single ‘standard ‘key pressed it desired, the TM have added the command “PULSE+”
In the old days, the TM programmer had to control it by counting the amount of mili-second.