Python library to control an automated fluidics system and perform acquisition on a microscope for sequential FISH experiments.
⚠️ TESTED FOR WINDOWS only: micromanager and most microscope controls work only under Windows.
We provide detailed protocols for single molecule FISH adapated to autoFISH here.
- smFISH base protocol: smFISH_base-protocol
- Clearing protocol: smFISH_clearing
- Clearing protocol: smFISH_SABER
We provide details documentation for the fluidics system and the experimental workflows here
- Documentation to use Python control software: autofish_software-manual
- Documentation to build the fluidics system: autofish_fluidics-construction
- Documentation to use a TTL trigger with the LEICA Thunder: autofish_TTL-Leica-Thunder
We recommend using a package manager (conda) to maintain a clean Python installation. This nees to be done only once.
- Download latest version of miniconda from here.
- Open Anaconda terminal and create dedicated environment:
conda create --name autofish python=3.10 - Activate environment:
conda activate autofish - Pip install autofish (as an alternative see development installation below)
- Base version (without pycromanager) :
pip install autofish - [Optional] Install pycromanager :
pip install pycromanager
- Base version (without pycromanager) :
- Open Anaconda terminal and activate environment:
conda activate autofish - Start user interface with command
autofish
- Open Anaconda terminal and activate environment:
conda activate autofish - Upgrade autoFISH
pip install --upgrade autofish
If you want to modify develop the package, several options exist.
-
Recommended is to
clonethe repository. This will then also allow to propose your changes to the main autoFISH repository as a PullRequest. See for instance here for an explanation for how this is done. This also allows to easier add changes from the main repository -
An alternative is a local installation. While this might be easier in the short run, it will be challenig to integrate future changes on the main repository. Rather than performing the pip install (step 4 above), you
- Download the zip archive of the branch you are interested in.
- Unzip on your machine.
- Open Anaconda terminal at location of the autofish package.
- Activate environment:
conda activate autofish - Editable install
pip install . -e
The behavior of the fluidics and acquistion system is defined by several config files.
-
To test the installation of autofish, you can use demo configurations which require neither a microscope nor a fluidics systems: https://github.com/fish-quant/autofish/tree/main/demo
-
We provide config files that we use on our system (with a Nikon Ti): https://github.com/fish-quant/autofish/tree/main/configs
One of the acquisition options is by using Pycromanager. We found that keeping both micromanager and Pycromanager up-to-date can help to prevent problems.
Last tested, compatible versions:
- Pycromanager: 0.27.2
- Micromanager: nightly 20230224
If you encounter a problem or you have a suggestion, please file an issue.


