Intel® Distribution of OpenVINO™ Toolkit
Community assistance about the Intel® Distribution of OpenVINO™ toolkit, OpenCV, and all aspects of computer vision-related on Intel® platforms.
6401 Discussions

USB disconnect while building the examples

idata
Employee
2,434 Views

In the bin directory of the mvnsdk I do:

 

make example01

 

echo "example01 - GoogleNet profiling"

 

example01 - GoogleNet profiling

 

python3 ./mvNCProfile.pyc data/googlenet.prototxt -s 12

 

mvNCProfile v02.00, Copyright @ Movidius Ltd 2016

 

[Error 7] Toolkit Error: USB Failure. Code: Error opening device

 

/var/log/syslog:

 

Sep 3 21:28:42 kitt kernel: [222633.788993] usb 1-5: USB disconnect, device number 12

 

Sep 3 21:28:42 kitt kernel: [222634.044296] usb 2-5: new SuperSpeed USB device number 5 using xhci_hcd

 

Sep 3 21:28:42 kitt kernel: [222634.071092] usb 2-5: New USB device found, idVendor=040e, idProduct=f63b

 

Sep 3 21:28:42 kitt kernel: [222634.071094] usb 2-5: New USB device strings: Mfr=1, Product=2, SerialNumber=3

 

Sep 3 21:28:42 kitt kernel: [222634.071095] usb 2-5: Product: USBVSC

 

Sep 3 21:28:42 kitt kernel: [222634.071096] usb 2-5: Manufacturer: Movidius

 

Sep 3 21:28:42 kitt kernel: [222634.071097] usb 2-5: SerialNumber: DATAC

 

Sep 3 21:28:42 kitt mtp-probe: checking bus 2, device 5: "/sys/devices/pci0000:00/0000:00:01.1/0000:01:00.0/usb2/2-5"

 

Sep 3 21:28:42 kitt mtp-probe: bus: 2, device: 5 was not an MTP device

 

Any ideas?

0 Kudos
23 Replies
idata
Employee
1,818 Views

Note that if I use a USB 2.0 port, the same thing happens for the most part.

 

Please don't cry bloody murder, but this is on a x399 based system.

WDomo
Beginner
1,576 Views

Did you ever get a reply and a solution. I have the same problem on a new Movidius 2 and the latest build of Openvino

0 Kudos
idata
Employee
1,818 Views

More debugging:

 

 

[pid 2079] open("graph", O_RDONLY|O_CLOEXEC) = 14

 

[pid 2079] fstat(14, {st_mode=S_IFREG|0644, st_size=14014864, …}) = 0

 

[pid 2079] ioctl(14, TCGETS, 0x7ffe7f930b50) = -1 ENOTTY (Inappropriate ioctl for device)

 

[pid 2079] lseek(14, 0, SEEK_CUR) = 0

 

[pid 2079] lseek(14, 0, SEEK_CUR) = 0

 

[pid 2079] fstat(14, {st_mode=S_IFREG|0644, st_size=14014864, …}) = 0

 

[pid 2079] mmap(NULL, 14016512, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7fd8c83f2000

 

[pid 2079] read(14, "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"…, 14014865) = 14014864

 

[pid 2079] read(14, "", 1) = 0

 

[pid 2079] recvmsg(4, 0x7ffe7f92e7b0, 0) = -1 EAGAIN (Resource temporarily unavailable)

 

[pid 2079] recvmsg(4, 0x7ffe7f92e790, 0) = -1 EAGAIN (Resource temporarily unavailable)

 

[pid 2079] open("./mvnc/MvNCAPI.mvcmd", O_RDONLY) = 15

 

[pid 2079] fstat(15, {st_mode=S_IFREG|0664, st_size=825136, …}) = 0

 

[pid 2079] fstat(15, {st_mode=S_IFREG|0664, st_size=825136, …}) = 0

 

[pid 2079] lseek(15, 823296, SEEK_SET) = 823296

 

[pid 2079] read(15, "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"…, 1840) = 1840

 

[pid 2079] lseek(15, 0, SEEK_SET) = 0

 

[pid 2079] read(15, "MA2x\250\33\0\0ddrInitHeaderForMvcmd.el"…, 823296) = 823296

 

[pid 2079] read(15, "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"…, 4096) = 1840

 

[pid 2079] close(15) = 0

 

[pid 2079] nanosleep({0, 100000000}, NULL) = 0

 

[pid 2079] recvmsg(4, 0x7ffe7f92e510, 0) = -1 EAGAIN (Resource temporarily unavailable)

 

[pid 2079] open("/dev/bus/usb/001/021", O_RDWR) = 15

 

[pid 2079] ioctl(15, USBDEVFS_GET_CAPABILITIES, 0x279b5f0) = 0

 

[pid 2079] ioctl(15, USBDEVFS_SETCONFIGURATION, 0x7ffe7f93071c) = 0

 

[pid 2079] ioctl(15, USBDEVFS_CLAIMINTERFACE, 0x7ffe7f9306ec) = 0

 

[pid 2079] timerfd_settime(9, TFD_TIMER_ABSTIME, {it_interval={0, 0}, it_value={256784, 641929000}}, NULL) = 0

 

[pid 2079] ioctl(15, USBDEVFS_SUBMITURB, 0x27c2fb0) = 0

 

[pid 2079] read(7, "\1", 1) = 1

 

[pid 2079] poll([{fd=7, events=POLLIN}, {fd=9, events=POLLIN}, {fd=15, events=POLLOUT}], 3, 60000) = 1 ([{fd=15, revents=POLLOUT}])

 

[pid 2079] ioctl(15, USBDEVFS_REAPURBNDELAY, 0x7ffe7f930550) = 0

 

[pid 2079] timerfd_settime(9, 0, {it_interval={0, 0}, it_value={0, 0}}, NULL) = 0

 

[pid 2079] ioctl(15, USBDEVFS_REAPURBNDELAY, 0x7ffe7f930550) = -1 EAGAIN (Resource temporarily unavailable)

 

^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ EAGAIN more than likely because the stick disconnected from the bus

 

[pid 2079] ioctl(15, USBDEVFS_RELEASEINTERFACE, 0x7ffe7f9306cc) = -1 ENODEV (No such device)

 

^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Device no longer exists

 

[pid 2079] write(8, "\1", 1) = 1

 

[pid 2079] close(15) = 0

 

[pid 2079] recvmsg(4, 0x7ffe7f92e610, 0) = -1 EAGAIN (Resource temporarily unavailable)

 

[pid 2079] nanosleep({0, 10000000}, NULL) = 0

 

[pid 2079] recvmsg(4, 0x7ffe7f92e610, 0) = -1 EAGAIN (Resource temporarily unavailable)

 

… This message occurs for a few seconds …

 

And then I see the "[Error 7] Toolkit Error: USB Failure. Code: Error opening device" etc. Note that a graph was written to the device (I did not copy/paste the binary strace output).

 

Full disclosure: This is within a docker container under 'privileged' mode with '/dev/bus/usb' mounted in my container. I'm on Ubuntu 17.04 but I figured I could use the dongle under a 16.04 LTS run-time in a container (I don't see technically why not).

 

I do need some Modivius assistance on what Error 7 means?

 

I do see the device within the container:

 

root@975b7c042831:/mvncsdk/bin# lsusb

 

Bus 008 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub

 

Bus 007 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

 

Bus 006 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub

 

Bus 005 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

 

Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub

 

Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

 

Bus 002 Device 009: ID 040e:f63b MCCI <----- LOOK AT ME

 

Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub

 

Bus 001 Device 002: ID 0b05:1868 ASUSTek Computer, Inc.

 

Bus 001 Device 007: ID 0b05:1867 ASUSTek Computer, Inc.

 

Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

 

root@975b7c042831:/mvncsdk/bin# lsusb -v -s 2:9

 

Bus 002 Device 009: ID 040e:f63b MCCI

 

Device Descriptor:

 

bLength 18

 

bDescriptorType 1

 

bcdUSB 3.00

 

bDeviceClass 0 (Defined at Interface level)

 

bDeviceSubClass 0

 

bDeviceProtocol 0

 

bMaxPacketSize0 9

 

idVendor 0x040e MCCI

 

idProduct 0xf63b

 

bcdDevice 1.00

 

iManufacturer 1 Movidius

 

iProduct 2 USBVSC

 

iSerial 3 DATAC

 

bNumConfigurations 1

 

Configuration Descriptor:

 

bLength 9

 

…. etc.
0 Kudos
idata
Employee
1,818 Views

More reading.

 

So it looks like other folks have reported this issue here as well:

 

https://forums.intel.com/s/question/0D50P00004NLzzISAT

 

It seems like the dongle is suppose to be enumerated in 2.0 mode until a graph is uploaded, and then it switches to 3.0 mode at some point - so a disconnect is somewhat expected here. But I assume the mvnc code polls waiting for the device to be re-enumerated by the kernel? I did notice moving it to a USB 2.0 slot the stick has a different idVendor/idProduct but the result is still the same (error 7 after EAGAIN'ing for a while).

 

I have a question: Is the error 7 due to a time out of the mvnc code not waiting long enough until the kernel exports the dongle post disconnect? And can someone from Modivius comment if the above assumption is true? Are you really waiting for the device to disconnect and reinitialize itself as a 3.0 device during normal operation? (that seems btw an extremely dicey run-time).

 

Note: I'm pretty sure I don't have a USB powered 2.0 hub to try. But I will look.

 

My motherboard is an Asus Zenith Extreme x399 running 4.10.0-33-generic #37-Ubuntu SMP x86_64.

0 Kudos
idata
Employee
1,818 Views

Anyone from Modivius/Intel would like to comment? I really hate to see my stick turn into a nice looking, blueish paper weight!

0 Kudos
idata
Employee
1,818 Views

@pisymbol We are aware that some systems may be experiencing a USB device open error when using the Movidius NCS. It is a known issue with some systems and one that we are working on. Some users have reported a work around for this error by using a USB 2.0 extension cable and plugging the NCS into the extension cable. When a solution is available, I will post the solution here in the forums..

0 Kudos
idata
Employee
1,818 Views

Thanks Tome. Do you have an ETA for a fix? It is sorta a show stopper for many of us.

 

If you need any debug information or would like to try something on a system that is effected by this bug, please don't hesitate to reach out.

0 Kudos
idata
Employee
1,818 Views

@pisymbol I apologize that the USB issue has been causing problems for many of our users. We understand the magnitude of this issue and you can rest assured that we are working hard on this issue and many others at the moment. We don't have an ETA for a patch fix at the moment, but as soon as we do, I will make an announcement and make a post with the fix. Thank you for the offer pisymbol. We really appreciate and value the feedback from all of our users!

0 Kudos
idata
Employee
1,818 Views

Thanks Tome for the update! I wait with baited breath as my dongle is as of now non-functional.

0 Kudos
idata
Employee
1,818 Views

A little update. Found a powered USB 2.0 hub. No dice. What's interesting is it DOES take a longer time to fail, but with the same message. This is a real bummer.

0 Kudos
idata
Employee
1,818 Views

Just want to chime in that I'm also having issues with connecting the NCS on USB3.0. "ncs-check -1" fails after a few seconds with error:

 

OpenDevice 7 failed, rc=-2

 

However, if I plug the NCS in through a USB2.0 extension cable into the same USB3.0 port, the "ncs-check -1" passes:

 

OpenDevice 7 succeded

 

Press q to quit without closing, otherwise just

 

Device closed, rc=0

 

If I try to run the "python3 stream-infer.py" from the examples, it looks like it wants to work :). It loads a camera window, but nothing is showing up:

 

https://www.dropbox.com/s/eyavn3mht9k9t35/Screenshot%20from%202017-09-12%2008-30-10.png?dl=0

 

My camera does show up properly when I check it with "cheese".

 

I'm running on a Lenovo Yoga 910 with Ubuntu 16.04 native, so I only have one USB3.0 port to try.

 

Does the stream-infer example require it to be working over USB3.0?

 

Hope you guys get the USB issues fixed soon!

0 Kudos
idata
Employee
1,818 Views

I'm also having trouble with this. Ubuntu 16.04 in a Parallels VM on a MacBook Pro running Sierra 10.12.6. Same behavior pisymbol started the post with.

0 Kudos
idata
Employee
1,818 Views

I really wish there was more of a timeline on a fix for this. Can we at least get a patch release of 1.07.07 to address this specific issue?

 

My dongle is useless to me right now. I have tried everything to get it to work to no avail.

0 Kudos
idata
Employee
1,818 Views

Everytime I connect the device, if I list the USB connections using lsusb, I get the device listed. But as soon as the example is compiled, i.e. make example01, the device is disconnected from the list and the following error appears.

 

[Error 7] Toolkit Error: USB Failure. Code: No devices found
0 Kudos
idata
Employee
1,818 Views

@Sanjaybharadwaj Can you specify what type USB port you're using and also your lsusb cmd output as well as Ubuntu version. Thanks.

0 Kudos
idata
Employee
1,818 Views

Can someone at Movidius/Intel at least explain why this is occurring? (a technical explanation)

0 Kudos
idata
Employee
1,818 Views

@pisymbol Generally Movidius NC stick can behave as two different devices and most probably in your case there is an issue when switching between these two modes. Here you can see some dmesg logs and additional explanations about the issue. https://ncsforum.movidius.com/discussion/comment/281/#Comment_281

0 Kudos
idata
Employee
1,818 Views

@georgievm_cms Thanks for the link. As a work around, why not have to the ability to just run it in USB3 mode all the time and avoid this switcharoo altogether?

0 Kudos
idata
Employee
1,818 Views

Is there any update on this issue? I'm pretty much have a nice looking blue paper weight without any work around or fix.

0 Kudos
idata
Employee
1,818 Views

Same here, how to solve ?

0 Kudos
Reply