     statusUpdate.concat (action + i + ",");
   }
   smartthing.send(statusUpdate);
-  Serial.println(statusUpdate);
+  if (isDebugEnabled) {
+    Serial.println(statusUpdate);
+  }
   statusUpdate = "";
-  delay (2000);  //allow SmartThings time to process first string
+  delay (2000);  //allow SmartThings hub time to process first string
   
     for (int i=(stations/2+1); i<(stations+1); i++) {
     if (queue[i]==0) {

    statusUpdate.concat (action + i + ",");
  }
  smartthing.send(statusUpdate);
  Serial.println(statusUpdate);
  statusUpdate = "";
}


  if (strcmp(inValue[0],"update")==0) {
    scheduleUpdate();
  }
  if (strcmp(inValue[0],"allOn1")==0) {   //read in times for zones 1-17
    int i=1;
    while (i<17) {
      if (i != trafficCop) {
        if (strcmp(inValue[i],"0")!=0 && strcmp(inValue[i],"null")!=0) {  //do not add to queue if zero time
          queue[i]=1;
          stationTime[i]=atoi(inValue[i])*60L*1000L;
        }
      }
      i++;
    }
    scheduleUpdate();
  }
  
  if (strcmp(inValue[0],"allOn2")==0) {  //read times for in zone 17-24
    int i=1;
    while (i<9) {
      if (i+16 != trafficCop) { 
        if (strcmp(inValue[i],"0")!=0 && strcmp(inValue[i],"null")!=0) {  //do not add to queue if zero time
          queue[i+16]=1;
          stationTime[i+16]=atoi(inValue[i])*60L*1000L;
        }
      }
      i++;
    }
    scheduleUpdate();
  }
  
  if (strcmp(inValue[0],"advance")==0) {
    toggleOff();
  }
  if (strcmp(inValue[0],"allOff")==0) {
    allOff();
  }
  if (strcmp(inValue[0],"pump")==0) {
    if (strcmp(inValue[1],"0")==0) {
