]> Repositories - Adafruit_Blinka-hackapet.git/blobdiff - src/adafruit_blinka/microcontroller/rp2040_u2if/i2c.py
Merge pull request #476 from caternuson/feather_u2if
[Adafruit_Blinka-hackapet.git] / src / adafruit_blinka / microcontroller / rp2040_u2if / i2c.py
index bf8d0ed61c2778ec5541b1f546c337063301586b..f12764ad3134755709e64522b669882eddd422db 100644 (file)
@@ -54,6 +54,7 @@ class I2C:
 
     # pylint: enable=unused-argument
 
+
 class I2C_Pico(I2C):
     """I2C Class for Pico u2if"""
 
@@ -69,6 +70,7 @@ class I2C_Pico(I2C):
 
         super().__init__(index, frequency=frequency)
 
+
 class I2C_Feather(I2C):
     """I2C Class for Feather u2if"""
 
@@ -82,3 +84,46 @@ class I2C_Feather(I2C):
 
         super().__init__(index, frequency=frequency)
 
+
+class I2C_QTPY(I2C):
+    """I2C Class for QT Py 2if"""
+
+    def __init__(self, scl, sda, *, frequency=100000):
+        index = None
+        if scl.id == 25 and sda.id == 24:
+            index = 0
+        if scl.id == 23 and sda.id == 22:
+            index = 1
+        if index is None:
+            raise ValueError("I2C not found on specified pins.")
+        self._index = index
+
+        super().__init__(index, frequency=frequency)
+
+
+class I2C_ItsyBitsy(I2C):
+    """I2C Class for ItsyBitsy u2if"""
+
+    def __init__(self, scl, sda, *, frequency=100000):
+        index = None
+        if scl.id == 3 and sda.id == 2:
+            index = 1
+        if index is None:
+            raise ValueError("I2C not found on specified pins.")
+        self._index = index
+
+        super().__init__(index, frequency=frequency)
+
+
+class I2C_QT2040_Trinkey(I2C):
+    """I2C Class for QT2040 Trinkey u2if"""
+
+    def __init__(self, scl, sda, *, frequency=100000):
+        index = None
+        if scl.id == 17 and sda.id == 16:
+            index = 0
+        if index is None:
+            raise ValueError("I2C not found on specified pins.")
+        self._index = index
+
+        super().__init__(index, frequency=frequency)