 }
 
 void exitUnarmed() {
+  TimedEvent.stop(READ_LOCATION_TIMER);
+}
+
+void updateLockBox() {
   lock();
-  TimedEvent.stop(READ_LOCATION_TIMER);
+  stateMachine.transitionTo(GetFix);
 }
 
 void enterGetFix() {


void onHold(Button& button) {
  if(!isArmed() && !stateMachine.isInState(OpenBox)) {
    stateMachine.transitionTo(GetFix);
    return;
  }


// Internal States
State Loading      = State(enterLoading, updateLoading, NULL);
State Unarmed      = State(enterUnarmed, NULL, exitUnarmed);
State LockBox      = State(updateLockBox);
State GetFix       = State(enterGetFix, updateGetFix, exitGetFix);
State ReadLocation = State(enterReadLocation, updateReadLocation, exitReadLocation);
State SleepModules = State(enterSleepModules, updateSleepModules, exitSleepModules);
