From 7fcf46bdc31ef4a36463152169ab78d2bcbe8317 Mon Sep 17 00:00:00 2001 From: rippanda12 Date: Mon, 23 Sep 2024 22:15:51 +0300 Subject: [PATCH 1/2] Add Indiedroid Support --- adafruit_platformdetect/board.py | 12 ++++++++++++ adafruit_platformdetect/constants/boards.py | 5 +++++ 2 files changed, 17 insertions(+) diff --git a/adafruit_platformdetect/board.py b/adafruit_platformdetect/board.py index f36b8f5..eda6638 100644 --- a/adafruit_platformdetect/board.py +++ b/adafruit_platformdetect/board.py @@ -196,6 +196,7 @@ def id(self) -> Optional[str]: or self._orange_pi_id() or self._armbian_id() or self._rk3588_id() + or self._ameridroid_id() ) elif chip_id == chips.RYZEN_V1605B: board_id = self._udoo_id() @@ -482,6 +483,11 @@ def _diet_pi_id(self) -> Optional[str]: if "OrangePi 4" in board_value: return boards.ORANGE_PI_4 return None + + def _ameridroid_id(self) -> Optional[str]: + board_value = self.detector.get_device_model().upper() + if "INDIEDROID NOVA" in board_value: + return boards.INDIEDROID_NOVA def _orange_pi_id(self) -> Optional[str]: board_value = self.detector.get_device_model() @@ -941,6 +947,11 @@ def any_raspberry_pi_cm(self) -> bool: def any_beaglebone(self) -> bool: """Check whether the current board is any Beaglebone-family system.""" return self.id in boards._BEAGLEBONE_IDS + + @property + def any_ameridroid(self) -> bool: + """Check whether the current board is any Ameridroid device.""" + return self.id in boards._AMERIDROID_IDS @property def any_orange_pi(self) -> bool: @@ -1130,6 +1141,7 @@ def lazily_generate_conditions(): yield self.any_raspberry_pi_40_pin yield self.any_raspberry_pi yield self.any_beaglebone + yield self.any_ameridroid yield self.any_orange_pi yield self.any_nanopi yield self.any_giant_board diff --git a/adafruit_platformdetect/constants/boards.py b/adafruit_platformdetect/constants/boards.py index adcd31f..e994e4d 100644 --- a/adafruit_platformdetect/constants/boards.py +++ b/adafruit_platformdetect/constants/boards.py @@ -248,6 +248,9 @@ LUCKFOX_PICO_MINI = "LUCKFOX_PICO_MINI" LUCKFOX_PICO_PLUS = "LUCKFOX_PICO_PLUS" +# Ameridroid boards +INDIEDROID_NOVA = "INDIEDROID_NOVA" + # StarFive boards _STARFIVE_BOARD_IDS = (VISIONFIVE2,) # Asus Tinkerboard @@ -626,5 +629,7 @@ LUCKFOX_PICO_PLUS, ) +_AMERIDROID_IDS = (INDIEDROID_NOVA,) + # Agnostic board OS_AGNOSTIC_BOARD = "OS_AGNOSTIC_BOARD" From 47ce0add1dd07657d637a6aeb8c0ce47a3ea47f1 Mon Sep 17 00:00:00 2001 From: rippanda12 Date: Sun, 6 Oct 2024 16:51:40 +0300 Subject: [PATCH 2/2] Chore: Make pylint happy --- adafruit_platformdetect/board.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/adafruit_platformdetect/board.py b/adafruit_platformdetect/board.py index eda6638..745eca5 100644 --- a/adafruit_platformdetect/board.py +++ b/adafruit_platformdetect/board.py @@ -483,11 +483,12 @@ def _diet_pi_id(self) -> Optional[str]: if "OrangePi 4" in board_value: return boards.ORANGE_PI_4 return None - + def _ameridroid_id(self) -> Optional[str]: board_value = self.detector.get_device_model().upper() if "INDIEDROID NOVA" in board_value: return boards.INDIEDROID_NOVA + return None def _orange_pi_id(self) -> Optional[str]: board_value = self.detector.get_device_model() @@ -947,7 +948,7 @@ def any_raspberry_pi_cm(self) -> bool: def any_beaglebone(self) -> bool: """Check whether the current board is any Beaglebone-family system.""" return self.id in boards._BEAGLEBONE_IDS - + @property def any_ameridroid(self) -> bool: """Check whether the current board is any Ameridroid device."""