Home NAS System
A home NAS system built on a Quectel Pi H1 single-board computer provides high-speed storage via SSD solid-state drives, enables file sharing using Samba service, supports multiple access methods, and provides a convenient private cloud storage solution for home users.
Development Resources Summary
Development Kit Accessories List
| Component Name | Quantity | Specifications |
|---|---|---|
| Quectel Pi H1 Single Board Computer | 1 | Quectel Pi H1 Smart Ecosystem Development Board for Linux Learning with Python Programming and AI Kit |
| USB-A Power Adapter | 1 | Power Adapter |
| USB-C DP Cable / HDMI Cable | 1 | DP 1.4 spec; Length: 1m; USB-C (male) to USB-C (male) HDMI 2.0 spec; Length: 1m; HDMI-A (male) to HDMI-D (male) |
| Ethernet Cable | 1 | Length: 1m; Gigabit transmission rate |
| SSD Solid State Drive | 1 | Official Raspberry Pi SSD Kit |
| CPU Cooling Fan | 1 | Raspberry Pi 5 Official Active Cooler with Heatsink and Thermal Pad |
| Display Screen | 1 | 24-inch HDMI monitor |
Parts Reference
Get started quickly
Development Preparation
The Quectel Pi H1 comes pre-installed with Debian 13, so no re-flashing is required. Just follow the steps below.
Hardware Connection
Install CPU Cooling Fan
Plug the fan cable into the FAN header on the board, then secure the heatsink clips into the mounting holes as shown:
Install SSD
- Install 3 nylon standoffs using short screws.
- Attach the GPIO adapter firmly.
- Insert the PCIe ribbon cable into the board’s PCIe slot and secure both sides.
- Place the M.2 HAT+ on top and secure it with 3 long screws.
- Front view after installation:
- Back view:
- Side view:
- Finally, place the M.2HAT+ on top of the nylon post and use the remaining 3 long screws to secure the M.2HAT+ in place.
Display Connection
Connect one end of the HDMI cable to the HDMI port of the single-board computer and the other end to the HDMI port of the monitor.
Input device connection
Connect the USB keyboard and mouse to the two USB-A ports on the single-board computer. If using a wireless input device, simply plug the receiver into the USB port.
Network connectivity
Connect Ethernet cable from board to router (ensure internet access).
Jump cap connection:
Ensure the AUTO_POWER_ON pins are shorted with a jumper cap.
Power Connection
Connect USB-A power adapter to the POWER IN port.
Connection complete reference
Project Implementation
Update package list
sudo apt-get update
Install Samba
sudo apt-get install samba
Create mount folder
sudo mkdir /mnt/resource
Set permissions
sudo chown -R username: /mnt/resource/
Check disk info
- 1.List partitions
awk 'NR > 2 {printf "%-10s %s\n", $4, $3 / 1024 / 1024 " GB"}' /proc/partitions
- 2.Check filesystem type(Note: The Quectel Pi H1 board is mounted with ext4 by default, If the file type of the external storage device does not match the system, the storage device needs to be reformatted.)
sudo blkid
- 3.Check current mounts(If there is a mount point under /mnt/resource, you need to uninstall the mount point first)
df -h
- 4.Get UUID and user UID/GID
ls -lha /dev/disk/by-uuid
id username

Modify configuration file
Here we use a 256GB solid-state drive as the NAS server, so we select nvme0n1 as the extended partition to mount and modify the fstab file.
sudo apt install vim
sudo vim /etc/fstab
Press ESC+"i" to add the following statement to the end of the file. After adding it, press ESC+"Shift + :", then type wq and press Enter to save and exit.
#Use ext4 as the file system, refer to the partition file type found in the previous step.
#Add the nofail option. The nofail option allows normal booting even if the device does not exist.
UUID=The UUID queried in the previous step /mnt/resource ext4 defaults,nofail 0 0

Mount the drive
sudo mount /mnt/resource

Configure Samba user
sudo smbpasswd -a username
Note: Enter the current user name and password. Please note that the user here must be an existing Linux user.
Edit Samba config
Enter the following command to open the configuration file
sudo vim /etc/samba/smb.conf
Add(The disk name in brackets is displayed externally)
[resource]
comment = Resource
create mask =0777
directory mask = 0777
path = /mnt/resource
valid users = pi
read only = no
vfs objects = catia fruit streams_xattr
Check configuration
sudo testparm -s
Restart Samba
sudo systemctl restart smbd
sudo systemctl enable smbd
Testing Samba service
- To test if a mounted folder has the necessary permissions, enter the following command. If the test file appears, it means you can perform operations on that folder.
sudo -u username touch /mnt/resource/test_from_kane.txt

- Test the Samba share connectivity in Windows CMD. If the custom resource folder is displayed, it proves that the NAS server has been successfully set up.
net view \\[NAS_IP]
Connecting to the NAS
Windows File Explorer (Easiest)
- Set full permissions.
cd /mnt
sudo chmod 777 resource/
Next, enter the
ip addresscommand in the console to query the IP address of the single-board computer.In Windows Explorer, input"\\\<NAS_IP>",You’ll see shared folders.
- Open resource to add/delete/edit files.

SCP Commands
- Upload files from Windows to NAS server.
scp "local_file_path" username@nas_ip:/mnt/resource/
- Upload an entire folder to the NAS server from Windows.
scp -r "local_folder_path" username@nas_ip:/mnt/resource/
CasaOS
CasaOS is an open-source home cloud system built on the Docker ecosystem, designed specifically for home users to provide simple, easy-to-use, and elegant personal cloud services. It allows users to quickly build and manage various home entertainment and smart applications, such as media servers, cloud storage, and ad blockers, through a user-friendly graphical interface.
- Updated Source
sudo apt update
- Install Docker
sudo apt install docker.io
- Start the Docker service
sudo systemctl start docker
sudo systemctl enable docker
- Check Docker service status
sudo systemctl status docker
After successful startup, the following is shown:
- Full installation of wget
sudo apt install wget -y
When the following option box appears, just press Enter.

- Install CasaOS
sudo apt install curl
curl -fsSL https://get.casaos.io | sudo bash
After successful installation, copy the URL in the red box and open it in the browser.
After creating a user, log in and click Files. After finding the folder mounted on the NAS server in the Root directory, you can directly upload, delete, modify, etc.