kinect v2 grey screen in kinect studio. Likely USB controller issue? Are there any work arounds for this issue? - kinect

So I've got a few Kinect v2s and am hoping to set up an array of them to get a 3D recording of an area in space (Eventual goal is to build a 360 image from multiple point clouds) But at the moment I can't even get one working on a machine.
I've installed the official SDK onto a windows 10 device and when opening the kinect studio I get nothing but a grey screen when connected to the kinect. Running the kinect configuration verfier says the USB controller is unknown and the system is waiting for the kinect to respond. The kinect itself does not light up, and it's cooling fan does not turn on.
I have reinstalled the SDK, tried 3 different kinects, tried various drivers and troubleshooting guides, and still cannot get anything out of the kinect.
The best answer I've found is that only some controllers are compatible, but every PC I have tried (currently 5 machines) have "Intel(R) USB 3.0 eXtensible Host Controller - 1.0 (Microsoft)" So basically do I really have to get a PCI USB controller or another machine, or is there any way to get the current system to work with the kinect v2 at all.
Also if I do need to buy a new device or PCI card are there any recommended for a setup that would idealy run 4-5 kinects?

Unfortunately, the Kinect V2 prevents you from simultaneously running more than one Kinect on a system:
Sensor Acquisition and Startup
Kinect for Windows supports one sensor, which is called the default sensor. The KinectSensor Class has static members to help configure the Kinect sensor and access sensor data.
Kinect API Overview
A workaround that I've used in the past is to have 1 computer for every Kinect (doesn't have to be fancy, just enough to run it) and then network all the machines together with a router. Designate one machine to be the controlling machine (handles turning on/off of other Kinects). Depending on what you plan on doing to the data, it may be helpful to have those other machines perform some pre-processing and leave the stitching off all the Kinects' feeds up to the controlling machine.
As far as the USB controller goes, I'm running Kinect v2 on that exact one, so other than that malfunctioning, I think you're fine. Have you tried running the "Kinect v2 Configuration Verifier" to see what it suggests? Kinect v2 Configuration Verifier

Related

Xbox 360 Kinect use with MS Teams as webcam camera driver runtime recognizing device only as audio

So instead of buying another webcam I decided to try out the Xbox 360 Kinect stored away in our storage. I successfully paired it to my cMP 5,1 running OSX Mojave and windows 10 in bootcamp. I bought the adapter to connect the kinect to USB from amazon, $12 ("JETEHO 1 Pc Xbox 360 Kinect Sensor USB AV Adapter"). Now with Kinect for Windows Runtime v1.8 installed, the devices that show up when the Kinect is connected are as follows:
Kinect for Windows recognizes the kinect as a camera, this is not what Teams recognizes though
So the camera there is recognized by the computer, but my problem is that when I open MS Teams this does not get recognized as one of the devices. The tricky thing is that MS teams recognized the Kinect as an audio device, but I need it to be recognized as a video device.
MS teams recognized the Kinect as a USB audio device
Kinect as a usb audio device can also be seen in the device manager:
Kinect is recognized as a usb audio device, but I need it to be video as well so I can use it as a webcam in MS Teams
Below is a snip of the MS teams settings not showing the camera as being there: Settings in MS teams showing no camera detected
So, I wanted to know could there be something that I am missing, a driver perhaps of some sort? I have the KinectCam.ax file installed as well and registered, again with no change.
I've tried installing the various SDK's from Microsoft website including v1.8 and v2.0 and even tried installing the most recent runtime from Microsoft for Kinect v2.2 with no avail. The machine still doesn't recognize the kinect as a video or camera device in the device controllers and its driving me bonkers! I have OpenNI virtual cam v0.9.5.0 installed and it recognized the Kinect. The SDKs I've installed also recognize the camera from the Kinect but not MS Teams and that is what I was hoping to use as a webcam device. Any solutions I will try at this point. Also, this website proved somewhat useful, but for some reason I am not getting the same results as them.
https://answers.microsoft.com/en-us/msoffice/forum/all/using-a-kinect-in-teams/3891a30a-2d4e-4d22-8d92-aa7b3ffd779c
GammalSkinka found the solution by using virtual cam for Teams to recognize the device, but I'm not getting the same results as well as cbscript_chris.
working with runtime installed, and w/o sdk, but not for me =(
Again, any help would be greatly appreciated!

How to power off USB device from Windows using batch or any API

For testing purposes I need to power off a USB device from my computer programmatically. The microprocessor in the USB device is ARM Cortex M4.
I have tried using Devcon, although the device was disabled, power was still provided to the device.
I have also tried to disable the USB root hubs ,that also didn't work.
I have read some other posts indicating that a SSR could be used, this option is not desired. I would rather choose the software solution(if there is one of course).
Some other answers have indicated that this is an OS issue, and some others a chip-set architecture issue.
So my question is what options are there available. And also is this purely something dependent on the computer side or do we need to implement something on the USB device side as well.
Thank you in advance.

connecting 2 Kinect sensors to my notebook

I am trying to connect 2 kinect sensors to my notebook. I know that I have to have at least 2 separate USB 2.0 controllers. According to tis website: LINK I have the same settings as in the picture. So I think that connecting 2 kinect sensors should be possible for me. I have 3 regular USB2 ports and one combined with e-SATA. So I have 4 ports to connect USB devices. However, when I try to connect 2 Kinect sensors (each time into different ports), I am always getting error message on one device (in windows device manager):
This device cannot start. (Code 10)
Can anyone help me please? I do not have any other computer and dont want to buy new just because USB controllers. I thing there has to be a way to do this. Thank you
can you please get a schematic of your notebook's motherboard and double check how your 3 ports are connected to the 2 controllers you mention. Hopefully 1 out of the 3 ports will be connected to a different controller from other 2 ports.
Does your notebook allow you to connect an express card to it ? Perhaps you could get an additional port this way.
With a custom built PC and a PCI Express USB expansion card we've got 3 kinects connected at the same time for an art-installation/robotics project.
I remember though at the time getting 2 Kinects running at the same time on my old 2008 macbook with no problems. Note that this was with either the libfreenect and OpenNI drivers, since the Kinect SDK driver doesn't work on osx.
Also, since you're using the Kinect SDK, I'm guessing you are using either Kinect for Windows (v1 if you will) or Kinect for Xbox360 and not the Kinect 2 for Windows since the current Alpha release of the SDK currently only allows a single sensor.
Update
Had a quick look here:
although couldn't easily find the schematics. My guess is two USB ports are connected to the same controller and the 3rd USB port might(don't take my word for it, check the manufacturers specs) be connected to a separate usb controller, in which case connecting one kinect to one side of your laptop and the other kinect to the port on the opposite should work. Make sure you see both sensors in Device Manager(run devmgmt.msc).
Also, just to double check your sensors as well, try connecting one, running a demo/test, then disconnecting and using a second sensor on the same port.
If both sensors work individually work on the same port, test them also on the usb port on the opposite side. You just want to make sure neither the sensors nor your ports are faulty. Lastly, if your hardware looks fine (power is good, sensors and ports are good), double check your code and me sure you don't accidentally open the same sensor twice or any other mistake that might be easy to miss.
If you have a friend you can either borrow another laptop for a short time just to test that would also be good. You can also try getting an USB Express Cardâ„¢ card for your laptop. Although a long shot, you could try to disable other usb devices on your laptop, leaving as much bandwidth available to the ports as possible. You should be able to do this either from Device Manager or your potentially from BIOS settings.

Kinect gives a "NotReady" status in .Net samples works in C++ samples

I'm trying to use the Kinect SDK v1 with an Xbox Kinect sensor. I installed the SDK on my dev machine and I launched the samples. The C# samples do not work, I either get "oops there was an error" or a "NotReady" status and FPS is stuck at -1.
At first I thought this was a problem with the device itself, so I tried installing the SDK on my laptop and the samples work on that fine, both the C# and C++. So the kinect device itself is ok.
I've reinstalled the SDK on my development machine, and I still have the same issues.
Any ideas/solutions?
EDIT: I should note that I have previoulsy developed with this kinect under the 1.0 SDK and when I debug my own app the sensor status enum is still "NotReady"
How is dev machine configuration different from laptop. In the release notes # http://www.microsoft.com/en-us/kinectforwindows/develop/release-notes.aspx it's mentioned that
USB host controller compatibility
The Kinect for Windows drivers have encountered compatibility problems with certain USB host controllers when tested in specific computer configurations. Some examples of these controllers are the AMD Fusion A75 USB2.0 controller, the Etron USB 3.0 Extensible Host Controller, or the Renesas Electronics USB 3.0 Controller. On those controllers, you may encounter a problem, such as a low RGB frame rate, or a Not Ready status when plugging/unplugging a Kinect. These compatibility problems are more likely to occur on PC's running the Windows 8 Developer Preview, or if you plug/unplug multiple devices repeatedly. If this happens to you, you may have to restart your app or reboot your computer. You can also try plugging your device into another USB 2.0 controller.

USB HOST mode in ICS

I'm trying to connect a usb sensor (see Toradex) to an android phone (Desire Z) running android 4.0.3.
To test this, I wrote a small app to enumerate the attached device(s).
This supposed to have USB HOST mode implemented and to power the usb sensor (HID)... but it doesn't.
I got a USB OTG cable and now, when I attach the cable, a small icon appears in the status bar (car mode).
I'm disappointed since I waited for this feature for awhile now...
Any thoughts? I read almost everything out there related to this (Sven work and whatnot) but I might have missed something...
Thanks!
I have worked a lot in the past year and a half to build custom android platform. Some was under Froyo but mostly on Gingerbread. Most on the hardware I added was on either a UART or on USB, which is what you want to do. Unfortunately, it is not as easy to add a USB peripheral on an Android device than on a PC or a MAC. PCs and MACs have virtually unlimited memory space (hard drive). They can hold the drivers of a very large number of devices. That makes it possible to do auto-detection and automatic loading of drivers. On an Android device, it is a lot more lean therefor, just the required drivers are stored on the device. Every time I added a new device, I had to compile the driver for my platform and make some modification in my configuration. It is also possible to load the driver as a module instead of compiling it with the kernel (gives a file.ko output). Although, the driver must have been written accordingly. But, you will have to install it by modifying the "init.rc" which requires root privilege.
here is a few link of question/answer about about drivers in Android. That should give you a little bit more info:
USB touchscreen driver
Hope it helps but unfortunately, it is quiet a lot of work do do.