orbbec / pyorbbecsdk

OrbbecSDK python binding
https://orbbec.github.io/pyorbbecsdk/
Apache License 2.0
88 stars 23 forks source link

USB error #52

Closed athp18 closed 2 months ago

athp18 commented 4 months ago

I am trying to record with an Orbbec Femto Bolt camera, but when I try to actually use the camera, it doesn’t do anything. When I ran sudo dmesg, it shows me these errors:

[ 140.023726] xhci_hcd 0000:02:00.0: ERROR Transfer event TRB DMA ptr not part of current TD ep_index 4 comp_code 1 [ 140.023731] xhci_hcd 0000:02:00.0: Looking for event-dma 00000003ca1cc620 trb-start 000000042123c910 trb-end 0000000000000000 seg-start 000000042123c000 seg-end 000000042123cff0 [ 140.023732] xhci_hcd 0000:02:00.0: Looking for event-dma 00000003ca1cc620 trb-start 00000003ca1cc000 trb-end 00000003ca1cc610 seg-start 00000003ca1cc000 seg-end 00000003ca1ccff0 [ 140.023733] xhci_hcd 0000:02:00.0: ERROR Transfer event TRB DMA ptr not part of current TD ep_index 4 comp_code 13 [ 140.023735] xhci_hcd 0000:02:00.0: Looking for event-dma 00000003ca1cc630 trb-start 000000042123c910 trb-end 0000000000000000 seg-start 000000042123c000 seg-end 000000042123cff0 [ 140.023736] xhci_hcd 0000:02:00.0: Looking for event-dma 00000003ca1cc630 trb-start 00000003ca1cc000 trb-end 00000003ca1cc610 seg-start 00000003ca1cc000 seg-end 00000003ca1ccff0 [ 140.023737] xhci_hcd 0000:02:00.0: ERROR Transfer event TRB DMA ptr not part of current TD ep_index 4 comp_code 13 [ 140.023739] xhci_hcd 0000:02:00.0: Looking for event-dma 00000003ca1cc660 trb-start 000000042123c910 trb-end 0000000000000000 seg-start 000000042123c000 seg-end 000000042123cff0 [ 140.023740] xhci_hcd 0000:02:00.0: Looking for event-dma 00000003ca1cc660 trb-start 00000003ca1cc000 trb-end 00000003ca1cc610 seg-start 00000003ca1cc000 seg-end 00000003ca1ccff0 [ 140.091980] usb 2-2: usbfs: process 2810 (OrbbecViewer) did not claim interface 3 before use

I am on Ubuntu 18.04. I have tried power cycling the PC, unplugging all USB devices, etc. and the errors still come up. Additionally, if I disconnect the device, I start to get these errors in dmesg and I’m not able to connect any device to that port:

[ 610.962714] usb usb2-port2: attempt power cycle [ 611.888021] usb 2-2: new SuperSpeed Gen 1 USB device number 5 using xhci_hcd [ 616.987443] usb 2-2: device descriptor read/8, error -110 [ 617.095283] usb 2-2: new SuperSpeed Gen 1 USB device number 5 using xhci_hcd [ 622.363439] usb 2-2: device descriptor read/8, error -110 [ 622.676007] usb 2-2: new SuperSpeed Gen 1 USB device number 6 using xhci_hcd [ 627.739443] usb 2-2: device descriptor read/8, error -110 [ 627.847254] usb 2-2: new SuperSpeed Gen 1 USB device number 6 using xhci_hcd [ 633.115433] usb 2-2: device descriptor read/8, error -110 [ 633.234777] usb usb2-port2: unable to enumerate USB device

Does anyone know if this is necessarily a software issue or a hardware issue? I’m not sure what’s going on. I’m running Ubuntu 18.04 and have an ASRock B550M-C Motherboard. I suspect it might be related to my PC's Usb Host Controllers but not sure since I've used scripts based on pyorbbecsdk stably for ~4 months. I’ve also tried with Femto Bolts with updated firmware (1.12) vs default (1.09) and the error persists and ruled out a camera issue since the error is present across multiple sensors. In the console, trying to run an Orbbec recording script stops after the devices initializes, and happens regardless of whether I use the Orbbec C++ SDK or Python SDK.

Any help would be appreciated. Thank you.

athp18 commented 4 months ago

This is the output of running any script: [07/09 12:40:18.039580][info][12238][LinuxPal.cpp:32] createObPal: create LinuxPal! [07/09 12:40:18.041164][info][12238][LinuxPal.cpp:143] Create PollingDeviceWatcher! [07/09 12:40:18.041180][info][12238][DeviceManager.cpp:15] Current found device(s): (1) [07/09 12:40:18.041185][info][12238][DeviceManager.cpp:24] - Name: Femto Bolt, PID: 0x066b, SN/ID: CL8K14101ET, Connection: USB3.1 [07/09 12:40:18.041197][info][12238][Pipeline.cpp:15] Try to create pipeline with default device. [07/09 12:40:18.041304][info][12238][FemtoBoltUvcDevice.cpp:23] FemtoBoltUvcDevice init … [07/09 12:40:18.041359][info][12238][FemtoBoltUvcDevice.cpp:121] Create command start! [07/09 12:40:18.042689][info][12238][MSDEConverterDevice.cpp:726] Succeed to load depth engine plugin [07/09 12:40:18.708853][info][12238][AbstractDevice.cpp:117] - Firmware version: 1.0.9 [07/09 12:40:18.708865][info][12238][FemtoBoltUvcDevice.cpp:280] Create command done! [07/09 12:40:18.708871][info][12238][FemtoBoltUvcDevice.cpp:401] init sensor map start! [07/09 12:40:18.708885][info][12238][FemtoBoltUvcDevice.cpp:428] init sensor map done! [07/09 12:40:18.709012][info][12238][FemtoBoltUvcDevice.cpp:284] Init depth process param start! [07/09 12:40:19.053618][info][12238][MSDEConverterDevice.cpp:777] got nvram data succeed.

However nothing happens afterwards. No window emerges & no recording really takes place. (I’ve tried with different firmwares as well, neither works). What's strange is that it has worked stably for ~4 months until recently...