Преглед на файлове

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);
   }