#!/usr/bin/python import sys import hidapi def print_info(devinfo): print 'type: %04x %04x' % (devinfo.vendor_id, devinfo.product_id) print 'path:', devinfo.path print 'serial_number:', devinfo.serial_number print ' Manufacturer:', devinfo.manufacturer_string print ' Product: ', devinfo.product_string print ' Release: ', devinfo.release_number print ' Usage Page: ', devinfo.usage_page print ' Usage: ', devinfo.usage print ' Interface: ', devinfo.interface_number dev = hidapi.hid_open_path(devinfo.path) if dev: print ' Manufacturer String:', hidapi.hid_get_manufacturer_string(dev) print ' Product String:', hidapi.hid_get_product_string(dev) print ' Serial Number String:', hidapi.hid_get_serial_number_string(dev) else: print ' ERROR: ' def print_all(): if hidapi.hid_init(): print 'ERROR: could not initialize' sys.exit(1) try: infos = hidapi.hid_enumerate(0, 0) cur = infos while cur: print_info(cur.contents) print cur = cur.contents.next hidapi.hid_free_enumeration(infos) finally: hidapi.hid_exit() if __name__ == '__main__': print_all()