Pluto Software Defined Radio USB issue

This is the device in question:
Analog devices Pluto software defined radio

There is an issue regarding using this device with and without a USB hub related to the USB OTG feature.

This is the dmesg output when plugged directly into the usb3 port of my notebook:

[12134.536609] usb 1-3: new high-speed USB device number 6 using xhci_hcd
[12134.687118] usb 1-3: Dual-Role OTG device on non-HNP port
[12134.687449] usb 1-3: set a_alt_hnp_support failed: -32
[12134.812600] usb 1-3: new high-speed USB device number 7 using xhci_hcd
[12134.963113] usb 1-3: Dual-Role OTG device on non-HNP port
[12134.963446] usb 1-3: set a_alt_hnp_support failed: -32
[12134.963505] usb usb1-port3: attempt power cycle
[12135.372640] usb 1-3: new high-speed USB device number 8 using xhci_hcd
[12135.395619] usb 1-3: Dual-Role OTG device on non-HNP port
[12135.395960] usb 1-3: set a_alt_hnp_support failed: -32
[12135.520983] usb 1-3: new high-speed USB device number 9 using xhci_hcd
[12135.543649] usb 1-3: Dual-Role OTG device on non-HNP port
[12135.543951] usb 1-3: set a_alt_hnp_support failed: -32
[12135.544062] usb usb1-port3: unable to enumerate USB device

This is the dmesg when plugged into a usb3 hub:

[12248.692141] usb 1-4.3: new high-speed USB device number 10 using xhci_hcd
[12248.794618] usb 1-4.3: New USB device found, idVendor=0456, idProduct=b673, bcdDevice= 5.10
[12248.794628] usb 1-4.3: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[12248.794632] usb 1-4.3: Product: PlutoSDR (ADALM-PLUTO)
[12248.794635] usb 1-4.3: Manufacturer: Analog Devices Inc.
[12248.794638] usb 1-4.3: SerialNumber: 1044739a470b000224002200f6b77f138b
[12249.518106] cdc_acm 1-4.3:1.3: ttyACM0: USB ACM device
[12249.518143] usbcore: registered new interface driver cdc_acm
[12249.518145] cdc_acm: USB Abstract Control Model driver for USB modems and ISDN adapters
[12249.523426] usb-storage 1-4.3:1.2: USB Mass Storage device detected
[12249.523579] scsi host0: usb-storage 1-4.3:1.2
[12249.523761] usbcore: registered new interface driver usb-storage
[12249.529183] usbcore: registered new interface driver cdc_ether
[12249.531252] usbcore: registered new interface driver uas
[12249.537395] rndis_host 1-4.3:1.0 eth2: register 'rndis_host' at usb-0000:07:00.3-4.3, RNDIS device, 00:e0:22:41:3d:df
[12249.537425] usbcore: registered new interface driver rndis_host
[12249.548196] usbcore: registered new interface driver rndis_wlan
[12250.532824] scsi 0:0:0:0: Direct-Access     Linux    File-Stor Gadget 0510 PQ: 0 ANSI: 2
[12250.533282] scsi 0:0:0:0: Attached scsi generic sg0 type 0
[12250.546721] sd 0:0:0:0: [sda] 61441 512-byte logical blocks: (31.5 MB/30.0 MiB)
[12250.546969] sd 0:0:0:0: [sda] Write Protect is off
[12250.546977] sd 0:0:0:0: [sda] Mode Sense: 0f 00 00 00
[12250.547212] sd 0:0:0:0: [sda] Write cache: enabled, read cache: enabled, doesn't support DPO or FUA
[12250.566101]  sda: sda1
[12250.567715] sd 0:0:0:0: [sda] Attached SCSI removable disk

I didn’t even know this was a problem because when I set up the device I happened to have a usb3 hub attached. I went to use the device without the hub and had the issue. Doing a search on the internet it seems people were using usb2 hubs but it does work with a usb3 hub, just not directly into a USB3 port.

Rather than let the solution be “use a hub” I would like to solve this problem because using a hub really isn’t a proper solution.

I’m open for suggestions or perhaps just report it as a kernel bug if it can’t be resolved.

You are for sure not the only one having problems with this device:

Like indicated in the second link, my guess is that this is likely a power deficiency problem.

Ah I forgot to mention my hub is not externally powered. So the power from the notebook is what the hub provides. Thus not a power problem. Then again the hub is a fancy PD pass through device. I can’t rule out that it conditions the power from the notebook. I have a USB PD monitor device so I may be able to see if the voltage at the PC and hub are different.

The first link is a bit more interesting. But I can’t really tell if it is a software fix to the OS or some hack to the OS just for the Pluto,

Reddit had a few more suggestions, all good ones but didn’t solve the problem. One asked if I was using an OTG adapter, which I am not.

I didn’t bother bugging ADI because they have had enough questions that I kind of assume they checked their code for bugs.

I think bug reporting should be left to competent people. After using Suse since the 90s I haven’t made it past Puzzled Penguin status!

I did a search not specific to the Pluto and found
ubuntu bug
and specifically “CONFIG_USB_OTG=y”.

So maybe the notebook and/or Opensuse is set up to indicate the USB ports are OTG when they are not.

You can see the Ubuntu thread is a mass of confusion regarding is it a bug or not.

Reading you log better I did check what “Dual-Role OTG device on non-HNP port” means and found HNP means Host Negotiation Protocol.

So it looks to me that the port on you notebook does not support HNP while the hub does.

Not sure if there is any way to fix this in software.