I’m planning on doing volcap of dancers. I am trying to setup a first test. I realised the realsense cameras are no longer supported so I tried to use my Kinect Azure.
It has latest firmware, it is recognized by the PC and in Azure Kinect viewer. It is connected on USB3.2. I can access the depth camera from the kinect viewer, as well as the rgb camera from the windows camera app. However, whenever I try to use depth+rgb in DepthKit or in Windows app AzureKinectViewer, I consistently get the same error message : “can not find requested sensor mode”
The computer used is a recent one and quite powerfull (tried on recent laptop as well as powerful desktop PC) with nothing usb pluged in apart from Azure.
I’ve tried different configuration (5fps, different rgb mode, etc..). Nothing works. Any ideas what might be causing this ?
Making some progress. I can’t start the RGB camera if I’m connected through USB C - USB C (+ power). However from USB3.2 to USB C (+ power) it works. I can open depth or rgb camera separately (multi cam option has to be turned off in windows apparently). But I’m getting another error in AzureKinectViewer :
[ error ] : usb_cmd_libusb_cb(). LibUSB transfer status of 00000001 unexpected
[ error ] : usb_cmd_libusb_cb(). Error LIBUSB transfer failed, result:LIBUSB_TRANSFER_ERROR
[ error ] : OnReadSample(). Pipeline propagate error to callback: 0xc00d3ea2
[ warning ] : capturesync_add_capture(). Capture Error Detected, Color
[ error ] : capturesync_get_capture(device->capturesync, capture_handle, timeout_in_ms) returned failure in k4a_device_get_capture()
[ error ] : usb_cmd_libusb_cb(). LibUSB transfer status of 00000001 unexpected
[ error ] : usb_cmd_libusb_cb(). LibUSB transfer status of 00000001 unexpected
etc…
And I’m getting this error in DepthKit :
2025-04-10 13:51:13.080 ERROR [23976] [Depthkit::IO::DepthSensor::DepthSensorAzureKinect::sdkLogCallback@1317] Azure Kinect 000165292212: usb_cmd_write(). Write command(000000F1) ended in failure, Command status 0x00000063
2025-04-10 13:51:13.087 ERROR [23976] [Depthkit::IO::DepthSensor::DepthSensorAzureKinect::sdkLogCallback@1317] Azure Kinect 000165292212: usb_cmd_write(depthmcu->usb_cmd, DEV_CMD_DEPTH_STREAM_START, NULL, 0, NULL, 0) returned failure in depthmcu_depth_start_streaming()
And also this one :
2025-04-10 13:32:29.935 ERROR [9120] [Depthkit::IO::DepthSensor::DepthSensorAzureKinect::sdkLogCallback@1317] Azure Kinect SDK: replace_sample(). capturesync_drop, releasing capture early due to full queue TS: 333555 type:Color
2025-04-10 13:32:29.966 ERROR [9120] [Depthkit::IO::DepthSensor::DepthSensorAzureKinect::sdkLogCallback@1317] Azure Kinect SDK: replace_sample(). capturesync_drop, releasing capture early due to full queue TS: 366866 type:Color
2025-04-10 13:32:29.967 WARN [30588] [Depthkit::DepthSensorStage::onSensorEvent@378] [Azure Kinect 000165292212] Frame capture is missing depth frame. 2
etc…
Everything’s pointing to a USB bandwidth problem, however I also get timeouts using only depth camera and nothing else at 15fps. And while I can have RGB or Depth running at 30fps, I can’t get anywhere with RGB+Depth, even at 5fps.
@AmauryLa_Burthe Sorry to hear you’re having this issue, and thanks for the info you have provided.
Are you powering the Kinect with the AC power supply? Powering the sensor this way ensures that it has enough power to use all of the internal components at the same time, rather than USB bus power, which may be enough power for using specific components at one time (e.g. RGB only, depth only) but not both/all at once.
Can you verify which USB host controller is within the USB port you are using? We have guidance on USB host controller compatibility with the Azure Kinect here.
Powering with the AC supply yes.
I am using USBTreeview to check the USB port. It is on Contrôleur hôte Intel(R) USB 3.20 eXtensible - 1.20 (Microsoft) followed by what I believe is the internal hub of the kinect : Microsoft 4-Port USB 3.2 Gen2 UBS Hub
I can send the treeview if that helps ?
@AmauryLa_Burthe That controller does indeed look compatible with the Azure Kinect, and you’re sufficiently powering it, so I am not sure why the sensor isn’t functioning as expected. Have you tired factory resetting the Kinect as described here?
yep, I tried it already, and nothing changed unfortunately. I will try to reset once more, just for the sake of it. The strange thing is that I can use an Intel realsense at 30fps max resolution for depth and rgb without any problem (but it’s no longer supported), so it looks like the USB is ok. And I get the same strange behavior on all computers. The only reasonable conclusion would be that the azure has trouble with the load. Have you seen some faulty hardware before ?
@AmauryLa_Burthe The only other thing I can think to try is a different USB cable. Are you using the one provided with the Kinect? Are you mating it with any extenders?
Not the genuine one, but I tried 4 or 5 different cables already. All certified USB3.0. Unless there is something very specific about the original cable. No extenders or hub.
I do get this error now when I reset the firmware now :
libusb: error [winusbx_submit_bulk_transfer] ReadPipe/WritePipe failed: [22] Le pÚriphÚrique ne reconna¯t pas la commande.
[2025-04-14 21:24:42.042] [error] [t=22776] D:\a\1\s\extern\Azure-Kinect-Sensor-SDK\src\usbcommand\usbcommand.c (748): usb_cmd_io(). Error calling libusb_bulk_transfer for initial tx, result:LIBUSB_ERROR_IO
[2025-04-14 21:24:42.042] [error] [t=22776] D:\a\1\s\extern\Azure-Kinect-Sensor-SDK\src\depth_mcu\depth_mcu.c (197): usb_cmd_read_with_status(depthmcu->usb_cmd, DEV_CMD_COMPONENT_VERSION_GET, NULL, 0, (uint8_t *)&tmpVersion, sizeof(tmpVersion), &bytes_read, &cmd_status) returned failure in depthmcu_wait_is_ready()
And I can’t update to the latest firmware using the update tool because I now get this error on update :
libusb: error [winusbx_submit_bulk_transfer] ReadPipe/WritePipe failed: [22] Le pÚriphÚrique ne reconna¯t pas la commande.
[2025-04-14 21:44:00.154] [error] [t=27884] D:\a\1\s\extern\Azure-Kinect-Sensor-SDK\src\usbcommand\usbcommand.c (748): usb_cmd_io(). Error calling libusb_bulk_transfer for initial tx, result:LIBUSB_ERROR_IO
[2025-04-14 21:44:00.154] [error] [t=27884] D:\a\1\s\extern\Azure-Kinect-Sensor-SDK\src\depth_mcu\depth_mcu.c (197): usb_cmd_read_with_status(depthmcu->usb_cmd, DEV_CMD_COMPONENT_VERSION_GET, NULL, 0, (uint8_t *)&tmpVersion, sizeof(tmpVersion), &bytes_read, &cmd_status) returned failure in depthmcu_wait_is_ready()
Do you think that confirms it’s a hardware problem ?
I have been able to flash it again with no pb this time. I can have rgb+depth now but only at 5fps… I looks like the depth unit has some trouble as soon as I go to 15 or 30 fps (the rgb handles 30 at 4k when it’s alone). I’ll try to find another Azure if I can to compare behaviours but that won’t be anytime soon. I have better results on Windows10 systems though (compared to 11). The windows multi cam support might be another thing, but unlike the realsenses I can’t setup multi for rgb and non-multi for depth.