]> Repositories - Adafruit_Blinka-hackapet.git/commitdiff
added i2c
authorAndy <antan@nvidia.com>
Wed, 27 Feb 2019 01:00:36 +0000 (17:00 -0800)
committerAndy <antan@nvidia.com>
Fri, 8 Mar 2019 19:51:13 +0000 (11:51 -0800)
src/adafruit_blinka/board/jetson_pin.py
src/adafruit_blinka/microcontroller/tegra/pin.py
src/digitalio.py
src/microcontroller/__init__.py

index f380ea69afd1f3d4c6edc3c01fb9d6246693cb7d..87d7c5927925ea18d9e8e6e9b495fcaff0857c1e 100644 (file)
@@ -5,8 +5,10 @@ from adafruit_blinka.microcontroller.tegra import pin
 D1 = pin.D1
 D2 = pin.D2
 D3 = pin.D3
+SDA = pin.D3
 D4 = pin.D4
 D5 = pin.D5
+SCL = pin.D5
 D6 = pin.D6
 D7 = pin.D7
 D8 = pin.D8
@@ -29,7 +31,9 @@ D24 = pin.D24
 D25 = pin.D25
 D26 = pin.D26
 D27 = pin.D27
+SDA_1 = pin.D27
 D28 = pin.D28
+SCL_1 = pin.D28
 D29 = pin.D29
 D30 = pin.D30
 D31 = pin.D31
@@ -41,4 +45,4 @@ D36 = pin.D36
 D37 = pin.D37
 D38 = pin.D38
 D39 = pin.D39
-D40 = pin.D40
\ No newline at end of file
+D40 = pin.D40
index 6c2709618dd594bd7ae1ab95c44a693dc287b342..fa535ce272e24c699bfd7c244f96cb041595cb12 100644 (file)
@@ -1,10 +1,22 @@
 import sys
+import Jetson.GPIO as GPIO
 sys.path.append("/opt/nvidia/jetson-gpio/lib/python")
 sys.path.append("/opt/nvidia/jetson-gpio/lib/python/Jetson/GPIO")
-import Jetson.GPIO as GPIO
 GPIO.setmode(GPIO.BCM)
 GPIO.setwarnings(False)   # shh!
 
+# Each Jetson model uses different I2C busses
+JETSON_I2C_BUS_DEFS = {
+    "JETSON_TX1": [0, 1],
+    "JETSON_TX2": [1, 0],
+    "JETSON_XAVIER": [8, 1],
+    "JETSON_TXX": [1, 0]
+}
+
+model = GPIO.get_model()
+I2C_BUS = JETSON_I2C_BUS_DEFS[model][0]
+I2C_BUS_1 = JETSON_I2C_BUS_DEFS[model][1]
+
 # Pins dont exist in CPython so...lets make our own!
 class Pin:
     IN = 0
@@ -72,8 +84,10 @@ class Pin:
 D1 = Pin(1)
 D2 = Pin(2)
 D3 = Pin(3)
+SDA = Pin(3)
 D4 = Pin(4)
 D5 = Pin(5)
+SCL = Pin(5)
 D6 = Pin(6)
 D7 = Pin(7)
 D8 = Pin(8)
@@ -96,7 +110,9 @@ D24 = Pin(24)
 D25 = Pin(25)
 D26 = Pin(26)
 D27 = Pin(27)
+SDA_1 = Pin(27)
 D28 = Pin(28)
+SCL_1 = Pin(28)
 D29 = Pin(29)
 D30 = Pin(30)
 D31 = Pin(31)
@@ -109,3 +125,8 @@ D37 = Pin(37)
 D38 = Pin(38)
 D39 = Pin(39)
 D40 = Pin(40)
+
+i2cPorts = (
+    (I2C_BUS, SCL, SDA), (I2C_BUS_1, SCL_1, SDA_1),
+)
+
index c017a0a6341746b5cda0e67fce47085414aff1b9..44034f94af590f1b80f78e9fc82a2169c16b6686 100755 (executable)
@@ -54,6 +54,7 @@ Pull.DOWN = Pull()
 
 #Pull.NONE = Pull()
 
+
 class DigitalInOut(ContextManaged):
     _pin = None
 
index 92471010fe801762906e2e6c248ac141d00626ed..812178bf5426c8a49ecba4651b766dbe38ff52a0 100755 (executable)
@@ -36,5 +36,7 @@ elif chip_id == ap_chip.SUN8I:
     from adafruit_blinka.microcontroller.allwinner_h3 import *
 elif chip_id == ap_chip.SAMA5:
     from adafruit_blinka.microcontroller.sama5 import *
+elif chip_id == ap_chip.TEGRAXXX:
+    from adafruit_blinka.microcontroller.tegra import *
 else:
     raise NotImplementedError("Microcontroller not supported:", chip_id)