         ringFor(100);
         currentState = GAME;
         buttonPressed = false;
+        turnAccelerometerOn();
       }
       break;
     case GAME:

        watchDogBarked = false;
        watchDogEnabled = false;
        elapsedTime += getTimeoutDuration();
        unsigned long remainingTime = TURN_DURATION - elapsedTime;
        /* --- Main game logic --- */
        if (elapsedTime >= TURN_DURATION) {
          // Play a sound and vibration sequence to indicate the end of a game due to timeout
          ringFor(50);
          delay(50);

          stopVibrating();
          currentState = DEEP_SLEEP;
          elapsedTime = 0;
          turnDuration = DEFAULT_TURN_DURATION; // Reset the turn duration that might have been changed
          timeToBeep = turnDuration * beepingRatio; // reset the remaining time since the turn is over
          immobilityCounter = 0;
          fastCountdownMode = false;
          turnAccelerometerOff();
        } else if (remainingTime <= timeToBeep) { // Time to beep
          // Ring when we reach half of the remaining time available
          ringFor(remindBeepDuration);
          elapsedTime += remindBeepDuration; // Add the time we spent ringing
          timeToBeep *= beepingRatio;
        }
        // We need to detect if a player is holding the ball for too long in order to start a fast countdown
        // If the ball is not moved during the designated time to pass the ball, then the game ends prematurely
        unsigned int currentAccReading = analogRead(ACCELEROMETER_IN);
        int accDelta = currentAccReading - prevAccReading;
        prevAccReading = currentAccReading;
        // If the ball has not been moved enough (i.e. thrown)
        if (abs(accDelta) <= ACC_THRESHOLD) {
          // Register a touch and check if the ball has been held for too long
          if (++immobilityCounter >= IMMOBILITY_THRESHOLD) {
            // If we are not already in fast countdown mode, start the fast countdown
            if (!fastCountdownMode) {
              unsigned long decreasedTurnDuration = elapsedTime + TIME_TO_PASS_THE_BALL;
              // Go into fast countodown only if the decreased turn duration is actually after when the game
              // is supposed to finish. In that case do not adjust the time so the users do not cheat by prolonging the game
              if (decreasedTurnDuration <= DEFAULT_TURN_DURATION) { // If the turn duration is actually decreased and not extended
                turnDuration = decreasedTurnDuration;
                fastCountdownMode = true;
              }
            }
          }
        } else {
          // Restore the counter if there was a movement but only restore the duration and time to beep
          // if we just were in fast countdown mode
          immobilityCounter = 0;
          if (fastCountdownMode) {
            turnDuration = DEFAULT_TURN_DURATION;
            timeToBeep = (turnDuration - elapsedTime) * beepingRatio;
            fastCountdownMode = false;
          }
        }
      }
      buttonPressed = false;
