title: instrumental-software date: 2020-05-23 This post is a roundup of open source instrumental software projects that I know of. I've organized them alphabetically. I have some minimal notes on a few projects here, but mostly this is just a "roundup" page. # table of contents [TOC] # EPICS # Exopy [website](http://exopy.readthedocs.io/) [source](https://github.com/Exopy/exopy) Quote: Exopy is a versatile data acquisition software. It provides an extensible set of tools to describe an perform data acquisition. Each measurement is described by a hierarchical structure, allowing simple nested loops structure and more complex ones involving multiple non nested loops and conditions. The hierarchy is edited through a Graphical User Interface, allowing a smooth learning curve. # bluesky [bluesky](https://blueskyproject.io/) Bluesky is a project made up of several other projects ## ophyd ## bluesky-ui # Instrbuilder integrates with ophyd / bluesky project. # Instrumental [website](https://instrumental-lib.readthedocs.io/) Quote: Instrumental is a Python-based library for controlling lab hardware like cameras, DAQs, oscilloscopes, spectrometers, and more. It has high-level drivers for instruments from NI, Tektronix, Thorlabs, PCO, Photometrics, Burleigh, and others. # Lantz [website](https://lantz.readthedocs.io/) Simple yet powerful instrumentation in Python # micro-manager [website](https://micro-manager.org/) A really cool project. Check out the [whitepaper](https://github.com/nicost/uScopeControl/blob/master/Software%20for%20Microscopy%20Workshop%20WhitePaper.pdf) and their [CMMCore Class Reference](https://valelab4.ucsf.edu/~MM/doc/MMCore/html/class_c_m_m_core.html). # PyCMDS (personal project) # PyDM [project webpage](http://slaclab.github.io/pydm/) Python display manager. PyDM is a PyQt-based framework for building user interfaces for control systems. The goal is to provide a no-code, drag-and-drop system to make simple screens, as well as a straightforward python framework to build complex applications. # Py-Hardware-Support [website](https://ddietze.github.io/Py-Hardware-Support/index.html) Here’s a small collection of some python modules that can be used to add hardware support to your programs. I have written those to be easy to use but not necessarily covering all the functionality the library or device has to offer. # python-microscopy [website](http://www.python-microscopy.org/) Quote: python-microscopy is a large package including a farily mature microscope control GUI as well as a lot of functionality for analysis and postprocessing of microscopy data, especially for single molecule localization experiments. # Qcodes [website](http://qcodes.github.io/Qcodes/index.html) [source](https://github.com/QCoDeS/Qcodes) Qcodes is a Python-based data acquisition framework developed by the Copenhagen / Delft / Sydney / Microsoft quantum computing consortium. The goal is a common framework for physics experiments, so: - new students don’t need to spend a long time learning software in order to participate in experiments - one has to write their own code only for pieces that are very specific to their own experiment - code can and should be contributed back to the framework - the process of moving between teams or labs, and of setting up a new experiment is streamlined - physics experiments can take advantage of modern software and best practices # Qudi [website](https://ulm-iqo.github.io/qudi-generated-docs/html-docs/index.html) # ScopeFoundry [website](http://www.scopefoundry.org/) Quote: A Python platform for controlling custom laboratory experiments and visualizing scientific data. # SFGacquisition [source](https://github.com/GeigerGroup/SFGacquisition) Software for interfacing with WinSpec/Lightfield and WinTOPAS as well as Thorlabs motorized optic mounts to control SFG spectral acquisitions at multiple DFG positions. # storm-control [source](https://github.com/ZhuangLab/storm-control) Quote: storm-control was originally designed for acquiring single molecule localization microscopy data in a manual or semi-automated fashion. At a later point the ability to collect MERFISH data was added. # yaq (personal project)