         }
         break;
       }
+
+      // begin debugging char commands
+      
+
     }
   } else {
     // no input;
-    if (timeOutCount > 5*60) { // 5 minutes with no comms
-      setOutput( random(255), random(255), random(255) );
+    if (timeOutCount > TIMEOUT) { // after TIMEOUT, flash randomly per second
+      setOutput( random(255), random(255), random(255) ); // change to be nicer (1s gradients?)
     }
 
 

      }
    case 'G' : {
        // run gradient pulse between a and b with appropriate timestep; "G#000000:#123456:time" input
        if (input[9]=='#') {
          char hex1[7], hex2[7];
          char timev[7]; //well our buffer is 7 chars now.
          for (int x=0; x<7; x++) {
            hex1[x]=input[x+1];
            hex2[x]=input[x+9];
            timev[x]=input[x+16];
          }
          int col1[4],col2[4];
          int *col1p[4] = {&col1[0],&col1[1],&col1[2]};
          int *col2p[4] = {&col2[0],&col2[1],&col2[2]};
          decodeHex(hex1,col1p);
          decodeHex(hex2,col2p);



          gradientPulse(col1,col2,timeVal);

          if (DEBUG) {
            Serial.println(hex1);
            Serial.println(hex2);
            Serial.println(timev);
