Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

libusb

Package Overview
Dependencies
Maintainers
1
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

libusb

Python binding for the libusb C library.

  • 1.0.27.post3
  • Source
  • PyPI
  • Socket score

Maintainers
1

libusb

Python binding for the libusb C library.

Overview

| Python |package_bold| 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* <https://libusb.info/>__ library.

PyPI record_.

Documentation_.

| |package_bold| 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 <http://api.libusb.info>__

|package_bold| uses the underlying libusb C shared library as specified in libusb.cfg (included libusb-X.X.* is the default), but there is also ability to specify it programmatically by one of the following ways:

.. code:: python

import libusb libusb.config(LIBUSB="libusb C shared library absolute path")

or

libusb.config(LIBUSB=None) # included libusb-X.X.* will be used

About original libusb:

Borrowed from the original website <https://libusb.info/>__:

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 <https://github.com/libusb/libusb/wiki/FAQ>__ or the Wiki <https://github.com/libusb/libusb/wiki>__.

Requirements

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

Installation

Prerequisites:

  • Python 3.9 or higher

    • https://www.python.org/
    • with C libusb 1.0.27 is a primary test environment.
  • pip and setuptools

To install run:

.. parsed-literal::

python -m pip install --upgrade |package|

Development

Prerequisites:

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

    python -m pip install --upgrade tox

Visit Development page_.

Installation from sources:

clone the sources:

.. parsed-literal::

git clone |respository| |package|

and run:

.. parsed-literal::

python -m pip install ./|package|

or on development mode:

.. parsed-literal::

python -m pip install --editable ./|package|

License

| |copyright| | Licensed under the zlib/libpng License | https://opensource.org/license/zlib | Please refer to the accompanying LICENSE file.

Authors

.. |package| replace:: libusb .. |package_bold| replace:: libusb .. |copyright| replace:: Copyright (c) 2016-2024 Adam Karpierz .. |respository| replace:: https://github.com/karpierz/libusb.git .. _Development page: https://github.com/karpierz/libusb .. _PyPI record: https://pypi.org/project/libusb/ .. _Documentation: https://libusb.readthedocs.io/ .. _USB Vendors: https://devicehunt.com/all-usb-vendors

Changelog

1.0.27.post3 (2024-10-09)

  • Setup (dependencies) update.

1.0.27.post2 (2024-09-30)

  • Drop support for Python 3.8
  • Setup (dependencies) update.

1.0.27.post1 (2024-08-13)

  • Add support for Python 3.13
  • Setup (dependencies) update.
  • Improvements and cleanup for win32.
  • Source code refactoring and cleanup.

1.0.27 (2024-02-05)

  • | The API has been fully updated to version 1.0.27 (libusb v.1.0.27 | is fully backward compatible with v.1.0.26).
  • | For Windows the shared library binaries have been updated to version | 1.0.27. For Linux and macOS, the shared library binaries remain at | version 1.0.26.
  • Bugfixes for options -i and -w in examples/xusb.py

1.0.26 (2024-02-05)

  • | The API has been partially updated to version 1.0.27, but still | only supports version 1.0.26.
  • Improvements and some little bugfixes.
  • Examples and tests are upgraded to 1.0.27.

1.0.26rc4 (2024-01-25)

  • Setup update (now based on tox >= 4.0).
  • Cleanup.

1.0.26rc2 (2023-12-20)

  • Add linux aarch64 support.

1.0.26rc1 (2023-12-15)

  • Add support for Python 3.12
  • Drop support for Python 3.7
  • Add support for PyPy 3.10
  • Drop support for PyPy 3.7 and 3.8
  • Copyright year update.

1.0.26b5 (2022-09-10)

  • Tox configuration has been moved to pyproject.toml

1.0.26b4 (2022-08-25)

  • | Downgrade of included shared libraries for Linux: | libusb v.1.0.26 -> v.1.0.24 (for now based on Debian's 11 (bullseye)), | because of loading issues of v.1.0.26 from Debian's 12 (bookworm) | shared libraries.
  • Setup update.

1.0.26b3 (2022-07-25)

  • Setup update (currently based mainly on pyproject.toml).
  • Update for macOS (dlls are included for v.10.7+ and v.11.6+ 64bit).

1.0.26b2 (2022-07-18)

  • Upgrade for Windows: libusb v.1.0.24 -> v.1.0.26
  • Update for macOS (v.11.6 64bit).
  • Add support for Python 3.10 and 3.11
  • Add support for PyPy 3.7, 3.8 and 3.9
  • Setup update.

1.0.24b3 (2022-01-10)

  • Drop support for Python 3.6
  • Copyright year update.
  • Setup update.

1.0.24b1 (2021-11-10)

  • Upgrade for Windows: libusb v.1.0.23 -> v.1.0.24
  • Add support for macOS (thank you very much dccote@Github!).
  • Copyright year update.
  • backward incompatibility - libusb.cfg is now a regular INI file.
  • Fixes for examples (but still some examples don't work properly).
  • Setup update.

1.0.23b7 (2020-11-19)

  • Ability to specify the underlying shared library programmatically.
  • General update and cleanup.
  • Setup update.
  • Removing dependence on atpublic.
  • Fixed docs setup.
  • Fix for hotplugtest example.

1.0.23b1 (2020-09-15)

  • | Upgrade for Windows: libusb v.1.0.22 -> v.1.0.23 | (partially; without libusb_wrap_sys_device, because | original Windows v.1.0.23 dlls do not export this function).
  • Add support for Python 3.9
  • Drop support for Python 3.5
  • Setup update.
  • Cleanup.

1.0.22b9 (2020-01-17)

  • Added ReadTheDocs config file.
  • Setup update.

1.0.22b8 (2019-11-24)

  • Upgrade for Linux: libusb x64 v.1.0.21 -> v.1.0.22
  • Fix for error when the shared library is configured.
  • Cleanup.

1.0.22b6 (2019-11-23)

  • Initial support for Linux (libusb v.1.0.21 x64).

1.0.22b5 (2019-11-14)

  • Drop support for Python 2
  • Drop support for Python 3.4
  • Add support for Python 3.8
  • Setup update and cleanup.

1.0.22b4 (2019-02-15)

  • Setup improvement.
  • Update required setuptools version.
  • Some updates of examples.

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.

Keywords

FAQs


Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc