Posting to help people who might experience the same problem.
I was having problems on my OH3 on Raspberry Pi4 booting from SSD (ADATA SD600Q). For some reason boot would sometimes take forever or not complete.
My SSD had been installed through menu option 37, so, official OpenHabian 3 install and add-ons.
After much frustration I powered down everything, mounted the SD Card and the SSD on my main computer (which runs linux) and did some searching on the log files, especially /var/log/syslog for anything strange.
This log entry led me to the solution, so if you find something similar you have the same issue (search for uas_eh_abort_handler):
Mar 27 17:27:01 openHABianDevice kernel: [ 524.016364] sd 0:0:0:0: [sda] tag#23 uas_eh_abort_handler 0 uas-tag 8 inflight cmd
The issue is that my SSD doesn’t implement well the UAS protocol, which is activated by default in USB3 devices, and causes problems in Raspberry Pi linux when not fully implemented. Solution is to apply a configuration parameter to a boot file found on the SD card
The detailed explanation where I found the solution is found here: https://www.raspberrypi.org/forums/viewtopic.php?t=245931
In a nutshell this is how I resolved it:
- ran dmesg on my main computer after plugging the SSD into it
- found the line which showed my device’s vendor and product id, like below (in my case 125f and a88a):
[91067.049642] usb 2-2: New USB device found, idVendor=125f, idProduct=a88a, bcdDevice=93.04
[91067.049648] usb 2-2: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[91067.049651] usb 2-2: Product: SD600Q
[91067.049654] usb 2-2: Manufacturer: ADATA
The I went to the SD card, also plugged into my linux computer, at the boot partition found the cmdline.txt file and added this at the start of it (this was added before the rest that’s at the first line, not as a new or extra line):
usb-storage.quirks=125f:a88a:u
Unmounted SD and SSD from linux computer, plugged it all back into the Pi4, power on, and I could ping the Pi4 quickly.
Hope this helps someone out there.