   updateButtons();
 
   boolean modeChange = changeMode();
+  if (modeChange) {
+    Serial.println(modeNames[mode]);
+  }
+
+  switch (mode) {
+    case normalMode:
+      handleNormalMode();
+      break;
+    case initMode:
+      handleInitMode();
+      break;
+  }
 
   /*if (!modeChange) {
     changeBank();

    bothBanksDown = true;
  } else if (bothBanksDown && ((bankDownButton.isJustReleased() && !bankUpButton.isPressed()) || (bankUpButton.isJustReleased() && !bankDownButton.isPressed()))) {
    bothBanksDown = false;
    initMode = 1 - initMode;
    if (initMode) {
      Serial.println("Init mode");
    } else {
      Serial.println("Normal mode");
    }
    return true;
  } else if (bothBanksDown) {
    return true;
  }
  return false;
}


    sendMidiNotes();*/

}

void handleInitMode() {
  sendInitMidiNotes();
  updateInitLeds();
}

void handleNormalMode() {
  changeBank();
}

boolean changeMode() {
