Three-Bay NAS (Raspberry PI Compute Module 4)
We calculate the final price from your selected file. You review and accept it before payment.
Saved on this device.
A NAS build based on the Raspberry Pi compute module 4.
- Rating
- 0 / 5
- Likes
- 1
- Downloads
- 9
- Makes
- 0
- Views
- 118
- Reviews
- 0
Updated at source:
Model information
- Source
- Printables
- Category
- Computers
- License
- Creative Commons — Attribution — Noncommercial — Share Alike
I made myself a custom NAS a while back. I'm putting the model files here, in case anyone else wants to build it.
No warranty that it works well for you. :) The bottom-facing IO panel might be especially inconvenient. It may interfere with things you want to plug in.
The on/off button is currently non-functional, so I excluded the hole for it from the attached STL.
Bill of materials
Mounting hardware:
8x M3 heat insert (for compute module tray)
8x M3 screw (for compute module tray)
I eyeballed the lengths of all screws, sorry
You should anyway have these lying around in multiple lengths. Very useful :)
3x M3 nut (for PCIe card bracket)
3x M3 screw (for PCIe card bracket)
12x 6-32 "standard 3.5 inch HDD" screws
6x M4 screws and hex nuts (for securing the HDD rails)
4x Screws and nuts for mounting the fan
I used M4 screws and nuts
Electronics:
1x Raspberry PI Compute Module 4
1x Raspberry PI Compute Module 4 IO Board
Compute module heat sink + thermal grease
>=3 port low profile PCIe express SATA card
I used a 4-port model from Delock, but they don't seem to sell it anymore
3x SATA data cable
PSU
picoPSU-90
MeanWell GST90A12-P1M power brick
There are cheaper options, but I like to go with reputable manufacturers for my power supplies
SATA power cables from a modular power supply (will be spliced to the picoPSU to power the drives)
The compute module can just be powered by the 4-pin connector on the picoPSU
I judged this setup enough to power two HDDs and one SSD. With three HDDs it might brown out on spin-up.
Try looking at the peak power/current on your HDD's datasheet
Sadly not all HDD manufacturers publish peak current, and they also don't always differentiate between power draw on the 5V and 12V rails
So "add ample margin" seems to be the design approach here, if you don't want to deal with it potentially not working
Micro SD card
Keeping the root filesystem on there is not the best idea if there are IO intensive applications running, so I put a cheap SSD into one of the bays
The bootloader has to stay on the SD card, because the CM4 cannot boot directly from SATA
Fan controller (added later, see last image)
You can just plug 2.54" pich pin headers into fan headers and vice-versa
The dongle on the back is a Sonoff Zigbee dongle (for smart home application)
I used an angled USB A extension cable to attach it
You may want to get a low profile, angled Ethernet cable too
Assembly
This is a rough outline.
Electronics:
Cut off and strip the proprietary connector from the modular PSU SATA power cables
Cut off and strip the picoPSU's SATA power connector
Solder the power cable to the picoPSUs cabling (make sure to get the pinout right)
Jump pin 16 (green) of the 24-pin connector to any ground wire (black) (this will permanently turn on the PSU)
I soldered these together, but you can also use a paperclip or similar.
Case:
Melt M4 hex nuts into HDD mounting rail holes
Mount case fan
Screw rails to HDDs
Slide in HDDs
Secure HDD rails with the two screws on each side
Compute module tray (do this last):
Melt heat inserts into tray
Secure PCIe card to the compute module (remove backpanel brace)
Screw compute module to tray
Plug everything in and slide in the tray (some dexterity required)
Then slide in the back and front end caps.
The second-to-last image shows how to secure the PCIe card to the compute module.