kacq is a program to acquire analog signals on Gnu/Linux systems. It focuses on acquiring, recording and displaying the data. Not much signal processing is performed by kacq. My aim at the moment is to develop an application that is simple to use and stable.
kacq is written in C and depends on two other C projects. The graphical user interface is built with the GTK+ library. This is the library maintained by the Gnome project. The other important part is the comedi drivers. This, togheter with the comedilib library, represent the interface between kacq and the analog-to-digital devices. All the code in kacq is free.
kacq was written to perform acquisition of analog signals using National Instruments boards. We used these boards because we were already familiar with them. kacq was tested with computers equipped with two NI PCI-6259 (64 channels) or one NI PCI-6251 (16 channels). When two PCI-6259 devices are present on the computer, they are used in a Server-Slave configuration to acquire more channels simultaneously. For example, on a computer with two NI PCI-6259 it is possible to record up to 64 channels at a sampling rate of 24kHz. In theory, kacq should work without major modifications with most of the AD cards that are supported by the comedi project. In practice, this has not yet been tested.
The data are saved in binary files containing only the data. Each data point has 16 bits (short integer on most systems). The samples are saved one after the other. Within a sample, the channels are stored one after the other.
kacq has a simple graphical user interface to set your recording configuration and display the data. The main window shows an oscilloscope with the expected buttons (play, stop, etc.) to control it. All the configuration is done via menu items in the Edit menu. The program can also be run in a terminal mode with the --terminal
option. That might be usefull to run kacq from a shell script. To learn about the other possible options, run kacq with the option --help
.