I got the NASCAR charger by ThrustMaster, and the gas and brake use the same axis. How do I make the controls work properly? Here is my map so far, and for the most part, it works. Code: // product name: Thrustmaster NASCAR charger // GUID: {010E045E-0000-0000-0000-504944564944} // axes 3^Y^X^RZ $gp_deadzone = "-0.15 0.15"; moveMap.bind(%device, xaxis, steer_direct); moveMap.bind(%device, yaxis, "D", $gp_deadzone, brake); moveMap.bind(%device, yaxis, "DI", $gp_deadzone, accelerate); moveMap.bind(%device, button0, shiftDown); moveMap.bind(%device, button1, shiftUp); moveMap.bind(%device, button2, parkingbrake_toggle); moveMap.bindCmd(%device, button3, "beamNGTogglePhysics();", ""); echo("ThrustMaster NASCAR Charger loaded"); ----EDIT---- I solved it! add this to the beamng.cs file Code: function stick_accelerate_direct( %val ) { vlua("input.event(\'axisy0\', " @ %val @ ", 2)"); vlua("input.event(\'axisy1\', " @ -%val @ ", 2)"); } here is the new input map. Code: // product name: Thrustmaster NASCAR charger // GUID: {010E045E-0000-0000-0000-504944564944} // axes 3^Y^X^RZ $gp_deadzone = "-0.15 0.15"; moveMap.bind(%device, xaxis, steer_direct); //moveMap.bind(%device, yaxis, "D", $gp_deadzone, brake_direct); //moveMap.bind(%device, yaxis, "ID", $gp_deadzone, accelerate_direct); moveMap.bind(%device, yaxis, "ID", $gp_deadzone, stick_accelerate_direct); moveMap.bind(%device, button0, shiftDown); moveMap.bind(%device, button1, shiftUp); moveMap.bind(%device, button2, parkingbrake_toggle); moveMap.bindCmd(%device, button3, "beamNGTogglePhysics();", ""); echo("ThrustMaster NASCAR Charger loaded");