You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

31 lines
1.0 KiB

"""Allows useful indirection to test Pin naming logic by switching platform in testing
or provide bootstrapping logic for board identification where auto-detection is not
feasible (e.g. multiple ESP8266 boards architecturally identical). Once runtime
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
microcontroller = sys.platform
microcontroller = None
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"
implementation =
if implementation == "micropython":
from utime import sleep
elif implementation == "circuitpython":
from time import sleep