Hardware & Technical Thrustmaster foot pedal toe brake

I am using a set of Thrustmaster T.Flight rudder pedals. The toe brakes on these are surplus to requirements in Elite. I was hoping to use them for something else, like the vertical thrust control. This would be especially useful for high-g planet landings. On/off key thrust can be fatal for high-g. However, when I tried setting this, the vertical thrust goes to max down thrust with no input to the pedal toe brake. Not the best thing to do in a high-g environment. Max up thrust is with the toe pedal fully depressed and neutral no thrust is with the pedal half depressed.

Does anyone know a setting so that the vertical thrust is zero with no pedal input?
 
You have to use Target. In Main() you need to set:

Code:
Configure(&TFRPRudder, MODE_FILTERED);

Then replace your eventhandle with this:

Code:
int EventHandle(int type, alias o, int x) {
    int TRPCOMBO, Differential_Toe;

    //Map the MODE_FILTERED TFRP through Target; we can Trim, set deadzones, J/Scurves, etc.
    //X axis = Differential combined toe brakes, rest at center
    //Y axis = Both toe brakes pressed at same time, rest at 0
    //Z axis = rudder (as default)
    if (&o == &TFRPRudder) {  
        GetAxisData(&o, x);
        if(x == TRPLEFT | x == TRPRIGHT) {
            axdata.locked = 1;
            Differential_Toe = -TFRPRudder[TRPRIGHT]/2 + TFRPRudder[TRPLEFT]/2;
            GameOutput(&o, TRPRIGHT, AxisVal(Differential_Toe, &axdata));
            
            if (TFRPRudder[TRPLEFT] < TFRPRudder[TRPRIGHT]) TRPCOMBO = TFRPRudder[TRPRIGHT];
            else TRPCOMBO = TFRPRudder[TRPLEFT];
            GameOutput (&o, TRPLEFT, AxisVal(-TRPCOMBO, &axdata));
        }
        if(!axdata.locked & !axdata.relative) GameOutput(&o, x, AxisVal(o[x], &axdata));
    }
    
    else DefaultMapping(&o, x);
}
 
I've created a file PedalMod.tmc with the code above. I get the following error when I attempt to compile or run it:

Compile Error:Type required in PedalMod.tmc at line 4

The complete script is

Code:
include "target.tmh"

//program startup
int main(Configure(&TFRPRudder, MODE_FILTERED);)
{
    if(Init(&EventHandle)) return 1; // declare the event handler, return on error
	
	//add initialization code here
}

//event handler
int EventHandle(int type, alias o, int x) {
    int TRPCOMBO, Differential_Toe;

    //Map the MODE_FILTERED TFRP through Target; we can Trim, set deadzones, J/Scurves, etc.
    //X axis = Differential combined toe brakes, rest at center
    //Y axis = Both toe brakes pressed at same time, rest at 0
    //Z axis = rudder (as default)
    if (&o == &TFRPRudder) {  
        GetAxisData(&o, x);
        if(x == TRPLEFT | x == TRPRIGHT) {
            axdata.locked = 1;
            Differential_Toe = -TFRPRudder[TRPRIGHT]/2 + TFRPRudder[TRPLEFT]/2;
            GameOutput(&o, TRPRIGHT, AxisVal(Differential_Toe, &axdata));
            
            if (TFRPRudder[TRPLEFT] < TFRPRudder[TRPRIGHT]) TRPCOMBO = TFRPRudder[TRPRIGHT];
            else TRPCOMBO = TFRPRudder[TRPLEFT];
            GameOutput (&o, TRPLEFT, AxisVal(-TRPCOMBO, &axdata));
        }
        if(!axdata.locked & !axdata.relative) GameOutput(&o, x, AxisVal(o[x], &axdata));
    }
    
    else DefaultMapping(&o, x);
}
	
	//add event handling code here
}
 
Instructions followed a bit too literally. Try this. Not at home, so I can't be sure this works, but it looks ok.

Code:
include "target.tmh"

//program startup
int main()
{
    if(Init(&EventHandle)) return 1; // declare the event handler, return on error
    
    //add initialization code here
    Configure(&TFRPRudder, MODE_FILTERED);
}

//event handler
int EventHandle(int type, alias o, int x) {
    int TRPCOMBO, Differential_Toe;

    //Map the MODE_FILTERED TFRP through Target; we can Trim, set deadzones, J/Scurves, etc.
    //X axis = Differential combined toe brakes, rest at center
    //Y axis = Both toe brakes pressed at same time, rest at 0
    //Z axis = rudder (as default)
    if (&o == &TFRPRudder) {  
        GetAxisData(&o, x);
        if(x == TRPLEFT | x == TRPRIGHT) {
            axdata.locked = 1;
            Differential_Toe = -TFRPRudder[TRPRIGHT]/2 + TFRPRudder[TRPLEFT]/2;
            GameOutput(&o, TRPRIGHT, AxisVal(Differential_Toe, &axdata));
            
            if (TFRPRudder[TRPLEFT] < TFRPRudder[TRPRIGHT]) TRPCOMBO = TFRPRudder[TRPRIGHT];
            else TRPCOMBO = TFRPRudder[TRPLEFT];
            GameOutput (&o, TRPLEFT, AxisVal(-TRPCOMBO, &axdata));
        }
        if(!axdata.locked & !axdata.relative) GameOutput(&o, x, AxisVal(o[x], &axdata));
    }
    
    else DefaultMapping(&o, x);
}
 
Instructions followed a bit too literally.

That's because I have no idea what I am doing. The code now compiles and runs ok, but all functionality of the pedals is now dead. I have lost rudder control and none of the axes on the pedals can be assigned in the controls menu.

Please confirm that I am using this right. I am opeing the TARGET script editor, opening the code file in the script editor, pressing the RUN button in the script editor, then launching the game.
 
Weird, there's no errors at the bottom of script window? Joystick control panel shows pedals working when script not running, but stop when script runs?

I had a similar problem after the Fall win10 update. However a fresh install of target shouldn't do that. If you had it installed before, you might need to re-install. Make sure any TM devices are unplugged until install is complete.
 
Back
Top Bottom