OpenThread RCP Dongle USB hang

I am using NCS 2.6.1 and have programmed a nrf52840dongle (USB Dongle) with the build result of nrf/samples/openthread/coprocessor

The problem I am having is that normally if I power up the border router the device will be detected okay. However, if I reboot the border router I am using, the device is hung. I am suspecting it is a problem (bug?) with the openthread dongle firmware for a few reasons:

1) If I unplug and re-plug the device it enumerates without issue

2) If I press the side button on the dongle, the red light immediately starts pulsing and I see the device enumerate in the DFU bootloader mode

Here is the output on a reboot:

[   22.203362] usb 1-7: device descriptor read/64, error -110
[   37.819340] usb 1-7: device descriptor read/64, error -110
[   38.059182] usb 1-7: new full-speed USB device number 3 using xhci_hcd
[   53.435342] usb 1-7: device descriptor read/64, error -110
[   69.051332] usb 1-7: device descriptor read/64, error -110
[   69.163504] usb usb1-port7: attempt power cycle
[   69.579164] usb 1-7: new full-speed USB device number 4 using xhci_hcd
[   85.051516] usb 1-7: device descriptor read/8, error -110
[  100.667550] usb 1-7: device descriptor read/8, error -110
[  100.907174] usb 1-7: new full-speed USB device number 5 using xhci_hcd
[  116.283543] usb 1-7: device descriptor read/8, error -110

And it never recovers without removing power from the dongle. Of course this is not acceptable for use in a remote border router unit that will be rebooted from time to time.

The border router is a Linux box.

Parents Reply Children
  • Unfortunately I don't see how this is going to help. Since the hang only occurs when the host is rebooted, and the device no longer enumerates on the USB bus, there is no way the host can receive any log files. Since the JLink connector is a 'no legs' version of the TagConnect, I cannot even connect to that to attempt RTT log viewing. Are you aware of other reports of this issue? I am experiencing it with multiple nrf52840dongle and with multiple host computers. The only online reports of this issue I had seen was with early engineering versions of the 52840 chip. I wonder if this is a Zephyr ACM/CDC regression.

  • Is it 100% reproducible or does it only happen once a time? Could you elaborate on the border router used to reproduce (how is the thread stack built and how is it configured)?

  • Hi Amanda,

    I'm encountering a consistent issue with the pca10059 ncs2.6.1 thread coprocessor sample on my setup, which includes:

    - Linux pve 6.9.8-x64v3-xanmod1 #0~20240705.g77bcbc2 SMP PREEMPT_DYNAMIC Fri Jul 5 16:18:13 UTC x86_64 GNU/Linux
    - An Intel NUC where I pass through the dongle to Home Assistant as a Thread dongle.

    Whenever I use the ncs2.6.1 thread coprocessor sample, it frequently results in errors like these:
    ```
    [10998.074483] usb 1-2: new full-speed USB device number 16 using xhci_hcd
    [11013.454063] usb 1-2: device descriptor read/64, error -110
    ...
    [11091.915835] usb 1-2: device descriptor read/8, error -110
    [11092.023888] usb usb1-port2: unable to enumerate USB device
    ```
    This problem occurs every time without fail.

    However, when I switch to using github.com/.../ot-nrf528xx, there are no issues at all.

  • I have forward it to the internal. Thanks for the report. 

Related