The Cricket Compass for Context-Aware Mobile Applications

Nissanka Bodhi Priyantha, Allen K. L. Miu, Hari Balakrishnan, Seth Teller
Proc. of the 6th ACM MOBICOM Conf., Rome, Italy, July 2001.

The ability to determine the orientation of a device is of fundamental importance in context-aware and location-dependent mobile computing. By analogy to a traditional compass, knowledge of orientation through the Cricket compass attached to a mobile device enhances various applications, including efficient way-finding and navigation, directional service discovery, and ``augmented-reality'' displays. Our compass infrastructure enhances the spatial inference capability of the Cricket indoor location system, and enables new pervasive computing applications.

Using fixed active beacons and carefully placed passive ultrasonic sensors, we show how to estimate the orientation of a mobile device to within a few degrees, using precise, sub-centimeter differences in distance estimates from a beacon to each sensor on the compass. Then, given a set of fixed, active position beacons whose locations are known, we describe an algorithm that combines several carrier arrival times to produce a robust estimate of the rigid orientation of the mobile compass.

The hardware of the Cricket compass is small enough to be integrated with a handheld mobile device. It includes five passive ultrasonic receivers, each 0.8cm in diameter, arrayed in a ``V'' shape a few centimeters across. Cricket beacons deployed throughout a building broadcast coupled 418MHz RF packet data and a 40KHz ultrasound carrier, which are processed by the compass software to obtain differential distance and position estimates. Our experimental results show that our prototype implementation can determine compass orientation to within 3 degrees when the true angle lies between plus/minus 30 degrees, and to within 5 degrees when the true angle lies between plus/minus 40 degrees, with respect to a fixed beacon.

[PostScript (842KB)] [Gzipped PostScript (163KB)] [PDF (268KB)] [PowerPoint Presentation (2.1MB)]