]> Repositories - Adafruit_Blinka-hackapet.git/commitdiff
start raspi compatibility
authorladyada <limor@ladyada.net>
Sun, 17 Jun 2018 23:22:27 +0000 (19:22 -0400)
committerScott Shawcroft <scott@tannewt.org>
Wed, 27 Jun 2018 19:56:11 +0000 (12:56 -0700)
examples/piblinka.py [new file with mode: 0644]
src/adafruit_blinka/agnostic/__init__.py
src/adafruit_blinka/board/raspi_23.py [new file with mode: 0644]
src/board.py

diff --git a/examples/piblinka.py b/examples/piblinka.py
new file mode 100644 (file)
index 0000000..182df33
--- /dev/null
@@ -0,0 +1,16 @@
+import sys
+sys.path.append('/home/pi/Adafruit_Micropython_Blinka/src')
+sys.path.append('/home/pi/Adafruit_Python_GPIO')
+
+#from Adafruit_GPIO import Platform
+#print("Platform = ", Platform.platform_detect(), Platform.pi_version())
+
+from adafruit_blinka.agnostic import board as agnostic_board
+print("hello blinka!")
+print("Found system type: %s (sys.plaform %s implementation %s) " % (agnostic_board, sys.platform, sys.implementation.name))
+
+import board
+
+print(dir(board))
+
+#print(adafruit_blinka.adafruit_blinka.agnostic.microcontroller)
index 8d60cff9aa3b9b6d04e54a0474c7b2b582f8e0cb..89d06469b19dc04dd2770a404f63c9c8ffcc66c1 100755 (executable)
@@ -4,10 +4,7 @@
     environment is established, can choose various routes to make available and re-export
     common modules and operations, depending on platform support
 """
     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
 import sys
-gc.collect()
-
 
 # We intentionally are patching into this namespace as module names so skip the name check.
 # pylint: disable=invalid-name
 
 # We intentionally are patching into this namespace as module names so skip the name check.
 # pylint: disable=invalid-name
@@ -22,10 +19,18 @@ if microcontroller is not None:
     elif microcontroller == "pyboard":
         microcontroller = "stm32"
         board = "pyboard"
     elif microcontroller == "pyboard":
         microcontroller = "stm32"
         board = "pyboard"
+    elif microcontroller == "linux":
+        from Adafruit_GPIO import Platform
+        if Platform.platform_detect() == Platform.RASPBERRY_PI:
+            if Platform.pi_version() == 1:
+                board = "raspi_1"
+            elif Platform.pi_version() == 2:
+                board = "raspi_2"
+            elif Platform.pi_version() == 3:
+                board = "raspi_3"
 
 implementation = sys.implementation.name
 if implementation == "micropython":
     from utime import sleep
 
 implementation = sys.implementation.name
 if implementation == "micropython":
     from utime import sleep
-elif implementation == "circuitpython":
+elif implementation == "circuitpython" or implementation == "cpython":
     from time import sleep
     from time import sleep
-gc.collect()
diff --git a/src/adafruit_blinka/board/raspi_23.py b/src/adafruit_blinka/board/raspi_23.py
new file mode 100644 (file)
index 0000000..789521a
--- /dev/null
@@ -0,0 +1,13 @@
+# Pins dont exist in CPython so...lets make our own!
+class Pin:
+    def __init__(self, name, bcm_number):
+        self._name = name
+        self._number = bcm_number
+
+SDA = Pin("SDA", 2)
+SCL = Pin("SCL", 3)
+D4 = Pin("BCM 4", 4)
+D17 = Pin("BCM 17", 17)
+D18 = Pin("BCM 18", 18)
+
+# TODO: more here...
index d1c04c4a6bbb29ef4ff9340cbf71b046058d7948..b9411749d3175262033f5de1e3738f128f062461 100755 (executable)
@@ -37,6 +37,8 @@ elif board == "nodemcu":
     from adafruit_blinka.board.nodemcu import *
 elif board == "pyboard":
     from adafruit_blinka.board.pyboard import *
     from adafruit_blinka.board.nodemcu import *
 elif board == "pyboard":
     from adafruit_blinka.board.pyboard import *
+elif board == "raspi_2" or board == "raspi_3":
+    from adafruit_blinka.board.raspi_23 import *
 elif "sphinx" in sys.modules:
     pass
 else:
 elif "sphinx" in sys.modules:
     pass
 else: