diff --git a/Firmware/xyzcal.cpp b/Firmware/xyzcal.cpp index 725150f31..cdf234b8d 100644 --- a/Firmware/xyzcal.cpp +++ b/Firmware/xyzcal.cpp @@ -369,7 +369,7 @@ void xyzcal_histo_pixels_32x32(uint8_t* pixels, uint16_t* histo) void xyzcal_adjust_pixels(uint8_t* pixels, uint16_t* histo) { uint8_t l; - uint16_t max_c = histo[0]; + uint16_t max_c = histo[1]; uint8_t max_l = 1; for (l = 1; l < 16; l++) { @@ -381,10 +381,10 @@ void xyzcal_adjust_pixels(uint8_t* pixels, uint16_t* histo) } } DBG(_n("max_c=%2d max_l=%d\n"), max_c, max_l); - for (l = 15; l > 8; l--) + for (l = 14; l > 8; l--) if (histo[l] >= 10) break; - uint8_t pix_min = (max_l + 1) << 4; + uint8_t pix_min = (max_l - 1) << 4; uint8_t pix_max = l << 4; uint8_t pix_dif = pix_max - pix_min; DBG(_n(" min=%d max=%d dif=%d\n"), pix_min, pix_max, pix_dif);