JF's Low-Power Quartz64-Powered DIY Network Attached Storage System Supports Up to Six SATA Drives
With a patched Manjaro installation, this low-power — 8W idle, 12W load — NAS showcases the flexibility of PINE64's Quartz64 SBC.
Semi-pseudonymous software developer JF, creator of the InfiniTime firmware for the PINE64 PineTime smartwatch platform, has shown off an energy-efficient network-attached storage build powered by the PINE64 Quartz64 single-board computer — making good use of its PCI Express support.
"A new trend has recently appeared in the SBC [Single Board Computer] world: The PCIe slot," JF writes. "The Raspberry Pi Compute Module 4 exposes it via the IO board, and the Pine64 RockPro64 is equipped with a PCIe 4x open-ended slot directly on the board. I haven’t had the opportunity to get hold of one of these boards, but I’m lucky enough to have a Quartz64 Model A on hands."
"The Quartz64 is based on the Rockchip RK3566 running @ 1.8GHz," JF continues. My board is equipped with 8GB of RAM. It also has gigabit Ethernet, 1 SATA connector, USB3, and of course, the PCIe port."
Having tested out a couple of PCI Express cards, JF decided to turn the board into a low-power network attached storage (NAS) system supporting up to six 2.5" SATA drives in an off-the-shelf enclosure. "The only compatible case I could find was the NAS enclosure from PINE64," JF explains, "but it supports only 2 drives."
"I quickly figured I would need to tinker something based on a case that was not specifically designed to be compatible with the Quartz64! Luckily, I found an old (Pentium4-era) desktop computer that was going to be thrown to the landfill. I thought I could salvage the case and probably recycle the insides of that prehistoric computer!"
The finished build sees the Quartz64, six-port SATA board, and a pico-PSU housed safely inside the old tower chassis, taking up far less room than the original hardware, while an off-the-shelf six-bay SATA dock sits in a spare 5.25" drive bay.
On the software side, JF is running ManjaroARM with a modified kernel for PCIe support — with native support due in Linux 5.19, he explains — along with a some patches to work around issues with writing larger files to the disks. Performance ranges from 352MB/s writing to a raw block device to as low as 102MB/s writing to a BTRFS mirror, with 8W idle and 12W load power draw.
More details on the build are available on the PINE64 website.
Freelance journalist, technical author, hacker, tinkerer, erstwhile sysadmin. For hire: freelance@halfacree.co.uk.