IBM Almaden Research Center, Computer Science Department, User Ergonomics Research



Here are some notes from Joe Rutledge on preventing cursor drift in TrackPoint due to analog noise:


Notes on TrackPoint Drift


The usual cause of drifting is a high analog noise level. At a very high level this can cause more or less random cursor movements, but at a much lower level it can defeat the drift correction algorithm. There is always a certain amount of drift in the electronics - temperature or whatever. If left to itself without correction, the cursor drifts faster and faster as time goes on - it may move a pixel or two after five minutes, get off the screen in perhaps 20 minutes, and in an hour or two may be moving across the screen in a few seconds (as the room, or
the machine, heats or cools).

To prevent this, the firmware recalibrates whenever the stick is untouched for a few seconds - that is whenever the reading from the stick is constant within one A/D count for 2.8 seconds. Enough noise will prevent this from happening, even if no cursor movement results directly, and the long-term drift will be uncompensated.

There is a dead band around zero in the transfer function, so as long as a recalibration occurs before drift exceeds 3 A/D counts, no cursor movement results. Normally, this always happens.

At an intermediate level of noise, the recalibration occurs, but may be delayed enough to let the A/D value drift out of the dead band, or close enough so that the noise takes it out, and produces cursor movement.

A simple test procedure which is very useful is the "rubber-band test". Apply a gentle (20 - 50 gram) steady horizontal force to the TrackPoint stick (say with a rubber band, lightly stretched and held against the keyboard frame - you may need to remove some key caps). The cursor should move at a constant speed for a time, and then stop. When the force is released, the cursor will move in the opposite direction for approximately the same time and distance, and stop again. This is normal operation of the drift correction mechanism, and will happen only if the noise level is low enough; the time of motion gives a rough measure of the noise level present. For low noise
the time should be 2.8 seconds; anything more than 4 seconds indicates a problem, and with heavy noise the cursor will not stop at all.

A properly implemented TrackPoint will never drift when it is not in use. However, the user may defeat the drift control algorithms in two way:

  1. The user may keep a finger on the stick for a long enough period that the zero-force signal drifts out of the dead band; how long this is depends on the rate of drift, e.g. the rate of temperature change. Then the cursor will be found to be drifting when the stick is finally released. The circuit will rezero and the cursor will stop in a few seconds. provided it is left alone; if the user keeps trying to hold the cursor still, it can go on indefinitely.
  2. The user may be able to apply a very steady force (usually a very low force, as in slowly scanning down a list) for a long enough time to fool the TrackPoint into rezeroing improperly. The cursor stops, and when released moves in the opposite direction for a few seconds, as in the 'rubber band test'. Again, it recovers if left alone for the requisite three seconds.

Both of these cursor drift modes are part of the TrackPoint's normal function. They could be eliminated, but at the cost of occasionally reaching a state in which cursor drift occurs and does not spontaneously recover.

Another cause of drift is RF interference - for example from a nearby cell phone, or even worse a cell phone transmitter inside the same box. The problem comes from rectification of RF in the op amps, and can usually be cured by placing small bypass capacitors (50 - 100 pF) directly across the input pins of each op amp section.


TrackPoint Circuit Layout


The circuit should be laid out by an engineer skilled in analog circuit design. Here are some suggestions:

  1. Remember that 10 microvolts is a significant noise signal here. You need pretty good isolation.
  2. The analog part of the circuit MUST have its own ground plane, isolated from everything else and connected to system ground at just one point (no ground loops). All of the analog part of the TP circuit, AND NOTHING ELSE, must be over this ground island. The analog end of the 8xC754, from pin 9 to pin 20, should be over the ground island, with the discrete elements and op amps close to it.
  3. No wandering digital traces from anything else can pass through the analog area ON ANY LEVEL from the ground plane out. The circuit should be all on one side of the ground plane, preferably on the surface of the board closest to the ground plane and in the first interior layer, with the ground plane next. It takes power only at a single point (pin 14), and that power should be filtered to ground before it comes onto the analog area - filter caps returned to system ground, not analog ground.
  4. The signal lines from the stick are somewhat sensitive to pickup, and should be run close together and not too close to digital lines, guarded by a grounded guard trace. Traces in adjacent layers, or even in the next layers, can couple in if they overlay stick lines for some distance. The ideal would be a shielded twisted cable - you can't do that on a PCB, and it's not necessary, but if you have that in mind it will help. Consider running the four (or five) lines in an over-under configuration on two layers, with ground guards on both sides in both layers, perhaps along the edge of a board.
  5. MOST IMPORTANT, the stick common line is NOT a ground line away from the analog area, although it will connect to the analog ground. Elsewhere it is a signal line; a common and serious error is to treat it as ground, and even to save a connector pin by just returning it to general ground at some convenient point. CATIA systems often have rules about things called 'ground', so it is a good idea to give this line a name which does not suggest 'ground' to the system, and even to connect it to analog ground only by a jumper, to avoid confusion.
  6. Otherwise, just keep things compact, and minimize trace lengths. The whole circuit, analog and digital, will fit comfortably within 2cm x 3 cm.

For more information, please contact:

Joe Rutledge
IBM Watson Research Lab
Yorktown Heights, NY
voice (914) 945-1175
fax (914) 945-3434
e-mail: rutledg@us.ibm.com