Skip to main content

Python wrapper around libusb-1.0

Project description

python-libusb1 is a Python wrapper for libusb-1.0

Supports all transfer types, both in synchronous and asynchronous mode.

URL:
http://github.com/vpelletier/python-libusb1
http://pypi.python.org/pypi/libusb1

Requirements:
- Python [1] 2.4+ required, 2.6+ recommended
Untested with Python 3.x (use 2to3 to convert)
- ctypes [2] (included in Python 2.5+)
- libusb-1.0 [3]

Compatibility:
python-libusb1 is expected to work on any OS supported by libusb. It can be
expected to work on:
- Linux
- Windows
*not* libusb-win32 (this is libusb0.1, the old API)
- Cygwin
- OSX (macports, fink, homebrew)
- FreeBSD
libusb reimplementation: http://svnweb.freebsd.org/base/head/lib/libusb/
- OpenBSD

Contents:
- libusb1.py
Bare ctype wrapper, inspired from library C header file.
- usb1.py
Python-ish (classes, exceptions, ...) wrapper around libusb1.py .
See docstrings (pydoc recommended) for usage.
- setup.py
To package as python egg.
- stdeb.cfg
To package as Debian package. See https://github.com/astraw/stdeb .
- testUSB1.py
Very limited regression test, only testing functions which do not require a
USB device.

Install:
python setup.py install
(you might need root access to do this)

History:
0.0.1
Initial release
0.1.1
Massive rework of usb1.py, making it more python-ish and fixing some
memory leaks.
0.1.2
Deprecate "transfer" constructor parameter to allow instance reuse.
0.1.3
Some work on isochronous "in" transfers. They don't raise exceptions anymore,
but data validity and python-induced latency impact weren't properly checked.
0.2.0
Fix asynchronous configuration transfers.
Stand-alone polling thread for multi-threaded apps.
More libusb methods exposed on objects, including ones not yet part of
released libusb versions (up to their commit 4630fc2).
2to3 friendly.
Drop deprecated USBDevice.reprConfigurations method.
0.2.1
Add FreeBSD support.
0.2.2
Add Cygwin support.
OpenBSD support checked (no change).
0.2.3
Add fink and homebrew support on OSX.
Drop PATH_MAX definition.
Try harder when looking for libusb.

[1] http://www.python.org/
[2] http://python.net/crew/theller/ctypes/
[3] http://www.libusb.org/wiki/libusb-1.0

See also (other projects, different author):
pyusb: another python wrapper for (among others) libusb1
http://sourceforge.net/projects/pyusb/

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

libusb1-0.2.3.tar.gz (22.9 kB view details)

Uploaded Source

File details

Details for the file libusb1-0.2.3.tar.gz.

File metadata

  • Download URL: libusb1-0.2.3.tar.gz
  • Upload date:
  • Size: 22.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for libusb1-0.2.3.tar.gz
Algorithm Hash digest
SHA256 3f2f955d6277dd53031b4c57905339bcadb2a45333f13fa2540c0cef70bda86b
MD5 b5af9a57eed6358d4746e78d01344762
BLAKE2b-256 93c60fe842d6d841dd84352fb9f24f5bbecdc47a9bf092527ba6f1752a8ecd90

See more details on using hashes here.

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