#include <Servo.h>
#include <LiquidCrystal_I2C.h>

Servo kick;
Servo snare;
Servo hihat;
int kick_arm = 100;
int snare_arm = 70;
int hihat_arm = 90;

LiquidCrystal_I2C lcd(0x27,16,2);

void setup() {
  pinMode(2, OUTPUT);
  pinMode(4, OUTPUT);
  pinMode(7, OUTPUT);
  Serial.begin(115200);
  kick.attach(9);
  snare.attach(10);
  hihat.attach(11);

  lcd.init();
  lcd.backlight();
  lcd.setCursor(0,0);
  lcd.print("Hi-Hat");
  lcd.setCursor(11,0);
  lcd.print("Snare");
  lcd.setCursor(5,1);
  lcd.print("Kick");
}

void loop() {
  kick.write(kick_arm);
  digitalWrite(2, HIGH);
  kick_arm = kick_arm - 15;
  hihat.write(hihat_arm);
  digitalWrite(7, HIGH);
  hihat_arm = hihat_arm - 15;
  delay(60);
  kick.write(kick_arm);
  digitalWrite(2, LOW);
  kick_arm = kick_arm + 15;
  hihat.write(hihat_arm);
  digitalWrite(7, LOW);
  hihat_arm = hihat_arm + 15;
  delay(265);

  hihat.write(hihat_arm);
  digitalWrite(7, HIGH);
  hihat_arm = hihat_arm - 15;
  delay(60);
  hihat.write(hihat_arm);
  digitalWrite(7, LOW);
  hihat_arm = hihat_arm + 15;
  delay(265);

  snare.write(snare_arm);
  digitalWrite(4, HIGH);
  snare_arm = snare_arm + 15;
  hihat.write(hihat_arm);
  digitalWrite(7, HIGH);
  hihat_arm = hihat_arm - 15;
  delay(60);
  snare.write(snare_arm);
  digitalWrite(4, LOW);
  snare_arm = snare_arm - 15;
  hihat.write(hihat_arm);
  digitalWrite(7, LOW);
  hihat_arm = hihat_arm + 15;
  delay(265);

  hihat.write(hihat_arm);
  digitalWrite(7, HIGH);
  hihat_arm = hihat_arm - 15;
  delay(60);
  hihat.write(hihat_arm);
  digitalWrite(7, LOW);
  hihat_arm = hihat_arm + 15;
  delay(265);
}