Skip to main content

Python binding for the libusb C library (ctypes/cffi-based libusb)

Project description

libusb

Python binding for the libusb C library.

Overview

Python libusb module is a low-level binding for libusb C library.
It is an effort to allow python programs full access to the API implemented and provided by the well known *libusb* library.

libusb is a lightweight Python package, based on the ctypes library.
It is fully compliant implementation of the original C libusb 1.0 API by implementing whole its functionality in a clean Python instead of C.

libusb API 1.0 documentation can be found at:

libusb-1.0 API Reference

About original libusb:

Borrowed from the original website:

libusb - A cross-platform user library to access USB devices

Overview

libusb is a C library that provides generic access to USB devices. It is intended to be used by developers to facilitate the production of applications that communicate with USB hardware.

It is portable: Using a single cross-platform API, it provides access to USB devices on Linux, OS X, Windows, Android, OpenBSD, etc.

It is user-mode: No special privilege or elevation is required for the application to communicate with a device.

It is version-agnostic: All versions of the USB protocol, from 1.0 to 3.1 (latest), are supported.

What platforms are supported?

Linux, OS X, Windows, Windows CE, Android, OpenBSD/NetBSD, Haiku.

For additional information, please consult the FAQ or the Wiki.

Requirements

  • It is fully independent package.
    All necessary things are installed during the normal installation process.
  • ATTENTION: currently works and tested only for Windows.

Installation

Prerequisites:

To install run:

python -m pip install --upgrade libusb

Development

Visit development page

Installation from sources:

Clone the sources and run:

python -m pip install ./libusb

or on development mode:

python -m pip install --editable ./libusb

Prerequisites:

  • Development is strictly based on tox. To install it run:

    python -m pip install tox

License

Copyright (c) 2016-2018 Adam Karpierz

Licensed under the zlib/libpng License
Please refer to the accompanying LICENSE file.

Authors

Changelog

1.0.22b2 (2018-11-08)

  • Setup improvement.

  • Update required setuptools version.

1.0.22b1 (2018-03-30)

  • Upgrade to the libusb v.1.0.22

  • Setup improvement.

1.0.21b4 (2018-02-26)

  • Improve and simplify setup and packaging.

1.0.21b3 (2018-02-25)

  • Setup improvement.

1.0.21b2 (2017-12-18)

  • Fix the error of platform detecting.

1.0.21b1 (2017-10-11)

  • First beta release.

1.0.21a3 (2017-08-20)

  • Next alpha release.

1.0.21a0 (2016-09-24)

  • First alpha release.

0.0.1 (2016-09-23)

  • Initial release.

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

libusb-1.0.22b2.zip (253.0 kB view details)

Uploaded Source

File details

Details for the file libusb-1.0.22b2.zip.

File metadata

  • Download URL: libusb-1.0.22b2.zip
  • Upload date:
  • Size: 253.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: Python-urllib/3.6

File hashes

Hashes for libusb-1.0.22b2.zip
Algorithm Hash digest
SHA256 30b59e1161f6b8d1cb5929944495b61992aa2d77f31c4035774261061eb5faf2
MD5 281e0542b282f1e04f4f74ad3e8b3b70
BLAKE2b-256 b5b89925815ee4ffcce28b465890c36d32062f3212583bdd828638bfd6f459b4

See more details on using hashes here.

Supported by

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