Open GoogleCodeExporter opened 8 years ago
The problem is in get_hid_device_path().
It looks up only on VID & PID. But that is identical on two identical devices
that are connected simultaneouly, and only the first in the list is returned,
even though the path given is different on the two devices.
A solution, that proves this, but is not at all a full solution is this:
hid.c -> hid_open_path():
Outcomment this line:
dev = get_hid_device_path(path);
Add this line instead:
dev = NULL;
Now you can open two different devices, and communicate them, but ofcourse this
is not the full solution, just added it to make sure what was wrong.
The elegant solution is to lookup in the table given the path instead of the
VID and PID only, and return the correct device.
Original comment by i...@stokerkontrol.dk
on 25 Apr 2012 at 1:15
I have implemented the solution where path is used to look up in the
device_list instead of vid & pid, and now it works perfectly with multiple
devices with same vid & pid. I hope this fix can be included in the official
code.
Original comment by i...@stokerkontrol.dk
on 26 Apr 2012 at 4:23
Hello, we are facing a similar problem with out solution.
Would you be able to share your code snippet?
Thank you.
Original comment by mashkal...@gmail.com
on 8 Jun 2012 at 1:38
Original issue reported on code.google.com by
i...@stokerkontrol.dk
on 25 Apr 2012 at 10:08