This document describes the way I calibrated the G-Throttle (Aitbus A320 style) by ThrottleTek for my use on Linux (XUbuntu 14.04 LTS, but other distributions should work too) with the X-Plane flight simulator and the QPAC A320 (Basic V2.0) plane.
First, go to a console window and install the following packages, if you do not already have them:
Probably the easiest way to get these (on Debian/Ubuntu systems) is the following command:
$ apt-get install joystick jstest-gtk
Then, calibrate the unit with the command
$ jstest-gtk
The following window will open:

(Sorry, I have the Dutch language installed... The three buttons translate with Refresh, Properties, and Close, resp.).
The window may show other joystick-alike devices, if you have any connected.
Clicking Properties will produce a second window:

Click Calibration, and you get the third window:

(Here, Terugdraaien means Revert).
Click Start Calibration, and you will see this:

This wil be self-explanatory, I think (Annuleren = Cancel).
Now move the two axes to their extreme positions (including the Reverse-Thrust range!), and subsequently put them in the CLB detent, which is the closest you will get to a center position. Click OK, and the new values will be available to the system.
To make this result permanent, use the command
$ sudo jscal-store <device>
This stores the results in the file /var/lib/joystick/joystick.state.
You now have a throttle with two linear axes, moving between a positive value in the REV position, and a negative value on TOGA. CLB should be about zero.
To use this on the QPAC Airbus, I wrote a Java program ThrTek2XPlane, which converts these raw values into usable input for the plane. This program uses the xpserver plugin from the usbiocards project in which I cooperate. That plugin enables the client to address datarefs and commands directly by name.
The program first converts the axis inputs into values from 0 (zero) at the REV position, to 100 at TOGA. This results in the following values:
| Detent | Value |
|---|---|
| TOGA | 100 |
| MCT | 75 |
| CLB | 50 |
| IDLE | 15 |
| REV | 0 |
These are subsequently mapped to the ranges IDLE=1.00 <-> TOGA = 0.00, and IDLE = 1.00 <-> REV = 0.00; at any value below IDLE on the right-hand handle, the reversers are opened; when the handle is moved forward through IDLE, they are closed again.
The throttle has switches on the FULL-REV positions, but these are not useful to us. (I would have prefered a switch on the reverser actuator handle instead, but alas...)
The red button on the handle-grips is assigned by the program to disconnect the autopilot.
Note that the program will start minimized; if you click on its icon in the process bar you may view its working on the user interface.