if os.path.exists("/proc/device-tree/compatible"):
with open("/proc/device-tree/compatible", "rb") as f:
compat = f.read()
+ # Jetson Nano, TX2, Xavier, etc
if b"nvidia,tegra" in compat:
board_reqs = ["Jetson.GPIO"]
+ # Pi 5
+ elif b"brcm,bcm2712" in compat:
+ board_reqs = [
+ "rpi_ws281x>=4.0.0",
+ "rpi-lgpio",
+ "Adafruit-Blinka-Raspberry-Pi5-Neopixel",
+ ]
# Pi 4 and Earlier
- if (
+ elif (
b"brcm,bcm2835" in compat
or b"brcm,bcm2836" in compat
or b"brcm,bcm2837" in compat
or b"brcm,bcm2838" in compat
or b"brcm,bcm2711" in compat
):
- board_reqs = ["RPi.GPIO", "rpi_ws281x>=4.0.0", "sysv_ipc>=1.1.0"]
- # Pi 5
- if b"brcm,bcm2712" in compat:
- board_reqs = ["rpi_ws281x>=4.0.0", "sysv_ipc>=1.1.0", "rpi-lgpio"]
- if (
- b"ti,am335x" in compat
- ): # BeagleBone Black, Green, PocketBeagle, BeagleBone AI, etc.
+ board_reqs = ["RPi.GPIO", "rpi_ws281x>=4.0.0"]
+ # BeagleBone Black, Green, PocketBeagle, BeagleBone AI, etc.
+ elif b"ti,am335x" in compat:
board_reqs = ["Adafruit_BBIO"]
setup(
},
include_package_data=True,
install_requires=[
- "Adafruit-PlatformDetect>=3.62.0",
+ "Adafruit-PlatformDetect>=3.70.1",
"Adafruit-PureIO>=1.1.7",
+ "binho-host-adapter>=0.1.6",
"pyftdi>=0.40.0",
"adafruit-circuitpython-typing",
+ "sysv_ipc>=1.1.0;sys_platform=='linux' and platform_machine!='mips'",
+ "toml>=0.10.2;python_version<'3.11'",
]
+ board_reqs,
license="MIT",