I made a new backplane for my consumer NAS

https://codedbearder.com/posts/f3-backplane/

411 points by granra on 2024-04-29 | 131 comments

Automated Summary

The author of this article details their process of creating a new backplane for their Network Attached Storage (NAS) device. After finding that the original backplane had a limited number of SATA connectors and an inconveniently placed external USB SSD, they decided to design a new backplane. Through research and reverse engineering, they identified that the NAS's motherboard had unused PCIe lanes and discovered that Terramaster's 4 and 5-bay units utilized these lanes to expand the number of SATA ports. The author then designed a new backplane using the ASMedia ASM1061 IC, which allowed them to add more SATA ports through PCIe lanes. They also included power circuits and a slow start circuit to make hot-plugging hard drives safe. The new backplane was successfully tested with an NVMe SSD and the NAS's hard drives.

Other submissions

Comments

dragontamer on 2024-04-29

> This was my first time soldering DFN packages and they’re tiny! Because I don’t have a microscope or anything to visually inspect my soldering and these components were mostly just handling power anyway I just checked for shorts between power and ground and tried to take close-ups using my phone to see if I could spot any shorts. The technique that ended up working well for me to solder on these DFN packages without a stencil is to put what can only be described as way too much solder paste on the pads and then pushing the IC in the pool of solder, when the solder melts from the heat of my hot air station the IC will float on top and then I push down on it with tweezers and all excess solder will squeeze out and bead up, hopefully landing somewhere on the solder mask, where I can pick it up later once it’s solid.

This is positively an insane methodology for soldering. Fun, but insane.

I actually can imagine that it works, strangely enough. But I don't think you'd get much consistent reliability with this. More like it'd work often enough that its good for one-off projects.

granra on 2024-04-29

It worked for me 8 times :)

Thankfully the bottom pad on DFN packages reach the edge on 2 sides and I would think this technique wouldn't work with QFN.

dragontamer on 2024-04-29

QFN is (very, very slowly) opening up to the idea of "wettable flanks", which is increasing the reliability of QFN soldering anyway... which is increasing the opportunity of "side-soldering" QFN packages.

https://www.ti.com/document-viewer/lit/html/SSZTBN6

Here's to hoping for more manual soldering techniques to work into the future! We all know that these parts are getting extremely small and harder to work with, but its still clearly possible to make devices.

But yeah, QFNs, if this wettable-flank trend continues, could be quite reliably soldered and inspected from the sides soon. The needs of the high-reliability automotive industry to create an inspection methodology outside of X-Rays is driving this change.

------------

Glad to hear that your technique worked in any case. I wouldn't have tried that, but maybe I'll try it once next time I have a hot-air gun out and a DFN part to try it on.

EDIT: Note that Microchip apparently has some DFNs that also have wettable-flanks: https://www.microchip.com/en-us/about/media-center/blog/2022...

OJFord on 2024-04-30

> The needs of the high-reliability automotive industry to create an inspection methodology outside of X-Rays is driving this change.

Why is that a particular requirement? Or is it just nobody wants/rather avoid x-ray, and automotive has greater need for inspection at all?

cpgxiii on 2024-04-30

Automotive has much higher reliability requirements than consumer devices, and since solder failures are probably the leading cause of failures using *FN parts, they want to have effective inspection methods to ensure devices are assembled properly.

When you use parts with leads, you can easily perform all of your QA checks using machine vision (all all the components in the right place, are they correctly aligned, are the connections properly soldered, etc), but if you use parts with no leads and the solder connections are hidden, you need a separate X-ray check which takes additional time, assembly-line space, and money. Depending on the components in question, it may also be tricky to get enough contrast in the X-ray image to identify defects.

cinntaile on 2024-04-30

It's probably cost? X-ray is an expensive technique.

OJFord on 2024-04-30

Yeah but that's not specific to automotive right, that's what I meant. I was trying to understand whether they meant the need for inspection or the non-X-ray was the particular concern in the automotive industry.

jamesy0ung on 2024-04-29

That's very interesting, I've always found QFN to be annoying to work with

metadat on 2024-04-29

To save others from looking up DFN / QFN:

DFN -> Dual-flat no-leads package

QFN -> Quad-flat no-leads package

https://en.wikipedia.org/wiki/Flat_no-leads_package

dragontamer on 2024-04-30

The important note is:

1. Longer leads of older packaging have higher parasitic inductance, parasitic capacitance, and parasitic resistance. Which hurts many electronic designs.

2. The thermal pad on DFN / QFNs allows for direct-heat transfer off of the chip-package (while DIP, SOIC, and other older designs do NOT allow for this direct-heat transfer off). This improves thermals of hot parts, as you can use the whole PCB as a heatsink now, instead of having to add a heatsink elsewhere.

3. DFN and QFN are physically much smaller than traditional DIP, SOIC or TQFP packages. So people who use these smaller chip packages can make even smaller circuit boards, or alternatively, a more complex design fit in smaller spaces.

-------

QFN and DFN are very popular parts for modern professional level electronics. But do note that their small size and tiny leads make them harder to deal with at the hobbyist level. But its possible with enough flux, solder paste, and hot-air rework to work with these parts.

I would recommend that beginner electronics who are just getting into custom PCB design work with larger parts (like SOIC packages) instead. Bigger is often easier. Move to these tiny DFN or QFN parts only after you've gained confidence in your surface-mount skills.

amelius on 2024-04-30

Any tips for handling BGA packages? Is it possible for hobbyists?

dragontamer on 2024-04-30

I've never used a BGA unfortunately.

My understanding is that BGA solder-balls come pre-attached to your chips in most cases. As long as you reflow-solder it on correctly on the 1st try, you're good.

If you need to "fix" BGA, that's where things become very difficult for hobbyists. To do this, you need to unsolder the BGA with hot-air, lift it off, then "Reball" the BGA, which is equipment that likely hobbyists don't have.

------------

With regards to QFN or DFN vs BGA, I would expect BGA to be easier, as long as you've precisely made your soldermask to accept the correct sized solder-balls (which should be part of your chip's documentation).

That is: BGA's hardest part is getting the board design just right. Especially because most BGAs require 4 or more layers before you can route all of the lines to them. In fact, the massive BGAs are physically impossible on anything less than 8 layer boards.

-------------

Hobbyists won't have XRay equipment to see if the BGAs successfully worked either. So rework and quality-control are basically impossible. Your only hope is to "do it blind" and hope for the best.

Which... is fine? Even BGA parts are relatively cheap. So build 3+ of your design at once. Have appropriate test-probes to take measurements during the "smoke test", and bam, you're good. One of those three tries is probably going to be successful.

amelius on 2024-05-01

I wonder how you'd align them. The silkscreen is often not very precisely aligned to the copper layers, so you can't use markings in the silkscreen for alignment. Maybe use the top copper layer then instead?

EDIT: I found this quite interesting video: https://www.youtube.com/watch?v=0KbINAq0hcU

dsalfdslfdsa on 2024-04-29

I'm not sure why "too much" solder paste is needed to make this work. I've done something similar on quite a few occasions, but using regular solder. Just put a slightly generous amount on each pad, but not enough to create any shorts. Add flux (ideally, something rosin-based that will last longer in the heat of the next step). Heat up the whole footprint with the hot air gun, and gently place the IC on top.

This method saves blasting the IC with hot air while heating up the whole lot.

dragontamer on 2024-04-29

"Way too much solder paste" is a codeword for "I didn't buy a solder-stencil", which is reasonably common on cheaper projects in my experience.

Instead of using a solder-stencil to deposit a carefully calibrated amount of solder onto any location, you can buy a solder-paste syringe and squeeze the solder-paste into place.

This almost *always* results in too much solder, because its a hand application process, and its often better to have more-solder + cleanup than too little solder in my experience.

-----------

https://www.amazon.com/Solder-Bi57-6-No-Clean-Lead-Free-Temp...

Obviously if you had perfect hand-control (ex: a solder paste robot... or a solder stencil, or other methodology), that's preferred.

But if you're doing these cheap designs you'll need to plan for the "too much solder" situation. In fact, "too much solder" is the default choice and quite fine, albeit with a simple cleanup step. (Ex: swish around a small piece of solder wick in my experience while the solder is still hot, or while the solder-wick is touching a soldering iron, etc. etc. Plenty of cleanup methods available).

Do it dirty then clean-up is just the default mode of operation in hobby-level manufacturing / solder paste / soldering. Its surprisingly effective.

granra on 2024-04-29

I don't know if it's equipment or a skill issue but I had trouble with putting an even amount of solder on the pads this way. I have seen this approach on YouTube.

dsalfdslfdsa on 2024-04-29

Assuming you have the thinnest tips, solder, and solder braid you can find (they shold be comparable to the pad sizes you are soldering, for this kind of work), honestly it's probably a skill issue. There's a "feel" for how much solder the pad needs, and it's a bit less than the most it can take, as it'll get displaced outwards when the IC is applied.

dragontamer on 2024-04-29

If we're talking solder paste here, I doubt its a skill issue.

Its super easy to grab a toothpick and pull out excess solder paste on a per-pad basis. Just do it before you heat the board up (solder paste is applied cold, so there's plenty of time to "correct" things if they look bad).

The "problem" is that this whole exercise is an unnecessary waste of time in my experience. Just live with the excess solder and solder-wick it up at a later point. Swishing around a solder-wick is way easier than tooth-picking the solder-paste on each pad to the right size.

utensil4778 on 2024-04-29

Perfectly valid method, IMO. I always put some vias in the thermal pad and expose the copper on the other side. That way the vias don't get plugged with solder mask and wick away excess solder. It also lets you heat the thermal pad with an iron from the other side for real low-budget SMD work.

Squishing the chip down is fine, you just have to be careful to align it with the pads properly. I don't think I've ever seen a solder bridge on a QFN other than a big ball on the outside edge. Modern solder alloys and solder masks are really good at preventing bridges. The solder really doesn't want to stay between the package body and the solder mask, it will try very hard to only stick to metal.

dragontamer on 2024-04-29

Perhaps I should better explain why I dislike it.

A lot of parts (ex: Crystals) are extremely heat-sensitive. So even just a few dozen seconds extra of soldering could damage your crystals (ex: internal solder will reflow and break the vacuum seal).

So *ANY* action which requires you to "carefully squeeze down" the solder paste out means you're going in there with tweezers, and possibly leaving the board in 200C+ soldering temperatures a bit longer than usual.

-----------

IE: Its not that this technique "won't work" in isolation, its that you won't get "consistent and reliable results", especially when we consider the nearby parts (ex: a possible XTAL) that could be damaged while you're messing around with the hot-air gun.

The standard technique of reflow soldering is to use a solder-paste stencil to deposit the "right" amount of solder paste onto your board, then use a reflow oven to carefully heat the board (and hold the heat) at the right temperatures, so that nothing gets damaged.

Once we start relying upon "Well, keep the board heated a bit longer so that my tweezers can do the work" is when you start overheating chips and otherwise creating failed parts.

> Modern solder alloys and solder masks are really good at preventing bridges. The solder really doesn't want to stay between the package body and the solder mask, it will try very hard to only stick to metal.

This also matches my experience. The surface tension of solder (be it lead based, or lead-free, or low-temperature solder paste) is far greater than most people expect.

You can strongly rely upon "surface tension" to magically do the right thing on your boards, as long as you've got good quality soldermasks.

In fact, a big problem with reflow soldering is "tombstoning" (ex: surface tension of lead is so strong, it pulls your components OUT of position). There's a LOT of surface tension at play here. Its great in most cases, but keep an eye out for those tombstones!

Everything that could go wrong in my experience is fixed with rework hot-air + generation applications of flux + solder wick + soldering iron + tweezers. And rather easily mind you, I know that didn't sound very easy but... the right tools make any situation fixable. Its just knowing how to use all those tools in the right cases.

pokeymcsnatch on 2024-04-29

I extend the pads out from underneath the chip. Then it's easily hand-solderable if needed.

geerlingguy on 2024-04-29

I would love to see more standardization for consumer NAS builds. I've been asking ASUSTOR in particular for a few years now if they'd consider building a Mini ITX-compatible backplane/adapter, so you could swap out the backplane after a few years if you want. Or even Pico ITX or something, so you could swap in an SBC.

I hate that after 5 or 10 years, NASes can't really be upgraded. A lot of 1 Gbps NASes could be upgraded to 2.5 Gbps or even 10 Gbps if you could swap out the motherboard, keeping the chassis out of the landfill or extending its useful life.

sockbot on 2024-04-30

I'd love to see Framework get into this space. It is such a HUGE waste to retire my NAS chassis and backplane when the compute portion gets too old. There could be some good synergies with the Laptop 13 mainboard, having a laptop-level TDP and with ARM possibly coming around the corner. Where I feel the risk is the market for NAS appliances doesn't feel very big ("prosumer" and mom and pop businesses?) and the differentiator really is in the software, not the hardware. i.e. People buy Synology for DSM, not the hardware.

I think I read somewhere that Framework doesn't have any plans to get into vertical integration, which saddens me. I'd love to have a Framework backed OS and have things working perfectly out of the box like sleep and touchpad feel.

zamadatix on 2024-04-30

In that front I wish their FLASHSTOR product was a 6/12 bay NVMe add in card rather than an integrated motherboard+pcie switch+soldered CPU+soldered RAM. I'd love to just pop that kind of thing into a normal PC but all the ones I've found are either 4 porters or extremely expensive.

wil421 on 2024-04-30

Buy a Supermicro board, build your own back plane or use an off the shelf one, and add as many expansion cards as your heart desires (and mobo can handle).

justsomehnguy on 2024-04-30

yes, but now they can't sell you a $100 chassis with mobo for $500

You answered, implicitly, it byyourself

wvh on 2024-04-29

I always admire the depth and effort people are willing to get into, especially if the chance of messing up means losing actual money, like tweaking guitars or hardware. I assume you have to gain some experience with soldering irons or woodworking tools elsewhere before taking the proverbial axe to a project like this. I wonder why there isn't much of a market of more hackable small form factor boxes where it's easier to tinker with the hardware or software. I'd love a consumer (price) level NAS where the OS can be ripped out and replaced with some vanilla OS/kernel.

Or maybe I'm just too chicken with modifying actual physical objects.

philjohn on 2024-04-29

I built my own NAS for a total cost of £1000. 24TB physical drives, 16TB useable (Raid Z2). It runs Ubuntu LTS server edition and I spin up any containers I need in Docker using Portainer. Is it a point and click GUI that is friendly to all? No ... I have to manually create SMB mounts and the like in the terminal, but it's easy enough to keep running.

Hardware wise it's:

- Asrock Rack C246 WSI Mini ITX motherboard - 32GB ECC RAM (2x 16GB UDIMMS) - benefit of using the C246 chipset - Intel i3-9100T - 6 IronWolf 4TB NAS drives - 2U Short Depth rackmount chassis (so it fits in my network rack) - 1TB Samsung 850 Evo boot drive

Idles at 23W which is low enough for my tastes, ramps up to 65W under load (I spin the disks down after 10 minutes of inactivity, even doing that I'm only seeing about 10k load/unload cycles a year (drive is rated for 600k).

zamadatix on 2024-04-30

For the lazy-but-not-so-lazy you can just install Proxmox, as weird as that sounds at first. Still Debian based, still supports root on ZFS with the GUI installer, and then you get a virtualization/container host with a friendly GUI on top for free. You can even make you NFS/SMB/Whatever shares as containers if you want to compartmentalize.

goosedragons on 2024-04-30

There's also free distros like OpenMediaVault for making a NAS with a nice web UI.

lukevp on 2024-04-30

Did you build this a while ago? 4TB drives are tiny nowadays. If so, the price isn’t really comparable is it?

philjohn on 2024-05-01

About 2.5-3 years ago, yes.

racked on 2024-04-30

Ever wrote a build log for that? Would love to read it.

philjohn on 2024-05-01

I didn't I'm afraid, but it was just like building any other computer, except repinning the 24pin ATX connector for the motherboard as it uses a 4 pin connection only (still Molex branded).

nuker on 2024-04-30

> Asrock Rack C246 WSI Mini ITX

Who do I have to kill to get one :)

taneliv on 2024-04-30

These peeps seem to have some in store: https://www.senetic.de/product/C246WSI but (a) I didn't find a way to change the language on the site to English, and (b) while they ship to several countries, those are mostly in Europe. If you can work with these restrictions, you might be in luck! (I have never ordered from this shop and can't vouch for them, but they seem legit.)

dgacmu on 2024-04-29

This probably isn't normal consumer price, but supermicro makes some very nice nas-targeted hardware that you can populate with your own drives and choice of OS. I have one with 183 TB running trueNAS (zfs) and it's great.

They're just bog standard x86 boxes with a lot of drive slots, a backplane, and a lot of sad or sata ports and controller capacity. There's a pretty healthy used market in these things also. But they are targeting people who want to put 10 or more drives in a single enclosure, which is why I say they might not be consumer.

ComputerGuru on 2024-04-29

SuperMicro stuff has gotten so expensive. I remember when they were first getting started and even years afterwards, and it's nothing like today.

Honestly, best thing you can do now is just live with a tower server or buy off-lease from eBay. We've passed the hump where the off-lease eBay specials had the energy footprint of a small factory and used turbine jet engines to power the fans and cool things down.

I did buy once buy a no-name (ATX?) 2U case/rails only from eBay, but the manufacturing, accessibility, ergonomics, design, and everything else were terrible enough that I would not do it again.

0cf8612b2e1e on 2024-04-29

> I'd love a consumer (price) level NAS where the OS can be ripped out and replaced with some vanilla OS/kernel.

Are there any good options today? I keep thinking of picking up a NAS, but I really do not want to use a proprietary vendor OS that might feel entitled to scan my data for useless/hostile cloud integrations. Or might have left some hardcoded password backdoors.

InTheArena on 2024-04-29

Ugreen NAS - currently on kickstarter for this summer - but it's a reputable company.

https://nas.ugreen.com/pages/ugreen-nas-storage-preheat

Their hardware is dramatically better at the price points then the alternatives - even if they do have some comprimises.

tremon on 2024-04-29

Wow, those hardware specs are nice. What compromises do you refer to, specifically? I think that the 8GB ram and 128GB flash cache are on the small side, but both are user-replaceable so not that big a deal.

The only thing I really miss here is ECC ram, but that's entirely due to Intel's market segmentation and not something they can change, save by completely changing their platform vendor.

MrBuddyCasino on 2024-04-30

Interesting! Unfortunately no power draw numbers.

settrans on 2024-04-29

I ended up downgrading my chunky Supermicro server to a cheap Chinese AOOSTAR with an Intel N100 for $199[0], and slapped in an NVMe drive and extra RAM. Since I only need 8-9TB of storage, a zpool mirror worked perfectly for my use case. The build quality is mediocre but the product is more than adequate for my home NAS use case.

[0] https://aoostar.com/products/aoostar-r1-2bay-nas-intel-n100-...

mbirth on 2024-04-30

Newer TerraMaster models also come with an internal USB port and flash drive that can be replaced. They’re basically an Intel NUC with a storage controller. I’ve got the F4-423 on my shopping list for when my Synology DS-415+ finally dies.

lloydatkinson on 2024-04-29
transpute on 2024-04-29

NAS dual 3.5" HD, dual M.2 NVME, dual 2.5GbE LAN. BIOS quality unknown. Barebone no RAM, expandable to 32GB. BYO OS.

Intel Alder Lake N100, $189, https://aoostar.com/products/aoostar-r1-2bay-nas-intel-n100-...

Ryzen 5700, $299, https://aoostar.com/products/aoostar-r7-2-bay-nas-amd-ryzen-...

atmosx on 2024-04-29

There are actually, more than a few options if you're willing to tinker. People use RPis as NAS. They're slow but they work as a cheap local backup. Older integrated NAS devices like DNS-320 can be rooted to run a fairly recent debian flavour that comes with security patches, but you have to be familiar with the CLI given that the specs are very low (cpu/ram).

You could buy an old HP Proliant server (gen8?) and plug in 4 x 16TB HDDs and boot from the 5th drive.

dheera on 2024-04-29

> I'd love a consumer (price) level NAS where the OS can be ripped out and replaced with some vanilla OS/kernel.

A regular PC will work fine if this is what you want to do. A lot of consumer motherboards these days have at least 2 x NVMe and 6 x SATA ports or more. There are rack-mount cases that allow you to front-mount the SATA hard drives to make it easy to swap them.

Or if you want something small, you can get a compact Mini-ITX case with 5.25" drive bays and put hotswap trays in them.

Like maybe this case https://www.bhphotovideo.com/c/product/1193826-REG/istarusa_...

And put one of these for 4 x 2.5" SSDs: https://www.amazon.com/gp/product/B00V5JHOXQ/

And one of these for USB/SD card reader galore: https://www.amazon.com/EZDIY-FAB-Internal-Reader-Support-Com...

The reason I often do NOT want a vanilla OS is that I don't want to have to maintain it or risk corruption of the OS partition, and don't want to ever have to wire up a keyboard, mouse, and monitor because some upgrade and reboot caused it to get stuck on some interactive prompt. Most commercial NAS (e.g. Synology) have web-based administration and read-only partitions for the OS fully figured out.

hobs on 2024-04-29

I recently stood up a 140TB unraid instance, first time I did any nas stuff. Get manufacturer recertified drives for about 13 dollars a tb. Went with a framework case and a normal am4 processor/mobo with 8 sata connections.

2tb nvme cache + 20TB a drive + parity is 140 useable TB, and unraid makes the NAS stuff really easy, just installed a bunch of "apps" which are basically docker containers + settings, and things are a breeze.

dgacmu on 2024-04-29

Where'd you get the drives? That's a quite reasonable price.

hobs on 2024-04-29

serverpartdeals has a seagate-exos-x20-st20000nm007d-20tb-7-2k-rpm-sata-6gb-s-3-5-recertified-hard-drive that I went with.

toast0 on 2024-04-29

6x SATA ports on a motherboard is getting to be rare. You'll need to shop carefully, and make tradeoffs to get there.

I'm moving towards used, ancient, large desktop cases. You can find them at computer recyleries if you have them in your area or local marketplaces. I got one with a hotswap backplane and trays and everything in the 5.25" bays. Of course, the backplane didn't work for me, so I had to pull out the backplane and just wire the drives like normal, but trays are still nice.

I've got lots of space, so I just leave a keyboard and monitor next to my servers, in case I break something. It's not elegant, but it's cost effective. A used $10 monitor and a keyboard I don't like will last forever, but buying boards with IPMI adds $100-$200 everytime I upgrade.

semi-extrinsic on 2024-04-30

Why do you need 6x SATA? 18 TB drives are to be had for around $300. Just do 4x of those in striped mirrors with ZFS for 36 TB of available storage. Resilver times are stupid fast.

And you have an easier upgrade path. If you buy one pair of ~40 TB drives in a couple of years, you can replace one of the mirrors just by swapping out the old disks one by one and waiting for resilver. Then ZFS can autoexpand your storage to 18 + 40 TB total. And you can repeat further down the line, going 40 + 80 TB or whatever is available, true Ship of Theseus style.

Yes, you lose a little resilience compared to RAIDZ2, but RAID is just a HA solution, not a backup solution, no matter how fancy you make it. And a RAIDZ2 gradual-upgrade by replacing disk after disk is just horrible.

toast0 on 2024-04-30

Well, the person I was responding to asked for 6x SATA. So there's that.

Personally, I like 6x SATA for a couple reasons. One is my case has sleds for 6 drives :P. The other is I run two servers with 2x mirrors as the main storage (they backup each other and are in different buildings although on the same site, which gives me a little redundancy, but not much); I've done an upgrade once from 4 tb to 10 tb, so my case with 6 sleds now has the main 10tb mirror array, and a playspace for less important stuff that I can figure out how to use over time; currently I've got it split up between 50% of each disk used individually for tv recordings, and the other 50% as a raidz2 to hold dvd's i've ripped and fanedits.

When I upgrade/replace the main mirrors, I may update the other server to have more slots, and then it can have a 4x 10tb playspace.

> Yes, you lose a little resilience compared to RAIDZ2, but RAID is just a HA solution, not a backup solution, no matter how fancy you make it. And a RAIDZ2 gradual-upgrade by replacing disk after disk is just horrible.

I haven't done it, so I'm not disagreeing... I'm assuming the main objection is it takes a long time, and the secondary objection is the system has a lot of disk contention while it's in progress. I'd probably address the takes a long time by just planning to do one disk every other week. That means it's a two month process, but it also means that the drives in the system have a two month offset on usage time; a lot of drive array failures are due to correlated failures, and offsetting the power on time can help. If all of your disks are likely to fail when their power on counter rolls over, it's nice if you have two weeks between failures --- that should hopefully be plenty of time to replace disks before you lose the data.

Ordering disks over a two month period may also help avoid getting all disks from the same batch; but sometimes it's better to order all at once for pricing, so that's mixed.

If you do have extra SATA ports, you might be able to do a replace while both the old and new disk are available... I'm not sure if that helps the process or not; it won't reduce the amount of writes to the new drive, but maybe it helps with disk contention during the process?

dheera on 2024-04-30

So 4x18TB for HA 36TB.

Then another 2x18TB for backup.

semi-extrinsic on 2024-04-30

Surely you don't have the backup in the same machine as the NAS? It should at least be in another building entirely.

dheera on 2024-04-30

Home users don't usually have the money to rent another building.

What I do for my personal setup is RAID + nightly backup (3 drives total) in one machine, and then a 4th hard drive that normally lives airgapped in a rental storage unit that I bring home and sync every 6 months or so.

The nightly backup serves to always fetch yesterday's version of any file, and deals with 99% of scenarios that I'd need a real backup.

The 1% (hackers + fires/disasters) is taken care of by the storage unit but I lose the last 6 months of changes.

dheera on 2024-04-29

You might also consider a rack mount case. 4U rack cases are usually designed for standard ATX builds. For home use it cleans up a lot of wire mess to have router, switch, NAS, your main desktop, and maybe some other things all on one rack.

When you move you can also just move it all in one piece if you have a liftgate van.

immibis on 2024-04-29

Beware that not all port combinations are supported. For example, the Z270 chipset supports 6 SATA, but only 4 SATA if NVMe is also used. The motherboard manual will tell you this.

bongodongobob on 2024-04-29

A NAS is just a computer that is only used for storage. Any old hardware with drives attached to it will work.

squarefoot on 2024-04-29

Just beware of too old hardware that may end up costing more than expected because of their power draw. A NAS usually stays up 24/7 and power saving and reliability become important. I would also avoid anything with a fan, particularly if they expect it to be running constantly. A mini PC with enough internal space to host a long m.2 SATA adapter (0) can become a quite compact solution; many used low performance Celeron based systems considered obsolete for desktop stuff would be more than enough for that task.

0: https://www.ebay.com/itm/256268302567

(no relation with the seller, just found searching "6xsata m.2" and removing those with lower feedback ratings). There are also 5xsata similar cards.

skykooler on 2024-04-30

It seems odd to me that there's no ARM-based NAS with SSDs on the market, to focus on minimum power consumption rather than maximum read/write speeds.

PietKachelhout on 2024-04-30

There is the CM3588 board [0] from FriendlyElec. LinusTechTips made a video about it. I just can't find a nice case for it. I've asked MyElectronics about it and they said they would consider making a case if they get enough requests.

[0] https://www.friendlyelec.com/index.php?route=product/product...

[1] https://myelectronics.nl/

squarefoot on 2024-04-30

The Kobol Helios64 was one, but they stopped development a few years ago. It is fully Open Source, and I still hope someone could take on the work because it could become a really interesting product.

https://kobol.io/

youngtaff on 2024-04-30

From memory it had a built in backup battery too

squarefoot on 2024-05-03

Yes, quite innovative and useful especially against outages during resyncs, although I'm not sure I'd want lithium cells inside a NAS.

kjkjadksj on 2024-04-29

When people talk about using these cards with the minipc how do they imagine setting these up? shuck the minipc out of its original case and zip tie it (no clue if its standard mobo probably not) to some case that can hold these drives and a psu? hack a hole out of the minipc and run the cabling to some cage of drives, powered by a separate psu?

squarefoot on 2024-04-30

The boards sizes aren't standard, however drilling holes to fix them into a bigger case isn't that hard, same for power supplies. As for the disks, there are backplanes with SATA connectors that can host for example 5x3.5" drives into a 3x5.25" bay (0), so that the NAS can be pretty solid. Unfortunately they aren't cheap but the overall cost would be still lower than buying a new NAS with comparable features and performance.

0: https://www.reichelt.de/de/en/mobile-rack-3x-5-25-for-5x-3-5...

kjkjadksj on 2024-05-02

You think you even need sata for a nas, or would an external bay with usbc be enough for spinning rust?

squarefoot on 2024-05-03

USBc works perfectly wrt speed, but in my case I learned the hard way that there are some caveats.

My current NAS is a mini PC connected to a external 8-bay USB3 enclosure with disks arranged as 4 ZFS mirror pools. It worked like charm with XigmaNAS (FreeBSD based) until the day I needed to add some files and the best solution was of course to connect another external USB disk to go faster than network transfer. As I connected the drive, suddenly all disks in the pools were shifted, with the external disk becoming part of the 1st pool, and all others mixed, with potentially devastating consequences. Of course I panicked and after a series of wrong moves destroyed the 1st pool which luckily I already had a very recent backup of. On BSD forums they explained that the embedded XigmaNAS edition does not make use of UUIDs so it's dependent on the order disks are being detected, which frankly shocked me: I wouldn't expect that from FreeBSD. Now, the detection order in case of the disk enclosure is always the same, but should I connect some other external drive, the disk order would go bonkers again, therefore I also feared what could happen if a disk suddenly becomes undetectable. However, it's only the web interface that goes out of sync wrt disk detection, and I later learned it can be fixed with the synchronize command. They say the full install is immune from that, and I plan to migrate everything, but I'd like to be sure I can do that transparently before embarking in that task.

dangus on 2024-04-29

That’s what’s a bit wild about this project.

It’s an amazing project. I’m floored that it all works and that the author figured it out.

But still, I’ve never fully understood the appeal of using some of these custom design NAS products when a standard ATX computer is so much more customizable, modular, expandable, repairable, etc.

And many of these NAS systems are such a ripoff on pricing.

I don’t think desktop power consumption is all that bad if you’re careful about component selection.

Another alternative is to have one more performant system that runs a bunch of different things in virtual machines so that the NAS functionality is only a small part of the power consumption.

sumtechguy on 2024-04-30

I get what you are saying. But the 'up and running' is dead easy with these NAS boxes. They are wickedly plug and play. Where a DIY version is fun and interesting to do, but takes some configuring and fiddling and researching. Not necessarily hard just something I did not really want to mess with. Spin on about 10 years and now I am considering DIY. But for other reasons (like you point out). Storage is no longer my primary sole use case. Which means a bit more DIY on the next one.

It for me was just a mater of how much time/effort did I want to sink into it. I just wanted a large storage system. A off the shelf NAS I can be up and running in 2-3 hours. For DIY there is the research time for parts (including the drives), cases, and which software to run (there are 3-4 decent choices). Then gluing it all together. Probably 2-3 days for me fiddling around with it and research time.

Take the one I went with synology. The one I picked was in the 600 dollar range for the case. By the time your done picking a decently powered board, case and memory and cpu. You are in the same ballpark of cost for similar perf. The package was all done. I did not have to do much (notice a theme?). My most expensive part of the build? The drives themselves.

The downside is now I want something like 2.5g (or better) and the particular one I picked has zero way to upgrade (other than ripping the thing apart and hoping the right drivers are in there). It is about trade offs. Did I really want the possibility of upgrade or up and running quickly. Remember this is not something I do all the time. It is something I do every 3-4 years so I have to refamiliarize myself with all the different possible parts. Plus getting the OS in there 'just right'. Not impossible or even hard. I just chose a different trade off.

matheusmoreira on 2024-04-30

I don't get it either. Isn't a NAS just a normal computer with a ton of SATA ports as well as physical space for all the disks? Even consumer PCs have hot swap bays.

NegativeLatency on 2024-04-29

Now that I live in a house it’s sorta a no brainer to just get an ATX case and build my own, but in my apartment days something smaller would’ve been more appealing

bongodongobob on 2024-04-30

The legit reason is that you don't want your storage tied in with compute. For a business, I get it. Home lab? I agree, I don't really get it.

kjkjadksj on 2024-04-29

> I'd love a consumer (price) level NAS where the OS can be ripped out and replaced with some vanilla OS/kernel.

You can get a truenas but its a little under powered for what it is especially if you want to use it not as a nas. This is the tradeoff for buying a turnkey product in a niche market.

That being said you can just build your own nas. There are nas boards with multiple sata already built in for you as well as cases designed for these sorts of boards and multiple hdds. jonesbo cases are popular for this. at a certain point though it stops making sense to build one of these and starts making sense to rack mount your storage array, of which the options are far more numerous.

neilv on 2024-04-29

> This USB header is only USB 2.0 though so it's not an option for this purpose.

Not questioning a great project, but just curiosity about this small aside: why is USB 2.0 not suitable for the OS?

On a NAS, is it doing anything other than boot-time reading, and maybe occasionally writing a little data?

zootboy on 2024-04-30

I run a NAS on a USB 2.0 boot disk, and the only issue I have with it is that systemd-journald really isn't built with slow disks in mind. Doing a journalctl operation with 6 months of log files takes a good minute or two because of journalctl's non-optimal file access patterns.

granra on 2024-04-30

Not mentioned in the post but I also run some light server workloads on this machine and things were annoyingly slow with a USB 2.0 thumb drive.

I'm not gonna pretend that the real reason for making this wasn't because I have fun tinkering though.

neilv on 2024-04-30

It's a great project, and your solution is also technically superior to running off USB 2.0 thumb drives.

kylemart on 2024-04-30

+1, I was wondering the same thing. Genuinely curious.

IncreasePosts on 2024-04-29

I'm such a bad hacker. I had the same issue with having an external drive plugged into my NAS. What did I do? I just used velcro to attach it to the top of the NAS.

granra on 2024-04-29

Maybe you value your free time more than me :)

IncreasePosts on 2024-04-30

Just the opposite I would say.

s0rce on 2024-04-29

Mine just sits beside it.

justinclift on 2024-04-29

Similar here, but hot glue is my go-to for stuff like this. :)

tombert on 2024-04-29

This looks way cooler than the "custom" case I made out of Legos to house my homebrew NAS. I had four USB hard drives plugged into a hub and that hub was plugged into an Nvidia Jetson. I wanted to make it self-contained and knockoff Legos are so cheap that it was an easy experiment to run. Also fun.

This looks a lot more professional and I'm kind of jealous.

buescher on 2024-04-29

Surprising and elegant. That's an amazingly long way to get by guesswork, a bit of trial and error, beeping out circuits, and surprisingly casual substitution of the load switch IC.

granra on 2024-04-29

Thanks! There was an incredible amount of information I gathered from various forums and stack exchange that I had to sometimes just reluctantly view as facts :D But it worked out!

buescher on 2024-04-29

It’s really cool. I’m glad it worked. What you didn’t know probably kept you from analysis paralysis.

gyf304 on 2024-04-29

This is an awesome solution.

I have the 5-bay variant of the same NAS. I decided to put TrueNAS Scale on it using a Samsung USB stick using the internal USB. I chose one that’s widely used for Tesla dashcam, so I know it is at least somewhat durable.

I’m happy with it so far. I still find the CPU performance very lacking so I’m planning on upgrading to something beefier.

granra on 2024-04-29

Oh absolutely the CPU is lacking in performance. I actually entertained the idea of replacing the motherboard with a custom carrier for some arm compute module or the new Lattepanda mu but I suppose I should first use my new project that I spent so much work on :p

somat on 2024-04-30

Well done, I love these sort of projects where people take control over their hardware. An extra salute for publicly documenting it.

I wonder if it will cause airflow issues? The original(and updated) pcb has a large hole in the center, I presume for airflow across the drives. which the nvme drive obscures. My guess is there will be enough leakage around the edge of the nvme to provide enough cooling to the normal drives and you get the worlds best cooled nvme drive for free. However, it does look very tight.

granra on 2024-04-30

This was also a concern of mine. Not knowing too much about aerodynamics I can't be certain but I think some airflow should be going through the hole. You may also have noticed that the screw standoff for the SSD is pushed as far out to the left of the PCB to allow for more air to pass on the right side. But I have at least not noticed any negative cooling performance :)

Thanks for your comment!

Teknomancer on 2024-04-29

This isn't directly useful to me, but it thrills me nonetheless. It is so great to see people digging in like this, learning and sharing what they learn, and that inspires me! Great work!!!

granra on 2024-04-29

Thank you!

pixelatedindex on 2024-04-29

I love it when people spend the time and energy to reverse engineer a circuit board and figure out the pin outs without a manual. It’s not easy, so kudos!

granra on 2024-04-29

Thank you! There's still a bit of the pins who's purpose are unknown to me but thankfully ended up not mattering for my purpose.

geerlingguy on 2024-04-30

"If it works, it ships!" :)

granra on 2024-04-30

This guy gets it!

I like your videos btw! :)

ThomW on 2024-04-29

I would have bought some velcro strips with adhesive and stuck it to the side of the box. lol

granra on 2024-04-29

Haha! I guess the honest reason is that I love digging way too deep and over engineering my projects :D

whartung on 2024-04-29

I don't really need a NAS. My Mac is always on anyway.

I did try to put ZFS on it, just on a single USB drive, and when copying files to it, my system became unresponsive. Mouse, keyboard, dr aa gg ge d. I/O drops down to about a 1/5th to 1/4 of what it should be. Just crushes my machine (last generation Intel iMac). Top/Activity monitor doesn't show anything truly untoward. Spikes of 400% CPU (supposed to be an 8 core machine).

Just trying to prevent bit rot, but not in the cards for this machine for some reason.

taskforcegemini on 2024-04-29

a single zfs drive will not be enough to resolve bit rot

crote on 2024-04-29

Absolutely incredible job. If I hadn't seen the blog post, I would've believed that it came out-of-the-box like this.

granra on 2024-04-29

Thanks!

shadowpho on 2024-04-29

Installing OS into a usb2 drive would’ve been plenty fast, it’s like 60 MB/s but you still get fast random I/O.

redundantly on 2024-04-30

60MB/s (480Mbps) is a marketing number. The actual maximum is 43MB/s. The real world speeds are 30-40MB/s if you're doing either writes or reads only. USB 2.0 is half duplex, so if you're reading and writing simultaneously it will be half, or worse, of the real world maximum, which is what will happen if you're using it as the OS disk.

The random I/O isn't that great either. The max you'll be able to get is ~200 IOPs for sequential reads/writes. Even flash storage takes a bit of a hit when doing random I/O vs sequential.

Also, flash storage is often slower at writing than reading, that degrades performance even further.

USB 2.0 will work okay for many NAS boot disk scenarios, but it will be an absolute slog when performing reboots, configuration changes, accessing logs, performing updates, installing new packages, so on and so forth.

If you can avoid it, don't use USB 2.0 for your boot device :)

shadowpho on 2024-05-01

Interesting, I did usb2 for a while on a pi3(?) and it worked decently well. Why is iops only 200?

redundantly on 2024-05-01

It'll work, but for things like FreeNAS/TruNAS/OMV where there's a decent amount of logging occurring and standard activities need to be done (configuration changes, updates, etc) the poor performance rears its ugly head.

As for the rPi3, you won't notice the difference, usually, between an external USB flash drive and the built-in MicroSD slot because they both go over the same USB controller. When you do notice differences it'll have to do with the quality and speed of the particular microsd cards and usb flash devices you use.

The limitation of IOPs has to do with how the communication works and the limits to frame sizes and amount of frames that can be transmitted at the same time. The bus fills up quickly when lots of traffic is occurring.

The USB 2.0 spec was released over twenty years ago. At that time the performance was incredible, but only in comparison to USB 1.x.

If all you have available to you is USB 2.0 for your OS/boot storage, then by all means use it, however if you don't need to, if you can avoid it, don't use it. Leave those ports open for your keyboard and mouse. ;)

granra on 2024-04-30

Not mentioned in the post but I also run some light server workloads on this machine and things were annoyingly slow with a USB 2.0 thumb drive.

I'm not gonna pretend that the real reason for making this wasn't because I have fun tinkering though.

roosgit on 2024-04-30

This is awesome work! But for someone who doesn’t have the necessary skills to pull something like this off, a Samsung Fit Plus USB flash drive might work too. I have one in my old MacBook Air and pretty much don’t notice it. The 128GB version is around $20.

riobard on 2024-04-30

Does anyone know what's going on with those U.2 NVMe hard disk drives? (see https://blog.seagate.com/enterprises/seagate-unveils-worlds-...)

I'm asking coz the OP mentioned the need for a PCIe-to-SATA bridge chip to have more than a couple of SATA ports. I'd assume that if HDD were also NVMe devices, it will be simpler to just wire each PCIe lane to a drive, without requiring any bridges. A PCIe 2.0 x1 lane is 500MB/s, on par with SATA III 6Gbps.

top_sigrid on 2024-04-30

These are formfactors that come from the datacenter industry and probably will become very widespread over the next years.

The ServeTheHome Youtube channel had a good overview video about those drives around 2 years ago: https://www.youtube.com/watch?v=29Nh3p6779E

justsomehnguy on 2024-04-30

> probably will become very widespread over the next years

Doubt. SATA and SAS is more than enough, cheap (not for the customer) and has 20+ years of experience. What we would see is a clear distinction between 3.5 HDD and whatver SSD storage boxes.

Consumers? 2.5 and M.2 for SSD, 3.5 for HDD. For years.

riobard on 2024-04-30

Thanks but the STH video you linked is talking about new "ruler" form factors for SSDs and accelerator cards. I was wondering if anyone actually used the 3.5" HDD with U.2/NVMe connector.

funnym0nk3y on 2024-04-29

It seems like his version is missing lots of parts in comparison to the original one. They probably aren't there being useless. The engineer who designed the original backplane must have thought something. So, what's missing?

granra on 2024-04-30

It was mentioned in the post but from what I could gather from the schematic I drew up of the existing circuit it's load switches for each power rail with slow starters, made with only discrete components. Instead of recreating all that I looked for an integrated chip with all that functionality built-in and went with NCP45521-L.

That's why mine has such a low number of components.

FounderBurr on 2024-04-29

A project that isn’t someone hot gluing arduinos to everything?! Nice work!

granra on 2024-04-30

Oh that annoyed me so much back when I was getting into Arduino and had an uno. Just take the atmega 328p out and solder it to a perfboard!

Thanks!

running101 on 2024-04-30

You don't need a NAS. Just connect a direct attached storage to your PC/mac then share it out.

yjftsjthsd-h on 2024-04-29

> This USB header is only USB 2.0 though so it’s not an option for this purpose.

Why not? I would not expect the OS drive to be I/O heavy on a NAS.

granra on 2024-04-29

I also use the NAS for some light server workloads and it was just annoyingly slow when running on a USB 2.0 thumb drive. System updates took forever too.

Edit: I want to add though that the main reason behind this is "for fun" :D

mfsch on 2024-04-29

You could still move e.g. /nix to the BTRFS disks and only keep /boot on the thumb drive, no? That’s more or less how I have NixOS set up with ZFS. But your solution is of course much fancier :D

granra on 2024-04-30

That would be too loud imo :p

I started using hd-idle to spin down the drives when idle for 30 minutes even.

I do however run my system with root on tmpfs and have various data persisted on the SSD.

kylemart on 2024-04-30

Could you share more about your NixOS setup, or good resources? Genuinely curious as I’m looking into building a small, low-budget Plex server running NixOS :)

yjftsjthsd-h on 2024-04-29

> I also use the NAS for some light server workloads and it was just annoyingly slow when running on a USB 2.0 thumb drive. System updates took forever too.

Ah, fair enough - I suppose NAS/server is a bit of a continuum anyways.

> I want to add though that the main reason behind this is "for fun" :D

Yeah, that seemed more likely up front:D

LoganDark on 2024-04-29

Not in an absolute sense, but the speed limitations of USB 2.0 do become immediately apparent when you try to run an operating system off of it. Even a super lightweight Linux is usually going to load binaries from disk when executed, and logs are going to be written to disk, etc.

Also page faults are going to be slooooow.

ComputerGuru on 2024-04-29

> and logs are going to be written to disk [...] Also page faults are going to be slooooow.

OP did say they added a stick of RAM, so w/ ZRAM on there it might not be too bad.

Raspberry Pi forced an entire generation of software hacks to deal with slow os/boot disk speeds (esp. the earlier models but also just the affordability aspect even with the new models).

LoganDark on 2024-04-29

For small OS images you can sometimes get away with loading the whole thing into RAM on boot and then running from RAM, which essentially removes the boot drive from the equation completely except for that initial copy to RAM.

I always pick this option when I use Clonezilla because usually I'm booting it from a USB stick and everything would be slow the whole time if I didn't put it into RAM.

justsomehnguy on 2024-04-30

Ugh, not the speed itself (you can have up to 30MB/s, which is more than enough), but the ability to serve multiple requests simultaneously, ie Queue Depth. Most of the time you xan assume QD for them is 2 and you would't miss at all.