12.5.1 Data Structures

qtm_surface_cs_control_t

  • Top-level container for surface configuration
  • Contains pointers to data and configuration structures
Struct Contents
qtm_surface_cs_control_t qtm_surface_contact_data_t *qtm_surface_contact_data;
qtm_surface_cs_config_t *qtm_surface_cs_config;

qtm_surface_contact_data_t

  • Run-time data for touch surface
Parameter Size Range/Options Usage
qt_surface_status 1 byte Bit field

Bit 7: Reburst required

Reburst Required = 1

Indicates that further measurements are required to resolve/update contact status.
Bit 6: —
Bit 5: POS_V_DEC Vertical position decreased
Bit 4: POS_V_INC Vertical position increased
Bit 3: POS_H_DEC Horizontal position decreased
Bit 2: POS_H_INC Horizontal position increased
Bit 1: POS_CHANGE Change in reported position
Bit 0: Touch detection Touch Detection = 1

Indicates that a touch contact is present on the surface

h_position_abs 2 bytes 0 to 4095 Apparent horizontal position
h_position 2 bytes 0 to 4095 Motion filtered horizontal position
v_position_abs 2 bytes 0 to 4095 Apparent vertical position
v_position 2 bytes 0 to 4095 Motion filtered vertical position
contact_size 2 bytes Sum of touch deltas at contact location

qtm_surface_cs_config_t

  • Configuration parameters for the touch surface
Parameter Size Range/Options Usage
start_key_h 2 bytes 0 to 65534 Start key of horizontal axis
number_of_keys_h 1 byte 0 to 255 The number of keys forming horizontal axis
start_key_v 2 bytes 0 to 65534 Start key of vertical axis
number_of_keys_v 1 byte 0 to 255 The number of keys forming vertical axis
resol_deadband 1 byte Bits 7:4 = Resolution 2 to 12 bits Full-scale position resolution reported for the axis
position_hysteresis 1 byte 0 to 255 The minimum travel distance to be reported after contact or direction change. Applies to Horizontal and Vertical.
position_filter 1 byte Bits7:5: —
Bit 4: Median Filter Median filter enable
Bit3 : —
Bit 2: —
Bits 1:0: IIR Config IIR Config

0 = None

1 = 25%

2 = 50%

3 = 75%

contact_min_threshold 2 bytes 0 to 65535 The minimum contact size measurement for persistent contact tracking. Contact size is the sum of neighboring keys’ touch deltas forming the touch contact.
*qtm_touch_key_data Pointer

2/4 bytes

qtm_touch_key_data_t Pointer to touch key data for the underlying set of touch keys.