From 156ca1419f249e0488f2614e816d91bb1e2fa7c2 Mon Sep 17 00:00:00 2001 From: Cooper Dalrymple Date: Thu, 15 May 2025 11:58:42 -0500 Subject: [PATCH 1/2] Rewrite contrast property getter --- adafruit_ov5640/__init__.py | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/adafruit_ov5640/__init__.py b/adafruit_ov5640/__init__.py index 153e5b8..30919e9 100644 --- a/adafruit_ov5640/__init__.py +++ b/adafruit_ov5640/__init__.py @@ -1510,11 +1510,13 @@ def brightness(self, value: int) -> None: @property def contrast(self) -> int: """Sensor contrast adjustment, from -4 to 4 inclusive""" - contrast_abs = self._read_register(0x5587) >> 4 - contrast_neg = self._read_register(0x5588) & 8 - if contrast_neg: - return -contrast_abs - return contrast_abs + try: + value = _contrast_settings.index([self._read_register(0x5586), self._read_register(0x5585)]) + except ValueError: + value = 0 + if value > 3: + value -= len(_contrast_settings) + return value @contrast.setter def contrast(self, value: int) -> None: From 978fc683a2bdf6e1c3f1229a0a6d4f7829cdf369 Mon Sep 17 00:00:00 2001 From: Cooper Dalrymple Date: Thu, 15 May 2025 18:07:19 -0500 Subject: [PATCH 2/2] Fix ruff formatting --- adafruit_ov5640/__init__.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/adafruit_ov5640/__init__.py b/adafruit_ov5640/__init__.py index 30919e9..29543ca 100644 --- a/adafruit_ov5640/__init__.py +++ b/adafruit_ov5640/__init__.py @@ -1511,7 +1511,9 @@ def brightness(self, value: int) -> None: def contrast(self) -> int: """Sensor contrast adjustment, from -4 to 4 inclusive""" try: - value = _contrast_settings.index([self._read_register(0x5586), self._read_register(0x5585)]) + value = _contrast_settings.index( + [self._read_register(0x5586), self._read_register(0x5585)] + ) except ValueError: value = 0 if value > 3: