MikrofonSensor und TemperaturSenor die zwei Python programme funktionieren. mit den jeweiligen 2 json Datein. Beim TemperaturSensor wird im Terminal keine Wertre ausgegeben aber in der json Datei kann man die Temp und Hum sehen.

This commit is contained in:
Chiara 2025-05-28 14:53:44 +02:00
parent 4c654ec969
commit 1751076592
2614 changed files with 349009 additions and 0 deletions

View file

@ -0,0 +1,4 @@
# SPDX-FileCopyrightText: 2022 Aleksandr Saiapin for Adafruit Industries
#
# SPDX-License-Identifier: MIT
"""Definition for the AllWinner D1 chip"""

View file

@ -0,0 +1,112 @@
# SPDX-FileCopyrightText: 2022 Aleksandr Saiapin for Adafruit Industries
#
# SPDX-License-Identifier: MIT
"""Allwinner D1 pin names"""
from adafruit_blinka.microcontroller.generic_linux.libgpiod_pin import Pin
PB0 = Pin(32)
TWI2_SCL = PB0
PB1 = Pin(33)
TWI2_SDA = PB1
PB2 = Pin(34)
PB3 = Pin(35)
PB4 = Pin(36)
PB5 = Pin(37)
PB6 = Pin(38)
PB7 = Pin(39)
PB8 = Pin(40)
UART0_TX = PB8
PB9 = Pin(41)
UART0_RX = PB9
PB10 = Pin(42)
PB11 = Pin(43)
PB12 = Pin(44)
PC0 = Pin(64)
UART2_TX = PC0
PC1 = Pin(65)
UART2_RX = PC1
PC2 = Pin(66)
SPI0_SCLK = PC2
PC3 = Pin(67)
SPI0_CS = PC3
PC4 = Pin(68)
SPI0_MOSI = PC4
PC5 = Pin(69)
SPI0_MISO = PC5
PC6 = Pin(70)
SPI0_WP = PC6
PC7 = Pin(71)
SPI0_HOLD = PC7
PD0 = Pin(96)
PD1 = Pin(97)
PD2 = Pin(98)
PD3 = Pin(99)
PD4 = Pin(100)
PD5 = Pin(101)
PD6 = Pin(102)
PD7 = Pin(103)
PD8 = Pin(104)
PD9 = Pin(105)
PD10 = Pin(106)
PD11 = Pin(107)
PD12 = Pin(108)
PD13 = Pin(109)
PD14 = Pin(110)
PD15 = Pin(111)
PD16 = Pin(112)
PD17 = Pin(113)
PD18 = Pin(114)
PD19 = Pin(115)
PD20 = Pin(116)
PD21 = Pin(117)
PD22 = Pin(118)
PE0 = Pin(128)
PE1 = Pin(129)
PE2 = Pin(130)
PE3 = Pin(131)
PE4 = Pin(132)
PE5 = Pin(133)
PE6 = Pin(134)
PE7 = Pin(135)
PE8 = Pin(136)
PE9 = Pin(137)
PE10 = Pin(138)
PE11 = Pin(139)
PE12 = Pin(140)
PE13 = Pin(141)
PE14 = Pin(142)
TWI1_SCL = PE14
PE15 = Pin(143)
TWI1_SDA = PE15
PE16 = Pin(144)
TWI3_SCL = PE16
PE17 = Pin(145)
TWI3_SDA = PE17
PG6 = Pin(198)
UART1_TX = PG6
PG7 = Pin(199)
UART1_RX = PG7
PG8 = Pin(200)
UART1_RTS = PG8
PG9 = Pin(201)
UART1_CTS = PG9
PG10 = Pin(202)
PG11 = Pin(203)
PG12 = Pin(204)
PG13 = Pin(205)
PG14 = Pin(206)
PG15 = Pin(207)
PG16 = Pin(208)
PG17 = Pin(209)
PG18 = Pin(210)
i2cPorts = (
(2, TWI2_SCL, TWI2_SDA),
(3, TWI3_SCL, TWI3_SDA),
)
uartPorts = (
(0, UART0_TX, UART0_RX),
(1, UART1_TX, UART1_RX),
(2, UART2_TX, UART2_RX),
)
spiPorts = ((0, SPI0_SCLK, SPI0_MOSI, SPI0_MISO),)

View file

@ -0,0 +1,4 @@
# SPDX-FileCopyrightText: 2021 Melissa LeBlanc-Williams for Adafruit Industries
#
# SPDX-License-Identifier: MIT
"""Definition of all Allwinner chips"""

View file

@ -0,0 +1,4 @@
# SPDX-FileCopyrightText: 2021 Melissa LeBlanc-Williams for Adafruit Industries
#
# SPDX-License-Identifier: MIT
"""Definition for the AllWinner A20 chip"""

View file

@ -0,0 +1,170 @@
# SPDX-FileCopyrightText: 2023 Xenokrates
#
# SPDX-License-Identifier: MIT
"""Allwinner A20 pin names"""
from adafruit_blinka.microcontroller.generic_linux.libgpiod_pin import Pin
# Pin descriptions at https://linux-sunxi.org/A20/PIO
PA0 = Pin(0)
PA1 = Pin(1)
PA2 = Pin(2)
UART2_TX = PA2
PA3 = Pin(3)
UART2_RX = PA3
PA6 = Pin(6)
PA7 = Pin(7)
PA8 = Pin(8)
PA9 = Pin(9)
PA10 = Pin(10)
UART1_TX = PA10
PA11 = Pin(11)
UART1_RX = PA11
PA12 = Pin(12)
PA13 = Pin(13)
PA14 = Pin(14)
PA15 = Pin(15)
PA16 = Pin(16)
PA17 = Pin(17)
PB0 = Pin(32)
TWI0_SCK = PB0
PB1 = Pin(33)
TWI0_SDA = PB1
PB2 = Pin(34)
PWM0 = PB2
PB3 = Pin(35)
IR0_TX = PB3
PB4 = Pin(36)
IR0_RX = PB4
PB5 = Pin(37)
PB6 = Pin(38)
PB7 = Pin(39)
PB8 = Pin(40)
PB12 = Pin(44)
PB13 = Pin(45)
PB18 = Pin(50)
TWI1_SCK = PB18
PB19 = Pin(51)
TWI1_SDA = PB19
PB20 = Pin(52)
TWI2_SCK = PB20
PB21 = Pin(53)
TWI2_SDA = PB21
PB22 = Pin(54)
UART0_TX = PB22
PB23 = Pin(55)
UART0_RX = PB23
PC19 = Pin(83)
SPI2_CS0 = PC19
PC20 = Pin(84)
SPI2_SCLK = PC20
PC21 = Pin(85)
SPI2_MOSI = PC21
PC22 = Pin(86)
SPI2_MISO = PC22
PG2 = Pin(194)
PH2 = Pin(226)
PH4 = Pin(228)
UART4_TX = PH4
PH5 = Pin(229)
UART4_RX = PH5
PH6 = Pin(230)
UART5_TX = PH6
PH7 = Pin(231)
UART5_RX = PH7
PH8 = Pin(232)
PH9 = Pin(233)
PH10 = Pin(234)
PH11 = Pin(235)
PH12 = Pin(236)
PH13 = Pin(237)
PH14 = Pin(238)
PH15 = Pin(239)
PH16 = Pin(240)
PH17 = Pin(241)
PH18 = Pin(242)
PH19 = Pin(243)
PH20 = Pin(244)
CAN_TX = PH20
PH21 = Pin(245)
CAN_RX = PH21
PH24 = Pin(248)
PI0 = Pin(256)
TWI3_SCK = PI0
PI1 = Pin(257)
TWI3_SDA = PI1
PI3 = Pin(259)
PWM1 = PI3
PI10 = Pin(266)
SPI0_CS0 = PI10
PI11 = Pin(267)
SPI0_SCLK = PI11
PI12 = Pin(268)
SPI0_MOSI = PI12
UART6_TX = PI12
PI13 = Pin(269)
SPI0_MISO = PI13
UART6_RX = PI13
PI14 = Pin(270)
SPI0_CS1 = PI14
PI16 = Pin(272)
UART2_RTS = PI16
PI17 = Pin(273)
UART2_CTS = PI17
PI18 = Pin(274)
UART2_TX = PI18
PI19 = Pin(275)
UART2_RX = PI19
PI20 = Pin(276)
UART7_TX = PI20
PI21 = Pin(277)
UART7_RX = PI21
# A10/A20 has a touch panel controller which can be configured to operate
# as four seperate adc chanels, providing 12-bit resolution.
XP_TP = 1
XN_TP = 2
YP_TP = 3
YN_TP = 4
# SysFS pwm outputs, pwm channel and pin in first tuple
pwmOuts = (
((0, 0), PWM0),
((0, 1), PWM1),
)
# ordered as i2cId, sclId, sdaId
i2cPorts = (
(0, TWI0_SCK, TWI0_SDA),
(1, TWI1_SCK, TWI1_SDA),
(2, TWI2_SCK, TWI2_SDA),
)
# ordered as spiId, sckId, mosiId, misoId
spiPorts = (
(0, SPI0_SCLK, SPI0_MOSI, SPI0_MISO),
(2, SPI2_SCLK, SPI2_MOSI, SPI2_MISO),
)
# ordered as uartId, txId, rxId
uartPorts = (
(0, UART0_TX, UART0_RX),
(2, UART2_TX, UART2_RX),
(4, UART4_TX, UART4_RX),
(5, UART5_TX, UART5_RX),
(6, UART6_TX, UART6_RX),
(7, UART7_TX, UART7_RX),
)
# sysFs analog inputs, Ordered as analogInId, device, and channel
analogIns = (
(XP_TP, 1, 0),
(XN_TP, 1, 1),
(YP_TP, 1, 2),
(YN_TP, 1, 3),
)

View file

@ -0,0 +1,4 @@
# SPDX-FileCopyrightText: 2021 Melissa LeBlanc-Williams for Adafruit Industries
#
# SPDX-License-Identifier: MIT
"""Definition for the AllWinner A33 chip"""

View file

@ -0,0 +1,50 @@
# SPDX-FileCopyrightText: 2021 Melissa LeBlanc-Williams for Adafruit Industries
#
# SPDX-License-Identifier: MIT
"""Allwinner A33 pin names"""
from adafruit_blinka.microcontroller.generic_linux.libgpiod_pin import Pin
PB0 = Pin(32) # PB0/UART2_TX/UART0_TX/PB_EINT0
UART2_TX = PB0
PB1 = Pin(33) # PB1/UART2_RX/UART0_RX/PB_EINT1
UART2_RX = PB1
PC0 = Pin(64) # PC0/ND_WE/SPI0_MOSI
PC1 = Pin(65) # PC1/ND_ALE/SPI0_MISO
PC2 = Pin(66) # PC2/ND_CLE/SPI0_CLK
PH4 = Pin(228) # PH4/TWI1_SCK
TWI1_SCL = PH4
PH5 = Pin(229) # PH5/TWI1_SDA
TWI1_SDA = PH5
PH6 = Pin(230) # PH6/SPI0_CS/UART3_TX
UART3_TX = PH6
SPI0_CS = PH6
PH7 = Pin(231) # PH7/SPI0_CLK/UART3_RX
UART3_RX = PH7
SPI0_SCLK = PH7
PH8 = Pin(232) # PH8/SPI0_MOSI/UART3_RTS
UART3_RTS = PH8
SPI0_MOSI = PH8
PH9 = Pin(233) # PH9/SPI0_MISO/UART3_CTS
UART3_CTS = PH9
SPI0_MISO = PH9
# ordered as i2cId, sclId, sdaId
i2cPorts = ((0, TWI1_SCL, TWI1_SDA),)
# ordered as spiId, sckId, mosiId, misoId
spiPorts = ((0, SPI0_SCLK, SPI0_MOSI, SPI0_MISO),)
# ordered as uartId, txId, rxId
uartPorts = (
(2, UART2_TX, UART2_RX),
(3, UART3_TX, UART3_RX),
)

View file

@ -0,0 +1,4 @@
# SPDX-FileCopyrightText: 2021 Melissa LeBlanc-Williams for Adafruit Industries
#
# SPDX-License-Identifier: MIT
"""Definition for the AllWinner A64 chip"""

View file

@ -0,0 +1,91 @@
# SPDX-FileCopyrightText: 2021 Melissa LeBlanc-Williams for Adafruit Industries
#
# SPDX-License-Identifier: MIT
"""Allwinner A64 pin names"""
from adafruit_blinka.microcontroller.generic_linux.libgpiod_pin import Pin
PB0 = Pin((1, 32))
UART2_TX = PB0
PB1 = Pin((1, 33))
UART2_RX = PB1
PB2 = Pin((1, 34))
PB3 = Pin((1, 35))
PB4 = Pin((1, 36))
PB5 = Pin((1, 37))
PB6 = Pin((1, 38))
PB7 = Pin((1, 39))
PC0 = Pin((1, 64))
SPI0_MOSI = PC0
PC1 = Pin((1, 65))
SPI0_MISO = PC1
PC2 = Pin((1, 66))
SPI0_SCLK = PC2
PC3 = Pin((1, 67))
SPI0_CS = PC3
PC4 = Pin((1, 68))
PC5 = Pin((1, 69))
PC6 = Pin((1, 70))
PC7 = Pin((1, 71))
PC8 = Pin((1, 72))
PC9 = Pin((1, 73))
PC10 = Pin((1, 74))
PC11 = Pin((1, 75))
PC12 = Pin((1, 76))
PC13 = Pin((1, 77))
PC14 = Pin((1, 78))
PC15 = Pin((1, 79))
PC16 = Pin((1, 80))
PD0 = Pin((1, 96))
UART3_TX = PD0
SPI1_CS = PD0
PD1 = Pin((1, 97))
SPI1_SCLK = PD1
UART3_RX = PD1
PD2 = Pin((1, 98))
UART4_TX = PD2
SPI1_MOSI = PD2
PD3 = Pin((1, 99))
UART4_RX = PD3
SPI1_MISO = PD3
PD4 = Pin((1, 100))
PD5 = Pin((1, 101))
PD6 = Pin((1, 102))
PE14 = Pin((1, 142))
TWI2_SCL = PE14
PE15 = Pin((1, 143))
TWI2_SDA = PE15
PH2 = Pin((1, 226))
TWI1_SCL = PH2
PH3 = Pin((1, 227))
TWI1_SDA = PH3
PH4 = Pin((1, 228))
PH5 = Pin((1, 229))
PH6 = Pin((1, 230))
PH7 = Pin((1, 231))
PH8 = Pin((1, 232))
PH9 = Pin((1, 233))
PL2 = Pin((0, 2))
PL3 = Pin((0, 3))
PL8 = Pin((0, 8))
PL9 = Pin((0, 9))
PL10 = Pin((0, 10))
# ordered as i2cId, sclId, sdaId
i2cPorts = ((1, TWI1_SCL, TWI1_SDA), (2, TWI2_SCL, TWI2_SDA))
# ordered as spiId, sckId, mosiId, misoId
spiPorts = (
(0, SPI0_SCLK, SPI0_MOSI, SPI0_MISO),
(1, SPI1_SCLK, SPI1_MOSI, SPI1_MISO),
)
# ordered as uartId, txId, rxId
uartPorts = (
(2, UART2_TX, UART2_RX),
(3, UART3_TX, UART3_RX),
(4, UART4_TX, UART4_RX),
)

View file

@ -0,0 +1,4 @@
# SPDX-FileCopyrightText: 2021 Melissa LeBlanc-Williams for Adafruit Industries
#
# SPDX-License-Identifier: MIT
"""Definition for the AllWinner H3 chip"""

View file

@ -0,0 +1,71 @@
# SPDX-FileCopyrightText: 2021 Melissa LeBlanc-Williams for Adafruit Industries
#
# SPDX-License-Identifier: MIT
"""Allwinner H3 pin names"""
from adafruit_blinka.microcontroller.generic_linux.libgpiod_pin import Pin
PA0 = Pin(0)
UART2_TX = PA0
PA1 = Pin(1)
UART2_RX = PA1
PA2 = Pin(2)
PA3 = Pin(3)
PA6 = Pin(6)
PA7 = Pin(7)
PA8 = Pin(8)
PA9 = Pin(9)
PA10 = Pin(10)
PA11 = Pin(11)
TWI0_SCL = PA11
PA12 = Pin(12)
TWI0_SDA = PA12
PA13 = Pin(13)
UART3_TX = PA13
PA14 = Pin(14)
UART3_RX = PA14
SPI1_SCLK = PA14
PA15 = Pin(15)
SPI1_MOSI = PA15
PA16 = Pin(16)
SPI1_MISO = PA16
PA17 = Pin(17)
PA18 = Pin(18)
PA19 = Pin(19)
PA20 = Pin(20)
PA21 = Pin(21)
PC0 = Pin(64)
SPI0_MOSI = PC0
PC1 = Pin(65)
SPI0_MISO = PC1
PC2 = Pin(66)
SPI0_SCLK = PC2
PC3 = Pin(67)
SPI0_CS = PC3
PC4 = Pin(68)
PC7 = Pin(71)
PD14 = Pin(110)
PG6 = Pin(198)
UART1_TX = PG6
PG7 = Pin(199)
UART1_RX = PG7
PG8 = Pin(200)
PG9 = Pin(201)
PG10 = Pin(202)
PG11 = Pin(203)
PG12 = Pin(204)
PG13 = Pin(205)
PL2 = Pin((1, 2))
PL4 = Pin((1, 4))
i2cPorts = ((0, TWI0_SCL, TWI0_SDA),)
# ordered as spiId, sckId, mosiId, misoId
spiPorts = (
(0, SPI0_SCLK, SPI0_MOSI, SPI0_MISO),
(1, SPI1_SCLK, SPI1_MOSI, SPI1_MISO),
)
# ordered as uartId, txId, rxId
uartPorts = ((3, UART3_TX, UART3_RX),)

View file

@ -0,0 +1,4 @@
# SPDX-FileCopyrightText: 2021 Melissa LeBlanc-Williams for Adafruit Industries
#
# SPDX-License-Identifier: MIT
"""Definition for the AllWinner H5 chip"""

View file

@ -0,0 +1,74 @@
# SPDX-FileCopyrightText: 2021 Melissa LeBlanc-Williams for Adafruit Industries
#
# SPDX-License-Identifier: MIT
"""Allwinner H5 pin names"""
from adafruit_blinka.microcontroller.generic_linux.libgpiod_pin import Pin
PA0 = Pin((1, 0))
UART2_TX = PA0
PA1 = Pin((1, 1))
UART2_RX = PA1
PA2 = Pin((1, 2))
PA3 = Pin((1, 3))
PA6 = Pin((1, 6))
PA7 = Pin((1, 7))
PA8 = Pin((1, 8))
PA9 = Pin((1, 9))
PA10 = Pin((1, 10))
PA11 = Pin((1, 11))
TWI0_SCL = PA11
PA12 = Pin((1, 12))
TWI0_SDA = PA12
PA13 = Pin((1, 13))
UART3_TX = PA13
PA14 = Pin((1, 14))
UART3_RX = PA14
SPI1_SCLK = PA14
PA15 = Pin((1, 15))
SPI1_MOSI = PA15
PA16 = Pin((1, 16))
SPI1_MISO = PA16
PA17 = Pin((1, 17))
PA18 = Pin((1, 18))
PA19 = Pin((1, 19))
PA20 = Pin((1, 20))
PA21 = Pin((1, 21))
PC0 = Pin((1, 64))
SPI0_MOSI = PC0
PC1 = Pin((1, 65))
SPI0_MISO = PC1
PC2 = Pin((1, 66))
SPI0_SCLK = PC2
PC3 = Pin((1, 67))
SPI0_CS = PC3
PC4 = Pin((1, 68))
PC5 = Pin((1, 69))
PC6 = Pin((1, 70))
PC7 = Pin((1, 71))
PD11 = Pin((1, 107))
PD14 = Pin((1, 110))
PG6 = Pin((1, 198))
UART1_TX = PG6
PG7 = Pin((1, 199))
UART1_RX = PG7
PG8 = Pin((1, 200))
PG9 = Pin((1, 201))
PG10 = Pin((1, 202))
PG11 = Pin((1, 203))
PG12 = Pin((1, 204))
PG13 = Pin((1, 205))
PL0 = Pin((0, 0))
PL1 = Pin((0, 1))
i2cPorts = ((0, TWI0_SCL, TWI0_SDA),)
# ordered as spiId, sckId, mosiId, misoId
spiPorts = (
(0, SPI0_SCLK, SPI0_MOSI, SPI0_MISO),
(1, SPI1_SCLK, SPI1_MOSI, SPI1_MISO),
)
# ordered as uartId, txId, rxId
uartPorts = ((3, UART3_TX, UART3_RX),)

View file

@ -0,0 +1,4 @@
# SPDX-FileCopyrightText: 2021 Melissa LeBlanc-Williams for Adafruit Industries
#
# SPDX-License-Identifier: MIT
"""Definition for the AllWinner H6 chip"""

View file

@ -0,0 +1,53 @@
# SPDX-FileCopyrightText: 2021 Melissa LeBlanc-Williams for Adafruit Industries
#
# SPDX-License-Identifier: MIT
"""Allwinner H6 Pin Names"""
from adafruit_blinka.microcontroller.generic_linux.libgpiod_pin import Pin
PC16 = Pin((1, 79))
PD14 = Pin((1, 110))
PD15 = Pin((1, 111))
PD16 = Pin((1, 112))
PD17 = Pin((1, 113))
PD18 = Pin((1, 114))
PD19 = Pin((1, 115))
UART2_TX = PD19
PD20 = Pin((1, 116))
UART2_RX = PD20
PD21 = Pin((1, 117))
PD22 = Pin((1, 118))
PD23 = Pin((1, 119))
PD24 = Pin((1, 120))
PD25 = Pin((1, 121))
TWI0_SCL = PD25
PD26 = Pin((1, 122))
TWI0_SDA = PD26
PG10 = Pin((1, 202))
PG11 = Pin((1, 203))
PG12 = Pin((1, 204))
PG13 = Pin((1, 205))
PG14 = Pin((1, 206))
PH2 = Pin((1, 226))
PH3 = Pin((1, 227))
SPI1_CS = PH3
PH4 = Pin((1, 228))
SPI1_SCLK = PH4
PH5 = Pin((1, 229))
SPI1_MOSI = PH5
PH6 = Pin((1, 230))
SPI1_MISO = PH6
PH8 = Pin((1, 230))
PH9 = Pin((1, 231))
PL2 = Pin((0, 2))
PL3 = Pin((0, 3))
PL8 = Pin((0, 8))
PL9 = Pin((0, 9))
PL10 = Pin((0, 10))
i2cPorts = ((0, TWI0_SCL, TWI0_SDA),)
spiPorts = ((1, SPI1_SCLK, SPI1_MOSI, SPI1_MISO),)
uartPorts = ((2, UART2_TX, UART2_RX),)

View file

@ -0,0 +1,4 @@
# SPDX-FileCopyrightText: 2021 Melissa LeBlanc-Williams for Adafruit Industries
#
# SPDX-License-Identifier: MIT
"""Definition for the AllWinner H616 chip"""

View file

@ -0,0 +1,127 @@
# SPDX-FileCopyrightText: 2021 Melissa LeBlanc-Williams for Adafruit Industries
#
# SPDX-License-Identifier: MIT
"""Allwinner H616 Pin Names"""
from adafruit_blinka.microcontroller.generic_linux.libgpiod_pin import Pin
__chip_num = 1
with open("/sys/class/gpio/gpiochip0/label", "r") as f:
label = f.read().strip()
if label == "300b000.pinctrl":
__chip_num = 0
PC0 = Pin((__chip_num, 64))
SPI0_SCLK = PC0
PC1 = Pin((__chip_num, 65))
PC2 = Pin((__chip_num, 66))
SPI0_MOSI = PC2
PC3 = Pin((__chip_num, 67))
SPI0_CS0 = PC3
PC4 = Pin((__chip_num, 68))
SPI0_MISO = PC4
PC5 = Pin((__chip_num, 69))
PC6 = Pin((__chip_num, 70))
PC7 = Pin((__chip_num, 71))
PC8 = Pin((__chip_num, 72))
PC9 = Pin((__chip_num, 73))
PC10 = Pin((__chip_num, 74))
PC11 = Pin((__chip_num, 75))
PC12 = Pin((__chip_num, 76))
PC13 = Pin((__chip_num, 77))
PC14 = Pin((__chip_num, 78))
PC15 = Pin((__chip_num, 79))
PF0 = Pin((__chip_num, 160))
PF1 = Pin((__chip_num, 161))
PF2 = Pin((__chip_num, 162))
PF3 = Pin((__chip_num, 163))
PF4 = Pin((__chip_num, 164))
PF5 = Pin((__chip_num, 165))
PF6 = Pin((__chip_num, 166))
PG0 = Pin((__chip_num, 192))
PG1 = Pin((__chip_num, 193))
PG2 = Pin((__chip_num, 194))
PG3 = Pin((__chip_num, 195))
PG4 = Pin((__chip_num, 196))
PG5 = Pin((__chip_num, 197))
PG6 = Pin((__chip_num, 198))
PG7 = Pin((__chip_num, 199))
PG8 = Pin((__chip_num, 200))
PG9 = Pin((__chip_num, 201))
PG10 = Pin((__chip_num, 202))
PG11 = Pin((__chip_num, 203))
PG12 = Pin((__chip_num, 204))
PG13 = Pin((__chip_num, 205))
PG14 = Pin((__chip_num, 206))
PG15 = Pin((__chip_num, 207))
PG16 = Pin((__chip_num, 208))
PG17 = Pin((__chip_num, 209))
PG18 = Pin((__chip_num, 210))
PG19 = Pin((__chip_num, 211))
PH0 = Pin((__chip_num, 224))
PH1 = Pin((__chip_num, 225))
PH2 = Pin((__chip_num, 226))
UART5_TX = PH2
PH3 = Pin((__chip_num, 227))
UART5_RX = PH3
PH4 = Pin((__chip_num, 228))
TWI3_SCL = PH4
PH5 = Pin((__chip_num, 229))
UART2_TX = PH5
TWI3_SDA = PH5
SPI1_CS0 = PH5
PH6 = Pin((__chip_num, 230))
UART2_RX = PH6
SPI1_SCLK = PH6
PH7 = Pin((__chip_num, 231))
SPI1_MOSI = PH7
PH8 = Pin((__chip_num, 232))
SPI1_MISO = PH8
PH9 = Pin((__chip_num, 233))
SPI1_CS1 = PH9
PH10 = Pin((__chip_num, 234))
PI0 = Pin((__chip_num, 256))
PI1 = Pin((__chip_num, 257))
PI2 = Pin((__chip_num, 258))
PI3 = Pin((__chip_num, 259))
PI4 = Pin((__chip_num, 260))
PI5 = Pin((__chip_num, 261))
TWI0_SCL = PI5
PI6 = Pin((__chip_num, 262))
TWI0_SDA = PI6
PI7 = Pin((__chip_num, 263))
TWI1_SCL = PI7
PI8 = Pin((__chip_num, 264))
TWI1_SDA = PI8
PI9 = Pin((__chip_num, 265))
TWI2_SCL = PI9
PI10 = Pin((__chip_num, 266))
TWI2_SDA = PI10
PI11 = Pin((__chip_num, 267))
PI12 = Pin((__chip_num, 268))
PI13 = Pin((__chip_num, 269))
PI14 = Pin((__chip_num, 270))
PI15 = Pin((__chip_num, 271))
PI16 = Pin((__chip_num, 272))
i2cPorts = (
(0, TWI0_SCL, TWI0_SDA),
(1, TWI1_SCL, TWI1_SDA),
(2, TWI2_SCL, TWI2_SDA),
(3, TWI3_SCL, TWI3_SDA),
)
# ordered as spiId, sckId, mosiId, misoId
spiPorts = (
(0, SPI0_SCLK, SPI0_MOSI, SPI0_MISO),
(1, SPI1_SCLK, SPI1_MOSI, SPI1_MISO),
)
# ordered as uartId, txId, rxId
uartPorts = (
(2, UART2_TX, UART2_RX),
(5, UART5_TX, UART5_RX),
)

View file

@ -0,0 +1,4 @@
# SPDX-FileCopyrightText: 2021 Melissa LeBlanc-Williams for Adafruit Industries
#
# SPDX-License-Identifier: MIT
"""Definition for the AllWinner H618 chip"""

View file

@ -0,0 +1,163 @@
# SPDX-FileCopyrightText: 2021 Melissa LeBlanc-Williams for Adafruit Industries
#
# SPDX-License-Identifier: MIT
"""Allwinner H618 Pin Names"""
import re
from adafruit_blinka.microcontroller.generic_linux.libgpiod_pin import Pin
def find_gpiochip_number(target_label):
"""Get correct gpiochip number, legacy kernel and mainline kernel are different"""
try:
with open("/sys/kernel/debug/gpio", "r") as f:
lines = f.readlines()
except FileNotFoundError:
print("The file /sys/kernel/debug/gpio does not exist.")
return None
gpiochip_number = None
for line in lines:
if target_label in line:
match = re.search(r"gpiochip(\d+)", line)
if match:
gpiochip_number = match.group(1)
break
return gpiochip_number
if find_gpiochip_number("300b000.pinctrl"):
__chip_num = 1
else:
__chip_num = 0
PC0 = Pin((__chip_num, 64))
SPI0_SCLK = PC0
PC1 = Pin((__chip_num, 65))
PC2 = Pin((__chip_num, 66))
SPI0_MOSI = PC2
PC3 = Pin((__chip_num, 67))
SPI0_CS0 = PC3
PC4 = Pin((__chip_num, 68))
SPI0_MISO = PC4
PC5 = Pin((__chip_num, 69))
PC6 = Pin((__chip_num, 70))
PC7 = Pin((__chip_num, 71))
PC8 = Pin((__chip_num, 72))
PC9 = Pin((__chip_num, 73))
PC10 = Pin((__chip_num, 74))
PC11 = Pin((__chip_num, 75))
PC12 = Pin((__chip_num, 76))
PC13 = Pin((__chip_num, 77))
PC14 = Pin((__chip_num, 78))
PC15 = Pin((__chip_num, 79))
PF0 = Pin((__chip_num, 160))
PF1 = Pin((__chip_num, 161))
PF2 = Pin((__chip_num, 162))
PF3 = Pin((__chip_num, 163))
PF4 = Pin((__chip_num, 164))
PF5 = Pin((__chip_num, 165))
PF6 = Pin((__chip_num, 166))
PG0 = Pin((__chip_num, 192))
PG1 = Pin((__chip_num, 193))
PG2 = Pin((__chip_num, 194))
PG3 = Pin((__chip_num, 195))
PG4 = Pin((__chip_num, 196))
PG5 = Pin((__chip_num, 197))
PG6 = Pin((__chip_num, 198))
UART1_TX = PG6
PG7 = Pin((__chip_num, 199))
UART1_RX = PG7
PG8 = Pin((__chip_num, 200))
PG9 = Pin((__chip_num, 201))
PG10 = Pin((__chip_num, 202))
PG11 = Pin((__chip_num, 203))
PG12 = Pin((__chip_num, 204))
PG13 = Pin((__chip_num, 205))
PG14 = Pin((__chip_num, 206))
PG15 = Pin((__chip_num, 207))
TWI4_SCL = PG15
PG16 = Pin((__chip_num, 208))
TWI4_SDA = PG16
PG17 = Pin((__chip_num, 209))
TWI3_SCL = PG17
PG18 = Pin((__chip_num, 210))
TWI3_SDA = PG18
PG19 = Pin((__chip_num, 211))
PWM1 = PG19
PH0 = Pin((__chip_num, 224))
PH1 = Pin((__chip_num, 225))
PH2 = Pin((__chip_num, 226))
UART5_TX = PH2
PH3 = Pin((__chip_num, 227))
UART5_RX = PH3
PH4 = Pin((__chip_num, 228))
PH5 = Pin((__chip_num, 229))
UART2_TX = PH5
SPI1_CS0 = PH5
PH6 = Pin((__chip_num, 230))
UART2_RX = PH6
SPI1_SCLK = PH6
PH7 = Pin((__chip_num, 231))
SPI1_MOSI = PH7
PH8 = Pin((__chip_num, 232))
SPI1_MISO = PH8
PH9 = Pin((__chip_num, 233))
SPI1_CS1 = PH9
PH10 = Pin((__chip_num, 234))
PI0 = Pin((__chip_num, 256))
PI1 = Pin((__chip_num, 257))
PI2 = Pin((__chip_num, 258))
PI3 = Pin((__chip_num, 259))
PI4 = Pin((__chip_num, 260))
PI5 = Pin((__chip_num, 261))
TWI0_SCL = PI5
PI6 = Pin((__chip_num, 262))
TWI0_SDA = PI6
PI7 = Pin((__chip_num, 263))
TWI1_SCL = PI7
PI8 = Pin((__chip_num, 264))
TWI1_SDA = PI8
PI9 = Pin((__chip_num, 265))
UART3_TX = PI9
PI10 = Pin((__chip_num, 266))
UART3_RX = PI10
PI11 = Pin((__chip_num, 267))
PI12 = Pin((__chip_num, 268))
PWM2 = PI12
PI13 = Pin((__chip_num, 269))
UART4_TX = PI13
PI14 = Pin((__chip_num, 270))
UART4_RX = PI14
PI15 = Pin((__chip_num, 271))
PI16 = Pin((__chip_num, 272))
i2cPorts = (
(0, TWI0_SCL, TWI0_SDA),
(1, TWI1_SCL, TWI1_SDA),
(3, TWI3_SCL, TWI3_SDA),
(4, TWI4_SCL, TWI4_SDA),
)
# ordered as spiId, sckId, mosiId, misoId
spiPorts = (
(0, SPI0_SCLK, SPI0_MOSI, SPI0_MISO),
(1, SPI1_SCLK, SPI1_MOSI, SPI1_MISO),
)
# ordered as uartId, txId, rxId
uartPorts = (
(1, UART1_TX, UART1_RX),
(2, UART2_TX, UART2_RX),
(3, UART3_TX, UART3_RX),
(4, UART4_TX, UART4_RX),
(5, UART5_TX, UART5_RX),
)
# SysFS pwm outputs, pwm channel and pin in first tuple
pwmOuts = [
((0, 1), PWM1),
((0, 2), PWM2),
]

View file

@ -0,0 +1,4 @@
# SPDX-FileCopyrightText: 2021 Melissa LeBlanc-Williams for Adafruit Industries
#
# SPDX-License-Identifier: MIT
"""Definition for the AllWinner T527 chip"""

View file

@ -0,0 +1,306 @@
# SPDX-FileCopyrightText: 2021 Melissa LeBlanc-Williams for Adafruit Industries
#
# SPDX-License-Identifier: MIT
"""Allwinner T527 Pin Names"""
import gpiod
from adafruit_blinka.microcontroller.generic_linux.libgpiod_pin import Pin
chip0 = gpiod.Chip("/dev/gpiochip0")
chip1 = gpiod.Chip("/dev/gpiochip1")
num = chip0.get_info().num_lines
if num < 100:
__chip_num = 1
__chip_r_num = 0
else:
__chip_num = 0
__chip_r_num = 1
chip0.close()
chip1.close()
PB0 = Pin((__chip_num, 32))
PB1 = Pin((__chip_num, 33))
PB2 = Pin((__chip_num, 34))
PB3 = Pin((__chip_num, 35))
PB4 = Pin((__chip_num, 36))
PB5 = Pin((__chip_num, 37))
PB6 = Pin((__chip_num, 38))
PB7 = Pin((__chip_num, 39))
PB8 = Pin((__chip_num, 40))
PB9 = Pin((__chip_num, 41))
PB10 = Pin((__chip_num, 42))
PB11 = Pin((__chip_num, 43))
PB12 = Pin((__chip_num, 44))
PB13 = Pin((__chip_num, 45))
PB14 = Pin((__chip_num, 46))
PC0 = Pin((__chip_num, 64))
PC1 = Pin((__chip_num, 65))
PC2 = Pin((__chip_num, 66))
PC3 = Pin((__chip_num, 67))
PC4 = Pin((__chip_num, 68))
PC5 = Pin((__chip_num, 69))
PC6 = Pin((__chip_num, 70))
PC7 = Pin((__chip_num, 71))
PC8 = Pin((__chip_num, 72))
PC9 = Pin((__chip_num, 73))
PC10 = Pin((__chip_num, 74))
PC11 = Pin((__chip_num, 75))
PC12 = Pin((__chip_num, 76))
PC13 = Pin((__chip_num, 77))
PC14 = Pin((__chip_num, 78))
PC15 = Pin((__chip_num, 79))
PC16 = Pin((__chip_num, 80))
PD0 = Pin((__chip_num, 96))
PD1 = Pin((__chip_num, 97))
PD2 = Pin((__chip_num, 98))
PD3 = Pin((__chip_num, 99))
PD4 = Pin((__chip_num, 100))
PD5 = Pin((__chip_num, 101))
PD6 = Pin((__chip_num, 102))
PD7 = Pin((__chip_num, 103))
PD8 = Pin((__chip_num, 104))
PD9 = Pin((__chip_num, 105))
PD10 = Pin((__chip_num, 106))
PD11 = Pin((__chip_num, 107))
PD12 = Pin((__chip_num, 108))
PD13 = Pin((__chip_num, 109))
PD14 = Pin((__chip_num, 110))
PD15 = Pin((__chip_num, 111))
PD16 = Pin((__chip_num, 112))
PD17 = Pin((__chip_num, 113))
PD18 = Pin((__chip_num, 114))
PD19 = Pin((__chip_num, 115))
PD20 = Pin((__chip_num, 116))
PD21 = Pin((__chip_num, 117))
PD22 = Pin((__chip_num, 118))
PD23 = Pin((__chip_num, 119))
PE0 = Pin((__chip_num, 128))
PE1 = Pin((__chip_num, 129))
PE2 = Pin((__chip_num, 130))
PE3 = Pin((__chip_num, 131))
PE4 = Pin((__chip_num, 132))
PE5 = Pin((__chip_num, 133))
PE6 = Pin((__chip_num, 134))
PE7 = Pin((__chip_num, 135))
PE8 = Pin((__chip_num, 136))
PE9 = Pin((__chip_num, 137))
PE10 = Pin((__chip_num, 138))
PE11 = Pin((__chip_num, 139))
PE12 = Pin((__chip_num, 140))
PE13 = Pin((__chip_num, 141))
PE14 = Pin((__chip_num, 142))
PE15 = Pin((__chip_num, 143))
PF0 = Pin((__chip_num, 160))
PF1 = Pin((__chip_num, 161))
PF2 = Pin((__chip_num, 162))
PF3 = Pin((__chip_num, 163))
PF4 = Pin((__chip_num, 164))
PF5 = Pin((__chip_num, 165))
PF6 = Pin((__chip_num, 166))
PG0 = Pin((__chip_num, 192))
PG1 = Pin((__chip_num, 193))
PG2 = Pin((__chip_num, 194))
PG3 = Pin((__chip_num, 195))
PG4 = Pin((__chip_num, 196))
PG5 = Pin((__chip_num, 197))
PG6 = Pin((__chip_num, 198))
PG7 = Pin((__chip_num, 199))
PG8 = Pin((__chip_num, 200))
PG9 = Pin((__chip_num, 201))
PG10 = Pin((__chip_num, 202))
PG11 = Pin((__chip_num, 203))
PG12 = Pin((__chip_num, 204))
PG13 = Pin((__chip_num, 205))
PG14 = Pin((__chip_num, 206))
PH0 = Pin((__chip_num, 224))
PH1 = Pin((__chip_num, 225))
PH2 = Pin((__chip_num, 226))
PH3 = Pin((__chip_num, 227))
PH4 = Pin((__chip_num, 228))
PH5 = Pin((__chip_num, 229))
PH6 = Pin((__chip_num, 230))
PH7 = Pin((__chip_num, 231))
PH8 = Pin((__chip_num, 232))
PH9 = Pin((__chip_num, 233))
PH10 = Pin((__chip_num, 234))
PH11 = Pin((__chip_num, 235))
PH12 = Pin((__chip_num, 236))
PH13 = Pin((__chip_num, 237))
PH14 = Pin((__chip_num, 238))
PH15 = Pin((__chip_num, 239))
PH16 = Pin((__chip_num, 240))
PH17 = Pin((__chip_num, 241))
PH18 = Pin((__chip_num, 242))
PH19 = Pin((__chip_num, 243))
PI0 = Pin((__chip_num, 256))
PI1 = Pin((__chip_num, 257))
PI2 = Pin((__chip_num, 258))
PI3 = Pin((__chip_num, 259))
PI4 = Pin((__chip_num, 260))
PI5 = Pin((__chip_num, 261))
PI6 = Pin((__chip_num, 262))
PI7 = Pin((__chip_num, 263))
PI8 = Pin((__chip_num, 264))
PI9 = Pin((__chip_num, 265))
PI10 = Pin((__chip_num, 266))
PI11 = Pin((__chip_num, 267))
PI12 = Pin((__chip_num, 268))
PI13 = Pin((__chip_num, 269))
PI14 = Pin((__chip_num, 270))
PI15 = Pin((__chip_num, 271))
PI16 = Pin((__chip_num, 272))
PJ0 = Pin((__chip_num, 288))
PJ1 = Pin((__chip_num, 289))
PJ2 = Pin((__chip_num, 290))
PJ3 = Pin((__chip_num, 291))
PJ4 = Pin((__chip_num, 292))
PJ5 = Pin((__chip_num, 293))
PJ6 = Pin((__chip_num, 294))
PJ7 = Pin((__chip_num, 295))
PJ8 = Pin((__chip_num, 296))
PJ9 = Pin((__chip_num, 297))
PJ10 = Pin((__chip_num, 298))
PJ11 = Pin((__chip_num, 299))
PJ12 = Pin((__chip_num, 300))
PJ13 = Pin((__chip_num, 301))
PJ14 = Pin((__chip_num, 302))
PJ15 = Pin((__chip_num, 303))
PJ16 = Pin((__chip_num, 304))
PJ17 = Pin((__chip_num, 305))
PJ18 = Pin((__chip_num, 306))
PJ19 = Pin((__chip_num, 307))
PJ20 = Pin((__chip_num, 308))
PJ21 = Pin((__chip_num, 309))
PJ22 = Pin((__chip_num, 310))
PJ23 = Pin((__chip_num, 311))
PJ24 = Pin((__chip_num, 312))
PJ25 = Pin((__chip_num, 313))
PJ26 = Pin((__chip_num, 314))
PJ27 = Pin((__chip_num, 315))
PK0 = Pin((__chip_num, 320))
PK1 = Pin((__chip_num, 321))
PK2 = Pin((__chip_num, 322))
PK3 = Pin((__chip_num, 323))
PK4 = Pin((__chip_num, 324))
PK5 = Pin((__chip_num, 325))
PK6 = Pin((__chip_num, 326))
PK7 = Pin((__chip_num, 327))
PK8 = Pin((__chip_num, 328))
PK9 = Pin((__chip_num, 329))
PK10 = Pin((__chip_num, 330))
PK11 = Pin((__chip_num, 331))
PK12 = Pin((__chip_num, 332))
PK13 = Pin((__chip_num, 333))
PK14 = Pin((__chip_num, 334))
PK15 = Pin((__chip_num, 335))
PK16 = Pin((__chip_num, 336))
PK17 = Pin((__chip_num, 337))
PK18 = Pin((__chip_num, 338))
PK19 = Pin((__chip_num, 339))
PK20 = Pin((__chip_num, 340))
PK21 = Pin((__chip_num, 341))
PK22 = Pin((__chip_num, 342))
PK23 = Pin((__chip_num, 343))
PL0 = Pin((__chip_r_num, 0))
PL1 = Pin((__chip_r_num, 1))
PL2 = Pin((__chip_r_num, 2))
PL3 = Pin((__chip_r_num, 3))
PL4 = Pin((__chip_r_num, 4))
PL5 = Pin((__chip_r_num, 5))
PL6 = Pin((__chip_r_num, 6))
PL7 = Pin((__chip_r_num, 7))
PL8 = Pin((__chip_r_num, 8))
PL9 = Pin((__chip_r_num, 9))
PL10 = Pin((__chip_r_num, 10))
PL11 = Pin((__chip_r_num, 11))
PL12 = Pin((__chip_r_num, 12))
PL13 = Pin((__chip_r_num, 13))
PM0 = Pin((__chip_r_num, 32))
PM1 = Pin((__chip_r_num, 33))
PM2 = Pin((__chip_r_num, 34))
PM3 = Pin((__chip_r_num, 35))
PM4 = Pin((__chip_r_num, 36))
PM5 = Pin((__chip_r_num, 37))
# I2C
I2C1_SCL = PB4
I2C1_SDA = PB5
I2C4_SCL = PI0
I2C4_SDA = PI1
I2C5_SCL = PI8
I2C5_SDA = PI9
i2cPorts = (
(1, I2C1_SCL, I2C1_SDA),
(4, I2C4_SCL, I2C4_SDA),
(5, I2C5_SCL, I2C5_SDA),
)
# SPI
SPI1_MOSI = PI4
SPI1_MISO = PI5
SPI1_SCLK = PI3
SPI1_CS0 = PI2
SPI2_MOSI = PB2
SPI2_MISO = PB3
SPI2_SCLK = PB1
SPI2_CS0 = PB0
# ordered as spiId, sckId, mosiId, misoId
spiPorts = (
(1, SPI1_SCLK, SPI1_MOSI, SPI1_MISO),
(2, SPI2_SCLK, SPI2_MOSI, SPI2_MISO),
)
# UART
UART2_TX = PB0
UART2_RX = PB1
UART3_TX = PI11
UART3_RX = PI12
UART4_TX = PI0
UART4_RX = PI1
UART5_TX = PI2
UART5_RX = PI3
UART6_TX = PI6
UART6_RX = PI7
UART7_TX = PB13
UART7_RX = PB14
# ordered as uartId, txId, rxId
uartPorts = (
(2, UART2_TX, UART2_RX),
(3, UART3_TX, UART3_RX),
(4, UART4_TX, UART4_RX),
(5, UART5_TX, UART5_RX),
(6, UART6_TX, UART6_RX),
(7, UART7_TX, UART7_RX),
)
# SysFS pwm outputs, pwm channel and pin in first tuple
pwmOuts = [
((0, 1), PI0),
((0, 2), PI1),
((0, 3), PI2),
((0, 4), PI3),
((0, 5), PI4),
((0, 6), PI5),
((0, 7), PI6),
((0, 8), PI7),
((0, 9), PI8),
((0, 10), PI9),
((0, 11), PI10),
((0, 12), PI11),
((0, 13), PI12),
]