{"id":13448,"date":"2025-09-10T08:40:16","date_gmt":"2025-09-10T15:40:16","guid":{"rendered":"https:\/\/jasonsblog.ddns.net\/?p=13448"},"modified":"2025-09-10T08:40:16","modified_gmt":"2025-09-10T15:40:16","slug":"first-raspberry-pi-4-model-b-issue-with-usb-drives","status":"publish","type":"post","link":"https:\/\/jasonsblog.ddns.net\/index.php\/2025\/09\/10\/first-raspberry-pi-4-model-b-issue-with-usb-drives\/","title":{"rendered":"First Raspberry Pi 4 Model B Issue with USB Drives"},"content":{"rendered":"\n<p>This bug got me yesterday, and what&#8217;s funny is that I had solved this years ago when I got one of the early Raspberry Pi 4B&#8217;s to use with my Bitcoin Node. I recently converted a Raspberry Pi 5 to be a backup Bitcoin node with a 2 TB drive, and converted my original Pi 4 to be a Monero node with a 1 TB drive which kept losing the SSD and corrupting data. I had thought it might be a power supply issue, but a Google search found this article below. The only issue with the instructions is the file is now in \/boot\/firmware\/. Consequently, I have a newer Pi 4 with SSD that doesn&#8217;t have this issue, so probably related to the chip used, and I even tried a newer kernel and firmware with no change. But once reverted to the old usb-storage driver it&#8217;s working reliably and downloading the Monero blockchain. So if you&#8217;re trying to use an old Pi 4 with USB drive, this might be required to get it working consistently.<\/p>\n\n\n\n<p><a href=\"https:\/\/bashtan.ro\/raspberry-pi-4-model-b-8gb-issue-hard-drives-disconnecting-software-solved\/\" target=\"_blank\" rel=\"noreferrer noopener\">https:\/\/bashtan.ro\/raspberry-pi-4-model-b-8gb-issue-hard-drives-disconnecting-software-solved\/<\/a><\/p>\n\n\n<div class=\"wp-block-ub-divider ub_divider ub-divider-orientation-horizontal\" id=\"ub_divider_87476709-02e6-4f32-b474-37a7c2433b67\"><div class=\"ub_divider_wrapper\" style=\"position: relative; margin-bottom: 2px; width: 100%; height: 2px; \" data-divider-alignment=\"center\"><div class=\"ub_divider_line\" style=\"border-top: 2px solid #ccc; margin-top: 2px; \"><\/div><\/div><\/div>\n\n\n<p>By Bashtanu<\/p>\n\n\n\n<h1 class=\"wp-block-heading\">Fixing USB Drive Disconnections on Raspberry Pi 4 with Bookworm Update<\/h1>\n\n\n\n<p>If you\u2019re using a Raspberry Pi 4 Model B with 8GB RAM with Argon ONE V2 M.2 Expansion Board (NVME), running Raspbian (now upgraded to Debian Bookworm) with OMW (Open Media Vault), you might have faced frustrating USB drive disconnections after updating. This issue can occur especially when using external storage devices like a 2TB Kingston NVMe drive or a 4TB WD USB 3.2 external drive. While the Raspberry Pi worked fine for months or even a year before the update, these disconnections may arise due to a buggy UAS (USB Attached SCSI) driver, particularly when paired with ASMedia controllers.<\/p>\n\n\n\n<p>For those who haven\u2019t updated the firmware of the Argon ONE V2 M.2 Expansion Board check this how to corect the firmware bug: <a href=\"https:\/\/www.martinrowan.co.uk\/2023\/02\/argon-one-nvme-board-fixed\/\" target=\"_blank\" rel=\"noreferrer noopener\">https:\/\/www.martinrowan.co.uk\/2023\/02\/argon-one-nvme-board-fixed\/<\/a><\/p>\n\n\n\n<p>Here\u2019s the story of how I solved the issue after several hours of troubleshooting, and how you can fix it too. Also this can work with any version of&nbsp; Raspberry Pi 4.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">The Problem:<\/h2>\n\n\n\n<p>After updating to Debian Bookworm, my external drives began disconnecting after some time or under heavy use. Initially, I suspected it was a power supply issue. However, I had been using the official Raspberry Pi power supply, and the issue didn\u2019t exist before the update. After further research, I discovered the problem was related to the UAS driver, which doesn\u2019t play well with ASMedia controllers.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">The Solution:<\/h2>\n\n\n\n<p>To fix the problem, you need to disable the UAS driver and enable the older <code>usb-storage<\/code> driver for your device. Here\u2019s how you can do it.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Step-by-Step Solution:<\/h3>\n\n\n\n<h4 class=\"wp-block-heading\">1. Check if UAS is active:<\/h4>\n\n\n\n<p>First, you need to verify if the UAS driver is enabled for your device. Open a terminal and run the following command:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>lsusb -t<\/code><\/pre>\n\n\n\n<p>Look for a line that shows <code>uas<\/code> in the output. If you see it, then UAS is enabled for your device.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\">2. Edit the Boot Configuration:<\/h4>\n\n\n\n<p>To disable the UAS driver, you will need to edit the boot configuration file. Open the file for editing with this command:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo nano \/boot\/cmdline.txt<\/code><\/pre>\n\n\n\n<p>This file contains the boot parameters. After the last word in the file (without any spaces), add the following:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>usb-storage.quirks=174c:2362:u<\/code><\/pre>\n\n\n\n<p>It should look like this in the file:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>console=tty1 root=PARTUUID=68cab3f9-02 rootfstype=ext4 fsck.repair=yes rootwait usb-storage.quirks=174c:2362:u<\/code><\/pre>\n\n\n\n<p>This command will disable the UAS driver and enable the older <code>usb-storage<\/code> driver for your external drive. The <code>174c:2362<\/code> is the device\u2019s ID, and you need to replace it with the appropriate ID for your specific device.<\/p>\n\n\n\n<h4 class=\"wp-block-heading\">3. Find Your Device ID:<\/h4>\n\n\n\n<p>To find the ID of your device, run the following command:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>lsusb<\/code><\/pre>\n\n\n\n<p>This will display a list of connected USB devices. Find the line corresponding to your external drive, and note the ID (in the format <code>174c:2362<\/code> or something similar).<\/p>\n\n\n\n<h4 class=\"wp-block-heading\">4. Reboot Your Raspberry Pi:<\/h4>\n\n\n\n<p>Once you\u2019ve added the <code>usb-storage.quirks<\/code> line with the correct ID, save the file and reboot your Raspberry Pi:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo reboot<\/code><\/pre>\n\n\n\n<h4 class=\"wp-block-heading\">5. Verify the Changes:<\/h4>\n\n\n\n<p>After rebooting, check if the <code>usb-storage<\/code> driver is now active. Run the <code>lsusb -t<\/code> command again. If everything went correctly, you should now see that your external drive is using the <code>usb-storage<\/code> driver instead of UAS.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Conclusion:<\/h2>\n\n\n\n<p>That\u2019s it! The issue should now be resolved, and your external drives should no longer disconnect after prolonged use or heavy activity. The fix disables the UAS driver and forces the system to use the more stable <code>usb-storage<\/code> driver, which works better with ASMedia controllersalso the speed was better now.<\/p>\n\n\n\n<p>For more details and a broader discussion about this issue, feel free to check out the <a href=\"https:\/\/forums.raspberrypi.com\/viewtopic.php?t=257220\" target=\"_blank\" rel=\"noreferrer noopener\">Raspberry Pi forums<\/a>.<\/p>\n\n\n\n<p><strong>Disclaimer: Proceed at your own risk. Improper execution may cause issues or even break your OS. Ensure you fully understand the process before attempting it.<\/strong><\/p>\n\n\n\n<p>Happy computing with your Raspberry Pi 4!<\/p>\n","protected":false},"excerpt":{"rendered":"<p>This bug got me yesterday, and what&#8217;s funny is that I had solved this years ago when I got one of the early Raspberry Pi 4B&#8217;s to use with my Bitcoin Node. I recently converted a Raspberry Pi 5 to be a backup Bitcoin node with a 2 TB drive, and converted my original Pi [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[6],"tags":[],"class_list":["post-13448","post","type-post","status-publish","format-standard","hentry","category-tech"],"blocksy_meta":[],"featured_image_src":null,"author_info":{"display_name":"Jason","author_link":"https:\/\/jasonsblog.ddns.net\/index.php\/author\/jturning\/"},"_links":{"self":[{"href":"https:\/\/jasonsblog.ddns.net\/index.php\/wp-json\/wp\/v2\/posts\/13448","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/jasonsblog.ddns.net\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/jasonsblog.ddns.net\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/jasonsblog.ddns.net\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/jasonsblog.ddns.net\/index.php\/wp-json\/wp\/v2\/comments?post=13448"}],"version-history":[{"count":1,"href":"https:\/\/jasonsblog.ddns.net\/index.php\/wp-json\/wp\/v2\/posts\/13448\/revisions"}],"predecessor-version":[{"id":13449,"href":"https:\/\/jasonsblog.ddns.net\/index.php\/wp-json\/wp\/v2\/posts\/13448\/revisions\/13449"}],"wp:attachment":[{"href":"https:\/\/jasonsblog.ddns.net\/index.php\/wp-json\/wp\/v2\/media?parent=13448"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/jasonsblog.ddns.net\/index.php\/wp-json\/wp\/v2\/categories?post=13448"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/jasonsblog.ddns.net\/index.php\/wp-json\/wp\/v2\/tags?post=13448"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}