Skip to main content

A package that simplifies USB/HID communications on windows

Project description

*********************************
Installing and Using pywinusb.hid
*********************************

.. contents:: **Table of Contents**

Introduction
============

This project aims to be a simple USB/HID user application space (hence no system
drivers needed) 100% python package (without C extensions). Initially targeting
simple HID devices management, also planed, is `support for WinUSB`_ high level wrapping.

The vision for this project is to be something similar to `PySerial` or `PyParallel`
but for USB/HID hardware enthusiasts.

.. _support for WinUSB: http://msdn.microsoft.com/en-us/library/aa476426.aspx

Advantages
----------

* All python code, using ctypes

* Top level handling of HID events (usage events calling hook function handlers)

Current limitations
-------------------

Depending on your application you might find these limitations

* Windows only (so far...)

* Not so fast top level interfacing. But you could still access, directly
your raw data reports.

Installation Instructions
=========================

Windows
-------

No package releases yet. For now you can access the code using `the svn repository`_.

I'm planning initially to have a mature pywinusb.hid name space (sub-package)
implementation before attempting any of the pywinusb.winusb stuff.

.. _the svn repository: http://code.google.com/p/pywinusb/source/checkout

Other
-----

So far only Windows OS it's supported.

Using pywinusb.hid
==================

View the `./examples` directory for some (ok, few right now) scripts. These show,
for instance, how to use pywinusb.hid to handle events from HID class devices usages events.

Gernal purpose instructions can be found on the `main project code page`_.

.. _main project code page: http://code.google.com/p/pywinusb

Utilities
---------

More on this later...

* The module pywinusb.hid.tools contains a function to check HID class devices capabilities,
for now it provides a basic human readable text report (see the hid.core package,
run it as main while HID class devices are connected to your system)

Feedback and Contributing
=========================

Feel free to contact me! use the `main code project page`_, just tell what do you think
about the project or bring me anything you think might be cool to consider.

Any participation it's appreciated, if you are willing to contribute but don't have any
ideas or spare time, `feel free to donate`_.

.. _main code project page: https://github.com/rene-aguirre/pywinusb
.. _feel free to donate: https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=4640085

-------------------------
Release changes
-------------------------
0.2.9,
* Fixed broken value array usages transactions
* Better Setup API device paths handling

0.2.8,
* Fixed broken value array usages transactions

0.2.7,
* Fixing sending output / feature reports

0.2.6,
* Fixed broken input report handling
* Stability improvements

0.2.5,
* Tweaked PnP example, added frame closing event handler, so the USB device is closed
* Report reading threads and device closing optimizations

0.2.4,
* Fixed bugs preventing properly setting report usage variables after a HidReport().get()
* Fixed raw_data.py example
* Fixed bug preventing proper value array setting/getting items
* Fixed deadlock when device unplugged

0.2.3,
* Added HidDevice.set_raw_data_handler(), and corresponding raw_data.py example script

0.2.2,
* Fixing output only mode (no input report for forced open)

0.2.1,
* Bringing a little bit of stability
* Output only mode (no reading thread configured)
* Kind of usable now

0.1.0,
* First public release

nn

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

pywinusb-0.2.9.zip (52.0 kB view hashes)

Uploaded Source

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