|This article requires photographic illustration|
The TrackPoint is IBM's implementation of a pointing stick, a small isometric joystick mounted in the centre of a keyboard and used as a pointing device. The TrackPoint name was originally used for a pointing device that could be converted between use as a trackball and a mouse.
TrackPoints are typically found in ThinkPads, as well as some Toshiba laptops (in which it is branded as AccuPoint), but there are also desktop keyboards with them. The IBM Model M13 was a version of the IBM Enhanced Keyboard (AKA Model M) with a TrackPoint.
|Version||Year introduced||Number of buttons||Note|
|-||1991||2||Not a pointing stick. The original Trackpoint was a combo trackball and mouse for the IBM PS/2 L40 SX laptop.|
|II||1992||2||First TrackPoint that was a pointing stick|
|III||1994||2||Added negative inertia feature|
|IV||1997||3||Added middle-button scroll and press-to-select (PtS) features|
TrackPoint modules (version III and later) employ what IBM calls "negative inertia". To avoid having the pointer feeling sluggish (having inertia), the pointer is accelerated when the joystick moves, in order to make it feel more responsive.
It is implemented in the TrackPoint module's firmware by adding scaled joystick-acceleration to the linear joystick magnitude before further processing. Acceleration can also be negative. The default scaling factor is 6 when processing is performed every 10 ms.
This simple formula was covered by US Patent US5570111A which expired in 2014.
Hardware and software development
Technical documentation of the TrackPoint device is available, which can be useful for keyboard modding and firmware development. Philips' TPM749 Microcontroller with TrackPoint microcode from IBM Product Specification / Data Handbook describes the TrackPoint hardware circuitry and electrical characteristics. IBM's TrackPoint System Version 4.0 Engineering Specification describes how to communicate with and program the TrackPoint device via the PS/2 bus.
There are a few open source keyboard firmwares with TrackPoint support listed below. These firmwares act as TrackPoint PS/2-to-USB converters, by communicating with the TrackPoint as a PS/2 host and then presenting the TrackPoint data to the USB host as a generic mouse HID device.
- hasu's tmk_keyboard firmware
- Supports middle-button scroll
- frobiac's adnw firmware
- mtl'l MX13 code
- An extension of hasu's tmk_keyboard firmware
- Supports many TrackPoint configuration options
Various modules' pinouts are listed on the TrackPoint Hardware page.
- IBM – PS/2 L40 SX Press Release
- Laptop Magazine – Landmark laptops: The most important notebooks in computing history
- IBM – History of IBM Research - Almaden
- Scott Mueller – Upgrading and Repairing Laptops p. 627