     // If multiple ones are submitted at once, the following convention is used: xy beats ct beats hue/sat
     // TODO: Implement this
 
-    // Default values in case the request does not send new ones
-    int hue = 10000; // 10000 is white
-    int sat = 254;
-    int bri = 254;
+    // Get values from the saved state in case the request does not send new ones
+    HsbColor savedHsb = HsbColor(StripRgbColors[numberOfTheLight]);
+    Serial.println("Retrieved saved HSB");
+    Serial.print("H=");
+    Serial.println(savedHsb.H);
+    Serial.print("S=");
+    Serial.println(savedHsb.S);
+    Serial.print("B=");
+    Serial.println(savedHsb.B);
+
+    int hue = floor(savedHsb.H * 182.04 * 360.0);
+    int sat = floor(savedHsb.S * 254);
+    int bri = floor(savedHsb.B * 254);
 
     // Read hue, sat, bri from pixel if available
     if (aJsonObject* hueState = aJson.getObjectItem(parsedRoot, "hue"))

  SSDP.setManufacturer((char*)"Royal Philips Electronics");
  SSDP.setManufacturerURL((char*)"http://www.philips.com");
  Serial.println("SSDP Started");
}

void loop() {

        // progress will start at 0.0 and end at 1.0
        HslColor updatedColor = HslColor::LinearBlend(originalColor, rgb, progress);
        strip.SetPixelColor(numberOfTheLight, updatedColor);
        StripLightIsOn[numberOfTheLight] = true; // Keep track of on/off state
      };
      animator.StartAnimation(numberOfTheLight, transitionTime, animUpdate);
    }
