This is the fourth post in the series of Development With Kinect .NET SDK. In few of my previous posts I have covered Setting up Kinect Devices and Getting Started with Kinect Development ( Part I) , Exploring NUI APIs with Camera ( Part II) and Adjusting Kinect Camera Angle (Part III). Till now whatever I have covered, that comes under dealing with single Kinect devices. Let’s have some more fun with multiple Kinect devices. The Kinect .NET SDK does provide support for multiple Kinect devices. In this post I am going to discuss how you can configure two devices with your system.
The Kinect SDK does provide support for Multiple Kinect devices and we can plug multiple devices in a same system. Let’s first check the configuration related with H/W. What will happen if we plugged in multiple Kinect.
Navigate to Control Panel > Device Manager and Expand “Microsoft Kinect” .
You will find multiple Kinect devices has been detected by your system. But, Check out the “Warning Symbol” with one of Kinect Camera Devices
Right Click on that item and Select Properties, below dialog screen will appear. Check out the Device Status section it’s says “This Device Cannot start. (Code 10) .
I was just wondering why it is not working ? Is there something wrong with second Kinect Device ? The result was same after changing the USB ports for Kinect devices with in the different ports that were available with my laptop.
I started investigation and found some answer over here. It’s says, There is currently a limitation where Kinect devices might not work reliably when they are connected to the same USB host controller as other USB devices, such as webcams or other Kinect devices.
What I did next is, Changed the device manager view to “Devices by Connection”
What I found is , Both of the Kinect are being controlled by Same USB Controller. So, it was looks like I don’t have any chance to work multiple Kinect as I checked with all the USB ports.
Well, Jebarson gave me an idea to plugged into the USB ports which were available with Laptop docking station. I just did that. Well, it worked. Check out the below snaps, both the Kinect Sensors detected properly.
So, we are done with H/W Configuration stuff . What about accessing them using Application ?
Kinect SDK APIs provides a class “Device” which represents a system’s Kinect sensors. It’s has a property “Count” which will show the number of Kinect been detected. So, I wrote following line of code, and check out the result.
That’s all from here. In next Post we will check how to develop application Multiple Kinect . That will be more interesting.
Other Posts from this series :
Development With Kinect .NET SDK (Part I) – Installation and Development Environment Setup
Development With Kinect .NET SDK (Part II) – Using NUI APIs with Camera
Development With Kinect .NET SDK (Part III) – Adjusting the Kinect Camera Angle
Hope this helps !
Cheers !!
Abhijit
My Twitter Handler : @abhijitjana
Email Me : abhijitjana@outlook.com
My Kinect Book : Kinect for Windows SDK Programming Guide
Hello,I can’t connected two kinects on my computer, why?
thank you!!
LikeLike
Hi, The possible reason could be you are not checking the USB Controller part. Please read the Part 4 of these series !! I have explained how to setup environment for two kinects.
LikeLike
Hi sir, We are currently working on Kinect Explorer sample in kinect sdk 1.5.We are unable to enable the skeletal stream in both the windows.Can you please help us regarding this issue? I mean what should we do to enable skeleton streams working with the two kinects which we have connected?
Thanks in advance…
LikeLike
Skeleton Tracking can be enabled for 1 Kinect at a time. While you have multiple Kinect connected, only one sensor can return the skeleton stream data. However, you can choose programmatically which sensor.
Hope this helps.
Let me know if you need further help.
Thanks.
LikeLike
Hello
which sort of laptop docking station did you used? does it has to be a powered one?
Thanks
LikeLike
Hi
What kind of docking station did you use? Is it specifically designed for your laptop? Or a universal docking station that is not limited to one specific brand laptop? Can I also connect it to desktop so that I don’t need to buy a PCI plug-in board to extend the USB root hub?
LikeLike
Hi, It was my PC specific docking station.
I guess, I replied to your tweets as well https://twitter.com/AbhijitJana/status/293548348038856704
However, you can choose other types of USBcontroller as well.
LikeLike
Golden content for my PhD, tou.. !!!
Thank you very much Sir !
LikeLike