       mode = PLAYING;
     }  
   }
-  else if ((t - longButtonPressTime > 10000) && (sensor13Val == LOW))
-  {
-    longButtonPressTime = -1;
+  else if ((t - longButtonPressTime > 5000) && (sensor13Val == LOW))
+  {
+    longButtonPressTime = millis();
     //line_horz(1, true);
     save();  // todo need to do this only once and make it stop afterwards, if you hold the button down it repeats the save
+    
+    mode = PLAYING_ERASE_WIDTH_2;
   }
   lastSensor13Val = sensor13Val;
 


  enc::poll(); // Read encoder(s)

  // todo temp disable until we have a button to hook it to
  // todo make first button clear current layer, second clear current grid, third clear everything
#if 0
  // clear all layers
  sensorVal = digitalRead(???);
  if ((sensorVal == LOW) && (mode == PLAYING))
  {
    untztrument.clear();
    refresh = true;
    memset(grid, 0, sizeof(grid));

    // Send midi control change all notes off
    usbMIDI.sendControlChange(0x7b, 0, channels[layer]);
    synth.allNotesOff(channels[layer]);
  }
#endif

  // scale select
  sensor0Val = digitalRead(BUTTON_GRID);
  if (sensor0Val != lastSensor0Val)
  {
    if ((sensor0Val == LOW) && (mode == PLAYING))
    {
      mode = WAIT_FOR_SCALE;
