Skip to main content

An object-oriented interface for the Comedi drivers.

Project description

This package provides an object-oriented interface to the Comedi drivers. The standard Python interface bundled with Comedilib is a simple SWIG clone of the C interface. In pycomedi, we convert the functions into class methods (see pycomedi.classes), so you don’t have to worry about dragging around opaque types like comedi_t * device pointers. We also bundle related constants together in _Enums and _Flags (see pycomedi.constants), to make handling common operations like flag manipulations simpler. Finally, there are a number of utility classes (see pycomedi.utility) to make common tasks like creating instructions or reading hardware-timed analog input easier.

Installation

Packages

Gentoo

I’ve packaged pycomedi for Gentoo. You need layman and my wtk overlay. Install with:

# emerge -av app-portage/layman
# layman --add wtk
# emerge -av dev-python/pycomedi

Dependencies

If you’re installing by hand or packaging pycomedi for another distribution, you’ll need the following dependencies:

Package

Purpose

Debian

Gentoo

NumPy

?

python-numpy

dev-python/numpy

SciPy

testing

python-scipy

sci-libs/scipy

Comedi

Comedilib interface

python-comedilib

sci-libs/comedilib [1]

nose

testing

python-nose

dev-python/nose

Cython

Comedilib interface

cython

dev-python/cython

Installing by hand

Pycomedi is available as a Git repository:

$ git clone git://tremily.us/pycomedi.git

See the homepage for details. To install the checkout, run the standard:

$ python setup.py install

Usage

See the examples in the doc directory.

Testing

Integration tests with:

$ nosetests --with-doctest --doctest-extension=txt doc

Run both integration tests and internal unit tests with:

$ ./test.sh

Licence

This project is distributed under the GNU General Public License Version 2 or greater.

Author

W. Trevor King wking@drexel.edu

Project details


Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page