Installation ============ We currently support Linux and Apple Silicon MacOS. You can use any distro but you will need to install the following: * libhidapi * libusb * docker Optionally, if you are using the EVK2 cable-attached-dev kit, you will need the appropriate firmware to run it in cable-attached mode. Please consult our online firmware guide for information on how to obtain this firmware and how to flash it. Ubuntu ------ We will give Ubuntu as an example. We need to install hidapi packages and a udev rule. .. code-block:: bash sudo apt install libhidapi-hidraw0 libhidapi-libusb0 You will also need the `teensy udev rule `_. Download the :code:`00-teensy.rules` file from the link and put it in :code:`/etc/udev/rules.d/`. Then you will need to run .. code-block:: bash sudo udevadm control --reload-rules && sudo udevadm trigger Apple Silicon Mac ----------------- .. code-block:: bash brew install hidapi libusb Then you will need to add to your zshrc and restart all open terminals. .. code-block:: bash export DYLD_LIBRARY_PATH=/opt/homebrew/lib You could do this by running .. code-block:: bash echo 'export DYLD_LIBRARY_PATH=/opt/homebrew/lib' >> ~/.zshrc Python 3.10 is required (Note: Only 3.10 is supported explicitly. YMMV with newer versions.). Femtocrux requires docker to be installed (see other instructions for femtocrux). From PyPI: .. code-block:: bash pip install femtodriver This will install the :code:`femtodrive` and :code:`pull_femtocrux_image` executables. Docker Installation ------------------- You will need to install docker to run our compiler and simulator. Please refer to the docker installation instructions to do this. Docker Image Password Authentication ------------------------------------ Femtodriver relies on running a docker container (called femtocrux) which contains the compiler to compile your model for the EVK2 SPU-001. In order to download the docker container you will be prompted for a password on your first run on the commandline whether you use the CLI or the Python API. In order to do this before your first run, you can run: .. code-block:: bash pull_femtocrux_image This will trigger the password prompt and allow you to download the docker container. You only have to do this once per femtocrux version release. You may have to do it again if we update the version and you want to get a newer version of femtocrux.