Experix is a command-line driven environment for laboratory data acquisition and device control and graphical presentation and analysis of data. Written in C for GNU-Linux . Tested on PC and Raspberry Pi.
The core is written very generally in order to support applications by means of script files.
Device interfaces: PCMCIA daq (2 devices tested) via kernel module with interrupt handler and memory-mapped data; USB daq (1 device tested) using libusbx; running an equipment servicing program via pipes.
Interfaces accessible via commands and scripts: file i/o modelled on stdio and stdlib; usb control and bulk transfers; socket operations; webcam; graphics via framebuffer.
Applications (not all available yet for download) include: cell poker (like an atomic force microscope); tissue mechanical tester; fluorescence photobleaching; alternating laser excitation fluorescence; fluorescence intensity distribution analysis; iverilog simulation analysis.
Features
- arbitrarily long command strings with readline recall/edit and log file
- arbitrary arithmetic and math calculations
- numbers and multi-dimensional arrays in several integer and floating data types
- simple and versatile graph command
- define variables in all data types, and commands
- write/read files: binary, formatted, pipes; flexible interface like stdio
- run any command in a thread, with inter-thread comunication ability
- interface to special experix kernel drivers for data acquisition cards
- construct arbitrary USB control and bulk transfers
- take the tour in the downloads directory, experix-demo-tour