Преглед изворни кода

more accurate range for brightness; send brightness instead of level

Chris Mullins пре 8 година
родитељ
комит
6447099e7c
1 измењених фајлова са 3 додато и 2 уклоњено
  1. 3 2
      lib/MiLight/RgbCctPacketFormatter.cpp

+ 3 - 2
lib/MiLight/RgbCctPacketFormatter.cpp

@@ -141,8 +141,9 @@ void RgbCctPacketFormatter::parsePacket(const uint8_t *packet, JsonObject& resul
     temperature /= 2;
     result["temperature"] = temperature;
   // brightness == saturation
-  } else if (command == RGB_CCT_BRIGHTNESS && arg >= RGB_CCT_BRIGHTNESS_OFFSET) {
-    result["level"] = constrain(arg - RGB_CCT_BRIGHTNESS_OFFSET, 0, 100);
+  } else if (command == RGB_CCT_BRIGHTNESS && arg >= (RGB_CCT_BRIGHTNESS_OFFSET - 15)) {
+    uint8_t level = constrain(arg - RGB_CCT_BRIGHTNESS_OFFSET, 0, 100);
+    result["brightness"] = rescale<uint8_t, uint8_t>(level, 255, 100);
   } else if (command == RGB_CCT_SATURATION) {
     result["saturation"] = constrain(arg - RGB_CCT_SATURATION_OFFSET, 0, 100);
   }