 const int screenSaverTime = 60;                    // M5Stack: Switch off screen after 60 seconds of inactivity
 
 const int triggerPin = 2;                          // GPIO2 as trigger output
+const int autofocusPin = 0;                        // GPIO0 as autofocus pin, -1 = deactivate autofocus start via pin
 const int startPin = 5;                            // GPIO5 as start input for timelapse, -1 = deactivate input pin processing
 
 // Timelapse Defaults

  trigger(OFF);
  currentTDuration = currentTriggerDuration;
  if ((currentNShots <= 0) && (currentExecMode == TIMELAPSERUNNING))  // End of Timelapse mode
    currentExecMode = TIMELAPSESTOP;
}

void extractParams(String params)

        }
    }
  }
}

void processTimeTable()
{
  /*
    delayToStart = 0; // Reset wait (delay) timer anyway
    numberOfShots = 1; // At least one shot
    trigger(OFF);
    int idx = timeTable.indexOf(","); // Find end of next element
    while (idx >= 1)
    {
      String element = timeTable.substring(0, idx);
      if (element.length() >= 1) // something is there
      {
        int xPosition = element.indexOf("X");
        timeTable = timeTable.substring(idx + 1, timeTable.length()); // remove element from timetable
        if (element[0] == 'W') // set wait (=Delay) time
          delayToStart = atol(element.substring(1, element.length()).c_str());
        else if (element[0] == 'D') // Set trigger duration
          triggerDuration = atol(element.substring(1, element.length()).c_str());
        else if ((xPosition >= 1) && (element.length() >= 3)) // Number of shots and delay between shots in one element
        {
          numberOfShots = atol(element.substring(0, xPosition).c_str());
          delayBetweenShots = atol(element.substring(xPosition + 1, element.length()).c_str());
          break;
        }
        else // delay between shots only
        {
          delayBetweenShots = atol(element.substring(0, element.length()).c_str());
          break;
        }
      }
      idx = timeTable.indexOf(","); // Find end of next element
    }
    if (numberOfShots > 0)
      setAndDoProcessMode(TIMELAPSESTART);
  */
}

void switchTriggerOffAndCheckStatus()
