Orange Pi Zero 3 USB hard drive issues

I have a small file server that was originally based on an Orange Pi One with an external 2.5" USB-SATA drive.

The entire system is powered by an LX-2BUPS module with two 18650.

The Orange Pi One only has a 100 Mbps Ethernet connection, which occasionally falls short of my needs.
To address this, I decided to upgrade to the latest Orange Pi Zero 3 model, which comes equipped with both Wi-Fi and Gigabit Ethernet.

However, after a few hours of operation, I encountered an issue: the external HDD disconnects whenever the OS attempts to read a large amount of data from it.


The disk is 100% functional, as it has been running flawlessly with the Orange Pi One for several months.
This suggests that the problem lies either with the new Orange Pi Zero 3 or the software. However, the most likely culprit is the power supply.

The pinout for the Orange Pi Zero 3 is shown below:


Here is my wiring diagram:


On the Orange Pi One, power was supplied via a 4.4x1.7 coaxial connector.
But the Orange Pi Zero 3 uses a Type-C connector.
I suspect that the issue might be due to a poor-quality connection via the Type-C connector.

To investigate, I plan to measure the voltage at the following points:

  • the UPS output,
  • the power pins of the Orange Pi Zero 3,
  • the power pins of the USB-SATA adapter.

The results are as follows:

  • on UPS 4.94 V
  • on Zero 4.88 V
  • on HDD 4.83 V

The largest voltage drop is observed between the UPS module and the Zero 3.
I decided to replace the Type-C connector with a pair of Dupont pins and connect 5v DC directly to the board.



After this fix, I was able to read 30-40 GB from the external disk without any problems.
No errors or disconnections were observed.

Act 2

After some time, I noticed another issue: simple disk reads work without any failures. However, if the Orange Pi's processor is heavily loaded while continuing to read from the disk, the hard drive reboots after transferring 2-3 GB of data.

I measured the voltage on the USB-SATA adapter during this situation, and it drops to 4.80 volts.
Referring to the Orange Pi's circuit diagram, I noticed that there is an SY6280 chip between the USB 5V and input 5V lines. This chip is responsible for protection against current overload. The current limit is set at 1 A by a 6.8 kΩ resistor connected to the third pin of the chip.


This might not be entirely correct, but I decided to bypass the protection by directly connecting VCC to VBUS.


Conclusions: While writing this, I realized it would have been worth checking the USB cable first. Another observation is that using Dupont pins turned out to be inconvenient, as the Orange Pi is housed in a case. To turn off the power, i have to open case, which adds unnecessary hassle.


Comments

Popular posts from this blog

How to use SPIFFS for ESP32 with Platform.IO

Configuring LED Indicators on Orange Pi Zero 3

ESP8266 module with OLED screen (HW-364A)