X-Git-Url: https://git.ayoreis.com/hackapet/Adafruit_Blinka.git/blobdiff_plain/a8ed516cc3b6c4cdd7a346f897aa1a520071a239..031c39f2511a2db0913d6f0410056e3b71c47cc5:/src/adafruit_blinka/agnostic/__init__.py diff --git a/src/adafruit_blinka/agnostic/__init__.py b/src/adafruit_blinka/agnostic/__init__.py old mode 100644 new mode 100755 index 85670bf..1d93e6c --- a/src/adafruit_blinka/agnostic/__init__.py +++ b/src/adafruit_blinka/agnostic/__init__.py @@ -4,28 +4,47 @@ environment is established, can choose various routes to make available and re-export common modules and operations, depending on platform support """ -import gc import sys -gc.collect() -try: - microcontroller = sys.platform -except: - microcontroller = None +# We intentionally are patching into this namespace as module names so skip the name check. +# pylint: disable=invalid-name +platform = sys.platform -board = None -if microcontroller is not None: - if microcontroller == "esp8266": # TODO more conservative board-guessing - board = "feather_huzzah" - elif microcontroller == "samd21": - board = "feather_m0_express" - elif microcontroller == "pyboard": - microcontroller = "stm32" - board = "pyboard" +board_id = None + +if platform is not None: + if platform == "esp8266": # TODO more conservative board-guessing + board_id = "feather_huzzah" + elif platform == "samd21": + board_id = "feather_m0_express" + elif platform == "pyboard": + platform = "stm32" + board_id = "pyboard" + elif platform == "linux": + import re + # we're going to redo the Platform detection, this is a terrible hack + # for now. + try: + # lets see if we're an armbian board + for line in open("/etc/armbian-release", 'r'): + #print(line) + m = re.search('BOARD=(.*)', line) + if m: + board_id = m.group(1) + except: + from Adafruit_GPIO import Platform + if Platform.platform_detect() == Platform.RASPBERRY_PI: + if Platform.pi_version() == 1: + board_id = "raspi_1" + elif Platform.pi_version() == 2: + board_id = "raspi_2" + elif Platform.pi_version() == 3: + board_id = "raspi_3" + elif Platform.platform_detect() == Platform.BEAGLEBONE_BLACK: + board_id = "beaglebone_black" implementation = sys.implementation.name if implementation == "micropython": from utime import sleep -elif implementation == "circuitpython": +elif implementation == "circuitpython" or implementation == "cpython": from time import sleep -gc.collect()