from __future__ import print_function # depends on python hidapi and a proper udev rule. import hid import time for d in hid.enumerate(): keys = list(d.keys()) keys.sort() for key in keys: print("%s : %s" % (key, d[key])) print() try: print("Opening the device") h = hid.device() h.open(0x0cd4, 0x1112) print("Manufacturer: %s" % h.get_manufacturer_string()) print("Product: %s" % h.get_product_string()) h.set_nonblocking(1) time.sleep(0.05) while True: data = h.read(0x0010) if data: # print(data) print("WHEEL: " + str(data[0])) print("VOL : " + str(data[1])) print("BAR : " + str(data[2])) print("BUT : " + str(data[3])) print("Closing the device") h.close() except IOError as ex: print(ex) print("Done")