Skip to main content
F3D
Raspberry Pi NAS Case (bản remix màn hình e-Ink) 1

10 images

DIY

Raspberry Pi NAS Case (bản remix màn hình e-Ink)

By alanunderwood

Downloads
404
Likes
362
Views
8,445

Files 10 28.9 MB

  • raspberry_pi_nas_body_-_window_1784481558.stlSTL · 326.4 KB
  • raspberry_pi_nas_case_-_no_window_1784481559.stlSTL · 1 MB
  • raspberry_pi_nas_storage_rack_1784481561.stlSTL · 903.9 KB
  • raspberry_pi_nas_drive_housing_1784481563.stlSTL · 187.2 KB

Make a variant with AI

Build another version of this model.

Open Studio

Description

This remix combines the two part case into one, adds an e-Ink display window with the Pimoroni InkyPHAT display, and adds additional mount points for 40mm case fans. All other files are the same, but they have been converted to STL for easier printing. This remix is subject to change as I make a more elegant back panel that fits the hardware I am using. Right now it's just a rectangle cutout as I work out the best way to enclose the cables. I will also add more detail to the assembly instructions as I go.

Intro

This is a fairly easy project but it has a lot of steps. It’s also a bit expensive to produce given the price of the four SATA drives. You do not have to use the same components I used, but where you make changes, you’ll need to account for the differences. If you use cheaper drives, there should not be a significant difference in setup other than cost. I used the Samsung EVO 2tb SATA drives because I already had them for a different project. It does not fundamentally matter what hardware you choose.

Tools

  • Soldering iron
  • Large format 3D printer
  • 2kg of filament (you can do this with one if you don’t make ANY mistakes but… yeah. I wasn’t able to do that.)

Hardware

  • Raspberry Pi 5 4gb + Active cooler + pro endurance SD card

  • Raspberry Pi Zero 2w (with headers) + regular SD card

  • Four 2tb SATA SSD Drives (Samsung 870 EVO)

  • Pimoroni red InkyPhat e-ink display

  • Geekworm x1009 SATA hat with power adapter

  • Fans

    • 1 92mm Fan - 12v
    • 2 40mm Fans - 12v
    • Fan splitters (they come in the box)
  • Temperature sensor

  • USB Ethernet adapter

Assembly hardware

  • M2.5 heat set sockets
  • A bunch of various sizes of screws, M2 and 2.5
  • M2.5 x 15mm standoffs
  • Cables
  • USB fan adapter
  • 4 SATA 3 cables
  • Micro USB to USB A

Assembly

Print all pieces (this will take a few days). Print all with supports (everywhere) in the orientation that they appear.

  1. Case
  2. Faceplate
  3. Drive housing
  4. Four (4) drive cages
  5. Backplate
  6. Raspberry Pi Sled

Main Case

  • Carefully remove supports (this is tedious)
  • Install the case fan
    • Large fan on the bottom (logo facing in)
    • Case fans on the side
    • All fans mounts support using the screws that come with the fans
    • Install four heat set inserts into the holes on the back side of the case

Drive Housing

  • Use heat set inserts in the four holes on the back, install a standoff in each socket
  • Mount a SATA SSD into each drive cage using 4 M2 screws (or not, honestly it’s optional, I didn’t have any M2 screws that fit so I skipped it)
  • Plug in SATA and power cables from the Geekworm kit to each drive

Mount the Raspberry Pi 5

  • Install a basic Raspberry Pi Lite OS onto an SD card and configure it for Wifi (you’ll need an ethernet cable later but for now we can do our config over wifi)

  • Install 8 heat set inserts into the top and bottom holes of the raspberry pi sled

  • Mount the raspberry pi on the sled using standoffs

  • Install the Geekworm SATA hat and follow the instructions

    • Do not install the drives yet
  • Install the temperature sensor and follow the instructions here

  • Optionally print the mounting bracket for the breakout board and install it with screws

  • Mount the sled into the case from the bottom using M2.5 screws (optional but recommended)

  • Plug in the SATA drives in order starting from the left (0) to (3) if using right angle cables, the last drive should be mounted with the right angle bracket going into the raspberry pi while the other three cables will have the right angle brackets going into the drives. This is because it doesn’t fit any other way and I didn’t want to mod the case again, so I just reversed the cable.

  • Plug in the SATA power cable to the Geekworm Hat

  • Do not power the raspberry pi yet

  • Optionally glue the breakout board mount to the case (but really it’s better to wait until near the end for this step and honestly I didn’t glue it, it’s just hanging out in there loose

  • Thermal sensor should go in the open space behind the SATA cables but in front of Zero 2W

InkyPhat e-Ink Display

  • Gently attach the InkyPhat screen to the Zero 2w headers, following the instructions from Pimoroni
  • Mount the screen with the pi into the faceplate
  • Plug in the USB cable to the Zero 2W and thread it through to the back
  • Plug in the USB A side to one of the blue (powered) USB ports on the raspberry pi
  • Snap the faceplate into the front of the case

Follow the instructions from Pimoroni here to setup the InkyPhat display: https://github.com/pimoroni/inky

USB Fan Adapter

  • Plug in the USB fan adapter to the other blue USB port on the Raspberry Pi 5
  • Attach two four pin Y adapters
  • Plug in the main case fan to the first port on the first Y adapter
  • Plug in the other two fans to the remaining ports on the second Y adapter
  • Shove all the fan cables under the sled

At this point you should have all the cables connected. Power up the raspberry pi using the Geekworm power supply (not the USB port, which will not be used)

Software setup

Setup raspberry pi 5

Install Geekworm SATA hat drivers https://suptronics.com/Raspberrypi/Storage/x1009-v1.1_software.html

sudo nano /boot/firmware/config.txt

Enable the PCIe external connector dtparam=pciex1 dtparam=pciex1_gen=3 # note this is not officially supported but it does work on my Samsung drives

sudo rpi-eeprom-config -e Add PSU_MAX_CURRENT=5000 at the end of the file

sudo reboot

sudo lspci

Install the temperature sensor

Hardware setup https://www.youtube.com/watch?v=j7LLVkPpQ78&t=199s

Written instructions https://piddlerintheroot.com/temp-sensor-ds18b20/

Software setup

Sudo rasp-config

  • Interface Options
    • 1-Wire

My setup (differs from the video)

Green = Ground > Black Blue = Live > Red Purple = Data > Yellow

Purple goes to pin 4

sudo nano /boot/firmware/config.txt

Add this line to the bottom of the file to enable the 1-wire interface

dtoverlay=w1-gpio

Reboot

sudo modprobe w1-gpio sudo modprobe w1-therm

Confirm that the sensor is working

Setup OpenMediaVault

Install open media vault Format disks Install md plugin Create RAID 5 Array Create file system Bridge Ethernet connections (if using) Install and enable the thermal logger and thermal server scripts Install and enable the CPU logger and CPU server scripts Install and enable the RAID monitor service

Setup raspberry pi zero w

Sudo raspi-config

  • Interfaces
    • SPI Enable
    • I2C Enable

Reboot

Connect to Wifi (or as a USB gadget, but I have not been able to get this running yet) Install the drivers for the InkyPhat Test the screen to ensure connectivity Install the NAS.py script Setup crontab to run the NAS.py script every x minutes

Install the back cover with four medium length M2.5 screws

Custom Software

Clone this repo into both the Raspberry Pi 5 and the Raspberry Pi Zero 2w. (Note: more specific instructions to come as I edit this file.)

https://github.com/adunderwood/RaspberryPi_NAS

Raspberry Pi 5

SSH into the nas Copy the services to /etc/systemd/system Sudo systemctl daemon-reload Start services

  • CPU
  • Temperature
  • Drive space Enable services

Raspberry Pi Zero W

Install Pimoroni drivers source source.sh pip install requirements python nas.py crontab -e

/5 * /bin/bash -l -c "source /home/nas/.virtualenvs/pimoroni/bin/activate && python /home/nas/display/nas.py"

^ adjust the paths to reflect your configuration. This uses the default virtual environment created by the Pimoroni driver installation.

Category: Electronics

Read more Show less

Print spec

Formats
stlsvg
Model files
10
Total size
28.9 MB
Largest file
24.4 MB

0 comments

See all