ORICO 2.5 inch USB C Hard Drive Enclosure

I had a couple of SSDs sitting around and wanted to use them over USB instead of leaving them sit on the shelf so I looked at inexpensive enclosures on Amazon and came up with ORICO 2.5 inch USB C Hard Drive Enclosure USB 3.1 Gen 1 to SATA III External Hard Drive Case for SSD HDD 9.5 7mm Tool-Free with UASP for under $10.

I’d definitely wanted a USB C interface on the device for the ease of connecting the cable. This version is supplied with a USB-C to USB-A cable which was good for connecting directly to a Raspberry Pi. They also sell a version that appears exactly the same but is supplied with a USB-C to USB-C cable.

This works as promised but I noticed the strange thing that it hides information about the disk that’s installed. The powered dock I used in my recent installation, the Vantec Nexstar, reports the actual drive name in linux, which leaves me a little more comfortable. Here’s the relevant dmesg output, followed by fdisk and usb details for the drive in the Vantec dock.

[75735.042244] usb 2-2.2: new SuperSpeed USB device number 6 using xhci_hcd
[75735.064039] usb 2-2.2: New USB device found, idVendor=174c, idProduct=5516, bcdDevice= 1.00
[75735.064079] usb 2-2.2: New USB device strings: Mfr=2, Product=3, SerialNumber=1
[75735.064085] usb 2-2.2: Product: USB Mass Storage Device
[75735.064090] usb 2-2.2: Manufacturer: VANTEC
[75735.064095] usb 2-2.2: SerialNumber: AD41314000038
[75735.068759] usb-storage 2-2.2:1.0: USB Mass Storage device detected
[75735.072590] scsi host1: usb-storage 2-2.2:1.0
[75736.074134] scsi 1:0:0:0: Direct-Access     Samsung  SSD 850 EVO 1TB  EMT0 PQ: 0 ANSI: 5
[75736.074465] sd 1:0:0:0: Attached scsi generic sg1 type 0
[75736.080433] sd 1:0:0:0: [sdb] 1953525168 512-byte logical blocks: (1.00 TB/932 GiB)
[75736.081152] sd 1:0:0:0: [sdb] Write Protect is off
[75736.081165] sd 1:0:0:0: [sdb] Mode Sense: 23 00 00 00
[75736.081818] sd 1:0:0:0: [sdb] No Caching mode page found
[75736.081832] sd 1:0:0:0: [sdb] Assuming drive cache: write through
[75736.085623]  sdb: sdb1 sdb2
[75736.086411] sd 1:0:0:0: [sdb] Attached SCSI disk

wim@WimPi4-Backup:~ $ sudo fdisk -l /dev/sdb
Disk /dev/sdb: 931.51 GiB, 1000204886016 bytes, 1953525168 sectors
Disk model: SSD 850 EVO 1TB
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x928e5154

Device     Boot  Start        End    Sectors   Size Id Type
/dev/sdb1         8192     532479     524288   256M  c W95 FAT32 (LBA)
/dev/sdb2       532480 1953525167 1952992688 931.3G 83 Linux

wim@WimPi4-Backup:~ $ lsusb
Bus 002 Device 006: ID 174c:5516 ASMedia Technology Inc. USB Mass Storage Device
Bus 002 Device 003: ID 0bc2:ab38 Seagate RSS LLC Backup Plus Hub (Mass Storage)
Bus 002 Device 002: ID 0bc2:ab45 Seagate RSS LLC Backup+ Hub
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 003: ID 0bc2:ab44 Seagate RSS LLC Backup Plus Hub
Bus 001 Device 002: ID 2109:3431 VIA Labs, Inc. Hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
wim@WimPi4-Backup:~ $ lsusb -t
/:  Bus 02.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/4p, 5000M
    |__ Port 2: Dev 2, If 0, Class=Hub, Driver=hub/3p, 5000M
        |__ Port 1: Dev 3, If 0, Class=Mass Storage, Driver=uas, 5000M
        |__ Port 2: Dev 6, If 0, Class=Mass Storage, Driver=usb-storage, 5000M
/:  Bus 01.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/1p, 480M
    |__ Port 1: Dev 2, If 0, Class=Hub, Driver=hub/4p, 480M
        |__ Port 2: Dev 3, If 0, Class=Hub, Driver=hub/3p, 480M

The Orico details:

[75201.010963] usb 2-2.2: new SuperSpeed USB device number 5 using xhci_hcd
[75201.032436] usb 2-2.2: New USB device found, idVendor=152d, idProduct=0576, bcdDevice=12.01
[75201.032455] usb 2-2.2: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[75201.032461] usb 2-2.2: Product: External Disk 3.0
[75201.032466] usb 2-2.2: Manufacturer: JMicron
[75201.032470] usb 2-2.2: SerialNumber: 000000778899
[75201.041093] scsi host1: uas
[75201.042342] scsi 1:0:0:0: Direct-Access     JMicron  Tech             1201 PQ: 0 ANSI: 6
[75201.045191] sd 1:0:0:0: Attached scsi generic sg1 type 0
[75201.045564] sd 1:0:0:0: [sdb] 1953525168 512-byte logical blocks: (1.00 TB/932 GiB)
[75201.045572] sd 1:0:0:0: [sdb] 4096-byte physical blocks
[75201.045779] sd 1:0:0:0: [sdb] Write Protect is off
[75201.045785] sd 1:0:0:0: [sdb] Mode Sense: 53 00 00 08
[75201.046159] sd 1:0:0:0: [sdb] Write cache: enabled, read cache: enabled, doesn't support DPO or FUA
[75201.050811] sd 1:0:0:0: [sdb] Preferred minimum I/O size 4096 bytes
[75201.050827] sd 1:0:0:0: [sdb] Optimal transfer size 33553920 bytes not a multiple of preferred minimum block size (4096 bytes)
[75201.053405]  sdb: sdb1 sdb2
[75201.053747] sd 1:0:0:0: [sdb] Attached SCSI disk

wim@WimPi4-Backup:~ $ sudo fdisk -l /dev/sdb
Disk /dev/sdb: 931.51 GiB, 1000204886016 bytes, 1953525168 sectors
Disk model: Tech
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disklabel type: dos
Disk identifier: 0x928e5154

Device     Boot  Start        End    Sectors   Size Id Type
/dev/sdb1         8192     532479     524288   256M  c W95 FAT32 (LBA)
/dev/sdb2       532480 1953525167 1952992688 931.3G 83 Linux

wim@WimPi4-Backup:~ $ lsusb
Bus 002 Device 005: ID 152d:0576 JMicron Technology Corp. / JMicron USA Technology Corp. Gen1 SATA 6Gb/s Bridge
Bus 002 Device 003: ID 0bc2:ab38 Seagate RSS LLC Backup Plus Hub (Mass Storage)
Bus 002 Device 002: ID 0bc2:ab45 Seagate RSS LLC Backup+ Hub
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 003: ID 0bc2:ab44 Seagate RSS LLC Backup Plus Hub
Bus 001 Device 002: ID 2109:3431 VIA Labs, Inc. Hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

wim@WimPi4-Backup:~ $ lsusb -t
/:  Bus 02.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/4p, 5000M
    |__ Port 2: Dev 2, If 0, Class=Hub, Driver=hub/3p, 5000M
        |__ Port 1: Dev 3, If 0, Class=Mass Storage, Driver=uas, 5000M
        |__ Port 2: Dev 5, If 0, Class=Mass Storage, Driver=uas, 5000M
/:  Bus 01.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/1p, 480M
    |__ Port 1: Dev 2, If 0, Class=Hub, Driver=hub/4p, 480M
        |__ Port 2: Dev 3, If 0, Class=Hub, Driver=hub/3p, 480M

The Vantec device is designed to support one or two disks, while the Orico is a single disk device. I find the differences interesting. I’m left wondering if either device hides any important details of the SSD itself that might improve the performance or longevity.

Canon CanoScan LiDE 400

I’ve had a Canon CanoScan LiDE 210 for at least 7 years. One of the deciding factors when I bought it was that it used a single USB cable, with no need for a second power cable.

The 210 used a mini-usb cable, which was sometimes difficult to make sure it was inserted in the correct direction. I occasionally had problems with the software driving losing communication during a scan. I switched lengths of cable at various times, with shorter cables seeming to be more consistent, but never truly conclusive.

Recently the scanner stopped moving the scan bar back to the starting location before each scan. First it would leave the scan bar at the finish location, and move to the beginning position when I would start the next scan, but then that functionality stopped and it would only return to the start position when it was first plugged into the USB port. If I tried to scan a second page without unplugging the USB cable, the movement motor would make a nasty grinding sound as it tried to move the scanner further down the page, and would result in a messy black page in the scan results. It was especially frustrating if I was trying to create a multi page PDF.

I read several online reviews, and decided to get another Canon scanner. The reviews recommended saving $20 and getting the less expensive scanner, but from my reading, only the more expensive scanner used the USB C plug, which has the advantage that it can be plugged in either direction.

I found it fascinating how similar the new packaging is to the old packaging. The old box was designed with a carrying handle, while the new box is not. I expect that’s largely due to the predominance of mail order over retail purchase. The dimensions of the new scanner and the box are pretty much the same. The boxes can be stacked 13 high. The temperature range on the old one could go 5° to 35°C while the new one goes from 0° to 40°C. Each scanner lists a maximum 4800 dpi. The 210 reported 10 seconds per page. The 400 reports 8 seconds per page.

The new software is slightly nicer working with the most recent version of windows 10, but still nothing to be too excited about. My biggest issue is that the settings for the Auto button on the scanner will not allow me to specify it will always save a JPG file. I could do that with the old scanner software. Now, to make sure I always get the format I want I much launch the software and initiate the scanning from the PC.

Interesting BeagleBoneBlack Power Solution

I’ve been working on a project that I want to make portable that requires powering both the BBB and a USB hub, so that enough power is supplied to the required USB peripherals. While looking for other items in Fry’s recently I came across a USB Barrel Jack Adapter. http://www.frys.com/product/7726838 At only $3 for a part with reasonable strain relief I was quite happy to give it a try.

BBB Powered by USB Hub

Barrel Jack draws power from hub to power the BeagleBone

Items plugged into my USB Hub:

  • Linksys AE1000 802.11n WiFi Adapter connected to my 5.8GHz network
  • Barrel Jack Adapter providing Power to BeagleBoneBlack
  • Logitech C920 WebCam

Because of the orientation of the ports on my hub and the fact that the AE1000 is wider than most USB devices I’m not able to plug four devices into this hub. The BBB starts and runs consistently when I apply power to the USB hub in this situation. This is a good situation for me because it appears that I just need to properly power the 2Amp/5Volts required by the hub, and it can provide enough juice for the BBB to operate.

BeagleBoneBlack WiFi configuration problems

I got a BeagleBone Black last week. It seems to be a nice system, with a 1GHz ARM7 processor, ethernet, USB, HDMI and plenty of expansion possibilities, all for $45.

It’s shipping configuration runs the Angstrom Linux distribution. I’ve worked with Angstrom in the past on a Beagleboard used for an embedded application. It seems that the newer Angstrom is using ConnMan 1.4 as the network manager. The version that’s available at the ConnMan site, 1.7, has a command line configuration tool, while the version included in the distribution does not.

I’ve not been able to figure out how to enable wireless networking. Plugging in an ethernet cable just works. Plugging in the USB WiFi adapter gives me a wlan0 device, and the MAC matches that printed on the device.

I’m not able to issue the command “ifup wlan0” without an error. It looks like the connman settings file should enable WiFi by default.

root@beaglebone:~# ifup wlan0
ifup: can't open '/etc/network/interfaces': No such file or directory
root@beaglebone:~# ifconfig wlan0 up
ifconfig: SIOCSIFFLAGS: No such file or directory
root@beaglebone:~# lsusb
Bus 001 Device 002: ID 04b4:6560 Cypress Semiconductor Corp. CY7C65640 USB-2.0 "TetraHub"
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 003: ID 13b1:002f Linksys AE1000 v1 802.11n [Ralink RT3572]
root@beaglebone:~# ls -alFR /var/lib/connman/
/var/lib/connman/:
total 16
drwxr-xr-x  3 root root 4096 Jan  1  2000 ./
drwxr-xr-x 17 root root 4096 Jan  1  2000 ../
drwx------  2 root root 4096 Jan  1  2000 ethernet_c8a030a62b80_cable/
-rw-------  1 root root   68 Jan  1  2000 settings

/var/lib/connman/ethernet_c8a030a62b80_cable:
total 16
drwx------ 2 root root 4096 Jan  1  2000 ./
drwxr-xr-x 3 root root 4096 Jan  1  2000 ../
-rw------- 1 root root 4096 Jan  1  2000 data
-rw------- 1 root root  186 Jan  1  2000 settings
root@beaglebone:~# cat /var/lib/connman/settings 
[global]
OfflineMode=false

[Wired]
Enable=true

[WiFi]
Enable=true

I went so far as to connect to an HDMI monitor with keyboard and mouse and was able to see the graphical connection manager. I tried both with and without having the ethernet cable plugged in, but was not able to click on the “Enable” button on the wireless networks dialog.

BeagleBoneWiFi

I believe that I need to do something with wpa_supplicant to get the password properly accepted on my machine, but I’m more interested in getting the wireless up and running than worrying about getting the security set.

I included the lsusb command in my code listing before because it lists the WiFi device that I’m using. I’m powering the device by a standalone power supply, not via USB, so I believe that I should have enough power to run the wifi. This connection has it connected via an external hub, but I’ve had the same results when connected directly to the board.