The reliable Original Prusa MK4S is now available in discounted bundles with the MMU3 and Enclosure. Grab yours today!

Odroid HC4 - Series X

Replacement case for Odroid HC4 with 3.5" hard disks
11
78
2
1925
updated October 30, 2021

Description

PDF

Summary

I bought the Odroid HC4 to use as an offsite backup target for my server. I couldn't really trust the toaster-like case, however, so I decided to model a new case for it.

Hardware and assembly

You'll need:

  • the original screws. 1 or 2 are enough to keep the odroid in place
  • feets/felt pads to help with vibrations. You can use the ones from the original case
  • 8 to 12 hard disk screws
  • 2 M3x8mm or longer bolts and nuts to fix the inner to the outer shrouds. Longer bolts will help if you're not able to perfectly clean the holes
  • 92mm fan with a long cable. An extension will help also with assembly as you can put the board in place and then connect the fan. The best would be a Noctua NF-A9 5V PWM so you can connect it in place of the original fan (which is 5v not 12v).

The photos should already be explanatory, except for the fan: I used a NF-B9 PWM I had lying around from an NH-L12, with 2 low noise adapters (which also serves as extensions). In this case, or with any 12v fan, you can solder the positive to TP11 and GND to TP2. If you have to buy one, I'd suggest a Noctua NF-A9 5V PWM so you can let the board control it.

Software (if you're interested)

I wanted to use ZFS if possible, to sync snapshots from my TrueNAS box instead of using simple rsync. I also wanted an easy way to set everything up and manage it.
I decided on OpenMediaVault as the solution, with the ZFS plugin.

Install OMV

Install Armbian Buster as base, you can find it here: https://www.armbian.com/odroid-hc4/#kernels-archive-all
Follow OMV installation from the wiki: https://openmediavault.readthedocs.io/en/latest/installation/on\_debian.html

Install ZFS:

If you try to install the ZFS community plugin now, you'll get errors saying it cannot satisfy dependencies. This is basically because the situation on ARM is too complicated to handle every board, so we'll have to install the requirements ourselves.

apt install linux-headers-common-${uname -r}
reboot
apt install spl-dkms zfs-dkms lz4
systemctl daemon-reload
modprobe zfs
aptitude install zfsutils-linux # let it install the version it wants

You should now be able to install the plugin from the GUI, so go ahead and do it.

Create the pool using something like the following (replace disk serials with yours):

zpool create \
 -o ashift=12 \
 -o autoexpand=on \
 -O atime=off \
 -O compression=lz4 \
 -m /mnt/obox \
 obox \
 mirror \
 ata-WDC_WD30EFRX-68AX9N0_WD-WMC1T0638111 \
 ata-WDC_WD30EFRX-68EUZN0_WD-WMC4N0M5R0YP

Fan control (if you used a 5V fan)

This only applies if you used a 5V fan connected to the PWM connector of the original one. You can use fan control, following this guide: https://docs.linuxfactory.or.kr/guides/sensors.html?highlight=fancontrol#fanspeed-control-using-fancontrol

OpenVPN client with automatic connection

Copy openvpn configuration files (.ovpn + .p12 + .key) to /etc/openvpn.
Rename the .ovpn file to .conf
Edit the .conf file, changing

auth-users-pass

to

auth-users-pass .secrets

Create a /etc/openvpn/.secrets file and put username and password inside (one per line, just username and password).

chmod 600 .secrets
# replace whatever with the name of your .conf file
systemctl enable [email protected]
reboot

 

Updates:

2022-02-06: Added a version for 2.5 inches drives (should fit all HDD thicknesses). This is untested, if you try it, please report on it

Update 2022-02-12: model links:
- [3.5in](https://cad.onshape.com/documents/9b00b8b64f535e96004054ab/w/dde333186904b29c6b9b02dd/e/0456db18e2ccbd8574a2c04c?renderMode=0&uiState=6207931a62b38911ca685128)
- [2.5in](https://cad.onshape.com/documents/636743d17a48f047c8554274/w/081727aec42d4c164d3cef98/e/6c414f8908b636a907bc2696?renderMode=0&uiState=6207a3774929bd49602b3fb8)

Tags



Model origin

The author marked this model as their own original creation. Imported from Thingiverse.

License