Ezcast s8000 usb 3.1 gen 2 enclosure not working

I purchased 2 nvme m.2 ssd enclosures and the drives for them from amazon:
enclosures
M.2 drives

The problem I am having is that they are detected in dmesg and lsusb but will not appear in /dev/sd* unless I set

DisableSwitching=1

in

/etc/usb_modeswitch.conf

And then my PC will freeze everytime parted attempts to save and exit or fdisk runs anything but “fdisk -l”.
Both drives behave the exact same way. On a side note they do not show up in windows drive manager either. All my googling has returned results where the device had multiple modes and was detected as the wrong one (doesnt appear to be the case here) or is for actual multi-mode usb devices. Any help here will be appreciated.

My System

System: Kernel: 5.6.12-300.fc32.x86_64 x86_64 bits: 64 compiler: gcc v: 10.1.1
Desktop: Cinnamon 4.4.8 wm: gnome-shell dm: GDM, LightDM
Distro: Fedora release 32 (Thirty Two)
Machine: Type: Desktop Mobo: MSI model: A88XI AC V2 (MS-7913) v: 1.0 serial:
UEFI: American Megatrends v: 2.2 date: 01/11/2016
CPU: Topology: Quad Core model: AMD Athlon X4 840 bits: 64 type: MCP arch: Steamroller
rev: 1 L2 cache: 2048 KiB
flags: avx lm nx pae sse sse2 sse3 sse4_1 sse4_2 sse4a ssse3 svm bogomips: 24755
Speed: 2374 MHz min/max: 1400/3100 MHz Core speeds (MHz): 1: 2425 2: 2336 3: 1627
4: 1747
Graphics: Device-1: NVIDIA GP107 [GeForce GTX 1050 Ti] vendor: eVga.com. driver: nvidia v: 440.82
bus ID: 01:00.0 chip ID: 10de:1c82
Display: x11 server: Fedora Project X.org 1.20.8 compositor: gnome-shell driver: nvidia
unloaded: fbdev,modesetting,nouveau,vesa alternate: nv resolution: 1920x1080~60Hz
s-dpi: 96
OpenGL: renderer: GeForce GTX 1050 Ti/PCIe/SSE2 v: 4.6.0 NVIDIA 440.82
direct render: Yes
Audio: Device-1: AMD FCH Azalia vendor: Micro-Star MSI driver: snd_hda_intel v: kernel
bus ID: 00:14.2 chip ID: 1022:780d
Device-2: NVIDIA GP107GL High Definition Audio vendor: eVga.com. driver: snd_hda_intel
v: kernel bus ID: 01:00.1 chip ID: 10de:0fb9
Sound Server: ALSA v: k5.6.12-300.fc32.x86_64
Network: Device-1: Realtek RTL8111/8168/8411 PCI Express Gigabit Ethernet vendor: Micro-Star MSI
driver: r8169 v: kernel port: d000 bus ID: 02:00.0 chip ID: 10ec:8168
IF: enp2s0 state: up speed: 1000 Mbps duplex: full mac:
Device-2: Intel Wireless 7260 driver: iwlwifi v: kernel port: d000 bus ID: 03:00.0
chip ID: 8086:08b1
IF: wlp3s0 state: down mac:
IF-ID-1: bridge0 state: up speed: 1000 Mbps duplex: unknown mac:
IF-ID-2: virbr0 state: down mac:
IF-ID-3: virbr0-nic state: down mac:
Drives: Local Storage: total: 6.59 TiB used: 1.55 TiB (23.5%)
ID-1: /dev/sda vendor: Western Digital model: WD30EZRX-00D8PB0 size: 2.73 TiB
speed: 6.0 Gb/s serial:
ID-2: /dev/sdb vendor: Toshiba model: DT01ACA100 size: 931.51 GiB speed: 6.0 Gb/s
serial:
ID-3: /dev/sdc vendor: Western Digital model: WD30EZRX-00SPEB0 size: 2.73 TiB
speed: 6.0 Gb/s serial:
ID-4: /dev/sdd vendor: A-Data model: SP550 size: 223.57 GiB speed: 6.0 Gb/s
serial:
RAID: Device-1: storage type: zfs status: ONLINE size: 2.72 TiB free: 1.61 TiB Components:
online: N/A
Partition: ID-1: / size: 68.40 GiB used: 24.86 GiB (36.3%) fs: ext4 dev: /dev/dm-0
ID-2: /boot size: 975.9 MiB used: 241.7 MiB (24.8%) fs: ext4 dev: /dev/sdd2
ID-3: /home size: 2.63 TiB used: 1.11 TiB (42.2%) fs: zfs raid: storage/HOME
Swap: ID-1: swap-1 type: partition size: 7.89 GiB used: 256 KiB (0.0%) priority: -2
dev: /dev/dm-1
Sensors: System Temperatures: cpu: 21.8 C mobo: N/A gpu: nvidia temp: 31 C
Fan Speeds (RPM): N/A gpu: nvidia fan: 35%
Repos: No active yum repos in: /etc/yum.repos.d/_copr_phracek-PyCharm.repo
Active yum repos in: /etc/yum.repos.d/fedora-cisco-openh264.repo
1: fedora-cisco-openh264 ~ https: //codecs.fedoraproject.org/openh264/$releasever/$basearch/
Active yum repos in: /etc/yum.repos.d/fedora-modular.repo
1: fedora-modular ~ https: //mirrors.fedoraproject.org/metalink?repo=fedora-modular-$releasever&arch=$basearch
Active yum repos in: /etc/yum.repos.d/fedora-updates-modular.repo
1: updates-modular ~ https: //mirrors.fedoraproject.org/metalink?repo=updates-released-modular-f$releasever&arch=$basearch
No active yum repos in: /etc/yum.repos.d/fedora-updates-testing-modular.repo
No active yum repos in: /etc/yum.repos.d/fedora-updates-testing.repo
Active yum repos in: /etc/yum.repos.d/fedora-updates.repo
1: updates ~ https: //mirrors.fedoraproject.org/metalink?repo=updates-released-f$releasever&arch=$basearch
Active yum repos in: /etc/yum.repos.d/fedora.repo
1: fedora ~ https: //mirrors.fedoraproject.org/metalink?repo=fedora-$releasever&arch=$basearch
No active yum repos in: /etc/yum.repos.d/google-chrome.repo
No active yum repos in: /etc/yum.repos.d/rpmfusion-free-updates-testing.repo
Active yum repos in: /etc/yum.repos.d/rpmfusion-free-updates.repo
1: rpmfusion-free-updates ~ https: //mirrors.rpmfusion.org/metalink?repo=free-fedora-updates-released-$releasever&arch=$basearch
Active yum repos in: /etc/yum.repos.d/rpmfusion-free.repo
1: rpmfusion-free ~ https: //mirrors.rpmfusion.org/metalink?repo=free-fedora-$releasever&arch=$basearch
Active yum repos in: /etc/yum.repos.d/rpmfusion-nonfree-nvidia-driver.repo
1: rpmfusion-nonfree-nvidia-driver ~ https: //mirrors.rpmfusion.org/metalink?repo=nonfree-fedora-nvidia-driver-$releasever&arch=$basearch
Active yum repos in: /etc/yum.repos.d/rpmfusion-nonfree-steam.repo
1: rpmfusion-nonfree-steam ~ https: //mirrors.rpmfusion.org/metalink?repo=nonfree-fedora-steam-$releasever&arch=$basearch
No active yum repos in: /etc/yum.repos.d/rpmfusion-nonfree-updates-testing.repo
Active yum repos in: /etc/yum.repos.d/rpmfusion-nonfree-updates.repo
1: rpmfusion-nonfree-updates ~ https: //mirrors.rpmfusion.org/metalink?repo=nonfree-fedora-updates-released-$releasever&arch=$basearch
Active yum repos in: /etc/yum.repos.d/rpmfusion-nonfree.repo
1: rpmfusion-nonfree ~ https: //mirrors.rpmfusion.org/metalink?repo=nonfree-fedora-$releasever&arch=$basearch
Active yum repos in: /etc/yum.repos.d/vivaldi.repo
1: vivaldi ~ http: //repo.vivaldi.com/archive/rpm/x86_64
Active yum repos in: /etc/yum.repos.d/zfs.repo
1: zfs ~ http: //download.zfsonlinux.org/fedora/$releasever/$basearch/
Info: Processes: 414 Uptime: 1h 17m Memory: 15.65 GiB used: 7.86 GiB (50.2%) Init: systemd
v: 245 runlevel: 5 target: graphical.target Compilers: gcc: 10.1.1 clang: 10.0.0
Client: Unknown python3.8 client inxi: 3.1.00

lsusb for the device in question

Bus 007 Device 004: ID 1de1:1101 Actions Microelectronics Co. Generic Display Device (Mass storage mode)
Device Descriptor:
bLength 18
bDescriptorType 1
bcdUSB 3.20
bDeviceClass 0
bDeviceSubClass 0
bDeviceProtocol 0
bMaxPacketSize0 9
idVendor 0x1de1 Actions Microelectronics Co.
idProduct 0x1101 Generic Display Device (Mass storage mode)
bcdDevice 30.00
iManufacturer 1
iProduct 2
iSerial 3
bNumConfigurations 1
Configuration Descriptor:
bLength 9
bDescriptorType 2
wTotalLength 0x0079
bNumInterfaces 1
bConfigurationValue 1
iConfiguration 0
bmAttributes 0x80
(Bus Powered)
MaxPower 896mA
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 0x81 EP 1 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 0x02 EP 2 OUT
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0400 1x 1024 bytes
bInterval 0
bMaxBurst 15
MaxStreams 32
Data-out pipe (0x04)
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
Status pipe (0x02)
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 0
Command pipe (0x01)

dmesg when the device is plugged in

[May19 15:56] usb 7-1: new SuperSpeed Gen 1 USB device number 4 using xhci_hcd
[ +0.025222] usb 7-1: New USB device found, idVendor=1de1, idProduct=1101, bcdDevice=30.00
[ +0.000003] usb 7-1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[ +0.000002] usb 7-1: Product: AM8180
[ +0.000001] usb 7-1: Manufacturer: AMicro
[ +0.000001] usb 7-1: SerialNumber: 012345683504
[ +0.060352] scsi host8: uas
[ +0.006979] scsi 8:0:0:0: Direct-Access AMicro AM8180 NVME 1.00 PQ: 0 ANSI: 6
[ +0.014274] sd 8:0:0:0: Attached scsi generic sg4 type 0
[ +0.014138] sd 8:0:0:0: [sde] 500118192 512-byte logical blocks: (256 GB/238 GiB)
[ +0.002766] sd 8:0:0:0: [sde] Write Protect is off
[ +0.000003] sd 8:0:0:0: [sde] Mode Sense: 37 00 00 08
[ +0.004423] sd 8:0:0:0: [sde] Write cache: enabled, read cache: enabled, doesn’t support DPO or FUA
[ +0.003885] sd 8:0:0:0: [sde] Optimal transfer size 33553920 bytes
[ +0.047526] sde: sde1
[ +0.035353] sd 8:0:0:0: [sde] Attached SCSI disk
[ +0.556193] sd 8:0:0:0: [sde] Synchronizing SCSI cache
[ +0.132272] sd 8:0:0:0: [sde] Synchronize Cache(10) failed: Result: hostbyte=DID_ERROR driverbyte=DRIVER_OK

1 Like

As a short follow up, the devices work flawlessly with my pixel 3a Android phone, but not with windows or linux (tested on 3 different systems with both usb-c to c and usb-c to standard cables).

Hello avanesov, are you sure you are using usb_modeswitch correctly? You may need to tweak it a bit, something like this: https://discussion.fedoraproject.org/t/huawei-e3372h-153-stick-mode-fedora-30-usb-modeswitch/3724

Otherwise, some things off the top of my head.

Can cat access the disks? If you do sudo cat /dev/sd?* the terminal should spit out data, you can ctrl-c to cancel then * reset the terminal. That would mean you can read raw data off this disk, and maybe write access is denied somewhere in the software stack.

Also, if the M.2. disks have a filesystem on them already, which is accessible in Android, do you have to tools to mount it on Linux? Some useful tools to try are:

lsblk
diskpart

Can dd access the disks? You might have luck clearing the disk with dd using the command:
$ sudo dd if=/dev/zero of=/dev/sd? Be aware this is deletes everything on the disk! Then trying your partitioning again. The M.2 drive might need GPT, instead of MBR you could try gdisk, instead of fdisk.

When making a filesystem on the M.2 disks, if you want it cross compatible with Windows, Linux and Android, you have to choose one that will work. Probably exFAT, which needs exfat-fuse installed to work in Fedora. See https://www.7dayshop.com/blog/operating-systems-and-file-systems-cross-compatibility-windows-apple-linux-playstation-xbox-android/

Afraid that’s all I can offer, good luck!

Thanks for the reply. Ill check up on your suggestions when I get home (Im at work offshore for the next 3 weeks).

Stay safe, and BTW - I meant to say “disktype” instead of “diskpart”. The disktype command can be used, similar to fdisk -l, to determine the partition layout of disks, it’s used in computer forensics. Not sure it’s in the default repos.

Hey, been home about a week but I have been swamped and haven’t taken the time to dig into this any more. Two other enclosures (different brands) came in and are working perfectly so with time limited i’m shelving this issue as a “will not investigate further” for the time being. Ill check back occasionally in case anyone requests any info I can provide to help with any similar issues they may be having, and ill post if I get around to actually working on it and figure anything out.

@ razorbackstothefinis Thanks for the posts, I appreciate the help.

I have an identical unit which is successfully flashed to RTL9210 firmware after referring to

The firmware will also change the usb id to RTL9210. I have not encountered any issues yet after using it for a week. The only downside is that Windows is needed to flash the firmware. I acquired the firmware from

Do note that flashing firmware could result in bricking the enclosure, take the risk in your own account.

Thanks for the update on this. I’ll check out your solution when I can.