Using the accelerometer, gyroscope, and magnetic compass to do smartphone tracking with WiFi anchor points for error correction.