| MIDAS | |
|---|---|
Example web page via mhttpd showing status of an experiment | |
| Developers | Paul Scherrer Institute, TRIUMF |
| Stable release | (see bitbucket.org)
/ May 13, 2026 (2026-05-13) |
| Operating system | Cross-platform |
| Type | Data acquisition |
| License | GPL |
| Website | midas |
| Repository | |
MIDAS is a data acquisition package developed at the Paul Scherrer Institute, Switzerland, and TRIUMF, Canada. It was designed for particle detectors using various hardware and is used today in many experiments in Europe, America and Asia.
Description
MIDAS (Maximum Integration Data Acquisition System) has been developed as a general purpose data acquisition system for small and medium scale experiments originally by Stefan Ritt in 1993, followed by Pierre-André Amaudruz in 1996. It is written mainly in C/C++, JavaScript and Python and published under the GPL.
The experiment complexity ranges from test systems, where a single PC is connected to some hardware, to experiments with several front-end computers and analysis nodes. The system runs under various operating systems and is currently mainly used under Linux.
The Online Database (ODB) is the central configuration and state-management system. It resides completely in shared memory for fastest access and stores experiment settings, run parameters, equipment configurations, status information, and other metadata in a hierarchical key–value structure. The ODB provides real-time access to data for all MIDAS clients, including frontends, analyzers, run control, and web interfaces, enabling synchronized communication and dynamic reconfiguration of experiments without restarting software components.
A speed-optimized RPC layer is used for event-based data exchange, with data rates up to several GB/s. An integrated slow control system contains a fast online database and a history system. Drivers exist for VME and high-voltage crates and many other devices, mainly based on Ethernet communication. A general framework can be extended by user code for front-end readout on one side and data analysis on the other side, mostly based on ROOT. A dedicated server allows fast web access for experiment control and the slow control system including a graphical representation of variable trends (history display) and histograms via the built-in "mplot" library.
The Python Sequencer (PySequencer) is an automation component of the MIDAS data acquisition framework that enables experiment control through Python scripts. It allows users to automate complex data-taking procedures such as run control, hardware configuration, and parameter scans using standard Python syntax. PySequencer integrates with the ODB and the web interface, providing real-time monitoring of script execution, variables, loop progress, and user-defined parameters while maintaining compatibility with the MIDAS run-control system.


Usage of MIDAS
MIDAS is used in many experiments in nuclear and particle physics. Following list shows a few of them:
- Mu to E Gamma experiment at PSI
- Mu3e experiment1 at PSI
- Laboratory for Muon Spin Spectroscopy2 at PSI
- TWIST experiment at TRIUMF
- Various ISAC experiments3 at TRIUMF
- T2K experiment in Japan
- DEAP-3600 experiment at SNOLAB
- Muon g-2 experiment at Fermilab
- ASACUSA experiment at CERN
- ALPHA experiment at CERN
References
References
- "Paul Scherrer Institut (PSI)". psi.ch.
- "Paul Scherrer Institut (PSI)". psi.ch.
- "MIDAS around the world — DAQ Plone Site". daq-plone.triumf.ca. Archived from the original on 6 July 2011. Retrieved 13 January 2022.