Search code examples
linux-device-driverembedded-linuxyoctolibusbintel-edison

What can cause the following error unable to initialize libusb: -99


I recently started work on an Intel Edison board with mini breakout kit which comes with Yocto as default. I flashed the board to install a Debian derived system called Ubilinux. After this the board was upgraded and updated. Then I tried to connect a few usb devices to check if either of the boards two usb ports recognize anything. The board would not respond.

Running

lsusb
unable to initialize libusb: -99

I understand that the above message occurs when USB drivers are not configured. I have tried running lsusb using the default Yocto distro that intel has on its website and still the same message. From reading forums on Intels website I understand that this should not happen. Also tried to query the forums but Intel wants me to verify my email address via a link which I still haven't recieved after 4 hours. Please let me know if I am doing something wrong or haven't understood the board properly.

dmesg | grep -i usb
[    0.204550] usbcore: registered new interface driver usbfs
[    0.204649] usbcore: registered new interface driver hub
[    0.204855] usbcore: registered new device driver usb
[    0.763857] usbcore: registered new interface driver asix
[    0.763940] usbcore: registered new interface driver cdc_subset
[    0.764071] usbcore: registered new interface driver cdc_ncm
[    0.766539] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
[    0.766865] usbcore: registered new interface driver cdc_acm
[    0.766882] cdc_acm: USB Abstract Control Model driver for USB modems and ISDN adapters
[    0.767000] usbcore: registered new interface driver usb-storage
[    0.767180] usbcore: registered new interface driver usbserial
[    0.767263] usbcore: registered new interface driver pl2303
[    0.767333] usbserial: USB Serial support registered for pl2303
[    1.575749] usbcore: registered new interface driver usbhid
[    1.575769] usbhid: USB HID core driver
[    1.635600] pmic_ccsm pmic_ccsm: USB VBUS Detected. Notifying OTG driver
[    4.985394] usb0: MAC 02:00:86:f2:d5:6b
[    4.985416] usb0: HOST MAC e2:4e:68:c6:da:cf

Solution

  • Looks like it depends on which platform you're using.

    For the Arduino Breakout Kit, which I'm using, I just had to set the SW1 appropriately (push it towards the USB connector), after which lsusb works just fine and shows the connected device.

    In your case for the Mini Breakout Kit I believe you may need to supply 12V through the J21 connector. Some more details can be had at https://communities.intel.com/message/253226.