       else {
         lcd.write("           ");           //hard-coded value for quad mode
       }
-      lcd.setCursor(column, row);
+      setSerialCursor(lcd, column, row);
     }
 
     //calculate bars

  quadModeReady = false;
  octoModeReady = false;
  diagModeReady = false;
  lcd.clear();
}

void draw_dual_gauges() {
  if(!dualModeReady) {
    clear_mode();
    lcd.setCursor(0, 0);
    lcd.print(dualModeGauges[dualIndex][0]->shortLabel);
    lcd.setCursor(0, 2);
    lcd.print(dualModeGauges[dualIndex][1]->shortLabel);
    dualModeReady = true;
  }
  //if(dualModeGauges[0][0]->currentValue != dualModeGauges[dualIndex][0]->previousValue) {
    lcd.setCursor(4, 0);
    if(is_current_value_shorter(*dualModeGauges[0][0])) {
      lcd.print(F("     "));
      lcd.setCursor(4, 0);
    }
    lcd.print(dualModeGauges[dualIndex][0]->currentValue, dualModeGauges[dualIndex][0]->decimalPlaces);
    draw_bar(*dualModeGauges[dualIndex][0], 1, 0);
  //}
  //if(dualModeGauges[0][1]->currentValue != dualModeGauges[0][1]->previousValue) {
    lcd.setCursor(4, 2);
    if(is_current_value_shorter(*dualModeGauges[dualIndex][1])) {
      lcd.print(F("     "));
      lcd.setCursor(4, 2);
    }
    lcd.print(dualModeGauges[dualIndex][1]->currentValue, dualModeGauges[dualIndex][1]->decimalPlaces);
    draw_bar(*dualModeGauges[dualIndex][1], 3, 0);

    //relax homeboy
  }*/
  if(true){
    setSerialCursor(lcd, column, row);
    
    //delete previous bar if it is too long
    //todo optimize to only delete the needful
