1. Installation#

Check your version of python#

You will need python 3.11 or later. You can check your version of python by typing into a terminal:

python3 --version

Clone the blueapi repository locally#

Clone the blueapi repository to your local scratch directory and cd into it.

Create a virtual environment#

It is recommended that you install into a “virtual environment” so this installation will not interfere with any existing Python software:

python3 -m venv /path/to/venv
source /path/to/venv/bin/activate

Installing the library#

You can now use pip to install the library and its dependencies:

python3 -m pip install blueapi

If you require a feature that is not currently released you can also install from GitHub:

python3 -m pip install git+https://github.com/DiamondLightSource/blueapi.git

The library should now be installed and the commandline interface on your path. You can check the version that has been installed by typing:

blueapi --version

Troubleshooting:

  • If you encounter a keycloak hook 137 error, this is because of there not being enough resources. You may need to close things that are running in the background.

  • You may encounter

Error response from daemon: rootlessport listen tcp 0.0.0.0:1883: bind: address already in use

This can arise from activemq-for-dummy which is used across DLS for GDA development. You will need to stop processes that have conflicting ports.