stozpark / kinect-mssdk-openni-bridge

Automatically exported from code.google.com/p/kinect-mssdk-openni-bridge
Other
0 stars 0 forks source link

Serial number is missing from creation_info string #10

Open GoogleCodeExporter opened 9 years ago

GoogleCodeExporter commented 9 years ago
What steps will reproduce the problem?
1. Always
2.
3.

What is the expected output? What do you see instead?
creation_info string should contain device serial number after '#' character. 
This is used by PCL and other projects for parsing the string.

What version of the product are you using? On what operating system?
Kinect SDK 1.5, windows 7 64-bit, 32-bit openni 1.5.23

Please provide any additional information below.

Original issue reported on code.google.com by mr.gout...@gmail.com on 20 Aug 2012 at 6:17

GoogleCodeExporter commented 9 years ago
I have a couple of specific questions about the expected syntax.
(1) Can any string come before # (not as a part of the serial number) ?
(2) Can any characters be used in the serial number? (Or, is there any 
restriction?)

But note I will not be able to get the serial number of K4W anyway because K4W 
always returns ALL ZEROS as its serial number. (K4XBox does not have this 
problem.) That is one of the reasons why I gave up using the serial number but 
used the connection ID instead. This issue is reported in the article below but 
there is no answer yet.
http://social.msdn.microsoft.com/Forums/en-US/kinectsdk/thread/b7118c11-3577-498
1-a5f3-62a7cc8ac599

Original comment by tom...@gmail.com on 3 Sep 2012 at 1:38

GoogleCodeExporter commented 9 years ago
I got the creation info strings from avin2's driver as follows.

K4XB: 
\\?\usb#vid_045e&pid_02ae#a003679xxxxxxxxx#{c3b5f022-5a42-1980-1909-ea72095601b1
}
K4W:  
\\?\usb#vid_045e&pid_02bf#0000000000000000#{c3b5f022-5a42-1980-1909-ea72095601b1
}

Apparently, the serial number cannot be taken from K4W as it cannot via 
KinectSDK either.

So, I can provide the strings as below (I will strip the trailing CLSID as I am 
not sure what it really indicates). The serial number of K4W will be always all 
zeros.

K4XB: \\?\usb#vid_045e&pid_02ae#a003679xxxxxxxxx
K4W:  \\?\usb#vid_045e&pid_02bf#0000000000000000

Will this solve your problem?

Original comment by tom...@gmail.com on 3 Sep 2012 at 8:45

GoogleCodeExporter commented 9 years ago
I took a quick look at PCL's OpenNIGrabber code, and it looked like the format 
above would be processed as you expected.

However, the serial number issue of K4W is still a concern. You may not be able 
to distinguish multiple K4Ws on your machine. I asked MS for more information 
in the forum (as I have only one K4W and cannot experiment myself), but I am 
not sure if and when I could get the answer.

So, as an interim solution, I am thinking to provide an option (by a 
configuration file) to use the connection ID instead of the serial number to 
ensure the uniqueness at least within one local machine. The string will look 
like this:

\\?\usb#vid_045e&pid_02c2#6&1de14455&0&4

Original comment by tom...@gmail.com on 4 Sep 2012 at 12:16

GoogleCodeExporter commented 9 years ago
Can you try the development build below and see if it works as you expected? 
The .ini file should be placed in the same bin folder as the DLLs, and you can 
select the format (serial number vs. connection ID) by changing it. Thanks for 
your help.

http://kinect-mssdk-openni-bridge.googlecode.com/git/bin/kinect-mssdk-openni-bri
dge-V10Debug.dll
http://kinect-mssdk-openni-bridge.googlecode.com/git/bin/kinect-mssdk-openni-bri
dge-V10Release.dll
http://kinect-mssdk-openni-bridge.googlecode.com/git/bin/kinect-mssdk-openni-bri
dge-V10.ini

Original comment by tom...@gmail.com on 4 Sep 2012 at 12:36

GoogleCodeExporter commented 9 years ago
MS confirmed that it was a known issue, meaning we could not get the unique ID 
(serial number) for K4W for now.
http://social.msdn.microsoft.com/Forums/en-US/kinectsdk/thread/b7118c11-3577-498
1-a5f3-62a7cc8ac599

So I will go for the connection ID solution as MS suggests as a workaround.

Original comment by tom...@gmail.com on 4 Sep 2012 at 4:13

GoogleCodeExporter commented 9 years ago
Released.

Original comment by tom...@gmail.com on 6 Sep 2012 at 8:37