 // Last read byte from serial
 char readByte;
 
+// Power PIN #
+const int POWER_PIN = 8;
+
+// Whether power is currently on
+boolean powerOn = false;
+
 /**
  * Init code
  */
 void setup() {
   Serial.begin(115200);
-  SPI.begin();  
+  SPI.begin();
+  pinMode(POWER_PIN, OUTPUT);
   allocateMemory();
   updateLeds();
+  updatePower();
 }
 
 /**

}

/**
 * Output the current LED state to the serial port
 * Limit with count, or pass currentLedCount for all LEDs
 */

        return updateLed(values[0], values[1], values[2], values[3], values[4]);
      }
    }
  } else if(command[0] == 'P') {
    // Power update
    char *seperator = strchr(command, ':');
    if(seperator != NULL) {
      seperator++;      
      int powerState = atoi(seperator);
      powerOn = powerState == 1 ? true : false;
      updatePower();
    }    
  } else if(command[0] == 'S') {
    // Output status - currently for debugging but could be adapted for bidirectional communication
    outputLedState(currentLedCount);
