RPi 4 USB3 speed issues

I’ve been wanting to try out DietPi for a long time now, but some hiccups always lead me back to my working minibian install on my RPi 3 media server. Now that I’ve upgraded to an RPi 4 the time has come to go with a fresh install of DietPi and so far I love the experience. Unfortunately the USB speeds are nowhere near where I expected them to be. I know the RPi 4 is still quite new as is DietPi support, but maybe it’s me missing something and setting it up wrong.
I have set up the Pi with v6.25.3 as a headless server for transmission, sonarr, radarr, tautulli and ombi. My Plex server runs on a Nvidia Shield TV with samba shares from the Pi. Currently I have two 4TB USB3 drive connected (to the USB3 ports of course), one has external power, the other doesn’t. With DietPi benchmark I am getting 4-5MB/s write and 30-40MB/s read speed on both of them. This is very disappointing, since I get 10MB/s write and 20MB/s read speed on my old RPi 3 (now with DietPi 6.25.3) and an ancient USB2 hard drive. (The USB3 drives work on a PC as expected, so they are okay)

I also have other issues when trying to attach more then 3 external hard drives:

  1. 1 USB3 drive with external power, 2 USB3 drives without power supply:
    drive_manager hangs a lot and doesn’t the drives show up randomly and can’t mount properly. I’m pretty sure the unpowered drives draw to much power (I have the official RPi power supply).

  2. 1 USB3 drive with external power directly into one USB3 port, 2 unpowered USB3 drives attached through a powered USB3 hub: The two drives connected through the hub don’t show up in drive_manager. The RPi 4 (or dietpi) can’t handle USB hubs?

  3. 1 USB3 drive with external power, 1 USB3 drives without power supply, 1 USB2 drive with external power:
    I can connect the USB2 drive and mount it while the Pi is on, but it won’t boot with all three connected.

Any ideas how to troubleshoot these issues? I greatly appreciate any input!

I’m interested in this post as i’m building my own plex media server running on a Raspberry Pi 4 (1GB RAM model) and i was planning on having two external USB 2.0 HDD’s attached to it, running the official power supply only for all devices.

I can’t really help much, but from googling around i haven’t found any strong evidence that this won’t be possible. I bought a USB current meter to test the consumption of both my external HDD’s but unfortunately the computer is not able to detect the HDD’s while being used through that same USB current meter, so all i’m getting is the idle values of all of my HDD’s.

I don’t know if using expected values on this case is the right way to go, because it might change heavily depending on what you’re running both in software and hardware, but let’s give it a shot.

According to pidramble.com the Raspberry Pi 4 will consume, in a worst case scenario, 1280mA. According to wikipedia USB 2.0 can only provide a maximum of 500 mA while USB 3.0 can provide 900 mA and USB type-C can power up to 3000 mA (which matches the power supply maximum amperage).

So, with the expected values on our mind and assuming no power loses, you could barely power your Raspberry Pi 4 and 2 USB 3.0 external HDD’s (as the worst case scenario is 3080 mA which is above the maximum amperage for the power supply) and you should be able to always power your Raspberry Pi 4 and 3 USB 2.0 external HDD’s (since it has a worst case scenario of 2780 mA).

If anybody has any experience with trying to run these setups and failing, or returning any low voltage/amps signal please feel free to comment. Also trying to shutdown everything else (such as bluetooth, wifi and onboard LED’s) will lower the power consuption.

In general, what we have seen on this forum as well as on GitHub, it’s highly recommended to use external power supply for your USB HDD’s if possible. This will help to avoid instability of your system.

Yep…it can take several hundred mA to spin up a drive…

I usually cut and splice in an external 5VDC 2A supply between the SBC and the drive…it’s not pretty but it keeps everthing humming along nicely without the flakey operation…

Well yeah but if the Raspberry Pi 4 respects the USB 2.0 standard - according to wikipedia - then the HDD should never expect to consume more than 500 mA, and it that were the case you could get away with having at least two of those connected at the same time.

Also, since i’m doing something similar myself, how do i know if my system is running on low voltage/amps? Is there any place the diet-pi logs that behavior? That would be great to know.

Hi, basically your could use dmesg to check if there are some Under-voltage detected! messages.

I will link you a GitHub post. It started with a complete different topic but turned into some Under-voltage discussion at the end.