Turris Mox USB (from module A) not working any more (for mass storage) after TOS 6.0 upgrade

In my case (6.2.2 hbs), I had tested with 3 different USB3 mass-storage devices, all not detected at all:

An external hard drive (which is the one I really need to have working):

Bus 003 Device 002: ID 152d:1576 JMicron Technology Corp. / JMicron USA Technology Corp. External Disk 3.0
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               3.00
  bDeviceClass            0 (Defined at Interface level)
  bDeviceSubClass         0 
  bDeviceProtocol         0 
  bMaxPacketSize0         9
  idVendor           0x152d JMicron Technology Corp. / JMicron USA Technology Corp.
  idProduct          0x1576 External Disk 3.0
  bcdDevice            2.04
  iManufacturer           1 JMicron
  iProduct                2 JMS579
  iSerial                 3 987654321029
  bNumConfigurations      1
  Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength          121
    bNumInterfaces          1
    bConfigurationValue     1
    iConfiguration          0 
    bmAttributes         0x80
      (Bus Powered)
    MaxPower              224mA
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        0
      bAlternateSetting       0
      bNumEndpoints           2
      bInterfaceClass         8 Mass Storage
      bInterfaceSubClass      6 SCSI
      bInterfaceProtocol     80 Bulk-Only
      iInterface              0 
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x81  EP 1 IN
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0400  1x 1024 bytes
        bInterval               0
        bMaxBurst              15
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x02  EP 2 OUT
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0400  1x 1024 bytes
        bInterval               0
        bMaxBurst              15
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        0
      bAlternateSetting       1
      bNumEndpoints           4
      bInterfaceClass         8 Mass Storage
      bInterfaceSubClass      6 SCSI
      bInterfaceProtocol     98 
      iInterface              0 
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x01  EP 1 OUT
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0400  1x 1024 bytes
        bInterval               0
        bMaxBurst               0
        Command pipe (0x01)
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x82  EP 2 IN
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0400  1x 1024 bytes
        bInterval               0
        bMaxBurst               0
        MaxStreams             32
        Status pipe (0x02)
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x83  EP 3 IN
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0400  1x 1024 bytes
        bInterval               0
        bMaxBurst              15
        MaxStreams             32
        Data-in pipe (0x03)
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x04  EP 4 OUT
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0400  1x 1024 bytes
        bInterval               0
        bMaxBurst               7
        MaxStreams             32
        Data-out pipe (0x04)
Binary Object Store Descriptor:
  bLength                 5
  bDescriptorType        15
  wTotalLength           22
  bNumDeviceCaps          2
  USB 2.0 Extension Device Capability:
    bLength                 7
    bDescriptorType        16
    bDevCapabilityType      2
    bmAttributes   0x00000f0e
      Link Power Management (LPM) Supported
  SuperSpeed USB Device Capability:
    bLength                10
    bDescriptorType        16
    bDevCapabilityType      3
    bmAttributes         0x00
    wSpeedsSupported   0x000e
      Device can operate at Full Speed (12Mbps)
      Device can operate at High Speed (480Mbps)
      Device can operate at SuperSpeed (5Gbps)
    bFunctionalitySupport   1
      Lowest fully-functional device speed is Full Speed (12Mbps)
    bU1DevExitLat          10 micro seconds
    bU2DevExitLat          32 micro seconds
Device Status:     0x0000
  (Bus Powered)

And 2 different USB sticks for testing (from the same brand, lsusb -v gives almost identical data):

Bus 004 Device 003: ID 0951:1666 Kingston Technology DataTraveler 100 G3/G4/SE9 G2/50
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               3.20
  bDeviceClass            0 
  bDeviceSubClass         0 
  bDeviceProtocol         0 
  bMaxPacketSize0         9
  idVendor           0x0951 Kingston Technology
  idProduct          0x1666 DataTraveler 100 G3/G4/SE9 G2/50
  bcdDevice            1.10
  iManufacturer           1 Kingston
  iProduct                2 DataTraveler 3.0
  iSerial                 3 408D5CE57217E46079118521
  bNumConfigurations      1
  Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength       0x002c
    bNumInterfaces          1
    bConfigurationValue     1
    iConfiguration          0 
    bmAttributes         0x80
      (Bus Powered)
    MaxPower              504mA
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        0
      bAlternateSetting       0
      bNumEndpoints           2
      bInterfaceClass         8 Mass Storage
      bInterfaceSubClass      6 SCSI
      bInterfaceProtocol     80 Bulk-Only
      iInterface              0 
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x81  EP 1 IN
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0400  1x 1024 bytes
        bInterval               0
        bMaxBurst               3
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x02  EP 2 OUT
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0400  1x 1024 bytes
        bInterval               0
        bMaxBurst               3
Binary Object Store Descriptor:
  bLength                 5
  bDescriptorType        15
  wTotalLength       0x0016
  bNumDeviceCaps          2
  USB 2.0 Extension Device Capability:
    bLength                 7
    bDescriptorType        16
    bDevCapabilityType      2
    bmAttributes   0x00000006
      BESL Link Power Management (LPM) Supported
  SuperSpeed USB Device Capability:
    bLength                10
    bDescriptorType        16
    bDevCapabilityType      3
    bmAttributes         0x00
    wSpeedsSupported   0x000e
      Device can operate at Full Speed (12Mbps)
      Device can operate at High Speed (480Mbps)
      Device can operate at SuperSpeed (5Gbps)
    bFunctionalitySupport   2
      Lowest fully-functional device speed is High Speed (480Mbps)
    bU1DevExitLat          10 micro seconds
    bU2DevExitLat        2047 micro seconds
Device Status:     0x0000
  (Bus Powered)
Bus 004 Device 004: ID 0951:1666 Kingston Technology DataTraveler 100 G3/G4/SE9 G2/50
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               3.10
  bDeviceClass            0 
  bDeviceSubClass         0 
  bDeviceProtocol         0 
  bMaxPacketSize0         9
  idVendor           0x0951 Kingston Technology
  idProduct          0x1666 DataTraveler 100 G3/G4/SE9 G2/50
  bcdDevice            1.10
  iManufacturer           1 Kingston
  iProduct                2 DataTraveler 3.0
  iSerial                 3 60A44C3FABFFE260F96C11CF
  bNumConfigurations      1
  Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength       0x002c
    bNumInterfaces          1
    bConfigurationValue     1
    iConfiguration          0 
    bmAttributes         0x80
      (Bus Powered)
    MaxPower              504mA
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        0
      bAlternateSetting       0
      bNumEndpoints           2
      bInterfaceClass         8 Mass Storage
      bInterfaceSubClass      6 SCSI
      bInterfaceProtocol     80 Bulk-Only
      iInterface              0 
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x81  EP 1 IN
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0400  1x 1024 bytes
        bInterval               0
        bMaxBurst               3
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x02  EP 2 OUT
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0400  1x 1024 bytes
        bInterval               0
        bMaxBurst               3
Binary Object Store Descriptor:
  bLength                 5
  bDescriptorType        15
  wTotalLength       0x0016
  bNumDeviceCaps          2
  USB 2.0 Extension Device Capability:
    bLength                 7
    bDescriptorType        16
    bDevCapabilityType      2
    bmAttributes   0x00000006
      BESL Link Power Management (LPM) Supported
  SuperSpeed USB Device Capability:
    bLength                10
    bDescriptorType        16
    bDevCapabilityType      3
    bmAttributes         0x00
    wSpeedsSupported   0x000e
      Device can operate at Full Speed (12Mbps)
      Device can operate at High Speed (480Mbps)
      Device can operate at SuperSpeed (5Gbps)
    bFunctionalitySupport   2
      Lowest fully-functional device speed is High Speed (480Mbps)
    bU1DevExitLat          10 micro seconds
    bU2DevExitLat        2047 micro seconds
Device Status:     0x0000
  (Bus Powered)
1 Like

6.2.2. - tried USB3 flashdisk - in modul A not working, in modul F working OK.

I see that @jada4p reported working USB3 in Turris OS 6.2.3 is in the testing branch - #2 by jada4p (with TOS 6.2.3, on hbk branch). It was already working for him with 6.2.2, and USB3 is not mentioned in the changelog of 6.2.3.

If anyone else can test on hbk, it would be cool to give your status on your USB3 mass-storage devices on the same thread. I’d say it’s likely to give the same result as with 6.2.2, but I might be wrong.

Forget the link above, 6.2.3 is already in hbs, and feedback can be written in Turris OS 6.2.3 is out!
I will be unable to test in the short term, but it would be good to make them aware that the usb3 issue is not fixed for all users/devices

Tested on 6.2.3 hbs - USB3 not working for me. Details shared in the Turris OS 6.2.3 is out!

2 Likes

Can someone test USB3 mass-storage with version 6.2.4? Turris OS 6.2.4 is now in the Testing branch
@jada4p did, it’s working for him. But his test probably does not cover the other non-working cases we face in this thread.

Tested 6.2.4, USB3 HDD doesn’t work for me.

1 Like

Also USB 3.0 flash drive still doesn’t work.

Well, I created this thread 4 months ago, and this regression is still there for some (most?) of us.

Turris OS 6.2.2 was promising (and supposed to fix it), but seemed to fix it only for one of us (as far as I can tell).

We’ve tried to give some info about our USB devices, we reported our issue on each new Turris OS release (thanks to those who did that), but did not get any answer from Turris, so far.

I have to admit that I’m loosing faith.
If someone has an idea to help make things move forward, don’t hesitate…

Being stuck in a 5.4.x version is not sustainable.

Even though USB3 is working for me in MOX module A, I still have problems with SDIO in MOX A - which should work according to Turris team - but is not working in my case.

I wonder if there are not some deeper problems regarding MOX module A.

MOX classic, HBK branch (ie. 6.3.0), .5 GB, 2x WiFi, simple config

EDIT

After changing some SDIO card parameters, according to advice from Turris support, i.e. mode to old regime 802.11b (from 802.11n, via LuCI!!!), and encryption from WPA3 to WPA2 (via reForis) is SDIO card working!

I have no idea how to move forward.
I guess this issue will have to be picked up by kernel developers who produced the patch for this issue [PATCH] phy: marvell: phy-mvebu-a3700-comphy: Reset COMPHY registers before USB 3.0 power on - Pali Rohár
I guess they probably have access to some “lucky” USB3 devices, therefore they though the USB3 issue is fixed for everybody, but apparently it’s not for at least some USB3 HDDs (spinning disks).
Does anyone have an idea how to involve the right people in order to troubleshoot our issues further? I would be more than happy to run whatever test kernel to help identify the root cause.

@Pepe how could we help solve this issue?
Several proposed here to run some tests on their MOX if you give directions.
If necessary, I could even send you one of the devices not working on my MOX (a USB3 stick).

I would say that you need to need to provide such details:

  • Which USB flash drive are you trying to use
    • Most likely the brand, type, and as well the USB ID how it is recognized in the system*
      • * the USB ID can be obtained by issuing lsusb -t command on any GNU/Linux distributions
  • If the USB flash drive is using UASP, that’s important to know, but that could be observed in the system log and if it is there, you can do e.g. disabling UASP in the system,

And it is important to know which filesystem you are using and if all the USB root are visible to the system. That could be known also from lsusb.

Include all these details to the GitLab issue and/or please let the support department know.

Sorry that I can not help you further on this one.

1 Like

@Pepe I’ve opened Some USB 3 devices not recognized in MOX (#404) · Issues · Turris / Turris OS / Turris Build · GitLab with the requested details.

4 Likes

@padam (or anyone else), did you contact the support department on your side? Support - Turris Documentation
If not, I can do it if you wish

@Mossroy I did open the GitLab issue as suggested by @Pepe, I didn’t contact support team via email. Feel free to do so, if you think it can help.
I assumed that when I create similar issue in GitLab like USB 3 devices not recognized in MOX (#391) · Issues · Turris / Turris OS / Turris Build · GitLab it will be picked up and worked on.

@padam I agree with you, but the idea is to give us all the chances we can have, and strictly follow:

So I just sent an e-mail to the support team, pointing to your new JIRA ticket.

I had this answer from support team yesterday:

Thank you for reporting your issue with your USB3 SSDs.

We have stopped working on that issue because all the USB3 devices that we have started to work. We are sorry to read that you keep dealing with that issue.

Nevertheless, if you are able to send us one of that devices for debugging as you suggest, we would be grateful for that.

Could you please send it to the following address with a label that it belongs to this ticket number?

(…)

There is a possible workaround to apply in the meantime. If you connect your SSD over a USB2 cable, it should work even with the current Turris OS 6.2.4 version. The speed would not be the same, though.

With kind regards

Stepan Rechner

To be sure I don’t send a USB stick for nothing, I tested again today to upgrade my MOX to latest Turris OS (6.2.4).
As expected, it does not recognize my external hard drive and/or my USB sticks. As usual, lsusb -t and dmesg do not see it.
As usual, reverting to 5.4.4 makes everything work again.

So I’ll send my USB stick (a USB3 128GB Kingston DataTraveler) in Czech Republic, to let Turris test on their side.

3 Likes

Mossroy, thank you very much for providing your hardware for the team to test.

You are not alone with this issue. I own a SanDisk USB 3 Stick (SDCZ430-032G) which is not recognized by 6.2.4 as well.