Sensor Fusion Algorithm
First Claim
1. One or more computer readable storage media comprising instructions that, when executed by a host computing device, cause the host computing device to perform operations including:
- determining a combined spatial position for the host computing device based upon multiple raw spatial positions for the host computing device calculated using at least using at least two different types of sensors of the host computing device;
ascertaining a spatial position for an accessory device connected to the host computing device using one or more sensors of the accessory device; and
computing an orientation of the accessory device relative to the host computing device based on the combined spatial position for the host computing device and the ascertained spatial position for the accessory device.
3 Assignments
0 Petitions
Accused Products
Abstract
Sensor fusion algorithm techniques are described. In one or more embodiments, behaviors of a host device and accessory devices are controlled based upon an orientation of the host device and accessory devices, relative to one another. A combined spatial position and/or orientation for the host device may be obtained based on raw measurements that are obtained from at least two different types of sensors. In addition, a spatial position and/or orientation for an accessory device is ascertained using one or more sensors of the accessory device. An orientation (or position) of the accessory device relative to the host computing device may then be computed based on the combined spatial position/orientation for the host computing device and the ascertained spatial position/orientation for the accessory device. The relative orientation that is computed may then be used in various ways to control behaviors of the host computing device and/or accessory device.
89 Citations
20 Claims
-
1. One or more computer readable storage media comprising instructions that, when executed by a host computing device, cause the host computing device to perform operations including:
-
determining a combined spatial position for the host computing device based upon multiple raw spatial positions for the host computing device calculated using at least using at least two different types of sensors of the host computing device; ascertaining a spatial position for an accessory device connected to the host computing device using one or more sensors of the accessory device; and computing an orientation of the accessory device relative to the host computing device based on the combined spatial position for the host computing device and the ascertained spatial position for the accessory device. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14)
-
-
15. A host computing device comprising:
-
one or more microcontroller devices; an interface to physically and communicatively connect an accessory device to the host computing device; a sensor fusion module implemented at least partially via the microcontroller devices and configured to perform operations including; computing an orientation of the accessory device relative to the host computing device when the accessory device is connected to the host computing device via the interface based upon; a combined spatial position for the host computing device obtained by interpolation of at least two independent raw spatial positions for the host computing device calculated using multiple sensors of the host computing device; and a spatial position for the accessory device ascertained using one or more sensors of the accessory device; and controlling one or more behaviors of the host computing device and the accessory device based upon the orientation that is computed. - View Dependent Claims (16, 17, 18)
-
-
19. A method implemented by a microcontroller of a host computing device comprising:
-
ascertaining a spatial position of an accessory device physically and communicatively coupled to the host computing device via an interface that enables removable attachment of the accessory device to the host computing device using position information from one or more sensors of the accessory device obtained via the interface; computing an orientation of the accessory device relative to the host computing device to which the accessory device is attached based on at least two independent computations of a spatial position for the host computing device that are calculated using an array of sensors for the host computing device and the ascertained spatial position for the accessory device ascertained using the position information from the one or more sensors of the accessory device; exposing an application programming interface (API) operable by one or more applications to obtain the computed orientation; and supplying the computed orientation to an application in response to receiving a request from the application via the API. - View Dependent Claims (20)
-
Specification