 const int speakerOut = 9;
 const byte names[] = {'c', 'd', 'e', 'f', 'g', 'a', 'b', 'C'};
 const int tones[] = {1915, 1700, 1519, 1432, 1275, 1136, 1014, 956};
-const byte melody[] = "3b3d3b3d"; //"3b3d3b3d3b3d3b3d";
+const byte alarmTone[] = "3b3d3b3d"; //Takes speaker 1211ms to execute this tone
+const byte heartDeath[] = "2a1p2a3p";
 // count length: 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0
 //                                10                  20                  30
 bool alarmSounding = false;
-void speaker();
+void speaker(const byte melody[], unsigned int arraySize);
 
 //Bluetooth/Serial global variables
 const int receivePin = 10;

    opMode = alarm;
    blinkRate = alarmBlinkRate;
  }

  //Setup Bluetooth/serial
  //Even though they might not be used (based on mode), activate them anyways so that the

  return retVal;
}

void speaker(const byte melody[], unsigned int arraySize) {
  alarmSounding = true;
  analogWrite(speakerOut, 0); //Ensure speaker starts off
  for (int count = 0; count < (arraySize - 1) / 2; count++) { //Iterates through the notes requested
    statePin = !statePin;
    digitalWrite(ledPin, statePin);
    for (int count2 = 0; count2 < 8; count2++) { //Iterate through tones
