@Override
  public void onSensorChanged(SensorEvent event) {
    if (robotLocation != null && (!route.isEmpty()) && running && textToSpeech != null) {

      // Legacy compass sensor code
      // compassBearingDegrees = Utilities.correctCompassBearing(Math.round(event.values[0]),
      // robotLocation);

      float azimuth = 0;

      azimuth = Utilities.landscapeModeCompassCalibration(event);
      compassBearingDegrees = Utilities.correctCompassBearing(azimuth, robotLocation);

      currentDegree =
          Utilities.compassAnimationHandler(ivCompass, compassBearingDegrees, currentDegree);
      currentDegreeNorth =
          Utilities.compassNorthIconHandler(
              ivCompassNorth, compassBearingDegrees, currentDegreeNorth);
    }
  }