   else if(currentMode == quad) {
     currentMode = octo;
   }
-  else if(currentMode == octo) {
+  else if(currentMode = octo) {
     currentMode = dual;
   }
   //diag mode is not implemented yet


  previousModeButton = currentModeButton;
  currentModeButton = digitalRead(MODE_PIN);
  /*Serial.println("=====");
  Serial.println(currentModeButton);
  Serial.println(previousModeButton);*/
  if(currentModeButton != previousModeButton) {
    if(currentModeButton == 0) {
      modeButtonMillis = currentMillis;
      next_mode();
    }
    else {
      if((currentMillis - modeButtonMillis) < 250) {
        currentModeButton = 0;
      }
    }
  }
  
  //Serial.println(modeButton);
  
}

void next_mode() {

bool previousModeButton = 1;
unsigned long modeButtonMillis = 0;

bool currentGaugeButton = 1;
bool previousGaugeButton = 1;
unsigned long gaugeButtonMillis = 0;

const byte DEBOUNCE_DELAY = 250;

MCP_CAN CAN(SPI_CS_PIN); 

void setup() {
