diff --git a/BlinkenLights.ino b/BlinkenLights.ino
index d250f2b7f186d51019c1f69a88ad196a41825d90..9276e3bc00b07f1be1535de4465873758536eb5e 100644
--- a/BlinkenLights.ino
+++ b/BlinkenLights.ino
@@ -46,7 +46,6 @@ char blue = (int) 255;
 
 // For controlling the lights - Should only be changed by the functions
 int position = 0; // How far through the cycle we are
-struct led ledArray[STRIPLENGTH]; // led array
 int lightOption = 1; // Which predefined light sequence we are running
 char brightness = (char) 128; //Brightness of the LEDs
 // We seem to have issues at the moment putting this up to the maximum (255)
@@ -66,35 +65,28 @@ WebServer webserver(PREFIX, 80);
 
 // =========================== char-hex conversions ===========================
 
+char hexToChar(char* c) {
+  return (char) strtol(c, NULL, 16);
+}
+
 char* charToHex(char c) {
   char base_digits[16] =
-  { 
+  {
     '0', '1', '2', '3', '4', '5', '6', '7',
-    '8', '9', 'A', 'B', 'C', 'D', 'E', 'F'    };
-
+    '8', '9', 'A', 'B', 'C', 'D', 'E', 'F' };
   int converted_number[64];
   int base = 16;
   int next_digit, index=0;
   int number_to_convert = (int) c + 128;
-
-  /* convert to the indicated base */
   while (number_to_convert != 0)
   {
     converted_number[index] = number_to_convert % base;
     number_to_convert = number_to_convert / base;
     index++;
   }
-  //Serial.println(index);
-  /* now print the result in reverse order */
-  index--; /* back up to last entry in the array */
-
+  index--; // back up to last entry in the array
   char ret[3];
-
-  //ret[0] = '';
-  //ret[1] = '';
-
   int i = 0;
-
   if (index < 0) {
     ret[i] = base_digits[0];
     i++;
@@ -124,9 +116,6 @@ char* charToHex(char c) {
  * We should probably get rid of this soonish
  */
 void updateLights() {
-  for (int i = 0; i < STRIPLENGTH; i ++) {
-    strip.setPixelColor(i, (int) ledArray[i].red, (int) ledArray[i].green, (int) ledArray[i].blue);
-  }
   strip.show();
 }
 
@@ -138,6 +127,8 @@ void updateLights() {
  */
 int coordToPos(int xpos, int ypos) {
   ///TODO: Test this function
+  ///TODO: Make this smaller
+  ///TODO: Turn this into a define
   int pos = 0;
   if ((xpos < 0 || xpos >= WIDTH) || (ypos < 0 || ypos >= HEIGHT)) {
     return -1;
@@ -165,9 +156,7 @@ int coordToPos(int xpos, int ypos) {
  */
 void setLED(int pos, int red, int green, int blue) {
   if (pos > 0 && pos < STRIPLENGTH) {
-    ledArray[pos].red = red;
-    ledArray[pos].green = green;
-    ledArray[pos].blue = blue;
+    strip.setPixelColor(i, (int) red, (int) green, (int) blue);
   }
 }
 
@@ -285,59 +274,6 @@ char *url_tail, bool tail_complete) {
   }
 }
 
-/**
- * Set a specific LED to a specific colour
- * @param server        
- * @param type          
- * @param url_tail      
- * @param tail_complete 
- */
-/*void webSetLED(WebServer &server, WebServer::ConnectionType type,
- char *url_tail, bool tail_complete) {
- URLPARAM_RESULT rc;
- char name[NAMELEN];
- char value[VALUELEN];
- int xPos = -1;
- int yPos = -1;
- int r = -1;
- int g = -1;
- int b = -1;
- 
- server.httpSuccess();
- // Kill the connection before doing anything if all they want is head
- if (type == WebServer::HEAD) {
- return;
- }
- else if (type == WebServer::GET) {
- while (strlen(url_tail)) {
- rc = server.nextURLparam(&url_tail, name, NAMELEN, value, VALUELEN);
- if (rc != URLPARAM_EOS) {
- if (String(name).equals("x")) {
- xPos = atoi(value);
- }
- else if (String(name).equals("y")) {
- yPos = atoi(value);
- }
- else if (String(name).equals("r")) {
- r = atoi(value);
- }
- else if (String(name).equals("g")) {
- g = atoi(value);
- }
- else if (String(name).equals("b")) {
- b = atoi(value);
- }
- }
- }
- }
- else {
- server.print("Unknown");
- }
- if (xPos != -1 && yPos != -1 && r != -1 && g != -1 && b != -1) {
- setLED(xPos, r, g, b);
- }
- }*/
-
 /**
  * Set the brightness to a specific magnitude
  * @param server        
@@ -517,21 +453,19 @@ void setup() {
   webserver.addCommand("get", &webGetArray);
   // Start Webserver
   webserver.begin();
-  // Turn our lights on
-  for (int i = 0; i < STRIPLENGTH; i ++) {
-    ledArray[i].red = (char) 128;
-    ledArray[i].green = (char) 128;
-    ledArray[i].blue = (char) 128;
-  }
-
-  /*for (int i = -128; i < 128; i++) {
+  
+  for (int i = -128; i < 128; i++) {
    Serial.print(i);
    Serial.print(" ");
-   //Serial.print((char) i);
+   Serial.print((char) i);
    Serial.print(" ");
-   charToHex((char) i);
+   char *c = charToHex((char) i);
+   char d = hexToChar((char*) (int) c - 128);
+   Serial.print(c);
+   Serial.print(" ");
+   Serial.print(d);
    Serial.println("");
-   }*/
+  }
 
   // Start Lights
   strip.begin();