           Joystick.button(buttonNumber, 1);
           Serial.print("buttonPress: ");
           Serial.println(buttonNumber);
+
       } else { // Released
           Joystick.button(buttonNumber, 0);
           Serial.print("buttonRelease: ");
           Serial.println(buttonNumber);
+          
+          // Trigger easter egg?
+          if (triggerEasterEgg(i)) {
+            kristo();
+          }
       }
     }
   }
+}
+
+/**
+ * A little state machine for detecting button combinations and triggering the easter egg
+**/
+bool triggerEasterEgg(int currentButton){
+
+  static unsigned long lastButtonPressedOn = 0; 
+
+  static byte easterEggStateMachine[3] = {}; // Last three button presses
+  static byte currentIndex = 0; // Current index in the easterEggStateMachine
+  byte secretCombination[3] = {0, 0, 7}; // "Correct" combination
+  
+  if (currentIndex > 0 && millis() - lastButtonPressedOn > 3000){
+    currentIndex = 0; // Reset sequence, too slow!
+    lastButtonPressedOn = millis();
+  }
+
+  // Save current button
+  easterEggStateMachine[currentIndex] = currentButton;
+
+  if (currentIndex == 2) { // All three buttons pressed
+    currentIndex = 0;
+
+    // Check that the last three buttons were indeed entered in the correct sequence
+    for (int i = 0; i<2; i++) {
+      if (secretCombination[i] != easterEggStateMachine[i]) {
+        return false;
+      }
+    }
+    return true; // All three numbers matched
+  }
+  
+  currentIndex++;
+  lastButtonPressedOn = millis();
+  return false;
+}
+
+/**
+ * Set LED1, see setLED(byte r, byte g, byte b, byte ledNumber)
+**/
+void setLED(byte r, byte g, byte b) {
+  setLED(r, g, b, 0);
 }
 
 /**

  Serial.begin(9600);
  
  // Initialize pushbutton pins as inputs with the internal pullup resistor enabled
  for (int i = 0; i < NUMBER_OF_BUTTONS; i++) {
      pinMode(BUTTON_PINS[i], INPUT_PULLUP);
  }

  // Set RGB LED pins as output
  pinMode(RGB_RED, OUTPUT);  
  pinMode(RGB_GREEN, OUTPUT);
  pinMode(RGB_BLUE, OUTPUT);
  
  // The LED is OFF by default
  setLED(255, 255, 255);

  Serial.println("Teensy Octo by A. Roots 2013.");
  Serial.println("Waiting for button presses.");
  Serial.println("For a list of available serial commands, type 'help'");
}

/**

  Bounce( BUTTON_PINS[7], DEBOUNCE)
};

/**
 * Setup function - run once on power-on
**/
