   pinMode(P_LED_CLOCK, OUTPUT);
   pinMode(P_LED_LATCH, OUTPUT);
 
-  states[1] = LED_STATE_ON;
+  states[1] = LED_STATE_FLASHING;
   states[4] = LED_STATE_ON;
   states[5] = LED_STATE_ON;
   states[8] = LED_STATE_ON;
   states[10] = LED_STATE_ON;
   shiftOut();
+
+  //Thread setup
+  flasherThread = Thread();
+  flasherThread.setInterval(1000);
+  flasherThread.onRun(threadCallback);
 }
 
-void loop() {}
+void loop() {
+  if (flasherThread.shouldRun()) {
+    flasherThread.run();
+  }
+}
 
 void shiftOut() {
   //Latch Low. VCC high

  analogWrite(P_LED_VCC, LED_VCC_PWM);
}


      case LED_STATE_ON:
        digitalWrite(P_LED_DATA, HIGH);
        break;
      case LED_STATE_FLASHING:
        if (currentlyFlashing) {
          digitalWrite(P_LED_DATA, HIGH);
        } else {
          digitalWrite(P_LED_DATA, LOW);
        }
        currentlyFlashing = !currentlyFlashing;
        break;
    }


