Skip to content

jmeloranta/libmeas

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

libmeas - a simplified C programming interface for research instruments (Linux).

Note: Everything here works well on Raspberry Pi 3 (with the exception of
the PVCAM camera interface, which is a proprietary PC only interface). PVCAM
is only needed for the pi-max CCD camera. Skip the pi-max related steps below
if this camera is not used.

1. Supported devices:
---------------------

See src/ directory for supported devices.

2. Compling libmeas
-------------------

2.1 Install the required external libraries (Fedora naming convention): 
   xforms-devel, libusb-devel and linux-gpib from sourceforge
   (http://linux-gpib.sourceforge.net/). On Debian based systems (RasPI's):
   gawk libforms-dev libforms-bin libusb-dev

   There is a sample gpib config file in src/gpib-sample.conf, which could be 
   placed as /etc/gpib.conf. Most notably the first interface is named gpib0 
   rather than the default "violet". For pi-max, you will need the freely 
   available pvcam library installed in /usr/lib and /usr/include (see 
   pi-max/). For firewire, you will also need to install the libraw1394-devel
   package. Don't forget to install the necessary kernel level driver for the
   camera. See pi-max/rc.local.

2.2 Take a look at make.conf to see if you need to change anything there.

2.3 Compile with: make

2.4 Install (as root) with: make install

2.5 For documentation look at the source files under src and examples.

2.6 To link program agaist this library use the cflags provided in
    $(ROOT)/include/meas/make.config  (i.e., use the include statement
    in your Makefile). This will define CFLAGS and LDFLAGS.

Note that many functions require root access. While I have tried to pay some
attention to security issues, this has not been my top priority. So remember
this when you make programs linked against this library and setuid root (i.e.,
chmod u+s). There are functions in misc.c to switch between normal user
and root (given the setuid permissions).

3. Documentation
----------------

Read the source ;-) This is the easiest approach as I have included 
comments there. Look also at the example applications under examples directory.

4. Copying
----------

The code is licensed according to ./COPYING with the exception of the
files under pi-max, uvc-imagingsource, and rpi3-gpib, which were written by 
others.

jmeloranta@gmail.com

5. Problems
-----------

On XFCE with Window Compositor enabled, some windows appear as transparent.
No idea yet why, disable Window Compositor (on Fedora: Settings->Window Manager
Tweaks and Compositor Tab).

About

Library for controlling scientific instruments

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages