   for (int i = 0; i < numberOfCommands; ++i)
   {
     processSingleLightCommand(i*7);
+  }
+}
+
+void processFillCommand() {
+  
+ Serial.println(F("processFillCommand "));
+  long lightStringIndex  = (int)packetBuffer[1] & 0xFF;
+  long colorSelect       = (int)packetBuffer[2] & 0xFF;
+  long r                 = (int)packetBuffer[3] & 0xFF;
+  long g                 = (int)packetBuffer[4] & 0xFF;
+  long b                 = (int)packetBuffer[5] & 0xFF;
+  long brightness        = (int)packetBuffer[6] & 0xFF;
+
+  if (brightness > G35::MAX_INTENSITY) {
+    brightness == G35::MAX_INTENSITY;
+  }
+  if (brightness < 0) {
+    brightness = 0;
+  }
+  
+      Serial.print(F("lightStringIndex: "));
+      Serial.println(lightStringIndex);      
+      Serial.print(F("colorSelect: "));
+      Serial.println(colorSelect);      
+      Serial.print(F("r: "));
+      Serial.println(r);      
+      Serial.print(F("g: "));
+      Serial.println(g);      
+      Serial.print(F("b: "));
+      Serial.println(b);
+      Serial.print(F("brightness: "));
+      Serial.println(brightness);
+  
+  if(lightStringIndex == 0 ){
+    for(int strandIndex = 1; strandIndex < NUMBER_OF_STRANDS; strandIndex++){
+      // Get the String
+      setString(strandIndex);
+      // Apply Light settings
+      lights->fill_color(0, lights->get_light_count(), brightness, getColor(colorSelect, r, g, b));
+    }
+  } else {
+    // Get the String
+    setString(lightStringIndex);
+    // Apply Light settings
+    lights->fill_color(0, lights->get_light_count(), brightness, getColor(colorSelect, r, g, b));
   }
 }
 

    int command  = (int)packetBuffer[0] & 0xFF;
    //Serial.print(F("Got command: "));
    //Serial.println(command);
    if (command==0) {
      processSingleLightCommand(0);
    } else if (command==1) {
      processMultiLightCommand();
    } else if (command==2) {
      allOffFade(packetBuffer[1] & 0xFF);
    } else {
      //Serial.print(F("Unknown Command: "));
      //Serial.println(command);
      error();
    }


#define G35_PIN_11 (33)
#define G35_PIN_12 (31)
#define G35_PIN_13 (29)

#define NUMBER_OF_STRANDS (13)

// Commands
#define SINGLE_LIGHT_COMMAND  (0)
#define MULTI_LIGHT_COMMAND   (1)
#define FADE_ALL_COMMAND      (2)
#define FILL_COMMAND          (3)

// Strings of lights
G35String* lights = NULL;
