Elizabeth,
Why dont you update your code including the initialization code for your
instrument? It may be usuful in the future if somebody try to search the
list archives for help. Well, this is just a suggestion.
On Fri, Jul 19, 2013 at 4:30 PM, Elizabeth Tolman <etol...@princeton.edu>wrote:
> Thank you all so much for your help! I can now get the multimeter to talk
> to me. It turns out you have to send it a message before it will send you
> reports. I'm still working on the best way to understand and record these
> reports, though, so I may need more help later, but for now things are
> going well.
>
>
> On Fri, Jul 19, 2013 at 4:35 AM, Xiaofan Chen <xiaof...@gmail.com> wrote:
>
>> On Thu, Jul 18, 2013 at 9:40 PM, Elizabeth Tolman <etol...@princeton.edu>
>> wrote:
>> >
>> > I don't know if this is helpful or not, but I have another software
>> > program that reads from this multimeter. I can't look at the source
>> code
>> > because it's a .exe file, but I used USBlyzer to look at the requests
>> it was
>> > sending across the USB cable once it found the device. I was thinking
>> maybe
>> > I could somehow replicate these commands. Note that all this happened
>> when
>> > a different driver was installed (libusb 1.2.6.0 has you install a new
>> > driver for the device you want to use). This is screenshot of the most
>> > important part; and I've attached the .ulz file of the whole exchange:
>>
>> You will have to carry out the revers engineering by yourself.
>> And this is really not a pyusb or libusb-win32 problem. You have
>> to understand the communication protocol before using pyusb.
>>
>> Since this is an HID device (bInterfaceClass: 3), you will find
>> the USB HID spec useful, especially Chapter 7.
>>
>> You should read the HID spec here. It is quite useful,
>> especially Chapter 7.
>> http://www.usb.org/developers/devclass_docs/HID1_11.pdf
>>
>> Some cheat codes for you, from Linux USB developer
>> Alan Stern. It might help you to translate HID report
>> read/write to control IN/OUT transfer.
>>
>> HID device also uses Interrupt IN/OUT transfer.
>>
>> Standard device requests
>>
>> RQtype Req Value Index Length
>> ----------------------------------------------
>> 0 1 dev-feat 0 0 Clear device feature
>> 0 3 dev-feat 0 0 Set device feature
>> 0 5 address 0 0 Set device address
>> 0 9 config-value 0 0 Set configuration
>> 1 b altsetting intf 0 Set interface
>> 1 1 intf-feat intf 0 Clear interface feature
>> 1 3 intf-feat intf 0 Set interface feature
>> 2 1 ep-feat ep 0 Clear endpoint feature
>> 2 3 ep-feat ep 0 Set endpoint feature
>> 80 0 0 0 2 Get device status
>> 80 6 descr-type/ 0/ len Get descriptor
>> index lang-ID
>> 80 8 0 0 1 Get configuration
>> 81 0 0 intf 2 Get interface status
>> 81 a 0 intf 1 Get interface (altsetting)
>> 82 0 0 ep 2 Get endpoint status
>>
>> Device features: 0 = self-powered, 1 = remote wakeup
>> Interface features: None
>> Endpoint features: 0 = halt
>> Descriptor types: 1 = device, 2 = config, 3 = string, (4 =
>> interface,
>> 5 = endpoint), 6 = device qualifier, 7 = other-speed config
>>
>>
>>
>> Hub class requests
>>
>> RQtype Req Value Index Length
>> ----------------------------------------------
>> 20 1 hub-feat 0 0 Clear hub feature
>> 20 3 hub-feat 0 0 Set hub feature
>> 23 1 port-feat sel/ 0 Clear port feature
>> port
>> 23 3 port-feat sel/ 0 Set port feature
>> port
>> a0 0 0 0 4 Get hub status
>> a0 6 2900 0 len Get hub descriptor
>> a3 0 0 port 4 Get port status
>>
>> Hub features: 0 = hub local power, 1 = hub over current,
>> 10 = ch hub local power, 11 = ch hub over current
>> Port features: 0 = connect, 1 = enable, 2 = suspend, 3 = over current,
>> 4 = reset, 8 = power, 9 = low speed, a = high speed,
>> b = test mode, c = indicator,
>> 10 = ch connect, 11 = ch enable, 12 = ch suspend,
>> 13 = ch over current, 14 = ch reset
>> Selector is used for port indicators
>>
>>
>>
>> HID class requests
>>
>> RQtype Req Value Index Length
>> ----------------------------------------------
>> 21 9 report-type/ID intf len Set report
>> 21 a duration/ID intf 0 Set idle
>> 21 b proto intf 0 Set protocol
>> 81 6 descr-type/set intf len Get class descriptor
>> a1 1 report-type/ID intf len Get report
>> a1 2 0/ID intf 1 Get idle
>> a1 3 0 intf 1 Get protocol
>>
>> Report type: 1 = input, 2 = output, 3 = feature
>> Descriptor type: 21 = HID, 22 = Report, 23 = Physical
>> Protocol: 0 = boot, 1 = report
>>
>> --
>> Xiaofan
>>
>>
>> ------------------------------------------------------------------------------
>> See everything from the browser to the database with AppDynamics
>> Get end-to-end visibility with application monitoring from AppDynamics
>> Isolate bottlenecks and diagnose root cause in seconds.
>> Start your free trial of AppDynamics Pro today!
>>
>> http://pubads.g.doubleclick.net/gampad/clk?id=48808831&iu=/4140/ostg.clktrk
>> _______________________________________________
>> pyusb-users mailing list
>> pyusb-users@lists.sourceforge.net
>> https://lists.sourceforge.net/lists/listinfo/pyusb-users
>>
>
>
>
> ------------------------------------------------------------------------------
> See everything from the browser to the database with AppDynamics
> Get end-to-end visibility with application monitoring from AppDynamics
> Isolate bottlenecks and diagnose root cause in seconds.
> Start your free trial of AppDynamics Pro today!
> http://pubads.g.doubleclick.net/gampad/clk?id=48808831&iu=/4140/ostg.clktrk
> _______________________________________________
> pyusb-users mailing list
> pyusb-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/pyusb-users
>
>
------------------------------------------------------------------------------
See everything from the browser to the database with AppDynamics
Get end-to-end visibility with application monitoring from AppDynamics
Isolate bottlenecks and diagnose root cause in seconds.
Start your free trial of AppDynamics Pro today!
http://pubads.g.doubleclick.net/gampad/clk?id=48808831&iu=/4140/ostg.clktrk
_______________________________________________
pyusb-users mailing list
pyusb-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/pyusb-users