1.. _trackpoints: 2 3============================================================================== 4Trackpoints and Pointing Sticks 5============================================================================== 6 7This page provides an overview of trackpoint handling in libinput, also 8refered to as Pointing Stick or Trackstick. The device itself is usually a 9round plastic stick between the G, H and B keys with a set of buttons below 10the space bar. 11 12.. figure:: button-scrolling.svg 13 :align: center 14 15 A trackpoint 16 17libinput always treats the buttons below the space bar as the buttons that 18belong to the trackpoint even on the few laptops where the buttons are not 19physically wired to the trackpoint device anyway, see :ref:`t440_support`. 20 21.. _trackpoint_buttonscroll: 22 23------------------------------------------------------------------------------ 24Button scrolling on trackpoints 25------------------------------------------------------------------------------ 26 27Trackpoint devices have :ref:`button_scrolling` enabled by default. This may 28interfer with middle-button dragging, if middle-button dragging is required 29by a user then button scrolling must be disabled. 30 31.. _trackpoint_range: 32 33------------------------------------------------------------------------------ 34Motion range on trackpoints 35------------------------------------------------------------------------------ 36 37It is difficult to associate motion on a trackpoint with a physical 38reference. Unlike mice or touchpads where the motion can be 39measured in mm, the trackpoint only responds to pressure. Without special 40equipment it is impossible to measure identical pressure values across 41multiple laptops. 42 43The values provided by a trackpoint are motion deltas, usually corresponding 44to the pressure applied to the trackstick. For example, pressure towards the 45screen on a laptop provides negative y deltas. The reporting rate increases 46as the pressure increases and once events are reported at the maximum rate, 47the delta values increase. The figure below shows a rough illustration of 48this concept. As the pressure 49decreases, the delta decrease first, then the reporting rate until the 50trackpoint is in a neutral state and no events are reported. Trackpoint data 51is hard to generalize, see 52`Observations on trackpoint input data 53<a href="https://who-t.blogspot.com/2018/06/observations-on-trackpoint-input-data.html">`_ 54for more details. 55 56.. figure:: trackpoint-delta-illustration.svg 57 :align: center 58 59 Illustration of the relationship between reporting rate and delta values on a trackpoint 60 61The delta range itself can vary greatly between laptops, some devices send a 62maximum delta value of 30, others can go beyond 100. However, the useful 63delta range is a fraction of the maximum range. It is uncomfortable to exert 64sufficient pressure to even get close to the maximum ranges. 65 66libinput provides a :ref:`Magic Trackpoint Multiplier 67<trackpoint_multiplier>` to normalize the trackpoint input data. 68 69