Relaxed Electrophysiological Data Acquisition,
Control, and Stimulation

... enjoy your recordings

Get Relacs at Fast, secure and Free Open Source software downloads

relacs (pronounced "relax!") is a software platform for closed-loop data acquisition, online analysis, and stimulus generation specifically designed for (but not limited to) electrophysiological recordings.

relacs is free and open software to foster development and exchange of innovative experimental protocols and analysis techniques.


Closed loop experiments. From Benda et al. 2007.

The main reason for developing relacs was to create a platform for implementing

relacs offers many more features, that sets it apart from other data acquisition software:

In addition, relacs provides:

We are using this program very succesfully in our lab for many years (see list of publications).


Open source
relacs is programmed in C++:
  • 231 header files
  • 231 C++ source code files
  • altogether 206 354 lines of code and inline documentation (127 735 lines for the relacs-core, 78 619 lines for plugins)
relacs is published under the GPL. More ...
relacs uses Qt4 for the GUI and mutlithreading support, Doxygen for inline documentation of the API, and optionally GSL-GNU scientific library for some numerics. Currently, only COMEDI based implementations of the AnalogInput and AnalogOutput plugins are provided (see comedi plugins). The dynamic-clamp feature is based on RTAI.
Note: For normal (no dynamic-clamp) streaming analog input and output, RTAI is NOT required!
Sweep-based quasi-continuous acquisition
Stimulation (analog output) and data-recording (analog input) are started simultaneously for each stimulus to ensure best synchronization, but data are recorded all the time and can be viewed continuously. Depending on the hardware and the driver implementation relacs is also able to start analog output without interrupting the analog input stream (e.g. the dynamic clamp plugins).
relacs has been designed initially for up to about 10 input traces. More traces are possible, but might require a different widget for showing the raw voltage traces.
Stimulation via analog output channels
The neuron (or whatever system) can be stimulated via the analog output channels of the data acquisition boards with continuous freely programmable waveforms. Depending on the hardware of your experimental setup this can be, for example, a current injected into the cell, a sound wave, an electric field, ...
Seamless integration of attenuators
For adjusting the amplitude of a stimulus and still make use of the full resolution of the data aquisition board one can use digitally controlled attenuators. This is especially usefull for acoustic stimuli. relacs uses two levels of abstraction to support attenuators. First, the Attenuator device interface provides an interface to various attenuator device types. Second, the Attenuate interface translates an intensity variable to the appropriate attenuation level. How the intensity variable is interpreted (e.g. as dB SPL or sound pressure) depends on the implementation of the Attenuate interface as well as on the corresponding calibration program. This way, one requests a meaningful intensity for a stimulus that is then automatically and hardware-independently translated into an appropriate attenuation level.


Version 0.9.8
January, 2017
Support of NIX files.

Read all NEWS announcements.

Last modified: Wed May 10 10:15:41 CEST 2017 Valid HTML 4.01 Transitional