     }
 
     pano.setFOV(horiz, vert);
+    if (!positionCamera("Adjust start pos\nSet exposure & focus", NULL, NULL)){
+        return false;
+    }
     running = true;
     menu.sync();
-    if (!positionCamera("Adjust start pos\nSet exposure & focus", NULL, NULL)){
-        return false;
-    }
     executePano();
     return __;
 }


// these variables are modified by the menu
volatile int focal, shutter, pre_shutter, orientation, aspect, shots, motors_enable, display_invert;
int horiz, vert;
volatile int running;

void setup() {

    }

    pano.setFOV(horiz, vert);
    if (!positionCamera("Adjust start pos\nSet exposure & focus", NULL, NULL)){
        return false;
    }
    running = true;
    menu.sync();
    executePano();
    return __;
}

/*
 * Menu callback invoked by selecting "Repeat"
 */
int onRepeat(int __){
    setPanoParams();

    pano.setFOV(horiz, vert);
    if (!positionCamera("Adjust start pos\nSet exposure & focus", NULL, NULL)){
        return false;
    }
    running = true;
    menu.sync();
    executePano();
    return __;
}
