Re: Dealing with slow USB disks, was: Re: Saving environment variables in u-boot

From: Mark Millard via freebsd-arm <freebsd-arm_at_freebsd.org>
Date: Sun, 19 Dec 2021 22:55:30 UTC
On 2021-Dec-19, at 13:39, MJ <mafsys1234@gmail.com> wrote:

> On 20/12/2021 3:18 am, bob prohaska wrote:
>> On Sun, Dec 19, 2021 at 10:03:47PM +1100, MJ wrote:
>>> 
>>> I would think a mechanical USB is going to pull a "lot" of power when beginning spin-up, but once rotating should be easily powered by a USB hub. Though this would not explain how it works on RPI4 unless the powered hub you're using is USB2.
>>> 
>> That's what I thought too. I certainly didn't expect the disk to work
>> without a powered hub. The Pi4 is a different animal; it has USB3 ports
>> and more power available. That the mechanical disk works at all on the
>> Pi3's USB2 ports without assistance is quite surprising.
> 
> See here: https://www.raspberrypi.com/documentation/computers/raspberry-pi.html#typical-power-requirements
> It mentions 1.2A, which covers your load, but, I would suspect if you attached, for example, a USB 'thumb' drive or other devices you would cause problems.

Unfortunately there is more involved: USB2's standard
indicates 500mA (0.5A) at maximum on 1 standard USB2
port. It takes 2 USB2 ports to get to a total of 1000mA
(1A) (unless a port is designed to go beyond the
standard). To my knowledge most RPi*'s are not designed
to support more than the standard USB2 power on any of
its USB2 ports. (The 3A+, Zero W/WH, and Zero are
apparently exceptions, depending on the power supply
used and such.)

There are drive cases with support for external power
supplies that could be used, so long as the drive is
powered before the RPi*. There may be adapters that plug
into more than one USB2 port in order to draw extra
power. Then there is the use of SSD's instead of
spinning rust: they tend to not have the large surge
currents involved.

But the combination of spinning rust, bus power only,
and a single USB2 port for power is fairly generally
unreasonable due to the 500mA limitation. This
is true even if the total USB power that the system
provides is much larger.

>> There's a table at
>> https://hddfaqs.com/seagate-st1000lm048/
>> listing power requirements for the drive:
>> Required Power For Spinup: 1000 mA
>> Power Required (Seek): 1.7 W
>> Power Required (Idle): 1.6 W
>> Power Required (Standby): 0.18 W
> 
> 
> The total draw capable will inevitably come down to the power supply unless, as you know, you use a powered hub (and even then, it depends on the hub's power output abilities).
> 



===
Mark Millard
marklmi at yahoo.com