From fa678e28fca7e017f8233ffc8b53096e3f7d8514 Mon Sep 17 00:00:00 2001 From: Willem Melching Date: Sun, 15 Jan 2023 21:51:22 +0100 Subject: [PATCH] MacOS: no spidev package (#1211) --- python/spi.py | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/python/spi.py b/python/spi.py index 973f2af6..f0154ba7 100644 --- a/python/spi.py +++ b/python/spi.py @@ -2,12 +2,16 @@ import fcntl import math import time import struct -import spidev import logging from contextlib import contextmanager from functools import reduce from typing import List +try: + import spidev +except ImportError: + spidev = None + # Constants SYNC = 0x5A HACK = 0x79 @@ -48,6 +52,9 @@ def flocked(fd): # This mimics the handle given by libusb1 for easy interoperability class SpiHandle: def __init__(self): + if spidev is None: + raise RuntimeError("spidev is not available") + self.spi = spidev.SpiDev() # pylint: disable=c-extension-no-member self.spi.open(0, 0)