From 64862d01669eeb765ddeafe29f60274a95fba092 Mon Sep 17 00:00:00 2001 From: Omar Ali <524542+omar711@users.noreply.github.com> Date: Tue, 29 Oct 2024 11:51:36 +0000 Subject: [PATCH] Scale by ceil(max_raw / 256) to prevent out of range colour values --- sense_hat/colour.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/sense_hat/colour.py b/sense_hat/colour.py index 430b31f..f8223a7 100644 --- a/sense_hat/colour.py +++ b/sense_hat/colour.py @@ -316,6 +316,10 @@ def get_raw(self): get_clear = _raw_wrapper(CDATA) +def ceildiv(a, b): + return -(a // -b) + + class ColourSensor: def __init__(self, gain=1, integration_cycles=1, interface=I2C): @@ -376,7 +380,7 @@ def colour_raw(self): @property def _scaling(self): - return self.max_raw // 256 + return ceildiv(self.max_raw, 256) @property def colour(self):