Patent attributes
The logic of a handheld controller system may use a clustering algorithm to determine which sensors of a touch sensor array, such as capacitive pads, to assign to individual fingers of a user's hand. The clustering algorithm disclosed herein allows for dynamically determining the controller configuration on-the-fly for a given user. An example process includes receiving data generated by a plurality of sensors of a touch sensor array of the handheld controller, generating a covariance matrix that indicates correlations between pairs of sensors, determining a plurality of feature vectors based at least in part on the covariance matrix, each feature vector corresponding to an individual sensor and describing that sensor's correlation(s) with one or more other sensors, clustering the feature vectors using a clustering algorithm, and configuring the touch sensor array according to a controller configuration that assigns sensors to respective fingers of a hand.