#include <Wire.h>
#include <LiquidCrystal_I2C.h>

const int button1 = 2;
const int button2 = 3;
const int button3 = 4;
const int button4 = 5;

int menuSelection = 1;

LiquidCrystal_I2C lcd(0x27, 16, 2);

void setup() {
  pinMode(button1, INPUT_PULLUP);
  pinMode(button2, INPUT_PULLUP);
  pinMode(button3, INPUT_PULLUP);
  pinMode(button4, INPUT_PULLUP);
  lcd.init();
  lcd.backlight();
  lcd.clear();
  lcd.setCursor(2,1);
  lcd.print("Pressure Tester");
  delay(2000);
}

void loop() {
  if (digitalRead(button1) == LOW) {
    menuSelection--;
    if (menuSelection < 1) {
      menuSelection = 4;
    }
    updateMenu();
    delay(200);
  }
  if (digitalRead(button2) == LOW) {
    menuSelection++;
    if (menuSelection > 4) {
      menuSelection = 1;
    }
    updateMenu();
    delay(200);
  }
  if (digitalRead(button3) == LOW) {
    // Code to run selected option goes here
    lcd.clear();
    lcd.print("Running option ");
    lcd.print(menuSelection);
       //updateMenu();
  }
  if (digitalRead(button4) == LOW) {
    menuSelection = 1;
    updateMenu();
    delay(200);
  }
}

void updateMenu() {
  lcd.clear();
  lcd.print("Select test:");
  lcd.setCursor(0, 1);
  switch (menuSelection) {
    case 1:
      lcd.setCursor(0,1);
      lcd.print(">Option 1");
      lcd.setCursor(1,2);
      lcd.print("Option 2");
      break;
    case 2:
       lcd.setCursor(0,1);
      lcd.print(">Option 2");
      lcd.setCursor(1,2);
      lcd.print("Option 3");
      break;
    case 3:
       lcd.setCursor(0,1);
      lcd.print(">Option 3");
      lcd.setCursor(1,2);
      lcd.print("Option 4");
      break;
    case 4:
       lcd.setCursor(0,1);
      lcd.print(">Option 4");
      break;
  }
}
uno:A5.2
uno:A4.2
uno:AREF
uno:GND.1
uno:13
uno:12
uno:11
uno:10
uno:9
uno:8
uno:7
uno:6
uno:5
uno:4
uno:3
uno:2
uno:1
uno:0
uno:IOREF
uno:RESET
uno:3.3V
uno:5V
uno:GND.2
uno:GND.3
uno:VIN
uno:A0
uno:A1
uno:A2
uno:A3
uno:A4
uno:A5
btn1:1.l
btn1:2.l
btn1:1.r
btn1:2.r
btn2:1.l
btn2:2.l
btn2:1.r
btn2:2.r
btn3:1.l
btn3:2.l
btn3:1.r
btn3:2.r
btn4:1.l
btn4:2.l
btn4:1.r
btn4:2.r
lcd1:GND
lcd1:VCC
lcd1:SDA
lcd1:SCL
led1:A
led1:C