-with io.open(os.path.join(here, 'README.rst'), encoding='utf-8') as f:
-    long_description = '\n' + f.read()
+with io.open(os.path.join(here, "README.rst"), encoding="utf-8") as f:
+    long_description = "\n" + f.read()
+
+board_reqs = []
+if os.path.exists("/proc/device-tree/compatible"):
+    with open("/proc/device-tree/compatible", "rb") as f:
+        compat = f.read()
+    if b"nvidia,tegra" in compat:
+        board_reqs = ["Jetson.GPIO"]
+    if (
+        b"brcm,bcm2835" in compat
+        or b"brcm,bcm2836" in compat
+        or b"brcm,bcm2837" in compat
+        or b"brcm,bcm2838" in compat
+    ):
+        board_reqs = ["RPi.GPIO", "rpi_ws281x>=4.0.0", "sysv_ipc"]