   wm.addParameter(&custom_field);
 
   // custom menu via array or vector
-  // menu tokens, "wifi","wifinoscan","info","param","close","sep","erase","restart","exit"
+  // 
+  // menu tokens, "wifi","wifinoscan","info","param","close","sep","erase","restart","exit" (sep is seperator) (if param is in menu, params will not show up in wifi page!)
   // const char* menu[] = {"wifi","info","param","sep","restart","exit"}; 
   // wm.setMenu(menu,6);
   std::vector<const char *> menu = {"wifi","info","param","sep","restart","exit"};

    
    delay(3000); // reset timer
    if( digitalRead(TRIGGER_PIN) == LOW ){
      // holding button 3000 ms, reset settings
      wm.resetSettings();
      ESP.restart();
    }
    
    wm.setConfigPortalTimeout(120);
    
    if (!wm.startConfigPortal("OnDemandAP")) {


  // wifi scan settings
  // wm.setRemoveDuplicateAPs(false); // do not remove duplicate ap names (true)
  // wm.setMinimumSignalQuality(20);  // set min RSSI (percentage) to show in scans, null = 8%
  // wm.setShowInfoErase(false);      // do not show erase button on info page
  // wm.setScanDispPerc(true);       // show RSSI as percentage not graph icons
  
  // wm.setBreakAfterConfig(true);   // always exit configportal even if wifi save fails

  bool res;
  // res = wm.autoConnect(); // auto generated AP name from chipid
  // res = wm.autoConnect("AutoConnectAP"); // anonymous ap
  res = wm.autoConnect("AutoConnectAP","password"); // password protected ap

  if(!res) {
    Serial.println("Failed to connect or hit timeout");
